Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Алгоритм 13.1. Алгоритм Преследования.

Листинг 11.4. Муравейник (ANTS.С). | Листинг 11.5. Падение мяча (BALL.C). | Листинг 11.6. Идеальный газ (GAS.C). | Мнимое время, прерывания и многозадачность | Листинг 12.2. Шпионим за часами (SPY.C)._________________ | Листинг 12.3. Автономное управление светом. | Листинг 12.4. Функция ответа (PRES.C). | Листинг 12.5. Перепрограммируем системные часы (OUTATIME.C). | Листинг 12.6. Трехмерное звездное небо (STARS.C). | Листинг 12.7. Киберточка (CYBER.C)._____________________ |


Читайте также:
  1. Алгоритм
  2. Алгоритм
  3. Алгоритм
  4. Алгоритм 11.1. Контроль столкновений с помощью описанных прямоугольников.
  5. Алгоритм 13.2. Алгоритм Уклонения.
  6. Алгоритм 13.3. Шаблоны со случайным выбором.

// Предположим, что рх,ру - координаты игрока,

// ех,еу - координаты противника

while (игра)

(

программный код

// Вначале рассматриваем перемещение по горизонтали (ось X)

if ех>рх then ex=ex+l if ex<px then ex=ex-l

// Теперь рассматриваем вертикальный (Y) компонент

if ey>py then ey=ey+l if ey<py then ey=ey-l

программный код

}

§ Если враг находится справа, то есть его Х-координата больше соответствующей координаты игрока, преследователь уменьшает свою собственную позицию по оси Х на единицу и тем самым приближается к игроку. Если же противник находится левее игрока, он, наоборот, увеличивает свою горизонтальную координату.

§ Та же самая логика применима и к перемещению по вертикали.

Используя этот алгоритм, противник преследует игрока почти столь же неумолимо, как и Т1000 из Терминатора-2. Он не остановится до тех пор, пока не поймает игрока. Мы могли бы несколько облегчить его задачу путем добавления некоторой дополнительной логики, способствующей его движению к позиции нанесения удара. Однако, перед тем, как это делать, давайте посмотрим программу, моделирующую преследование. Листинг программы 13.1 рисует две точки: одну голубую (вы), а другую красную (противник). Что бы вы ни предпринимали, красная точка пытается настичь вас. Для движения (или, я бы сказал, бега!) нажмите клавишу U - перемещение вверх, N - вниз, Н -влево и J - вправо. Для выхода из программы нажмите Q.


Дата добавления: 2015-07-12; просмотров: 232 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ| Листинг 13.1. Программа Терминатор (TERM.С).

mybiblioteka.su - 2015-2024 год. (0.005 сек.)