Как я могу вытереть один объект сразу после столкновения с ним?Fade out object
Я не могу использовать Destroy (gameObject);
, потому что этот объект является монетами с звуком efx, если я уничтожу его, как только звук объекта не будет воспроизводиться, когда игрок столкнется с монетой.
И если я не уничтожить то, монета сразу, вы зарабатываете очки каждый раз, когда вы ударный этой монету
Я использую Audio Mixer, так что на самом деле нужен звук монеты происходит от аудио источника к банке установите громкость в моих настройках.
Моя идея:
void OnCollisionEnter2D(Collision2D colisor)
{
if (colisor.gameObject.tag == "Bee") {
GetComponent<AudioSource>().Play();
// Here set Fade ou immediateley (idk how do)
// Set Box Collider FALSE, no more extra points =]
this.GetComponent<BoxCollider2D>().enabled = false;
score.AddScore (point);
// Destroy object after 1 sec, now can play efx sound
Destroy (gameObject, 1f);
}
if (colisor.gameObject.tag == "floor") {
Destroy (gameObject, 1.5f);
}
Текущий КОД:
void OnCollisionEnter2D(Collision2D colisor)
{
if (colisor.gameObject.tag == "Bee") {
GetComponent<AudioSource>().Play();
score.AddScore (point);
Destroy (gameObject);
}
if (colisor.gameObject.tag == "floor") {
Destroy (gameObject, 1.5f);
}
отлично работает хе-хе, но у меня есть 3 разных монеты, как и у других 2? –
@AlanVieiraRezende Прикрепите тот же скрипт к вашим 3-мя различным монетам. Он все равно сделает то же самое. воспроизводить звук, а затем уничтожаться. – Programmer
Я выразил плохо, 3 разных монеты звуков sfx. –