public class BaseAbilityScript : BaseEquippableObject //Alla vapen och abilities ärver från BaseEquippableObject för att kunna lagras i spelarens Inventory { [SerializeField] protected int abilityCost; [SerializeField] protected Sprite myRune; protected static bool coolingDown = false; //coolingDown är static för att skapa en global cooldown för alla abilities public static bool CoolingDown { get { return coolingDown; } set { coolingDown = value; } } public Sprite MyRune { get { return this.myRune; } } public virtual bool UseAbility() //Virtuell metod som overrideas av alla abilities så att de faktiskt gör olika saker { if ( movement.Stamina >= abilityCost) { abilities.StartCoroutine("AbilityCooldown"); movement.Stamina -= (abilityCost); return true; } return false; } }