DiNGS – программирование игр в домашних условиях. Часть 2.2
АрхивПрограммазм (архив)Подробнее об управлении в игре. Структура игры.
Управление в игре
Представить игру без управления объектами невозможно. Но здесь все достаточно просто.
В DiNGS есть функция KEY[номер клавиши] которая может принимать значение 1 или 0. 1 – соответственно при нажатии и 0 – при всех остальных случаях. Узнать код клавиши можно с помощью идущей вместе с DiNGS утилитой keycodes. При запуске ее открывается окно, где при нажатии клавиш вы видите ее код. Управление битой можно написать следующим образом:
If KEY(200)=1 THEN bita_Y=bita_Y-1
Если нажата клавиша «стрелка вверх» тогда уменьшить координату Y объекта бита на 1. А что если необходимо выполнить несколько действий при нажатии? Синтаксис будет иметь вид:
If KEY(200)=1 //если клавиша «стрелка вверх» нажата bita_Y=bita_Y-1 //тогда уменьшить у биты координату Y PLAYSOUND 0,0 //Проиграть звук ENDIF //конец оператора IF
А если нужно проверить несколько условий? Есть логические операторы AND и OR – «и» и «или».
IF (KEY(200)=1) AND bita_Y<=0 Bita_Y=0 ENDIF
В данном случае очень важно выражение <= (меньше или равно). Если бы мы указали просто равно, то это условие среагировало только когда координата bita_Y стала равна 0. А этого вполне могло не случиться, если приращивать значение bita_Y не по одному (что в играх очень часто применяется). Надеюсь, все выше перечисленное не заставило вас приуныть, т.к. мы все это рассмотрим на более понятных и доступных примерах. А волшебство языка DiNGS заключается как раз в том, что, написав всего несколько строчек, мы можем получить работоспособную игру. Но, прежде чем мы приступим к практической части, имеет смысл рассказать из чего же состоит игра.
Структура игры
Любая игра начинается блоком инициализации. Присваиванием координатам объектов конкретных значений (хотя это может произойти и позднее), обнуление различных счетчиков, установка логических значений для флагов и т.д.
Далее идет цикл, в котором и вертится наш код, создавая игровые ситуации. В цикле мы выводим графику, обрабатываем столкновения спрайтов, отображаем очки, заработанные игроком. Здесь же реализуются возможности управления игровыми объектами – пусть той же битой или космическим кораблем.
Итак, для игры нам нужны картинки, звуки, музыка и желание этим заниматься. Наступает непосредственно самое интересное – практическое создание игры.
(продолжение следует)