Пример #1
0
    public void TileSelected(Tile tile)
    {
        if (_state != ControllerState.WaitingForSelection)
        {
            return;
        }
        if (selectedCharacter == null)
        {
            return;
        }
        if (selectedCharacter.Team != team)
        {
            return;
        }
        if (selectedCharacter.GetActionPoints() == 0)
        {
            return;
        }
        var moves = GridController.Singelton.GetRunedPath(selectedCharacter, selectedCharacter.currentTile, tile);

        for (var index = 0; index < moves.Count; index++)
        {
            var t = moves[index];
            RuneManager.Singelton.ExecuteRune(t);
        }
        _state = ControllerState.WaitingForActionToFinish;

        var runeSetAp = new RuneManager.SetActionPoint(selectedCharacter.GetActionPoints() - 1, selectedCharacter);

        RuneManager.Singelton.ExecuteRune(runeSetAp);

        var getInput = new RuneManager.WaitForSelection(this);

        RuneManager.Singelton.ExecuteRune(getInput);
    }
Пример #2
0
    public override void OnSecondaryAction(Entity entity)
    {
        if (_state != ControllerState.WaitingForSelection) return;
        if (selectedCharacter == null) return;
        if (selectedCharacter.Team != team) return;

        if (selectedCharacter.OnEntitySelection(entity))
        {
            _state = ControllerState.WaitingForActionToFinish;
            var getInput = new RuneManager.WaitForSelection(this);
            RuneManager.Singelton.ExecuteRune(getInput);
        }
    }
Пример #3
0
    public override void OnSecondaryAction(Entity entity)
    {
        if (_state != ControllerState.WaitingForSelection)
        {
            return;
        }
        if (selectedCharacter == null)
        {
            return;
        }
        if (selectedCharacter.Team != team)
        {
            return;
        }


        if (selectedCharacter.OnEntitySelection(entity))
        {
            _state = ControllerState.WaitingForActionToFinish;
            var getInput = new RuneManager.WaitForSelection(this);
            RuneManager.Singelton.ExecuteRune(getInput);
        }
    }
Пример #4
0
    public void TileSelected(Tile tile)
    {
        if (_state != ControllerState.WaitingForSelection) return;
        if (selectedCharacter == null) return;
        if (selectedCharacter.Team != team) return;
        if (selectedCharacter.GetActionPoints() == 0) return;
        var moves = GridController.Singelton.GetRunedPath(selectedCharacter, selectedCharacter.currentTile, tile);
        for (var index = 0; index < moves.Count; index++)
        {
            var t = moves[index];
            RuneManager.Singelton.ExecuteRune(t);
        }
        _state = ControllerState.WaitingForActionToFinish;

        var runeSetAp = new RuneManager.SetActionPoint(selectedCharacter.GetActionPoints() - 1, selectedCharacter);
        RuneManager.Singelton.ExecuteRune(runeSetAp);

        var getInput = new RuneManager.WaitForSelection(this);
        RuneManager.Singelton.ExecuteRune(getInput);
    }