IEnumerator playHelperSuccessAnim() { helperSuccessAnim.SetActive(false); helperSuccessAnim.SetActive(true); AudioCenter.PlayGetItem(); yield return(null); }
private void OnTriggerEnter(Collider other) { if (other.CompareTag("PlayerOnBoard")) { // Player_ID = other.GetComponentInParent<PlayerIDOnBoard>().PlayerIDOB; other.GetComponentInParent <Inventory>().Setpositon(this.gameObject); AudioCenter.PlayGetItem(); } }
// Update is called once per frame void Update() { Billboard.GetComponent <BillboardManager>().SetDebugInfo("Task 6 - State: " + substate); switch (substate) { case 1: Billboard.HighLight(2); Talker.GetComponent <SPHelperTalk>().Speak(Task6VOs[0]); substate = 2; break; case 2: if (talkerAnim.FinishedTalking()) { Talker.GetComponent <SPHelperTalk>().Speak(Task6VOs[1]); RuneOnTile.SetActive(true); TwoRunesInInventory.SetActive(true); substate = 3; } break; case 3: if (talkerAnim.FinishedTalking()) { // Helper.GetComponent<SPHelperTalk>().Speak(Task6VOs[2]); Seems repeted; Controller.canControl = true; Controller.controlMode = 1; Controller.rightHandHoverUI.GetComponentInChildren <UnityEngine.UI.Text>().text = "Move Mode"; substate = 4; } break; case 4: if (RuneOnTile.GetComponent <moveDetector>().IfTouched()) { Talker.GetComponent <SPHelperTalk>().Speak(Task6VOs[3]); //Walker.transform.LookAt(Walker.transform.position + new Vector3(-0.2f, 0, 0)); AudioCenter.PlayGetItem(); RuneOnTile.SetActive(false); ThirdRuneInInventory.SetActive(true); substate = 5; } break; case 5: if (KeyOnTile.GetComponent <moveDetector>().IfTouched()) { AudioCenter.PlayGetItem(); ThirdRuneInInventory.SetActive(false); TwoRunesInInventory.SetActive(false); KeyOnTile.SetActive(false); KeyOnInventory.SetActive(true); substate = 6; } break; case 6: if (Door.GetComponent <moveDetector>().IfTouched()) { Talker.GetComponent <SPHelperTalk>().Speak(Task6VOs[4]); Door.GetComponent <Animator>().SetTrigger("DoorOpen"); KeyOnInventory.SetActive(false); //Walker.transform.LookAt(Walker.transform.position + new Vector3(-0.2f, 0, 0)); iTween.MoveTo(Talker, iTween.Hash("position", NextPlace, "easetype", iTween.EaseType.easeInOutSine)); talkerAnim.Success(); Billboard.Check(2); substate = 7; } break; case 7: if (talkerAnim.FinishedTalking()) { StartCoroutine(FinishTutorial()); substate = -1; } break; } }
// Update is called once per frame void Update() { Billboard.GetComponent <BillboardManager>().SetDebugInfo("Task 1 - State: " + substate); switch (substate) { case 1: Talker.GetComponent <SPHelperTalk>().Speak(Task1VOs[0]); Billboard.HighLight(0); Controller.ChangeControlMode(); Controller.controlMode = 1; Controller.rightHandHoverUI.GetComponentInChildren <UnityEngine.UI.Text>().text = "Move Mode"; substate = 2; break; case 2: if (FirstMoveDetector.IfTouched()) { // 1st island lose 1 health. StartCoroutine(BreakCrystal(firstCrystal)); // play VO good job, then go get item StartCoroutine(finishAndGo()); substate = 3; } break; case 3: if (SecondMoveDetector.IfTouched()) { // crystal break and island fall islandPosBeforeFall = islandToFall.transform; StartCoroutine(BreakCrystal(secondCrystal)); StartCoroutine(IslandFall()); // VO island HP Talker.GetComponent <SPHelperTalk>().Speak(Task1VOs[3]); substate = 4; } break; case 4: if (talkerAnim.FinishedTalking()) { // VO move again Talker.GetComponent <SPHelperTalk>().Speak(Task1VOs[4]); // island with full health return islandToReturn.SetActive(true); iTween.MoveTo(islandToReturn, iTween.Hash("position", islandPosBeforeFall, "easetype", iTween.EaseType.easeInOutSine)); Walker.SetActive(true); substate = 5; } break; case 5: if (ThirdMoveDetector.IfTouched()) { // 3st island lose 1 health. StartCoroutine(BreakCrystal(thirdCrystal)); Walker.transform.LookAt(Walker.transform.position + new Vector3(-0.2f, 0, 0)); // helper look at player // VO got item, helper fly Talker.GetComponent <SPHelperTalk>().Speak(Task1VOs[5]); AudioCenter.PlayGetItem(); StartCoroutine(HelperFlyToInventory()); // turn off moving Controller.rightHandHoverUI.GetComponentInChildren <UnityEngine.UI.Text>().text = "Hold on..."; // item appear on inv HealItemOnBoard.SetActive(false); Inventory.SetActive(true); HealItemOnInv.SetActive(true); substate = 6; } break; case 6: if (talkerAnim.FinishedTalking()) { Billboard.Check(0); Talker.GetComponent <SPHelperTalk>().Speak(Task1VOs[6]); substate = 7; } break; case 7: if (talkerAnim.FinishedTalking()) { substate = 8; } break; case 8: overallManager.startTask2(); overallManager.destroyStuff(this.gameObject); break; } }