IEnumerator TransitionDesert(ExitDoorDesert door) { yield return(new WaitForSeconds(1.0f)); DesertManager dm = FindObjectOfType <DesertManager>(); dm.Transition(); door.numberTimesUsed++; }
void Start() { door = FindObjectOfType <ExitDoorDesert>(); originalColor = new Color[] { bg0.color, light0.color, bg1.color, light1.color, bg2.color, light2.color }; bg1.color = new Color(bg1.color.r, bg1.color.g, bg1.color.b, 0); light1.color = new Color(light1.color.r, light1.color.g, light1.color.b, 0); bg2.color = new Color(bg2.color.r, bg2.color.g, bg2.color.b, 0); light2.color = new Color(light2.color.r, light2.color.g, light2.color.b, 0); GameObject bgMusic = GameObject.FindGameObjectWithTag("BackgroundMusic"); if (bgMusic) { FMODUnity.StudioEventEmitter emitter = GameObject.FindGameObjectWithTag("BackgroundMusic").GetComponent <FMODUnity.StudioEventEmitter>(); emitter.SetParameter("room2", 1.0f); } }
public void ResolveInteraction(string interactionId, GameObject obj) { Debug.Log("Resolving interaction: " + interactionId); if (interactionId == "breakable_door_00") { GameObject.Find("InputController").GetComponent <InputController>().ActionTutorialPass(); Player.GetComponentInChildren <Animator>().SetBool("headbutt", true); } else if (interactionId == "exit_door_00" || interactionId == "exit_door_01" || interactionId == "exit_door_02" || interactionId == "exit_door_04") { ExitDoor exitDoor = obj.GetComponent <ExitDoor>(); if (!exitDoor.usable) { return; } exitDoor.usable = false; Player.GetComponent <CharacterController2D>().WalkRightEndlessly = true; if (interactionId == "exit_door_00") { GameObject depthWall = GameObject.FindGameObjectWithTag("DepthWall"); Transform depthWallTransform = depthWall.transform; depthWallTransform.position = new Vector3( depthWallTransform.position.x, depthWallTransform.position.y, -5.0f); } LevelTransitionManager.Instance.LoadNextLevel(); } else if (interactionId == "wall_fish_00" || interactionId == "wall_fish_01" || interactionId == "wall_fish_02") { RotatingWheel rotatingWheel = obj.GetComponent <RotatingWheel>(); if (!rotatingWheel.usable) { return; } rotatingWheel.Rotate(); } else if (interactionId == "wheel_puzzle_ok") { StartCoroutine(WheelPuzzleActions()); } else if (interactionId == "exit_door_desert") { ExitDoorDesert door = obj.GetComponent <ExitDoorDesert>(); if (!door.usable) { return; } if (door.numberTimesUsed == 0 || door.numberTimesUsed == 1) { Player.GetComponent <CharacterInteractions>().InteractionsEnabled = false; Player.GetComponent <CharacterController2D>().WalkRightEndlessly = true; StartCoroutine(TransitionDesert(door)); } else { door.usable = false; Player.GetComponent <CharacterInteractions>().InteractionsEnabled = false; Player.GetComponent <CharacterController2D>().WalkRightEndlessly = true; LevelTransitionManager.Instance.LoadNextLevel(); } } }