Архивы: по дате | по разделам | по авторам

DiNGS – программирование игр в домашних условиях. Часть 2.2

АрхивПрограммазм (архив)
автор : Александр Супрунов   30.01.2003

Подробнее об управлении в игре. Структура игры.

Управление в игре

Представить игру без управления объектами невозможно. Но здесь все достаточно просто.

В 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 заключается как раз в том, что, написав всего несколько строчек, мы можем получить работоспособную игру. Но, прежде чем мы приступим к практической части, имеет смысл рассказать из чего же состоит игра.

Структура игры

Любая игра начинается блоком инициализации. Присваиванием координатам объектов конкретных значений (хотя это может произойти и позднее), обнуление различных счетчиков, установка логических значений для флагов и т.д.

Далее идет цикл, в котором и вертится наш код, создавая игровые ситуации. В цикле мы выводим графику, обрабатываем столкновения спрайтов, отображаем очки, заработанные игроком. Здесь же реализуются возможности управления игровыми объектами – пусть той же битой или космическим кораблем.

Итак, для игры нам нужны картинки, звуки, музыка и желание этим заниматься. Наступает непосредственно самое интересное – практическое создание игры.

(продолжение следует)

© ООО "Компьютерра-Онлайн", 1997-2021
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.