Страница 2 из 2

Re: Проблема со считыванием урона двумя объектами друг у друга

СообщениеДобавлено: 07 апр 2021, 23:59
Aderom
Saltant писал(а):
Aderom писал(а):
Saltant писал(а):При дестрое геймобжекта в апдейте, онКолижен может ваще не сработать как я понимаю.

А как дестрой произойдет без активации снижения здоровья в онКолижен?

Потому что это в 1 методе делается. Например в OnTriggerEnter снижаешь хп и сразу же если hp <= 0 то дестроишь.

Хорошо, попробую, дело одной минуты.

Re: Проблема со считыванием урона двумя объектами друг у друга

СообщениеДобавлено: 08 апр 2021, 00:03
Aderom
Alkos26Rus писал(а):Почему у тебя нет коллайдера у противника на котором висит скрипт XEnemyScript? Как по твоему должен сработать OnTriggerEnter. Ты же дамажишь только самого себя во всех твоих скриптах, так как же должен удалится проблемный противник на котором висит скрипт XEnemyScript?

Ну вообще-то он есть -_-
Я даже текстом написал, что он просто в детях. И на скриншоте хорошо виден коллайдер.

Re: Проблема со считыванием урона двумя объектами друг у друга

СообщениеДобавлено: 08 апр 2021, 00:04
Aderom
Saltant писал(а):
Aderom писал(а):
Saltant писал(а):При дестрое геймобжекта в апдейте, онКолижен может ваще не сработать как я понимаю.

А как дестрой произойдет без активации снижения здоровья в онКолижен?

Потому что это в 1 методе делается. Например в OnTriggerEnter снижаешь хп и сразу же если hp <= 0 то дестроишь.

Установил условие в onTrigger - без изменений

Re: Проблема со считыванием урона двумя объектами друг у друга

СообщениеДобавлено: 08 апр 2021, 00:07
Aderom
Alkos26Rus писал(а):Почему у тебя нет коллайдера у противника на котором висит скрипт XEnemyScript? Как по твоему должен сработать OnTriggerEnter. Ты же дамажишь только самого себя во всех твоих скриптах, так как же должен удалится проблемный противник на котором висит скрипт XEnemyScript?

Окей, я додик, поставил коллайдер на уровень выше и все заработало. Спасибо. *рука-лицо* Сколько же нужно тупить прежде чем "не тупить"

Re: Проблема со считыванием урона двумя объектами друг у друга

СообщениеДобавлено: 08 апр 2021, 00:10
Alkos26Rus
Aderom писал(а):
Alkos26Rus писал(а):Почему у тебя нет коллайдера у противника на котором висит скрипт XEnemyScript? Как по твоему должен сработать OnTriggerEnter. Ты же дамажишь только самого себя во всех твоих скриптах, так как же должен удалится проблемный противник на котором висит скрипт XEnemyScript?

Окей, я додик, поставил коллайдер на уровень выше и все заработало. Спасибо. *рука-лицо* Сколько же нужно тупить прежде чем "не тупить"

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

Re: Проблема со считыванием урона двумя объектами друг у друга

СообщениеДобавлено: 08 апр 2021, 00:18
Saltant
Aderom писал(а):
Saltant писал(а):
Aderom писал(а):
Saltant писал(а):При дестрое геймобжекта в апдейте, онКолижен может ваще не сработать как я понимаю.

А как дестрой произойдет без активации снижения здоровья в онКолижен?

Потому что это в 1 методе делается. Например в OnTriggerEnter снижаешь хп и сразу же если hp <= 0 то дестроишь.

Установил условие в onTrigger - без изменений

Рассказываю 1 раз как делается выстрел и попадание, записывай под диктовку:

1) Создаешь объект который будет пулей, на нем должен быть коллайдер (К слову, пулей может быть и партикл с коллизией и даже рейкаст если в игре пули летают со скоростью реальных пуль, но пока делай просто геймобжект пули).
2) Создаешь скрипт в котором размещаешь метод OnTriggerEnter, и вешаешь этот скрипт на пулю, так же в этом скрипте можешь указать демаг этой пули. В этом методе, ты будешь проверять с каким объектом пуля соприкасается. Тебе нужно на объект игрока, повесить например таг "Player" и в методе у пули OnTriggerEnter ты будешь проверять какой таг у объекта с которым соприкоснулась пулька с помощью CompareTag("Player"). Если пулька попала в игрока, ты берешь его скрипт (где у него хп описаны) через GetComponent() и делаешь простую операцию "хпИгрока - демагПули", далее проверяешь if(хпИгрока <= 0) то дестроишь игрока или же вызываешь анимацию смерти т.п
3) На игроке должен быть коллайдер чтоб весь этот механизм соответственно работал.
4) Так же в методе Start() скрипта пульки, можешь сразу начать её уничтожать с задержкой Destroy(gameObject, время), чтоб например она не оставалась вечно на сцене, а можешь создать пул этих пулек, но тебе, мой маленький друг пока рано об этом думать, сделай просто дестрой через N секунд.

После того как проведешь все эти манипуляции, ты получишь нормально работающий алгоритм просчета попаданий.

Re: Проблема со считыванием урона двумя объектами друг у друга

СообщениеДобавлено: 08 апр 2021, 00:29
Alkos26Rus
Saltant писал(а):Рассказываю 1 раз как делается выстрел и попадание, записывай под диктовку:

Ну что ты, это примитив, вон у него даже у пули ХП отнимается при попадании, а хотя даже у лазера ХП отнимается это вобще космос)

Re: Проблема со считыванием урона двумя объектами друг у друга

СообщениеДобавлено: 08 апр 2021, 00:33
Saltant
Alkos26Rus писал(а):
Saltant писал(а):Рассказываю 1 раз как делается выстрел и попадание, записывай под диктовку:

Ну что ты, это примитив, вон у него даже у пули ХП отнимается при попадании, а хотя даже у лазера ХП отнимается это вобще космос)

Я просто так подумал... очень много молодёжи чет в игры полезли, а я чёт хочу играть в нормальные новые игры а не в симулятор выживания пули или лазера :-s