Beispiel #1
0
    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;
        }
    }
Beispiel #2
0
 protected void initAnimFSM()
 {
     if (m_animFSM == null)
     {
         m_animFSM = new AnimFSM();
         //m_animFSM.beingEntity = this;
         m_animFSM.InitFSM();
     }
 }
Beispiel #3
0
    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;
        }
    }
Beispiel #4
0
    public void Awake()
    {
        Owner = GetComponent <AgentHuman>();

        Animation = GetComponent <Animation>();
        //OwnerTransform = transform;

        FSM = new AnimFSM(Animation, Owner);
        FSM.Initialize();

        enabled = false;
    }
Beispiel #5
0
    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;
        }
    }
Beispiel #6
0
    //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);
    }