Смерть персонажа

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Смерть персонажа

Сообщение Grigoriy 15 окт 2018, 18:25

Здравствуйте, написал скрипт для смерти персонажа, но он почему-то не работает, я точно такой же скрипт писал для 2d персонажа и там все работало, но там я писал так:
OnTriggerEnter2D(Collider2D other) а тут я скопировал тот же самый код и просто убрал "2D" можно ли так делать? И если кто знает, напишите, пожалуйста из-за чего не работает
Вот код

using UnityEngine;

public class Character : MonoBehaviour
{

public static bool lose = false;
void Awake()
{
lose = false;

}
private void OnTriggerEnter(Collider other)
{
if (other.gameObject.tag == "Сubik")
{
lose = true;
}
}

}
Grigoriy
UNIт
 
Сообщения: 56
Зарегистрирован: 07 окт 2018, 21:48

Re: Смерть персонажа

Сообщение 1max1 15 окт 2018, 18:55

А на самом персе коллайдеры и риджитбади поменял?
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Смерть персонажа

Сообщение Grigoriy 15 окт 2018, 19:41

1max1 писал(а):А на самом персе коллайдеры и риджитбади поменял?

всмысле поменял? у меня два разных проекта, один из них 2d а второй 3d, этот код в 3d проекте. rb там не 2d с коллайдером, поэтому вообще никаких предположение нет, в чем может быть ошибка
Grigoriy
UNIт
 
Сообщения: 56
Зарегистрирован: 07 окт 2018, 21:48

Re: Смерть персонажа

Сообщение Friend123 16 окт 2018, 08:13

Так в чем проблема отладить сей весьма простой код: галочка триггер на коллайдере стоит? срабатывает ли вообще метод OnTriggerEnter? тег прописан правильно?
Расставьте Debug.Log, да проверьте код, делов-то на пару минут.
Аватара пользователя
Friend123
Старожил
 
Сообщения: 701
Зарегистрирован: 26 фев 2012, 22:12
Откуда: Тверь
  • ICQ

Re: Смерть персонажа

Сообщение Grigoriy 16 окт 2018, 16:17

Friend123 писал(а):Так в чем проблема отладить сей весьма простой код: галочка триггер на коллайдере стоит? срабатывает ли вообще метод OnTriggerEnter? тег прописан правильно?
Расставьте Debug.Log, да проверьте код, делов-то на пару минут.

тег прописан правильно, метод срабатывает, но триггер поставить не могу на коллайдер, т.к. объект будет проходить сквозь текстуры следовательно в функции private void OnTriggerEnter(Collider other) надо OnTriggerEnter заменить на что то другое, можете подсказать, на что можно заменить?
Grigoriy
UNIт
 
Сообщения: 56
Зарегистрирован: 07 окт 2018, 21:48

Re: Смерть персонажа

Сообщение Friend123 16 окт 2018, 16:30

Grigoriy писал(а):тег прописан правильно, метод срабатывает, но триггер поставить не могу на коллайдер, т.к. объект будет проходить сквозь текстуры следовательно в функции private void OnTriggerEnter(Collider other) надо OnTriggerEnter заменить на что то другое, можете подсказать, на что можно заменить?

Метод OnTriggerEnter не может сработать, если у вас не стоит галка Trigger на коллайдере.
Если же вам нужен не триггер, а коллайдер, то нужен метод OnCollisionEnter
Аватара пользователя
Friend123
Старожил
 
Сообщения: 701
Зарегистрирован: 26 фев 2012, 22:12
Откуда: Тверь
  • ICQ

Re: Смерть персонажа

Сообщение Grigoriy 16 окт 2018, 16:41

Friend123 писал(а):
Grigoriy писал(а):тег прописан правильно, метод срабатывает, но триггер поставить не могу на коллайдер, т.к. объект будет проходить сквозь текстуры следовательно в функции private void OnTriggerEnter(Collider other) надо OnTriggerEnter заменить на что то другое, можете подсказать, на что можно заменить?

Метод OnTriggerEnter не может сработать, если у вас не стоит галка Trigger на коллайдере.
Если же вам нужен не триггер, а коллайдер, то нужен метод OnCollisionEnter

получается, надо вот так написать private void OnCollisionEnter (Collision other)
{
if (other.gameObject.tag == "Сubik")
или нет?)
Grigoriy
UNIт
 
Сообщения: 56
Зарегистрирован: 07 окт 2018, 21:48

Re: Смерть персонажа

Сообщение Grigoriy 16 окт 2018, 22:08

Friend123 писал(а):
Grigoriy писал(а):тег прописан правильно, метод срабатывает, но триггер поставить не могу на коллайдер, т.к. объект будет проходить сквозь текстуры следовательно в функции private void OnTriggerEnter(Collider other) надо OnTriggerEnter заменить на что то другое, можете подсказать, на что можно заменить?

Метод OnTriggerEnter не может сработать, если у вас не стоит галка Trigger на коллайдере.
Если же вам нужен не триггер, а коллайдер, то нужен метод OnCollisionEnter

ахахах, ошибка была довольно таки глупая тег Cubik, я в названии тега написал С не си английскую, а C русскую. Очень глупая ошибка, спасибо за то, что помогли)
Grigoriy
UNIт
 
Сообщения: 56
Зарегистрирован: 07 окт 2018, 21:48


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 27