2015-03-28 4 views
0

Я пытаюсь написать сценарий, который позволяет игроку войти в пачку боеприпасов (или здоровья) и получить что-то от этого. Я борюсь с фактической частью столкновения, так как независимо от того, что я делаю, я не могу заставить его работать. В настоящее время у меня есть этот скрипт на моем объекте патронного патрона.Столкновение скрипта на объекте, с которым сталкивается игрок с пикапом

void onTriggerEnter(Collider collision) { 
    if (collision.gameObject.tag == "Player") 
    { 
     Debug.Log ("Collided"); 
    } 
} 

Мой объект боезапас пакет имеет коллайдер на нем (в настоящее время капсулы, будет коробка для конечного продукта), который имеет «спусков» включен. У моего игрока также есть коллайдер с капсулой (без триггера) и жесткое тело с включенной гравитацией и все остальное по умолчанию. Он также помечен как «Player». Когда мой игрок входит в пакет боеприпасов, сообщение не печатается.

Я пробовал несколько решений, связанных с сменой триггеров на коллайдерах и кинематическими настройками жесткого тела, но ни один из них, похоже, не работает. Я использую Unity 5, и поэтому мне было интересно, не делаю ли я что-то неправильно. Любая помощь будет принята с благодарностью.

+0

Они оба используют один и тот же коллайдер? Коллайдер предназначен для 3D, а Collider2D - сам по себе. – Aizen

ответ

2

Эта функция никогда не будет вызвана, потому что ваша капитализация неверна. Заполните первую букву имени функции.

void OnTriggerEnter(Collider c) 

Вместо:

void onTriggerEnter(Collider c) 

Примечание: Всегда используйте CompareTag() вместо == для сравнения строк. Оба работают, но CompareTag совместим с GC.

+0

Смешные, синтаксическая раскраска указывает на правильный ответ. –

+0

Не могу поверить, что я был таким глупым. В MonoDevelop имя функции не окрашено (даже если оно правильно). Я просто привык к строчному стартовому письму для некоторых вещей. Спасибо вам за помощь! EDIT: GC дружественный? – ixTec

+0

Это уменьшит необходимость сбора мусора. Это документированная проблема. –

Смежные вопросы