From cdbbd891c43e082a36a32e49420bf87b6edd28e0 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Wed, 4 Sep 2019 22:24:39 -0400 Subject: More affix work --- .../jewelrycraft/events/EntityEventHandler.java | 55 ++++++++++++++++------ 1 file changed, 41 insertions(+), 14 deletions(-) (limited to 'src/main/java/darkknight/jewelrycraft/events/EntityEventHandler.java') diff --git a/src/main/java/darkknight/jewelrycraft/events/EntityEventHandler.java b/src/main/java/darkknight/jewelrycraft/events/EntityEventHandler.java index 355d041..6b30bb4 100755 --- a/src/main/java/darkknight/jewelrycraft/events/EntityEventHandler.java +++ b/src/main/java/darkknight/jewelrycraft/events/EntityEventHandler.java @@ -237,13 +237,33 @@ public class EntityEventHandler { @SubscribeEvent public void onEntityLivingDropItems(LivingDropsEvent event) { - if (event.source.getEntity() != null && event.source.getEntity() instanceof EntityPlayer) { - EntityPlayer player = (EntityPlayer) event.source.getEntity(); - NBTTagCompound playerInfo = PlayerUtils.getModPlayerPersistTag(player, Variables.MODID); - if (ConfigHandler.CURSES_ENABLED) - for (Curse curse : Curse.getCurseList()) - if (curse.canCurseBeActivated(player.worldObj) && playerInfo.getInteger(curse.getName()) > 0) - curse.entityDropItems(player, event.entityLiving, event.drops); + if (event.source.getEntity() != null) { + if (event.source.getEntity() instanceof EntityPlayer) { + EntityPlayer player = (EntityPlayer) event.source.getEntity(); + + NBTTagCompound playerInfo = PlayerUtils.getModPlayerPersistTag(player, Variables.MODID); + + if (ConfigHandler.CURSES_ENABLED) { + for (Curse curse : Curse.getCurseList()) { + boolean hasCurse = curse.canCurseBeActivated(player.worldObj) + && playerInfo.getInteger(curse.getName()) > 0; + + if (hasCurse) + curse.entityDropItems(player, event.entityLiving, event.drops); + } + } + + for (int i = 0; i < 18; i++) { + if (getJewelryItems(playerInfo, i) != null) { + if (getJewelryItems(playerInfo, i).getItem() instanceof ItemBaseJewelry) + ((ItemBaseJewelry) getJewelryItems(playerInfo, i).getItem()) + .onLivingDropItems(getJewelryItems(playerInfo, i), player, event); + if (getJewelryItems(playerInfo, i).getItem() instanceof IJewelryItem) + ((IJewelryItem) getJewelryItems(playerInfo, i).getItem()) + .onLivingDropItems(getJewelryItems(playerInfo, i), player, event); + } + } + } } } @@ -296,28 +316,35 @@ public class EntityEventHandler { if (event.source.getEntity() instanceof EntityPlayer) { EntityPlayer player = (EntityPlayer) event.source.getEntity(); NBTTagCompound playerInfo = PlayerUtils.getModPlayerPersistTag(player, Variables.MODID); - for (int i = 0; i < 18; i++) + + for (int i = 0; i < 18; i++) { if (getJewelryItems(playerInfo, i) != null) { if (getJewelryItems(playerInfo, i).getItem() instanceof ItemBaseJewelry) { ((ItemBaseJewelry) getJewelryItems(playerInfo, i).getItem()) - .onEntityAttacked(getJewelryItems(playerInfo, i), player, entity, event.ammount); - if (((ItemBaseJewelry) getJewelryItems(playerInfo, i).getItem()).onEntityAttackedCacellable( - getJewelryItems(playerInfo, i), player, entity, event.ammount)) + .onEntityAttacked(getJewelryItems(playerInfo, i), player, entity, event); + if (((ItemBaseJewelry) getJewelryItems(playerInfo, i).getItem()) + .onEntityAttackedCancellable(getJewelryItems(playerInfo, i), player, entity, event)) event.setCanceled(true); } if (getJewelryItems(playerInfo, i).getItem() instanceof IJewelryItem) ((IJewelryItem) getJewelryItems(playerInfo, i).getItem()).onEntityAttackedByPlayer( - getJewelryItems(playerInfo, i), player, entity, event.ammount); + getJewelryItems(playerInfo, i), player, entity, event); } - if (ConfigHandler.CURSES_ENABLED) + } + + if (ConfigHandler.CURSES_ENABLED) { for (Curse curse : Curse.getCurseList()) if (curse.canCurseBeActivated(player.worldObj) && playerInfo.getInteger(curse.getName()) > 0) { curse.attackedByPlayerAction(event, entity.worldObj, player, entity); if (curse.attackedByPlayerActionCancelable(event, player.worldObj, player, entity)) event.setCanceled(true); } - if (entity instanceof EntityHeart && entity.getAge() < 30) + } + + if (entity instanceof EntityHeart && entity.getAge() < 30) { event.setCanceled(true); + } + if (event.source.getEntity() instanceof EntityPlayerMP) { JewelrycraftMod.netWrapper.sendToAll(new PacketSendServerPlayersInfo()); JewelrycraftMod.netWrapper.sendTo(new PacketSendClientPlayerInfo(playerInfo), (EntityPlayerMP) player); -- cgit v1.2.3