Esempio n. 1
0
    public void UseAbility()
    {
        var enemyUnit = GetUnitOnTile(attackLocation);

        _AttackSelected = false;
        Vector3 attackDirection = new Vector3(attackLocation.transform.position.x, gameObject.transform.position.y, attackLocation.transform.position.z);

        if (isAttackLocationOccupied)
        {
            if (Vector3.Distance(transform.position, enemyUnit.transform.position) >= abilityMinRange && Vector3.Distance(transform.position, enemyUnit.transform.position) <= abilityMaxRange)
            {
                Debug.Log($"");
                unitMove.SetHeadingDirection(attackDirection);
                transform.forward = unitMove.moveHeading;
                // ATTACK ANIMATION HERE
                DealDamage(enemyUnit);
            }

            Debug.Log($"Enemy health is now {enemyUnit._CurrentHealth}");
        }
        unitCharacter._AttacksLeftThisTurn--;
        _IsCurrentlyAttacking = false;
        _HasAttacked          = true;
        ClearAttackableTiles();
        turnManager.UpdateSidebarUi();
    }