diff options
Diffstat (limited to 'java/darkknight/jewelrycraft/effects/ModifierEffects.java')
| -rw-r--r-- | java/darkknight/jewelrycraft/effects/ModifierEffects.java | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/java/darkknight/jewelrycraft/effects/ModifierEffects.java b/java/darkknight/jewelrycraft/effects/ModifierEffects.java new file mode 100644 index 0000000..2d62639 --- /dev/null +++ b/java/darkknight/jewelrycraft/effects/ModifierEffects.java @@ -0,0 +1,82 @@ +package darkknight.jewelrycraft.effects; + +import java.util.ArrayList; +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.DamageSource; + +public abstract class ModifierEffects +{ + protected ItemStack modifier; + protected static ArrayList<ModifierEffects> effects = new ArrayList<ModifierEffects>(); + + /** + * @param modifier + */ + public ModifierEffects(ItemStack modifier) + { + this.modifier = modifier; + effects.add(this); + } + + /** + * @return + */ + public static ArrayList<ModifierEffects> getEffects() + { + return effects; + } + + /** + * @param item + * @param player + * @param jewelry + */ + public abstract void action(ItemStack item, EntityPlayer player, Item jewelry); + + /** + * @param item + * @param player + * @param target + * @param jewelry + * @return + */ + public abstract boolean onEntityAttackedCacellable(ItemStack item, EntityPlayer player, Entity target, Item jewelry, float amount); + + /** + * @param item + * @param player + * @param source + * @param jewelry + * @return + */ + public abstract boolean onPlayerAttackedCacellable(ItemStack item, EntityPlayer player, DamageSource source, Item jewelry, float amount); + /** + * @param item + * @param player + * @param target + * @param jewelry + * @return + */ + public abstract void onEntityAttacked(ItemStack item, EntityPlayer player, Entity target, Item jewelry, float amount); + + /** + * @param item + * @param player + * @param source + * @param jewelry + * @return + */ + public abstract void onPlayerAttacked(ItemStack item, EntityPlayer player, DamageSource source, Item jewelry, float amount); + + /** + * @param item + * @param player + * @param source + * @param jewelry + * @return + */ + public abstract boolean onPlayerFall(ItemStack item, EntityPlayer player, Item jewelry); +} |
