Exemplo n.º 1
0
    /// <summary>
    /// Cast an ability (pick the target, if needed)
    /// </summary>
    /// <param name="abilityBase"></param>
    public void CastAbility(AbilityBase abilityBase)
    {
        if (character != null && abilityBase != null)
        {
            //if (GameController.state == GameState.Exploration)
            //{
            //    characterMenu.Close();
            //}

            character.UpdateTile();

            currentAbility        = abilityBase;
            currentAbility.caster = character;
            currentAbility.CreateCursorForController(this);

            character.PushAction(currentAbility.Prepare());

            if (currentAbility.cursor == null)
            {
                character.PushAction(currentAbility.Cast());
                return;
            }
        }
    }