Как можно получать игровой объект от врага при каждом новом столкновении? Это не то, что я могу подключить к инспектору Unity. У меня нет написанного кода, потому что я не знаю, с чего начать. Что я думаю, я знаю до сих пор:
Мне понадобится переменная, которая может хранить игровой объект, но что происходит, когда встречается несколько врагов?
GameObject getEnemy;
Я, вероятно, настрою коллайдер на срабатывание при обнаружении врагов. Теперь я хочу хранить GameObject
.
getEnemy = getComponent<GameObject>();
Но это не работает. Кто-нибудь знает почему?
************************* Фактический код (не работает) ************** *********
(Имя класса EnemyDetection)
public static GameObject enemyObj;
void OnTriggerEnter(){
enemyObj = other.GetComponent<GameObject>(); //Grabs enemy object to pass
to the enemies class
}
(Враги имени класса)
public void OnCollisionEnter(Collision collision)
{
if (collision.collider.tag == "Bullet")
{
GameObject en = EnemyDetection.enemyObj;
Hp -= 25;
Debug.Log("Hit! HP left " + Hp);
if ( Hp <= 0)
{
Destroy(en); // Destroys GameObject
}
}
}