public void OnCast()//каст
    {
        if (thisCard.isSpell && ((SpellCard)thisCard).spellTarget != SpellCard.TargetType.NO_TARGET)
        {
            return;
        }

        if (isPlayerCard)
        {
            gameManager.playerHandCards.Remove(this);
            gameManager.playerFieldCards.Add(this);
            gameManager.ReduceEnergy(true, thisCard.cost);
            gameManager.CheckCardsForManaAvailability();
        }
        else
        {
            gameManager.enemyHandCards.Remove(this);
            gameManager.enemyFieldCards.Add(this);
            gameManager.ReduceEnergy(false, thisCard.cost);
            info.ShowCardInfo();
        }

        thisCard.isPlaced = true;

        if (thisCard.hasAbility)
        {
            ability.OnCast();
        }

        if (thisCard.isSpell)
        {
            UseSpell(null);
        }
    }