Пожалуйста, помогите, я новичок в Unity и программировании: У меня есть два Bouncing Ball, тег как BouncingBall1 и BouncingBall2, я хочу, чтобы пуля ударила и для уничтожения, и если время не было превышено displaySecond, и вы уничтожили шары, которые вы выиграли, но моя проблема - OnCollisionEnter не работает. Часть выигрыша не работает, остальные фрагменты кода ниже.OnCollisionEnter не работает:
function OnCollisionEnter(col.collision) {
if ((displaySecond < 30) && (
col.gameObject.tag ==
BouncingBall1 == null &&
col.gameObject.tag ==
BouncingBall1 == null)) {
print("You have won");
}
}
Что значит, что он не работает? Является ли функция не вызываемой в первую очередь или есть ошибка в коде внутри функции? Вы можете добавить инструкцию 'Debug.Log()' для проверки этого. –
col.gameObject.tag == BouncingBall1 == null Uhm, no. Здесь что-то не так. Этот тест не имеет смысла. Просто сделайте col.gameObject.tag == BouncingBall1, чтобы проверить, является ли тег BouncingBall1. –
Извините, парни; если я появился в дампе, я просто пытался выяснить, уничтожены ли BouncingBall1 и BouncingBall2, поэтому я установил его в null. Я удалил null, см. Мой код ниже, но если я нажму на игру, сразу же консоль покажет результат Debug.log(), даже если я не уничтожу Bouncing ball: см. Мой новый код ниже функции OnCollisionEnter (col: Collision) { if (col.gameObject.tag == "BouncingBall1" && col.gameObject.tag == "BouncingBall1") { Debug.Log ("Collision"); }} –