예제 #1
0
    public override void Start()
    {
        base.Start();

        moveState           = new Archer_MoveState(this, stateMachine, "Move", _moveStateData, this);
        idleState           = new Archer_IdleState(this, stateMachine, "Idle", _idleStateData, this);
        playerDetectedState = new Archer_PlayerDetected(this, stateMachine, "PlayerDetected", _playerDetectedData, this);
        meleeAttackState    = new Archer_MeleeAttack(this, stateMachine, "MeleeAttack", meleeAttackPosition, _meleeAttackData, this);
        lookForPlayerState  = new Archer_LookForPlayerState(this, stateMachine, "LookForPlayer", _lookForPlayerData, this);
        stunState           = new Archer_StunState(this, stateMachine, "Stun", _stunStateData, this);
        deadState           = new Archer_DeadState(this, stateMachine, "Dead", _deadStateData, this);
        dodgeState          = new Archer_DodgeState(this, stateMachine, "Dodge", _dodgeStateData, this);
        rangeAttackState    = new Archer_RangedAttack(this, stateMachine, "RangeAttack", rangeAttackPosition, _rangeAttackStateData, this);

        stateMachine.Initialize(moveState);
    }
예제 #2
0
    public override void Start()
    {
        base.Start();

        // Initialize states.
        moveState           = new Archer_MoveState(this, stateMachine, "move", moveStateData, this);
        idleState           = new Archer_IdleState(this, stateMachine, "idle", idleStateData, this);
        playerDetectedState = new Archer_PlayerDetectedState(this, stateMachine, "playerDetected", playerDetectedStateData, this);
        meleeAttackState    = new Archer_MeleeAttackState(this, stateMachine, "meleeAttack", meleeAttackStateData, this);
        lookForPlayerState  = new Archer_LookForPlayerState(this, stateMachine, "lookForPlayer", lookForPlayerStateData, this);
        stunState           = new Archer_StunState(this, stateMachine, "stun", stunStateData, this);
        deadState           = new Archer_DeadState(this, stateMachine, "dead", deadStateData, this);
        dodgeState          = new Archer_DodgeState(this, stateMachine, "dodge", dodgeStateData, this);
        rangedAttackState   = new Archer_RangedAttackState(this, stateMachine, "rangedAttack", rangedAttackStateData, this);

        stateMachine.Initialize(moveState);
    }