public void ChangeState(eAnimationStateName name) { if (HasState(name) && _char.IsDie == false) { _reverseState = _aniDic[name]; } }
void AnimationLastFrame(eAnimationStateName name) { if (OnAnimationPlayEnd != null) { OnAnimationPlayEnd(name); } }
protected void ChangeState(eAnimationStateName nextState) { if (OnChangeState != null) { OnChangeState(nextState); } }
void CreateState(eAnimationStateName name) { CharacterState state = null; switch (name) { case eAnimationStateName.Idle: state = new Idle_State((int)name); break; case eAnimationStateName.Run: state = new Run_State((int)name); break; case eAnimationStateName.Attack: state = new Attack_State((int)name); break; case eAnimationStateName.Jump: state = new Jump_State((int)name); break; case eAnimationStateName.Crouch: state = new Crouch_State((int)name); break; case eAnimationStateName.Crouch_Attack: state = new CrouchAttack_State((int)name); break; case eAnimationStateName.Jump_Attack: state = new JumpAttack_State((int)name); break; case eAnimationStateName.Hurt: state = new Hurt_State((int)name); break; case eAnimationStateName.Hide: state = new Hide_State((int)name); break; case eAnimationStateName.Die: state = new DIe_State((int)name); break; case eAnimationStateName.Rise: state = new Rise_State((int)name); break; default: break; } if (state == null) { return; } state.Init(_char); _aniDic.Add(name, state); }
public void OnRequestChangeState(eAnimationStateName nextState) { if (HasState(nextState)) { _reverseState = _aniDic[nextState]; } }
void AnimationEvent(eAnimationStateName name) { if (OnAnimationEvent != null) { OnAnimationEvent(name); } }
public override void OnAnimationPlayEnd(eAnimationStateName name) { if (name == _stateName) { ChangeState(eAnimationStateName.Idle); } }
public bool HasState(eAnimationStateName name) { if (_stateManager == null) { return(false); } return(_stateManager.HasState(name)); }
public void ChangeState(eAnimationStateName name) { if (CurrentStateName() == name) { return; } _stateManager.ChangeState(name); }
public bool HasChange(eAnimationStateName name) { if (HasState(name)) { ChangeState(name); return(true); } return(false); }
public override void OnAnimationPlayEnd(eAnimationStateName name) { if (name == _stateName) { if (_char.Stat.AttackType == eAttackType.Range) { Fire(); } _isAnimationEnd = true; } }
public bool HasAnimationInfo(eAnimationStateName name) { foreach (var obj in _aniContainer.SpriteAnimationInfoList) { if (obj.eAniState == name) { return(true); } } return(false); }
public bool PlayAnimation(eAnimationStateName name) { if (_sprAniInfo.ContainsKey(name)) { _playAniInfo = _sprAniInfo[name]; _delaySec = new WaitForSeconds(_playAniInfo.NextSprChangePerSec); _frameCount = 0; StopAllCoroutines(); StartCoroutine(AnimationPlay()); return(true); } return(false); }
public override void OnAnimationPlayEnd(eAnimationStateName name) { if (name == _stateName) { if (_char.AllyType == eUnitAllyType.Player) { BattleManager._Instance.StageEnd(); } if (_char.AllyType != eUnitAllyType.Player) { _char.DeActiveBehavior(); } } }
public bool HasState(eAnimationStateName name) { return(_aniDic.ContainsKey(name)); }
public virtual void OnAnimationEvent(eAnimationStateName name) { }
public virtual void OnAnimationPlayEnd(eAnimationStateName name) { }
public CharacterState(int stateIdx) : base(stateIdx) { _stateName = (eAnimationStateName)stateIdx; }
protected void OnAnimationEvent(eAnimationStateName name) { _stateManager.OnAnmationEvent(name); }
public void OnChangeState(eAnimationStateName changeName) { }
public virtual void OnAnmationEvent(eAnimationStateName name) { _curState.OnAnimationEvent(name); }
public override void OnAnimationPlayEnd(eAnimationStateName name) { base.OnAnimationPlayEnd(name); }
public override void OnAnimationPlayEnd(eAnimationStateName name) { if (name == _stateName) { } }
protected void OnAnimationPlayEnd(eAnimationStateName name) { _stateManager.OnAnmationPlayEnd(name); }
IEnumerator coAIUpdate() { while (true) { eAnimationStateName curState = CurrentStateName(); switch (_currentAI) { case eAiState.Idle: //인식 범위 if (CalDistance() > _unit.Stat.AppreciateDistance) { if (HasState(eAnimationStateName.Hide)) { ChangeState(eAnimationStateName.Hide); } } else { CalDirToTarget(); switch (curState) { case eAnimationStateName.Idle: if (HasState(eAnimationStateName.Run)) { ChangeState(eAnimationStateName.Run); _currentAI = eAiState.MoveToTarget; } else if (HasState(eAnimationStateName.Attack)) { ChangeState(eAnimationStateName.Attack); _currentAI = eAiState.Attack; } break; case eAnimationStateName.Hide: if (HasState(eAnimationStateName.Rise)) { ChangeState(eAnimationStateName.Rise); _currentAI = eAiState.MoveToTarget; } break; } } break; case eAiState.MoveToTarget: if (CalDistance() > _unit.Stat.AttackRange) { if (HasState(eAnimationStateName.Run)) { CalDirToTarget(); ChangeState(eAnimationStateName.Run); } } else { CalDirToTarget(); switch (curState) { case eAnimationStateName.Run: if (HasState(eAnimationStateName.Attack)) { ChangeState(eAnimationStateName.Attack); _currentAI = eAiState.Attack; } else { ChangeState(eAnimationStateName.Idle); _currentAI = eAiState.Idle; } break; } } break; case eAiState.Attack: if (CalDistance() > _unit.Stat.AttackRange) { ChangeState(eAnimationStateName.Idle); _currentAI = eAiState.Idle; } else { switch (curState) { case eAnimationStateName.Idle: if (HasState(eAnimationStateName.Attack) && CurrentStateName() != eAnimationStateName.Attack) { CalDirToTarget(); ChangeState(eAnimationStateName.Attack); } break; } } break; } yield return(_waitSec); } }
public virtual void OnAnmationPlayEnd(eAnimationStateName name) { _curState.OnAnimationPlayEnd(name); }
public override void OnAnimationEvent(eAnimationStateName name) { _char.SetAttack(true); }