Възможно е да се дефинира тоолбар с каквито на играча му харесват бутони.
За да се дефинира е нужно да се създаде (или редактира) текстов файл с име YSokobanButtons.txt. В този файл на всеки ред се дефинира бутон (с име и функция). Символа # се използва за коментар, така че всички редове започващи с коментар се пропускат.
Използвания синтаксис е:
button_text (';'|':') command x{',' command x}
т.е. усказва се текста показван в бутона и какви команди ще се изпълнят
button_text е просто текст който се показва или пък има модификатор за език/държава, например:
en{english text},us{text for US},simpl{...},trad{...},text
Задаването на език/страна е направено за да може да се сменят надписите в зависимост от избрания език. Ако не са зададени, то текста няма да се сменя при смяна на езика. YSokoban първо търси модификатор за текущо избрания език, ако не намери такъв за текушо избраната страна, ако не намери и такъв ще ползва текста без модификатор, който трябва да е последен. Language/Country модификатора е името на езика/държават което е зададено във файла с преведените текстове. Button text (with all specifiers) is separated with ':' or ';' from the commands
Възможно е да има повече от една команда, в такъв случай трябва да се разделят със ','
Добавете следните редове в YSokobanButtons.txt за да получите тоолбар като от снимката
net: toggleNet reachable: showReachable movable: showMovable not moved: showNotMoved ruler: ruler
Във всяка команда може да се зададе числов параметер (ако не се зададе се счита за 0). Възможните команди са следните:
Команда | Параметър | Описание | Клавиатурен аналог |
---|---|---|---|
setBookmark | 0..9 | Отбелязва текущото ниво | Ctrl-0..9 |
gotoBookmark | 0..9 | Зарежда отбелязаното ниво | 0..9 |
zoom | -100 .. 100 | увеличава/намалява размера на използваната кожа zoom 0 ще върне стандартния размер на кожата |
+/- = |
loadLevel | number | 0 ще презареди текущото ниво, -1/+1 ще премине на предишно/следващо ниво | Esc / Ctrl-arrows |
loadUnsolvedLevel | +/-1 | Като loadLevel, но ще зарежда предишни/следващи нерешени нива | Ctrl-Shift-arrows |
loadErrorLevel | +/-1 | Като loadLevel, но ще зарежда предишни/следващи невалидни нива | Alt-Shift-arrows |
firstLevel | Зарежда първото ниво от колекцията | Ctrl-Home | |
lastLevel | Зарежда последното ниво от колекцията | Ctrl-End | |
useSkin | 0, 1..6 | коя кожа да се ползва (0 текущата) със настройките за мрежа | F3..F8 |
useNetSkin | 0, 1..6 | коя кожа да се ползва (0 текущата) със обратните настройки за мрежа | Ctrl-F3..F8 |
toggleNet | включва/изключва мрежата | Ctrl-N | |
showReachable | -1, 0, 1 | Показва достижимите клетки (0=toggle, 1=on, -1=off) | F9 |
showMovable | -1, 0, 1 | Показва преместваемите сандъци (0=toggle, 1=on, -1=off) | Ctrl-F9 |
showNotMoved | -1, 0, 1 | Показва сандъци които не са били пипани (0=toggle, 1=on, -1=off) | Alt-F9 |
copyLevel | 0 1 2 3 4 10 12 |
Копиране на нивото в клипборда: 0 - нормално 1 - RLE пакетирано 2 ползва '-' вместо интервал 3 копира се както го иска MF8 групата 4 - нормално + MF8 група 10 - нормално но без решение 12 - както при 2, но без решение |
Ctrl-L Ctrl-Shift-L Ctrl-Alt-L Ctrl-Shift-Alt-L Ctrl-M Alt-L Alt-Shift-L |
copyMoves | 0 .. 3 < 0 |
Без параметър ще копира ходовете в клипборда ако параметъра е < 0 - копира остатъка от ходовете (като Ctrl-Alt-C) 1 - ще ползва push формата 2 - push формат с маркирани сандъци 3 - push формат без преминаване през сандък |
Ctrl-C Ctrl-Alt-C Ctrl-P Alt-P Ctrl-Alt-P |
ruler | 0 1 2 3 -1 -2 |
координатна система: 0 = изключена 1 = буквено-цифрова 2 = цифри-цифри 3 = сменя алтернативоно изкл.->букв.цифрова->само цифри -1 = задава буквено-цифрова -2 = задава цифрова |
Ctrl-R Alt -R |
saveState | запис на състоянието | Ctrl-S | |
loadState | зареждане на състоянието | Ctrl-O = Ctrl-D | |
paste | 0, 1, 2 | 0 - вмъква от клипборда 1 - вмъква от клипборда, ако са ходове спира на всеки сандък 2 - вмъква от клипборда, ако са ходове ги прави всички незабавно |
Ctrl-V Ctrl-Shift-V Ctrl-I |
screenShot | 0, -1 | 0 - снимка на нивото -1 снимка на всички нива |
Shift-X Ctrl-Shift-X |
record | 0 1 -1 2 3 4 5 6 7 8 9 10 11 12 |
превкл. режим на запис задава режим на запис спира режим на запис превкл. bmp/png режима избира bmp режим избира png режим превкл. режим прозорец/ниво избира режим прозорец избира режим ниво започва запис от кадър 0 (или спира записа ако тече в момента) продължава запис от следващия кадър (или спира) започва запис от кадър 0 (но не спира) продължава запис от следващия кадър (но не спира) спира записа |
Ctrl-Alt-Shift-F3 Ctrl-Shift-F3 Ctrl-Alt-F3 Ctrl-F3 Shift-F3 |
undo | 0 1 |
връща ход назад връща поредица от ходове преместващи сандък |
Shift-backspace backspace |
redo | 0 1 2 |
изпълнява отново върнат ход изпълнява поредица от ходове бутащи сандък на ново място продължава без спиране изиграването на върнати ходове (или решение), което е било спряно |
Shift-space space Ctrl-space |