public void Awake() { Animation = GetComponent <Animation>(); Owner = GetComponent <Agent>(); switch (TypeOfFSM) { case E_AnimFSMTypes.Player: FSM = new AnimFSMPlayer(Animation, Owner); break; case E_AnimFSMTypes.Archer: FSM = new AnimFSMEnemyArcher(Animation, Owner); break; case E_AnimFSMTypes.Swordsman: FSM = new AnimFSMEnemySwordsman(Animation, Owner); break; case E_AnimFSMTypes.Peasant: FSM = new AnimFSMEnemyPeasant(Animation, Owner); break; case E_AnimFSMTypes.MiniBoss01: FSM = new AnimFSMEnemyMiniBoss(Animation, Owner); break; case E_AnimFSMTypes.MiniBoss02: FSM = new AnimFSMEnemyMiniBoss(Animation, Owner); break; case E_AnimFSMTypes.DoubleSwordsman: FSM = new AnimFSMEnemyDoubleSwordsman(Animation, Owner); break; case E_AnimFSMTypes.Musketeer: FSM = new AnimFSMEnemyDoubleSwordsman(Animation, Owner); break; case E_AnimFSMTypes.Boss01: FSM = new AnimFSMEnemyBoss01(Animation, Owner); break; case E_AnimFSMTypes.Boss02: FSM = new AnimFSMEnemyBoss02(Animation, Owner); break; case E_AnimFSMTypes.Boss03: FSM = new AnimFSMEnemyBoss03(Animation, Owner); break; case E_AnimFSMTypes.BossOrochi: FSM = new AnimFSMEnemyBossOrochi(Animation, Owner); break; default: Debug.LogError(this.name + "unknow type of FSM. Type: " + TypeOfFSM.ToString()); break; } }
protected void initAnimFSM() { if (m_animFSM == null) { m_animFSM = new AnimFSM(); //m_animFSM.beingEntity = this; m_animFSM.InitFSM(); } }
public void Awake() { Owner = GetComponent <Agent>(); Animation = GetComponent <Animation>(); //OwnerTransform = transform; switch (TypeOfFSM) { case E_AnimFSMTypes.Player: FSM = new AnimFSMPlayer(Animation, Owner); break; case E_AnimFSMTypes.Archer: FSM = new AnimFSMEnemyArcher(Animation, Owner); break; case E_AnimFSMTypes.Swordsman: FSM = new AnimFSMEnemySwordsman(Animation, Owner); break; case E_AnimFSMTypes.Peasant: FSM = new AnimFSMEnemyPeasant(Animation, Owner); break; case E_AnimFSMTypes.DoubleSwordsman: FSM = new AnimFSMEnemyDoubleSwordsman(Animation, Owner); break; //case E_AnimFSMTypes.MiniBoss01: // FSM = new AnimFSMEnemyMiniBoss(Animation, Owner); // break; //case E_AnimFSMTypes.MiniBoss02: // FSM = new AnimFSMEnemyMiniBoss(Animation, Owner); // break; //case E_AnimFSMTypes.Musketeer: // FSM = new AnimFSMEnemyDoubleSwordsman(Animation, Owner); // break; //case E_AnimFSMTypes.Boss01: // FSM = new AnimFSMEnemyBoss01(Animation, Owner); // break; //case E_AnimFSMTypes.Boss02: // FSM = new AnimFSMEnemyBoss02(Animation, Owner); // break; //case E_AnimFSMTypes.Boss03: // FSM = new AnimFSMEnemyBoss03(Animation, Owner); // break; //case E_AnimFSMTypes.BossOrochi: // FSM = new AnimFSMEnemyBossOrochi(Animation, Owner); // break; default: Debug.LogError(this.name + " unkown type of FSM"); break; } }
public void Awake() { Owner = GetComponent <AgentHuman>(); Animation = GetComponent <Animation>(); //OwnerTransform = transform; FSM = new AnimFSM(Animation, Owner); FSM.Initialize(); enabled = false; }
public void Awake() { Animation = GetComponent <Animation>(); Owner = GetComponent <Agent>(); switch (TypeOfFSM) { case E_AnimFSMTypes.Player: FSM = new AnimFSMPlayer(Animation, Owner); break; case E_AnimFSMTypes.Boss: break; default: Debug.LogError(this.name + "unknow type of FSM. Type:" + TypeOfFSM.ToString()); break; } }
//public AnimFSM FSM { get { return _fsm; } } // Use this for initialization void Start() { _agent = GetComponent <Agent1>(); List <FSMState> states = new List <FSMState>(); FSMState defState = null; foreach (var stateType in FSMStates) { FSMState state = null; switch (stateType) { case AnimFSMStateType.IDLE: state = new AnimFSMStateIdle(_agent); break; case AnimFSMStateType.GOTO: state = new AnimFSMStateGoTo(_agent); break; case AnimFSMStateType.COMBAT_MOVE: state = new AnimFSMStateCombatMove(_agent); break; case AnimFSMStateType.ROTATE: state = new AnimFSMStateRotate(_agent); break; case AnimFSMStateType.ATTACK_MELEE: state = new AnimFSMStateAttackMelee(_agent); break; case AnimFSMStateType.ATTACK_WHIRL: state = new AnimFSMStateAttackWhirl(_agent); break; case AnimFSMStateType.INJURY: state = new AnimFSMStateInjury(_agent); break; case AnimFSMStateType.DEATH: state = new AnimFSMStateDeath(_agent); break; case AnimFSMStateType.KNOCK_DOWN: state = new AnimFSMStateKnockDown(_agent); break; case AnimFSMStateType.PLAY_ANIM: state = new AnimFSMStatePlayAnim(_agent); break; case AnimFSMStateType.MOVE: state = new AnimFSMStateMove(_agent); break; case AnimFSMStateType.ROLL: state = new AnimFSMStateRoll(_agent); break; case AnimFSMStateType.BLOCK: state = new AnimFSMStateBlock(_agent); break; case AnimFSMStateType.ATTACK_CROSS: state = new AnimFSMStateAttackCross(_agent); break; case AnimFSMStateType.ATTACK_ROLL: state = new AnimFSMStateAttackRoll(_agent); break; case AnimFSMStateType.ATTACK_BOW: state = new AnimFSMStateAttackBow(_agent); break; case AnimFSMStateType.FLASH: state = new AnimFSMStateFlash(_agent); break; case AnimFSMStateType.INJURY_BOSS: state = new AnimFSMStateInjuryBoss(_agent); break; case AnimFSMStateType.MOVE_ROTATE: state = new AnimFSMStateMoveRotate(_agent); break; default: break; } if (state != null) { states.Add(state); if (state.StateType == (int)defFSMState) { defState = state; } } } _fsm = new AnimFSM(states, defState); }