2
0
Fork 0

Fixed visual bug in blocking

frozen
Shinare 1 year ago
parent 00f04daa3f
commit 1e440bc9b4

@ -13,14 +13,17 @@ import lotr.common.enchant.LOTREnchantmentHelper;
import lotr.common.item.*; import lotr.common.item.*;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.DataWatcher;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.*; import net.minecraft.item.*;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList; import net.minecraft.nbt.NBTTagList;
import net.minecraft.nbt.NBTTagString; import net.minecraft.nbt.NBTTagString;
import net.minecraft.network.Packet;
import net.minecraft.network.play.server.S04PacketEntityEquipment; import net.minecraft.network.play.server.S04PacketEntityEquipment;
import net.minecraft.network.play.server.S09PacketHeldItemChange; import net.minecraft.network.play.server.S09PacketHeldItemChange;
import net.minecraft.network.play.server.S1CPacketEntityMetadata;
import net.minecraft.network.play.server.S19PacketEntityStatus; import net.minecraft.network.play.server.S19PacketEntityStatus;
import net.minecraft.potion.Potion; import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect; import net.minecraft.potion.PotionEffect;
@ -28,6 +31,7 @@ import net.minecraft.util.ChatComponentText;
import net.minecraft.util.DamageSource; import net.minecraft.util.DamageSource;
import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraft.world.WorldServer;
import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.event.entity.living.LivingAttackEvent; import net.minecraftforge.event.entity.living.LivingAttackEvent;
import net.minecraftforge.event.entity.living.LivingHurtEvent; import net.minecraftforge.event.entity.living.LivingHurtEvent;
@ -126,18 +130,18 @@ public class CinderEventHandler implements IFuelHandler {
float additionalDamage = 0.0f; float additionalDamage = 0.0f;
if (weapon.getItem() instanceof ItemAxe || weapon.getItem() instanceof LOTRItemAxe || weapon.getItem() instanceof LOTRItemBattleaxe) { if (weapon.getItem() instanceof ItemAxe || weapon.getItem() instanceof LOTRItemAxe || weapon.getItem() instanceof LOTRItemBattleaxe) {
sword.damageItem((int) (event.ammount *1.5), player); // Axes deal 150% the Durability damage sword.damageItem((int) (event.ammount *1.5), player); // Axes deal 150% the Durability damage
((EntityPlayerMP) player).playerNetServerHandler.sendPacket(new S09PacketHeldItemChange()); player.clearItemInUse();
world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F);
additionalDamage = 0.75f; // Only 25% Passes through additionalDamage = 0.75f; // Only 25% Passes through
} else if (weapon.getItem() instanceof LOTRItemHammer) { } else if (weapon.getItem() instanceof LOTRItemHammer) {
sword.damageItem((int) event.ammount, player); // Hammers bypass the block better, but only deal 100% of the durability damage sword.damageItem((int) event.ammount, player); // Hammers bypass the block better, but only deal 100% of the durability damage
((EntityPlayerMP) player).playerNetServerHandler.sendPacket(new S09PacketHeldItemChange()); player.clearItemInUse();
world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F);
additionalDamage = 0.5f; // Only 50% Passes through additionalDamage = 0.5f; // Only 50% Passes through
} else { } else {
additionalDamage = 0.0f; // 0% Damage Passes through additionalDamage = 0.0f; // 0% Damage Passes through
sword.damageItem((int) (event.ammount/2), player); //Swords only deal 50% of durability damage sword.damageItem((int) (event.ammount/2), player); //Swords only deal 50% of durability damage
((EntityPlayerMP) player).playerNetServerHandler.sendPacket(new S09PacketHeldItemChange()); player.clearItemInUse();
world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F); world.playSoundAtEntity(player, "random.anvil_land", 1F, 2F);
} }
@ -263,6 +267,7 @@ public class CinderEventHandler implements IFuelHandler {
} }
} }
} }
private void sendNegativeModifierMessage(EntityPlayerMP player, String type) { private void sendNegativeModifierMessage(EntityPlayerMP player, String type) {
player.addChatMessage(new ChatComponentText( player.addChatMessage(new ChatComponentText(
EnumChatFormatting.RED + "Your " + EnumChatFormatting.RED + "Your " +

Loading…
Cancel
Save