From d13dec851885e075aa67c68dc0a459f3b428db49 Mon Sep 17 00:00:00 2001 From: OnyxDarkKnight Date: Sun, 26 Apr 2015 17:39:03 +0100 Subject: Jewelrycraft 2 ready for alpha release! Yaaay :D --- .../jewelrycraft/curses/CurseHumbleBundle.java | 53 ++++++++++++++++++++++ .../darkknight/jewelrycraft/curses/CurseList.java | 10 ++-- .../jewelrycraft/curses/CurseVampireHunger.java | 26 +++++++++++ 3 files changed, 84 insertions(+), 5 deletions(-) create mode 100644 src/main/java/darkknight/jewelrycraft/curses/CurseHumbleBundle.java create mode 100644 src/main/java/darkknight/jewelrycraft/curses/CurseVampireHunger.java (limited to 'src/main/java/darkknight/jewelrycraft/curses') diff --git a/src/main/java/darkknight/jewelrycraft/curses/CurseHumbleBundle.java b/src/main/java/darkknight/jewelrycraft/curses/CurseHumbleBundle.java new file mode 100644 index 0000000..21007a7 --- /dev/null +++ b/src/main/java/darkknight/jewelrycraft/curses/CurseHumbleBundle.java @@ -0,0 +1,53 @@ +/** + * + */ +package darkknight.jewelrycraft.curses; + +import java.util.ArrayList; +import net.minecraft.entity.Entity; +import net.minecraft.entity.item.EntityItem; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Blocks; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import net.minecraftforge.event.world.BlockEvent; +import darkknight.jewelrycraft.api.Curse; + +/** + * @author Sorin + * + */ +public class CurseHumbleBundle extends Curse +{ + protected CurseHumbleBundle(String name, int txtID, String texturepack) + { + super(name, txtID, texturepack); + } + + @Override + public void entityDropItems(EntityPlayer player, Entity target, ArrayList drops) + { + for(EntityItem item: drops){ + ItemStack drop = item.getEntityItem().copy(); + target.entityDropItem(drop, 0.5F); + } + } + + public void onBlockItemsDrop(EntityPlayer player, BlockEvent.HarvestDropsEvent event) + { + for(ItemStack item: event.drops){ + ItemStack drop = item.copy(); + if(drop.getItem() != Item.getItemFromBlock(event.block)) dropItem(event.world, event.x, event.y, event.z, drop); + } + } + + public void dropItem(World world, double x, double y, double z, ItemStack stack) + { + EntityItem entityitem = new EntityItem(world, x + 0.5D, y + 0.5D, z + 0.5D, stack); + entityitem.motionX = 0; + entityitem.motionZ = 0; + entityitem.motionY = 0.11000000298023224D; + world.spawnEntityInWorld(entityitem); + } +} diff --git a/src/main/java/darkknight/jewelrycraft/curses/CurseList.java b/src/main/java/darkknight/jewelrycraft/curses/CurseList.java index acaafd0..cc8cbc6 100644 --- a/src/main/java/darkknight/jewelrycraft/curses/CurseList.java +++ b/src/main/java/darkknight/jewelrycraft/curses/CurseList.java @@ -30,10 +30,10 @@ public class CurseList midasTouch = new CurseMidasTouch(Variables.MODNAME + ":" + "Midas Touch", 5, Variables.MODID + "_curses_0"); rabbitsPaw = new CurseRabbitsPaw(Variables.MODNAME + ":" + "Rabbit's Paw", 6, Variables.MODID + "_curses_0"); pentagram = new CursePentagram(Variables.MODNAME + ":" + "Pentagram", 7, Variables.MODID + "_curses_0"); -// vampireHunger = new CurseMidasTouch(8, Variables.MODNAME + ":" + "Vampire Hunger", 8, 0); -// humbleBundle = new CurseMidasTouch(9, Variables.MODNAME + ":" + "Humble Bundle", 9, 0); -// deathsTouch = new CurseMidasTouch(10, Variables.MODNAME + ":" + "Deaths Touch", 10, 0); -// antichrist = new CurseMidasTouch(11, Variables.MODNAME + ":" + "Antichrist", 11, 0); -// moneyEqualsPower = new CurseMidasTouch(12, Variables.MODNAME + ":" + "Money Equals Power", 12, 0); + vampireHunger = new CurseVampireHunger(Variables.MODNAME + ":" + "Vampire Hunger", 8, Variables.MODID + "_curses_0"); + humbleBundle = new CurseHumbleBundle(Variables.MODNAME + ":" + "Humble Bundle", 9, Variables.MODID + "_curses_0"); +// deathsTouch = new CurseMidasTouch(Variables.MODNAME + ":" + "Deaths Touch", 10, Variables.MODID + "_curses_0"); +// antichrist = new CurseMidasTouch(Variables.MODNAME + ":" + "Antichrist", 11, Variables.MODID + "_curses_0"); +// moneyEqualsPower = new CurseMidasTouch(Variables.MODNAME + ":" + "Money Equals Power", 12, Variables.MODID + "_curses_0"); } } diff --git a/src/main/java/darkknight/jewelrycraft/curses/CurseVampireHunger.java b/src/main/java/darkknight/jewelrycraft/curses/CurseVampireHunger.java new file mode 100644 index 0000000..08b5a65 --- /dev/null +++ b/src/main/java/darkknight/jewelrycraft/curses/CurseVampireHunger.java @@ -0,0 +1,26 @@ +/** + * + */ +package darkknight.jewelrycraft.curses; + +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.world.World; +import darkknight.jewelrycraft.api.Curse; + +/** + * @author Sorin + * + */ +public class CurseVampireHunger extends Curse +{ + protected CurseVampireHunger(String name, int txtID, String texturepack) + { + super(name, txtID, texturepack); + } + + public void attackedByPlayerAction(World world, EntityPlayer player, Entity target) + { + if(player.shouldHeal() && rand.nextInt(5) == 0) player.heal(1F); + } +} -- cgit v1.2.3