В следующем разделе мы рассмотрим, как добавить в этот плиточный мир персонажа.
Персонаж может быть любым, от мяча, до человека. В большинстве игр персонаж является чем-то, с чем игрок может ассоциировать себя, обычно нечто живое. В примере, рассматриваемом в следующем разделе, персонаж является мячом.
Добавление персонажа в мир игры
В этом разделе мы собираемся добавить персонажа в тот простой мир, который мы только что создали. Наш персонаж не является ничем иным как шаром. Цель состоит в том, чтобы иметь возможность перемещать шар по сетке, используя клавиши направления (стрелки). Если ячейка имеет тип больше 1, то это стена, и мы не позволяем шару войти в эту ячейку. Когда стрелка направления нажата, мы смотрим вперед, с целью проверить, где был бы край шара, если бы он двигался туда. Если край находится в допустимой ячейке (type = 1), то мы перемещаем шар туда; если нет, то мы игнорируем нажатие кнопки. Более точно, если нажата правая кнопка, то мы смотрим на текущее положение шара, плюс скорость шара, плюс радиус шара для получения числа, которое представляет дальнюю правую кромку шара, как если бы он был перемещен на один размер (или единицу) скорости вправо. Затем мы проверяем, в какой ячейке находится этот дальний правый край. Если он находится в ячейке с type = 1, то мы перемещаем шар туда.
Cell Types
Типы ячеек
Right key press
Нажата стрелка вправо
Down key press
Нажата стрелка вниз
Смотрим вперед: куда он собирается идти?
Чтобы посмотреть, как это работает, откройте файл character_in_grid.fla в папке Chapter07. Вы увидите новый клип внутри клипа сетки. Это персонаж и он имеет имя экземпляра ball. Код ActionScript имеет три дополнения:
1. Функция под названием initializeBall(), которая создает объект для хранения информации о персонаже (который является шаром). Эта функция также создает несколько новых переменных в объекте game.
2. Функция под названием moveBall()