public override void OnTriggerChange(ITrigger t) { bool shouldTriggerSound = !source.isPlaying; if (!shouldTriggerSound) { return; } switch (triggerMode) { case TriggerMode.RISING: if (t.GetState()) { shouldTriggerSound = false; } break; case TriggerMode.FALLING: if (!t.GetState()) { shouldTriggerSound = false; } break; } if (shouldTriggerSound) { source.PlayOneShot(sounds[Random.Range(0, sounds.Length)]); } }
public override void OnTriggerChange(ITrigger t) { bool shouldTrigger = true; switch (triggerMode) { case TriggerMode.RISING: if (t.GetState()) { shouldTrigger = false; } break; case TriggerMode.FALLING: if (!t.GetState()) { shouldTrigger = false; } break; } if (shouldTrigger) { GetComponent <ParticleSystem>().Clear(); GetComponent <ParticleSystem>().Play(); } }