Программирование игр для Windows. Советы профессионала


Структуры данных в компьютерных играх - часть 2


Структура данных игрока.

typedef struct player_typ

{

int x,y;                // Позиция игрока

int lifes;              // Количество оставшихся жизней

int health;             // Уровень здоровья

int weapons[3];        // Массив, содержащий типы оружия, которые

// есть у игрока

int spells [10] ;       // Массив, содержащий заклинания, которые

// имеются у игрока

char *hands_stationary; // Растровое изображение рук игрока, когда

// он ничего не делает

char *hand_motion[4];   // Четыре растровых изображения рук игрока

// для выполнения заклинаний

int state;              // Состояние игрока: жив, мертв, умирает

} player, *player_ptr;

(Мы коротко расскажем о состояниях объектов чуть позже в этой главе, а более подробно —в тринадцатой главе, "Искусственный интеллект").

Как вы можете видеть, мы определили большинство необходимых переменных. Кое-что мы, конечно, добавим или выкинем позже, но для начала эта структура вполне подойдет. Это простой пример того, как следует создавать объекты в своей игре. Исходя из того, какая информация вам понадобится, организуйте соответствующую структуру и двигайтесь дальше.

Если в вашей игре есть как статические, так и динамические объекты, вы должны написать код, который будет рисовать, передвигать, отрабатывать столкновения и уничтожать объекты. Однако вам наверняка не захочется писать новые функции для каждого отдельного дерева! Давайте посмотрим, как можно клонировать игровые объекты.




Начало  Назад  Вперед



Книжный магазин