Exemple #1
0
        public virtual void Tick()
        {
            if (_agent.Health.IsDead)
            {
                _agent.StateMachine.ChangeState(new DeathState(_agent));
                return;
            }

            MoveAgent();

            if (_brain.Roll == true && _brain.Attack != true)
            {
                _agent.StateMachine.ChangeState(new RollingState(_agent));
            }

            if (_brain.Attack == true)
            {
                _agentBody.Attack();
            }

            if (_brain.MeleeAttack)
            {
                _agent.Body.MeleeAttack();
            }

            if (_brain.SwitchWeapons == true)
            {
                _agentBody.SwitchWeapons();
            }

            if (_agent.Physics.IsFalling)
            {
                _stateMachine.ChangeState(new FallState(_agent));
            }
        }