protected override void ChangeLeverState(GameObject lever) { if (lever.name.StartsWith("Lever")) { Lever leverScript = lever.GetComponent <Lever>(); lever.GetComponent <AudioSource>().Play(); if (leverScript.active) { leverScript.DisactiveLever(); } else { leverScript.ActivateLever(); } } else { // It is a fake FakeLever leverScript = lever.GetComponent <FakeLever>(); if (leverScript.active) { leverScript.DisactiveLever(); } else { leverScript.ActivateLever(); } } }