This repository has been archived on 2023-11-26. You can view files and clone it, but cannot push or open issues or pull requests.
SorceryCraft/src/main/java/com/thebrokenrail/sorcerycraft/spell/registry/Spell.java

40 lines
912 B
Java
Raw Normal View History

package com.thebrokenrail.sorcerycraft.spell.registry;
2020-03-01 18:19:59 +00:00
import net.minecraft.entity.Entity;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
import net.minecraft.util.hit.BlockHitResult;
import net.minecraft.world.World;
2020-03-01 18:19:59 +00:00
public abstract class Spell {
private final Identifier id;
2020-03-01 18:19:59 +00:00
private final int level;
public Spell(Identifier id, int level) {
2020-03-01 18:19:59 +00:00
this.id = id;
this.level = level;
}
public Identifier getID() {
2020-03-01 18:19:59 +00:00
return id;
}
public int getLevel() {
return level;
}
2020-03-08 16:06:43 +00:00
public void execute(World world, Entity source, Entity attacker, Entity target) {
// NOOP
}
2020-03-08 16:06:43 +00:00
public void execute(World world, Entity source, Entity attacker, BlockHitResult hitResult) {
// NOOP
}
2020-03-01 18:19:59 +00:00
public abstract int getXPCost();
public abstract ItemStack getItemCost();
public abstract int getMaxLevel();
}