// Aplica damage da skill sem a passiva E ativa
    public override void applySkill(CharacterBaseClass playerEnemy) 
    {
        int auxDmg = playerEnemy.getLife() - damage;
        if (isSlow)
        {
            if (auxDmg <= 0)
            {
                playerEnemy.currentLife = 0;                
                playerEnemy.playerState = CharacterBaseClass.States.dead;
            }
            else
            {
                playerEnemy.currentLife -= damage;
              //  playerEnemy.velocity -= 2f;
            }

        } else
        {
            if (auxDmg <= 0)
            {
                playerEnemy.currentLife -= damage;
                playerEnemy.playerState = CharacterBaseClass.States.dead;
            }
            else
            {
                playerEnemy.currentLife -= damage;
            }
        }

    }
    public void CalculateAvailablePath(GameObject character)
    {
        baseCharacter = character.GetComponent <CharacterBaseClass>();



        EventScanTilesUpdate();
        GetCurrentTile(character);



        //BFS Algorithm
        var queueProcess = new Queue <Tile>();

        queueProcess.Enqueue(tilePlaceholder);
        tilePlaceholder.isVisited = true;

        while (queueProcess.Count > 0)
        {
            Tile t = queueProcess.Dequeue();

            listOfSelectableTiles.Add(t);
            t.isSelectable = true;

            if (t.distance < baseCharacter._movePoints)
            {
                foreach (var tile in t.listOfNearbyValidTiles)
                {
                    if (!tile.isVisited)
                    {
                        tile.parent    = t;
                        tile.isVisited = true;
                        tile.distance  = 1 + t.distance;
                        queueProcess.Enqueue(tile);
                    }
                }
            }
        }
        baseCharacter.currentTile  = tilePlaceholder;
        baseCharacter.isTilesFound = true;
    }
 public override void applySkill(CharacterBaseClass playerEnemy) { }
 public abstract void applySkill(CharacterBaseClass playerEnemy);