На сцене есть 2 объекта player и enemyAI с тегами Player и Enemy. При стрельбе возникает такой косяк - при рикошете или взрыве ракеты убивает самого же стреляющего. (дело в радиусе взрыва, но не в этом суть!) Есть 2 скрипта для Игрока и Enemy, например для Игрока вешается - PlayerDamageManager. Тут считается урон только по игроку (по крайней мере я так хочу сделать) Не получается сделать проверку - если я стрельнул, то не считаем HP -= damage Делаю так в скрипте Игрока
Код
if (!player) { HP -= damage; }
Но тогда мне вообще никто не наносит урон. Ставлю if (player), то могу только я сам себе наносить урон - тут как бы всё ок с таким условием. Когда назначаю
Код
if (enemy) { HP -= damage; }
То ничего не происходит. В void Start() сделал так
Код
void Start() { player = GameObject.FindWithTag("Player"); enemy = GameObject.FindWithTag("Enemy"); Debug.Log("Player is " + player); Debug.Log("Enemy is " + enemy); }
В логе выводит:
Player is player Enemy is enemyAI
Так в чем же проблема тогда? Вот полный код из PlayerDamageManager Доступно только для пользователей Помогите пожалуйста разобраться!
Сообщение отредактировал Sider - Четверг, 16 Июля 2015, 11:34