summaryrefslogtreecommitdiff
path: root/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java')
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java94
1 files changed, 66 insertions, 28 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java b/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java
index 8b477c6..c658f8d 100755
--- a/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java
+++ b/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java
@@ -22,6 +22,7 @@ import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.StatCollector;
import net.minecraftforge.event.entity.living.LivingAttackEvent;
import net.minecraftforge.event.entity.living.LivingDropsEvent;
+import net.minecraftforge.event.entity.living.LivingHurtEvent;
import net.minecraftforge.event.entity.player.PlayerEvent;
@SuppressWarnings({ "rawtypes", "unchecked" })
@@ -52,7 +53,7 @@ public abstract class ItemBaseJewelry extends Item {
return JewelrycraftUtil.getColor(JewelryNBT.ingot(stack));
}
- return 16777215;
+ return 0xFFFFFF;
}
/**
@@ -66,12 +67,21 @@ public abstract class ItemBaseJewelry extends Item {
String baseName = itemName;
+ ItemStack gem = JewelryNBT.gem(stack);
+ if (gem != null) {
+ if (Item.getIdFromItem(gem.getItem()) > 0) {
+ String gemName = gem.getDisplayName().replace("Gem|Crystal|Jewel", " ").trim();
+
+ baseName = gemName + " " + itemName;
+ }
+ }
+
ItemStack ingot = JewelryNBT.ingot(stack);
if (ingot != null) {
if (Item.getIdFromItem(ingot.getItem()) > 0) {
String ingotName = ingot.getDisplayName().replace("Ingot", " ").trim();
- baseName = ingotName + " " + itemName;
+ baseName = ingotName + " " + baseName;
}
}
@@ -119,39 +129,33 @@ public abstract class ItemBaseJewelry extends Item {
+ EnumChatFormatting.BLUE + gem.getDisplayName());
}
- if (player.isSneaking()) {
- ArrayList<ItemStack> modifier = JewelryNBT.modifier(stack);
+ ArrayList<ItemStack> modifier = JewelryNBT.modifier(stack);
- if (!modifier.isEmpty()) {
- list.add(StatCollector.translateToLocal("info." + Variables.MODID + ".modifiers") + ": ");
- }
+ if (!modifier.isEmpty()) {
+ list.add(StatCollector.translateToLocal("info." + Variables.MODID + ".modifiers") + ": ");
+ }
- for (ItemStack is : modifier) {
- list.add(EnumChatFormatting.DARK_PURPLE + is.getDisplayName() + " x" + is.stackSize);
- }
+ for (ItemStack is : modifier) {
+ list.add(EnumChatFormatting.DARK_PURPLE + is.getDisplayName() + " x" + is.stackSize);
+ }
- String prefix = JewelryNBT.prefix(stack);
- String suffix = JewelryNBT.suffix(stack);
+ String prefix = JewelryNBT.prefix(stack);
+ String suffix = JewelryNBT.suffix(stack);
- if (prefix != null && !prefix.equals("")) {
- String translatedPrefix = StatCollector
- .translateToLocal("prefix." + Variables.MODID + "." + prefix);
- String translatedDesc = StatCollector
- .translateToLocal("prefix." + Variables.MODID + "." + prefix + ".desc");
+ if (prefix != null && !prefix.equals("")) {
+ String translatedPrefix = StatCollector.translateToLocal("prefix." + Variables.MODID + "." + prefix);
+ String translatedDesc = StatCollector
+ .translateToLocal("prefix." + Variables.MODID + "." + prefix + ".desc");
- list.add(translatedPrefix + ": " + translatedDesc);
- }
+ list.add(EnumChatFormatting.AQUA + translatedPrefix + ": " + translatedDesc);
+ }
- if (suffix != null && !suffix.equals("")) {
- String translatedSuffix = StatCollector
- .translateToLocal("suffix." + Variables.MODID + "." + prefix);
- String translatedDesc = StatCollector
- .translateToLocal("suffix." + Variables.MODID + "." + prefix + ".desc");
+ if (suffix != null && !suffix.equals("")) {
+ String translatedSuffix = StatCollector.translateToLocal("suffix." + Variables.MODID + "." + suffix);
+ String translatedDesc = StatCollector
+ .translateToLocal("suffix." + Variables.MODID + "." + suffix + ".desc");
- list.add(translatedSuffix + ": " + translatedDesc);
- }
- } else {
- list.add("<Sneak to see modifier info>");
+ list.add(EnumChatFormatting.AQUA + translatedSuffix + ": " + translatedDesc);
}
}
}
@@ -378,4 +382,38 @@ public abstract class ItemBaseJewelry extends Item {
if (suffix != null)
suffix.onLivingDropItems(item, player, event, this);
}
+
+ public void onPlayerHurt(ItemStack item, EntityPlayer player, LivingHurtEvent event) {
+ for (ModifierEffect mod : ModifierEffect.getEffects()) {
+ if (JewelryNBT.doesModifierExist(item, mod.getModifier())) {
+ mod.onPlayerHurt(item, player, event, this);
+ }
+ }
+
+ ModifierEffect prefix = AffixMods.getPrefix(JewelryNBT.prefix(item));
+ ModifierEffect suffix = AffixMods.getSuffix(JewelryNBT.suffix(item));
+
+ if (prefix != null)
+ prefix.onPlayerHurt(item, player, event, this);
+
+ if (suffix != null)
+ suffix.onPlayerHurt(item, player, event, this);
+ }
+
+ public void onEntityHurt(ItemStack item, EntityPlayer player, LivingHurtEvent event) {
+ for (ModifierEffect mod : ModifierEffect.getEffects()) {
+ if (JewelryNBT.doesModifierExist(item, mod.getModifier())) {
+ mod.onEntityHurt(item, player, event, this);
+ }
+ }
+
+ ModifierEffect prefix = AffixMods.getPrefix(JewelryNBT.prefix(item));
+ ModifierEffect suffix = AffixMods.getSuffix(JewelryNBT.suffix(item));
+
+ if (prefix != null)
+ prefix.onEntityHurt(item, player, event, this);
+
+ if (suffix != null)
+ suffix.onEntityHurt(item, player, event, this);
+ }
} \ No newline at end of file