SA-MP Forums Archive
Как определить что машина в воде? - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Русский/Russian (https://sampforum.blast.hk/forumdisplay.php?fid=32)
+---- Thread: Как определить что машина в воде? (/showthread.php?tid=385925)



Как определить что машина в воде? - Serafim_sd - 18.10.2012

Добрый день!
Собственно заголовок темы отражает ее суть.
Как же определить что машина в воде?
Вроде никакие анимации специальные не воспроизводятся... помогите, может вместе мы решим...


Re: Как определить что машина в воде? - Stepashka - 18.10.2012

Если нужна 100% точность - никак.


Re: Как определить что машина в воде? - Serafim_sd - 18.10.2012

да хотябы любая точность...


Re: Как определить что машина в воде? - Serafim_sd - 18.10.2012

я заметил, что если покинуть машину, которая в воде, то для нее выполянется OnVehicleDeath...
но мне нужно определить в воде ли машина в OnPlayerExitVehicle...


Re: Как определить что машина в воде? - Serafim_sd - 18.10.2012

хм... провел некоторое исследование, оказывается, что OnVehicleDeath вызывается именно в момент попадания автомобиля в воду...


Re: Как определить что машина в воде? - DrSlett - 18.10.2012

Проверяем по Z-координате, где-то 1.0 и меньше это уровень воды, еще нужно сделать уйму исключений по всему San Andreas.
Вывод: можете даже не стараться это сделать.


Re: Как определить что машина в воде? - eakwarp - 18.10.2012

Используйте карту высот. Это будет наиболее правильным выходом, определить с какой глубины начинается океан(по карте высот), и с какой глубины начинается залив за дамбой. Если поиск по XY машины выдает указанную высоту, а Z ниже чем на карте высот - с очень большой вероятностью машина в воде. Алгоритм ясен?


Re: Как определить что машина в воде? - White_116 - 18.10.2012

Можно попробовать сделать карту воды. Тут желательно церез плагин ибо в павн нет однобитовых массивов.


Re: Как определить что машина в воде? - xJester - 18.10.2012

GetVehicleVelocity() и GetVehicleRotationQuat() в глубокий анализ.
и наверное проще обрисовать координаты суши, чем воды.


Re: Как определить что машина в воде? - Serafim_sd - 19.10.2012

сделал пока по такому принципу: если пока игрок был в машине для нее выполнилось OnVehicleDeath, но ее "здоровье" больше 250, транспорт считается условно утопленным...