Урок 3
Выбор, графика, звук
Теперь, когда вы заставили окно выглядеть так, как Вам хочется, что дальше? Возможно вы хотите чтобы игрок выбирал из чего-то?
ChoiceКоманда choice позволяет Вам выдать список выбора (маркированный точками список), и возможность выбрать одну опцию, и затем перейти в другое окно или триггер, основываясь на выборе:
choice "Купить" 3:3Goto означает, что Вы должны перейти в окно или триггер со данным банком и вхождением. (В выборе использование слова Goto является опциональным, потому что это по сути всё, что Вы можете сделать.)
choice "Продать" 3:4
choice "Выход" 3:5
Мы поговорим больше о Goto когда мы будем обсуждать триггеры.
В то время как Goto используется в триггере чтобы передать выполнение кода новому окну или триггеру, это неприменимая команда для использования в окне. Для перехода к другому окну или триггеру из окна, Вы должны использовать команду Nextwindow. Эта команда почти идентична Goto.
В конце этого текста - окно, содержащее все из этого урока. Как только Вы скомпилируете его, Вы можете видеть это все в действии.
ImageЭта команда позволяет Вам добавлять изображение в окне наряду с текстом.Вы можете включить столько изображений в окне, сколько пожелаете. При этом можна использовать BMP, PCX, PNG, или TGA. У каждого свои плюсы и минусы:
- BMP - Полная 24 битовая гамма цветов, без палитры, выглядит круто, но не поддерживает прозрачность.
- PCX - Поддерживает прозрачность (цвет палитры №255), ограничен 256 цветами. (PCX - удобный формат для игр, потому-что ваше изображение будет отрисовано без черной каймы вокруг него).
- PNG - поддерживает полупрозрачность, нет потерь качества, и в целом очень удобный формат.
Он в основном используется для частиц, и межформенных структур.
Единственный недостаток - просмотрщики под Windows типа IE почему-то имеют тенденцию показывать их в более темной или более светлой яркости, чем в действительности. Но не переживайте, в Anachronox они будут отображаться должным образом. - TGA - 24 бита цвета и 8 бит полупрозрачности. Это дает Вам фактически цветную и полупрозрачную графику!
Вы не можете создать его с программой от Windows - Paint, но если Вы имеете Photoshop или PaintShop Pro, вперёд!
image path/FILENAME.PCX X,Y H,W SOLIDФайл может быть PCX, BMP, PNG или TGA и обычно предшествуется именем пути к этому изображению. Иначе вся графика сидела бы в каталоге GAMEFLOW! Это было бы ужасно!
Как можна было догадаться из вышеупомянутого, каталог Anachronox\anoxdata\gameflow - каталог по умолчанию для изображений.
То есть, image path это не Anachronox/anoxdata/gameflow/MyImageDir/Image1.png, a MyImageDir/Image1.png.
ОБРАТИТЕ ВНИМАНИЕ: При написании скриптов всегда используйте прямой слэш - /, а не обратный слэш - \. Обратный слеш используется для специальных знаков, подобно \n для перевода каретки.
0,0 - само собой - верхний левый угол.
X,Y - координаты X и Y в окне, откуда начинается отрисовка изображения.
H,W - высота и ширина изображения. Это опциональные параметры, и используются, чтобы расширить или сузить изображение.
SOLID - Если указан этот параметр, текст располагается вокруг изображения. Если Вы хотите чтоб текст пробегал и через изображение, или в окне не будет никакого текста, тогда не используйте SOLID - только определите имя файла и координаты X,Y.Обратите внимание, что между именем файла и X,Y пробел, а не запятая.
Если вы хотите привязать координаты не к верхнему левому а к нижнему правому углу (как вам удобнее считать) то нужно задать X и Y с отрицательным значением.
ОБРАТИТЕ ВНИМАНИЕ: Размеры изображений в Anachronox должны быть кратны 16!
Допустимые значения:
16х16 |
32х16 |
64х16 |
128х16 |
256х16 |
16х32 |
32х32 |
64х32 |
128х32 |
256х32 |
16х64 |
32х64 |
64х64 |
128х64 |
256х64 |
16х128 |
32х128 |
64х128 |
128х128 |
256х128 |
16х256 |
32х256 |
64х256 |
256х256 |
256х256 |
Хм...А что, если ваше изображение 20 x 45 пикселей? Тогда переделайте его в 32 x 64, а дополнительное место сделайте прозрачным.
Extern // (Sound)Эта команда позволяет проигрывать WAV файл как только показывается окно. Таким способом можна проиграть речь в игре.
Звуки хранятся в каталоге Anoxdata\Sound. Команда используется типа так:
extern playsound "boots\BOOTS1.WAV"Хорошо, далее идут все эти команды, собранные вместе. Наберите invoke 2:1 после того, как Вы скомпилируете и загрузите это в игру:
ОБРАТИТЕ ВНИМАНИЕ: Этот урок планировался быть простым, но команда sound была в конечном счете изменена на extern, которая должна выполнятся из триггера. Поэтому вместо создания урока заново, мы просто исправили код. Так что пока игнорируйте команды extern и startswitch. Они будут объяснены в более позднем уроке.
#window 2:1
title "Изучаем 3-ий демонстрационный пример" //Комментарий
body "Выбираем из трех звуков: "
choice "Blip" 2:2
choice "Bleep" 2:3
choice "Bloop" 2:4 -------------------------------------------------------------------------------- #window 2:2
startswitch
{
extern playsound "ui/gen/button1.wav"
}
body "Blip" -------------------------------------------------------------------------------- #window 2:3
startswitch
{
extern playsound "ui/gen/button3.wav"
}
body "Bleep" -------------------------------------------------------------------------------- #window 2:4
startswitch
{
extern playsound "ui/gen/button4.wav"
}
body "Bloop"
В следующем уроке мы узнаме о триггерах, будет о-о-о-о-о-о-очень весело!
Назад