Иногда в своих играх нужно определить расстояние до цели (дальность выстрела, аура, урон и тд). Тогда нужно использовать простейшую формулу с геометрии - теорему Пифагора (сума квадратов катетов прямоугольного треугольника равна квадрату гипотенузы).
Нам нужно найти гипотенузу треугольника ( с ). Для этого найдем сначала длину каждого катета. Катет "b" является осью X, поэтому нужно отнять х-координату первой точки от х-координаты второй точки х=х2-х1 (или наоборот x=х1-х2, на результат это не повлияет). Катет "а" это ось Y: y=y2-y1. После этого подносим к квадрату x и y, суммируем значения и находим корень квадратный. Всё просто :)
Как это будет выглядеть в AGK (напишем функцию):
Function Distance(x1,y1,x2,y2)
x=x2-x1
y=y2-y1
result#=Sqrt(x*x+y*y)
endfunction result#
Sqrt() - корень квадратный
result# - расстояние (# означает, что это число может быть не целым)
(*На других языках программирования будет практически тоже самое)
В завершение, как это будет в коде (например):
If Distance(hero_x,hero_y,enemy_x,enemy_y)<100 then game_over=1
Комментариев нет:
Отправить комментарий