| Учебник по QSP для редактора QGen - Урок четвертый. Переменные. |
| Автор: Nex |
| 27.02.2009 08:41 |
|
Страница 5 из 8
Урок четвертый. Переменные.Переменные - это "память" игры.
Когда мы говорим плееру, "в переменной a будет храниться значение 5" - это запись в переменную. Также запись назвают "присваиванием", это одно и то же. В коде это выглядит так: a = 5 Мы записали в переменную "a" числовое значение 5. Знак "=" здесь не обозначает равенство, как в математике, он обозначает операцию присваивания. Переменная, в которую мы записываем значение, должна всегда стоять слева от знака "=".
$строка = 'Быть или не быть?' Мы записали в переменную "$строка" текстовое значение "Быть или не быть?"
Чаще всего, значение переменной нам требуется для нового присваивания, либо для проверки условия. Вот, например, мы прибавляем 10 к переменной "a", и записываем результат в переменную "k". k = a + 10 Допустим, в переменной "a" было записано 5. Тогда k = 5 + 10 = 15. В переменной "k" теперь хранится значение 15. Обратите внимание, в этой строке кода было произведено чтение значения переменной "a", вычисление выражения "a + 10", и запись результата в переменную "k". Уменьшаем значение переменной "k" на 2. k = k - 2 В переменной "k" было записано 15. Значит, k = 15 - 2 = 13. Теперь в переменной "k" хранится значение 13.
$вопрос = $строка + ' Вот в чем вопрос.' Теперь в переменной "$вопрос" хранится текстовое значение "Быть или не быть? Вот в чем вопрос."
Для вывода используйте двойные угловые скобки, "<<" и ">>". Между двойными угловыми скобками напишите имя переменной, например "<<$вопрос>>", или "<
Создайте локацию "Начало", в описании напишите "Создайте свою планету и сможете управлять ей в меру своих скромных возможностей." В коде локации(поле "выполнить при посещении") отключите неиспользуемые окна. На этот раз окно инвентаря нам не понадобится, поэтому его тоже отключаем. SHOWSTAT 0 SHOWINPUT 0 SHOWOBJS 0 Создайте действие "Создать планету" с переходом на локацию "СоздатьПланету".
Создайте локацию "СоздатьПланету". В коде локации пишем $Имя = INPUT('Придумайте имя для своей планеты.')
Температура = 100
'Ваша планета называется <<$Имя>>.'
Рассмотрим подробно. В первой строке, мы просим игрока ввести имя для планеты. В скобках функции INPUT указано приглашение, которое прочтет игрок. Текст, который введет игрок, будет сохранен в текстовой переменной $Имя. Вторая строка задает значение для числовой переменной Температура. В этой переменной будет храниться текущая температура для планеты. В третьей строке на экран описания локации выводится текст. В выводимом тексте, вместо выражения <<$Имя>> плеер подставит значение переменной $Имя, то есть тот текст, который ввел игрок. Если игрок ввел "Персефона", то на экране будет написано "Ваша планета называется Персефона."
Создайте локацию "Планета". В описании локации пишем Имя планеты: <<$Имя>> Температура на планете: <<Температура>> градусов.
Нам нужно, чтобы игрок мог изменить температуру на планете. Для этого сделаем несколько действий, в которых будет меняться переменная Температура. Создайте действие "Поднять температуру на 10 градусов". В коде действия пишем Температура = Температура + 10 GOTO $CURLOC В первой строке, мы увеличиваем на 10 единиц значение переменной Температура. Если температура планеты была 100 градусов, то при выборе этого действия температура планеты станет 110 градусов, и так далее. Вторая строка задает переход на текущую локацию. $CURLOC - специальная функция, которая всегда возвращает имя текущей локации, в нашем случае это локация "Планета". Зачем же нам "переходить" на локацию, на которой мы и так уже находимся? Это нужно для того, чтобы обновить текст описания локации. Переменная Температура была изменена, но изменения в описании появятся только при "входе" на локацию, поэтому мы должны явно задать переход. Создайте аналогичное действие "Снизить температуру на 10 градусов". Создайте действие "Установить комнатную температуру". Код действия: Температура = 25 GOTO $CURLOC При выборе этого действия, температура планеты станет 25 градусов, вне зависимости от того, какой она была. Обычное присваивание. Создайте действие "Создать новую планету" с переходом на локацию "СоздатьПланету". Когда игроку надоест одна планета, он может выбрать это действие и создать новую.
|
- Чекпойнты - автоматическое сохранение
- Выбор случайных вариантов - тянем карты из колоды [1.0]
- Плавное изменение цвета фона [1.0]
- Игровое время [1.0]
- Плавная остановка музыки в игре
- Поиск кратчайшего пути между городами
- Мини-игра "Взорви зомби" - пример использования локации-счётчика
- Архив примеров кода - "28 в 1"
- BlackJack Lite [1.1]
- Пример реализации боя [1.0]
- Back Tutorial [1.0]
- HTML Sample [1.0]
- Гибкий плейлист [1.0]
- Использование Wiki разметки [1.1]
- Использование в HTML специальных символов [1.0]
- Оформление меню для игры [1.0]
- Сапер [1.1]
- Конь и ферзь [1.0]
- Жизнь 1.0
- Создание диалогов [1.1]
- Библиотечка дополняющая инвентарь 0.76

