public void OnStateUpdate(OTGCombatSMC _controller) { UpdateHandlerStateTime(_controller); PerformActions(m_onUpdateActions, _controller); EvaluateTransitions(_controller); IncrementStateTime(); }
public static ushort GetCombatantID(OTGCombatSMC _requestingController) { ushort newID = 0; return(newID); }
private void EvaluateTransitions(OTGCombatSMC _controller) { for (int i = 0; i < m_stateTransitions.Length; i++) { m_stateTransitions[i].MakeDecision(_controller); } }
private void PerformActions(OTGCombatAction[] _actions, OTGCombatSMC _controller) { for (int i = 0; i < _actions.Length; i++) { _actions[i].Act(_controller); } }
private void SetSoundFXData(OTGCombatSMC _controller) { if (m_combatAnim.AnimClip == null) { return; } _controller.Handler_SFX.SetData(m_combatAnim.SoundFX); }
private void SubscribeToCombatantsList(OTGCombatSMC _requester) { if (!m_combatants.Contains(_requester)) { m_combatants.Add(_requester); } m_combatantCount = m_combatants.Count; }
private void PlayAnimation(OTGCombatSMC _controller) { if (m_combatAnim == null || m_combatAnim.AnimClip == null) { return; } _controller.Handler_Animation.PlayAnimation(m_combatAnim.AnimClip); }
private void SetAnimationData(OTGCombatSMC _controller) { if (m_combatAnim.AnimClip == null) { return; } _controller.Handler_Animation.UpdateAnimData(m_combatAnim.AnimData); }
public void MakeDecision(OTGCombatSMC _controller) { for (int i = 0; i < m_decisions.Length; i++) { if (!m_decisions[i].Decide(_controller)) { return; } } _controller.OnChangeStateRequested(m_nextState, m_usePreviousState); }
public void OnStateEnter(OTGCombatSMC _controller, bool _reentry = false) { m_stateReEntered = _reentry; SetAnimationData(_controller); SetHurtColliderData(_controller); SetHitColliderData(_controller); PerformActions(m_onEnterActions, _controller); SetSoundFXData(_controller); if (_reentry) { return; } ResetStateTime(); UpdateHandlerStateTime(_controller); PlayAnimation(_controller); }
public void OnStateAnimUpdate(OTGCombatSMC _controller) { PerformActions(m_animUpdateActions, _controller); }
private void UnsubscribeFromCombatantsList(OTGCombatSMC _requester) { m_combatants.Remove(_requester); m_combatantCount = m_combatants.Count; }
public abstract bool Decide(OTGCombatSMC _controller);
public void OnStateExit(OTGCombatSMC _controller) { PerformActions(m_onExitActions, _controller); m_stateReEntered = false; }
public static void SubscribeToCombatantUpdateLoop(OTGCombatSMC _combatant) { m_instance.SubscribeToCombatantsList(_combatant); }
private void UpdateHandlerStateTime(OTGCombatSMC _controller) { _controller.Handler_Animation.UpdateStateTime(m_stateTime); }
private void SetHurtColliderData(OTGCombatSMC _controller) { CombatAnimHurtCollisionData data = m_combatAnim.HurtCollisionData; _controller.Handler_Collision.SetHurtColliderData(data); }
private void SetHitColliderData(OTGCombatSMC _controller) { CombatAnimHitCollisionData data = m_combatAnim.HitCollisionData; _controller.Handler_Collision.HitCollider.OnDataUpdate(data); }
public static void UnsubscribeFromCombatantUpdateLoop(OTGCombatSMC _combatant) { m_instance.UnsubscribeFromCombatantsList(_combatant); }
public abstract void Act(OTGCombatSMC _controller);