Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Как узнать расстояние от одного объекта до другого (http://www.flasher.ru/forum/showthread.php?t=162196)

yo3o 30.07.2011 16:54

Как узнать расстояние от одного объекта до другого
 
Есть три игровых героя. Как сделать так чтоб каждый герой определил расстояние от него до его врага?
то-есть мне нужно найти ближайший противника и открыть по ниму огонь! как реализовать?

и главное что все нормально работала и с минус ._x -100 и с плюс 100

as2

goodguy 30.07.2011 17:18

теорема Пифагора. Квадрат гипотенузы в прямоугольном треугольнике, равен сумме квадратов катетов.
Нужно искать гипотенузу. Катетами будут являться разницы расстояний по осям х и у меджу объектами

yo3o 30.07.2011 17:53

ok c расстоянием все понятно! а вот с определением в кого стрелять не очень! а именно с тем что я не-знаю
как сделать проверку на меньшее расстояния при сумме ._x меньше нуля или больше! как это вообще все можно реализовать я не понимаю! мне-бы очень помог пример!

goodguy 30.07.2011 19:32

Чтобы число всегда было положительным, можно использовать Math.abs() либо, если число меньше нуля, умножать его на -1 (что, собственно, равнозначно), и уже положительные числа сравнивать.

п.с. Точка выглядит так: ".", а не так "!"

yo3o 31.07.2011 18:06

у меня еще одна очень большая проблема! вот смотрите допустим я получил расстояния от героя один до героя два и три и четыре!
от первого до второго 500px
от первого до трет его 600px
от первого до четвертого 700px

теперь как мне сделать проверку за кем герой должен бежать? вот есть Math.min() но не подходит потому как там только два числа для сравнения, может есть что-то похожее?

dark256 01.08.2011 11:35

Складывайте все в массив, потом найдите в массиве минимальное число.
Это и будет искомое.

Читаем про
Array
for ()
if ( a < b )


Часовой пояс GMT +4, время: 22:22.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.