Exemple #1
0
    protected override void ReverseAction(Action _action, float _time)
    {
        switch (_action.Type)
        {
        case ActionType.BSeekAndShoot:
            _currentBehavior = null;
            break;

        case ActionType.BSeekAndShootUnset:
            _currentBehavior = _action.Behavior;
            break;

        case ActionType.Alert:
            _isAlerted = false;
            break;

        case ActionType.UnAlert:
            _isAlerted = true;
            break;

        case ActionType.Die:
            _isDead = false;
            break;

        case ActionType.Deactivate:
            Activate(_action);
            break;

        case ActionType.Activate:
            Deactivate(_action);
            break;
        }
        if (_currentBehavior != null)
        {
            _currentBehavior.ReverseAction(_action);
        }
        base.ReverseAction(_action, _time);
    }