С для профессиональных программистов



         

Тело главной программы - часть 2


/* смена типа спрайта игрока  */

if (!swaph) display_object(human,4,1);

else display_object(human2,4,1);

if (is_legal(human,deltax,deltay,4))

update_object(human,deltax,deltay,4);

update_object(human2,deltax,deltay,4);

/* проверяет: попался ли убегающий */

if (!count && tag(human,computer))

 

it= !it; /* смена амплуа */

count=6;

swaph= !swaph; /* смена фигуры имитирующей бег */

/* изображение "человека" в новой позиции */

if (!swaph) displey_object(human,4,1);

else displey_object(human2,4,1);

if (!swapc) display_object(computer,4,3);

else display_object(computer2,4,3);

/* генерация движения спрайта компьютера */

if (it==COMPUTER)

it_comp_move(computer,computer2,human,4);

else not_it_comp_move(computer,computer2,directx,directy,4);

if (!count && tag(human,computer))

it= !it;

count=6;

/* компьютер догоняет; изменение координаты Х на 2

так, чтобы быстрей стать догоняемым

*/

if (is_legal(computer, 2, 0, 4))

update_object(computer, 2, 0, 4); update_object(computer2, 2, 0, 4);

else

update_object(computer, -2, 0, 4);

update_object(computer2, -2, 0, 4);

swapc = !swapc; /* заменить тип спрайта */

/* вывод на экран спрайта компьютера */

if(!swapc) display_object(computer, 4, 3);

else                      display_object(computer2, 4, 3);

if(count) count--;

while (key.c[0] !='q' && htime<999 && ctime<999);

mode(2);

if(ctime>htime)

printf("Компьютер выиграл!");

else

printf("Вы победили!");

 

В теле главной программы экран терминала устанавливается в 4-й графический режим, выбирается палитра 0 и инициализируются переменные счета игры. После этого оба спрайта отображаются в своих исходных позициях.

Переменная htime содержит значение счета игрока, а ctime - компьютера. Переменные swapc и swaph предназначены для указания типа спрайта. Переменные deltax и deltay содержат изменения значений координат после очередного нажатия клавиш игроком. Глобальные переменные directx и directy содержат координаты спрайта, управляемого игроком. Значения этих величин используются компьютером для генерации перемещения своего спрайта. Переменная­признак it содержит информацию о том, кто в данный момент находится в режиме догоняющего. Она может принимать одно из двух значений, описанных в макроопределении #define: COMPUTER или HUMAN.




Содержание  Назад  Вперед