package com.thebrokenrail.reliccraft.data; import net.minecraft.entity.Entity; import net.minecraft.entity.LivingEntity; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; public interface Action { void execute(World world, LivingEntity attacker, Entity target); void execute(World world, LivingEntity attacker, BlockPos pos); int getCost(); default PlayerEntity convertToPlayer(LivingEntity entity) { if (entity instanceof PlayerEntity) { return (PlayerEntity) entity; } else { return null; } } }