public void TriggerInteraction() { if (!CanTriggerInteraction()) { return; } switch (sequenceType) { case SequenceType.SuddenDeath: BaseDeathTrigger baseDeathTrigger = GetComponent <BaseDeathTrigger>(); baseDeathTrigger.TriggerDeath(); break; case SequenceType.SuddenDeathSkill: SkillDeathTrigger skillDeathTrigger = GetComponent <SkillDeathTrigger>(); skillDeathTrigger.TriggerDeath(); break; case SequenceType.SuddenDeathCollectable: CollectableDeathTrigger collectableDeathTrigger = GetComponent <CollectableDeathTrigger>(); collectableDeathTrigger.TriggerDeath(); break; case SequenceType.Collectable: Collectable collectable = GetComponent <Collectable>(); collectable.Collect(); break; case SequenceType.AnimationThenDeath: break; case SequenceType.ChangeScene: ChangeLevel changleLevel = GetComponent <ChangeLevel>(); changleLevel.LoadLevel(); break; case SequenceType.OpenShop: Shop.Current.OpenShop(); break; case SequenceType.CustomDeath: GetComponent <ICustomDeath>().Trigger(); break; } }