package com.thebrokenrail.sorcerycraft.spell; import net.minecraft.entity.Entity; import net.minecraft.item.ItemStack; public abstract class Spell { private final String id; private final int level; public Spell(String id, int level) { this.id = id; this.level = level; } public String getID() { return id; } public int getLevel() { return level; } public abstract void execute(Entity target, Entity source, Entity attacker); public abstract int getXPCost(); public abstract ItemStack getItemCost(); public abstract int getMaxLevel(); }