Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Godot: как можно сделать атакующие тайлы?

No One Ученик (97), на голосовании 2 недели назад
У меня есть игрок, противник и, собственно, Tilemap самого мира. Я хочу сделать так, чтобы тайлы тоже атаковали игрока (у противника за атаку отвечает Area2D через get_overlapping_bodies()). Как можно такое реализовать? Может, скрипт вешается на сам тайл как-то?
Дополнен 1 месяц назад
Раз так сделать пока нельзя, я решил это через костыль: у игрока есть второй метод получения урона, срабатывающий лишь раз (переменная bool). Метод сразу убивает игрока
Голосование за лучший ответ
Не сонная хрень Мудрец (12792) 1 месяц назад
Проще будет через игрока, чтобы сразу менять его хп при касании зоны тайла, иначе придётся подцеплять поле хп игрока к скрипту тайла, в остальном это делается точно так же, как у просто противника.
No OneУченик (97) 1 месяц назад
Я попытался скрипт в самого игрока запихать, но прикол в том, что если крепить на основную коллизию игрока, то он просто в них не проваливается (и не наносится урон), а если сделать отдельный Area2D, то при выключении маски (set_collision_mask_value()), игрок просто начинает вечно получать урон (даже вне тайла, хз как это работает)
Не сонная хрень Мудрец (12792) No One, тогда не проще сделать просто отдельный класс как-бы тайлов в виде просто неподвижных противников и заспавнить их на карте, без физики, только зону 2д которая будет коцать, получив эффективно то же самое
Похожие вопросы