using Unity.BossRoom.Gameplay.GameplayObjects.Character;
using UnityEngine;
public abstract class Ability : ScriptableObject
{
public string abilityKey;
public string abilityName;
[Header("Common Ability Settings")]
public float abilityRadius;
public float abilityMagnitude;
public float abilityDuration;
public float abilityCooldownTime;
[Header("Ability Prefab")]
public GameObject prefab;
///
/// Executes the ability's specific behavior.
///
public abstract void Execute(ServerCharacter character, Vector3 targetPosition);
///
/// Retrieves the prefab associated with this ability.
///
public GameObject GetPrefab()
{
return prefab;
}
}