protected void Awake() { pcc_animator = GetComponent <Animator>(); pcc_rigidbody = GetComponent <Rigidbody>(); pcc_collider = GetComponent <Collider>(); currPlayerStatus = new Dictionary <StatusListElement, bool>(); foreach (StatusListElement key in Enum.GetValues(typeof(StatusListElement))) { currPlayerStatus.Add(key, false); } currPlayerObjectStatus = new Dictionary <Dictionaries.ItemName, bool>(); foreach (Dictionaries.ItemName key in Enum.GetValues(typeof(Dictionaries.ItemName))) { currPlayerObjectStatus.Add(key, false); } UpdateObjectStatus(); PlayerUnitytoSpineController pUSCDetecte = StateMachineBehaviourUtilities.GetBehaviourByName <PlayerUnitytoSpineController>(this.pcc_animator, "Detecte"); pUSCDetecte.onStateExitCallbacks.Add(() => { this.ChangeStatus(StatusListElement.BLOCKED, false); this.ChangeStatus(StatusListElement.DETECTED, false); }); }
private void UseVentialtion(ObjectInteractionController oicCaller, Collider other) { spcc = other.GetComponent <SplinePlayerCharacterController>(); if (!pcc.currPlayerStatus[PlayerCharacterController.StatusListElement.BLOCKED]) { pcc.ChangeStatus(PlayerCharacterController.StatusListElement.BLOCKED, true); PlayerUnitytoSpineController pUSC = StateMachineBehaviourUtilities.GetBehaviourByName <PlayerUnitytoSpineController>(pcc.pcc_animator, "Screwdriver"); pUSC.onStateExitCallbacks.Add(() => { StartToMoveInVentialtion(oicCaller, other); pUSC.onStateExitCallbacks.Clear(); }); pcc.pcc_animator.SetTrigger("isUsingScrew"); SoundManager.GetAudio(audioScrewdriver).Play(); } }
private void TpOutPlayerDelegate(Vector3 nextPos, Quaternion nextRot) { pcc.pcc_animator.SetBool("isTPOut", false); PlayerUnitytoSpineController pUSC = StateMachineBehaviourUtilities.GetBehaviourByName <PlayerUnitytoSpineController>(pcc.pcc_animator, "TP In"); pUSC.onStateExitCallbacks.Add(() => { TpInPlayerDelegate(); pUSC.onStateExitCallbacks.Clear(); }); pcc.transform.SetPositionAndRotation(nextPos, nextRot); pcc.ninjaModel.SetActive(true); pcc.pcc_animator.SetBool("isTPIn", true); GameObject.Instantiate(Resources.Load("Prefabs/TPCLoud"), pcc.transform); SoundManager.GetAudio(audioTPID).Play(); }
protected void TpPlayerOut(Vector3 nextPos, Quaternion nextRot, PlayerCharacterController pcc) { //Animator anim = pcc.pcc_animator; //PlayerUnitytoSpineController pUSC = pcc.pcc_animator.GetBehaviour<PlayerUnitytoSpineController>(); PlayerUnitytoSpineController pUSC = StateMachineBehaviourUtilities.GetBehaviourByName <PlayerUnitytoSpineController>(pcc.pcc_animator, "TP Out"); pUSC.onStateExitCallbacks.Add(() => { TpOutPlayerDelegate(nextPos, nextRot); pUSC.onStateExitCallbacks.Clear(); }); pcc.pcc_animator.SetBool("isTPOut", true); SoundManager.GetAudio(audioTPID).Play(); GameObject.Instantiate(Resources.Load("Prefabs/TPCloud"), pcc.transform); pcc.ninjaModel.SetActive(false); }