summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbculkin2442 <bjculkin@mix.wvu.edu>2019-09-05 20:57:51 -0400
committerbculkin2442 <bjculkin@mix.wvu.edu>2019-09-05 21:36:21 -0400
commit6706fae4a88b04d0a290e246b33eba313841e338 (patch)
tree3bb84fe39505095e071462e573772cf28a3e7379
parent6e097a5056ad343271e21109f593f7cb77e4667e (diff)
Yet more affix work
-rw-r--r--src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java140
-rw-r--r--src/main/java/darkknight/jewelrycraft/affixes/DamageAffix.java2
-rw-r--r--src/main/java/darkknight/jewelrycraft/curses/CurseInsomnia.java36
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/curses/CurseList.java11
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java8
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/item/ItemBracelet.java5
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/item/ItemEarrings.java4
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/item/ItemNecklace.java5
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/item/ItemRing.java5
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java100
-rwxr-xr-xsrc/main/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java4
-rwxr-xr-xsrc/main/resources/assets/jewelrycraft2/lang/en_US.lang4
-rwxr-xr-xsrc/main/resources/assets/jewelrycraft2/textures/gui/jewelrycraft2_curses_0.pngbin18547 -> 20492 bytes
13 files changed, 260 insertions, 64 deletions
diff --git a/src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java b/src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java
index d124251..2ac5319 100644
--- a/src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java
+++ b/src/main/java/darkknight/jewelrycraft/affixes/AffixMods.java
@@ -11,35 +11,91 @@ public class AffixMods {
private static Map<String, ModifierEffect> prefixes;
private static Map<String, ModifierEffect> suffixes;
- private static List<WeightedRandomAffix> prefixGen;
- private static List<WeightedRandomAffix> suffixGen;
+ private static List<WeightedRandomAffix> generalPrefixGen;
+ private static List<WeightedRandomAffix> generalSuffixGen;
+
+ private static List<WeightedRandomAffix> ringPrefixGen;
+ private static List<WeightedRandomAffix> ringSuffixGen;
+
+ private static List<WeightedRandomAffix> braceletPrefixGen;
+ private static List<WeightedRandomAffix> braceletSuffixGen;
+
+ private static List<WeightedRandomAffix> necklacePrefixGen;
+ private static List<WeightedRandomAffix> necklaceSuffixGen;
+
+ private static List<WeightedRandomAffix> earringsPrefixGen;
+ private static List<WeightedRandomAffix> earringsSuffixGen;
public static void initializeAffixes(FMLPreInitializationEvent fpie) {
prefixes = new HashMap<String, ModifierEffect>();
suffixes = new HashMap<String, ModifierEffect>();
-
- prefixGen = new LinkedList<WeightedRandomAffix>();
- suffixGen = new LinkedList<WeightedRandomAffix>();
-
+
+ generalPrefixGen = new LinkedList<WeightedRandomAffix>();
+ generalSuffixGen = new LinkedList<WeightedRandomAffix>();
+
+ ringPrefixGen = new LinkedList<WeightedRandomAffix>();
+ ringSuffixGen = new LinkedList<WeightedRandomAffix>();
+
+ braceletPrefixGen = new LinkedList<WeightedRandomAffix>();
+ braceletSuffixGen = new LinkedList<WeightedRandomAffix>();
+
+ necklacePrefixGen = new LinkedList<WeightedRandomAffix>();
+ necklaceSuffixGen = new LinkedList<WeightedRandomAffix>();
+
+ earringsPrefixGen = new LinkedList<WeightedRandomAffix>();
+ earringsSuffixGen = new LinkedList<WeightedRandomAffix>();
+
ModifierEffect health1 = new HealthAffix(1);
ModifierEffect health2 = new HealthAffix(2);
ModifierEffect health3 = new HealthAffix(3);
-
+ ModifierEffect health4 = new HealthAffix(4);
+ ModifierEffect health5 = new HealthAffix(5);
+ ModifierEffect health6 = new HealthAffix(6);
+
prefixes.put("health1", health1);
prefixes.put("health2", health2);
prefixes.put("health3", health3);
-
- prefixGen.add(new WeightedRandomAffix("health1", 10));
- prefixGen.add(new WeightedRandomAffix("health2", 7));
- prefixGen.add(new WeightedRandomAffix("health3", 5));
-
+ prefixes.put("health4", health4);
+ prefixes.put("health5", health5);
+ prefixes.put("health6", health6);
+
suffixes.put("health1", health1);
suffixes.put("health2", health2);
suffixes.put("health3", health3);
-
- suffixGen.add(new WeightedRandomAffix("health1", 10));
- suffixGen.add(new WeightedRandomAffix("health2", 7));
- suffixGen.add(new WeightedRandomAffix("health3", 5));
+ suffixes.put("health4", health4);
+ suffixes.put("health5", health5);
+ suffixes.put("health6", health6);
+
+ WeightedRandomAffix wraHealth1 = new WeightedRandomAffix("health1", 10);
+ WeightedRandomAffix wraHealth2 = new WeightedRandomAffix("health2", 8);
+ WeightedRandomAffix wraHealth3 = new WeightedRandomAffix("health3", 6);
+ WeightedRandomAffix wraHealth4 = new WeightedRandomAffix("health4", 4);
+ WeightedRandomAffix wraHealth5 = new WeightedRandomAffix("health5", 2);
+ WeightedRandomAffix wraHealth6 = new WeightedRandomAffix("health6", 1);
+
+ generalPrefixGen.add(wraHealth1);
+ generalPrefixGen.add(wraHealth2);
+ generalPrefixGen.add(wraHealth3);
+ ringPrefixGen.add(wraHealth1);
+ ringPrefixGen.add(wraHealth2);
+ braceletPrefixGen.add(wraHealth2);
+ braceletPrefixGen.add(wraHealth3);
+ necklacePrefixGen.add(wraHealth4);
+ necklacePrefixGen.add(wraHealth5);
+ earringsPrefixGen.add(wraHealth5);
+ earringsPrefixGen.add(wraHealth6);
+
+ generalSuffixGen.add(wraHealth1);
+ generalSuffixGen.add(wraHealth2);
+ generalSuffixGen.add(wraHealth3);
+ ringSuffixGen.add(wraHealth1);
+ ringSuffixGen.add(wraHealth2);
+ braceletSuffixGen.add(wraHealth2);
+ braceletSuffixGen.add(wraHealth3);
+ necklaceSuffixGen.add(wraHealth4);
+ necklaceSuffixGen.add(wraHealth5);
+ earringsSuffixGen.add(wraHealth5);
+ earringsSuffixGen.add(wraHealth6);
}
public static ModifierEffect getPrefix(String prefix) {
@@ -50,14 +106,58 @@ public class AffixMods {
return suffixes.get(suffix);
}
- public static String pickPrefix(Random random) {
- WeightedRandomAffix wra = ((WeightedRandomAffix) WeightedRandom.getRandomItem(random, prefixGen));
+ public static String pickPrefix(Random random, int jewelType) {
+ List<WeightedRandomAffix> pickList = generalPrefixGen;
+
+ if (random.nextInt(3) != 0) {
+ switch (jewelType) {
+ case 0:
+ pickList = ringPrefixGen;
+ break;
+ case 1:
+ pickList = braceletPrefixGen;
+ break;
+ case 2:
+ pickList = necklacePrefixGen;
+ break;
+ case 3:
+ pickList = earringsPrefixGen;
+ break;
+ case -1:
+ default:
+ pickList = generalPrefixGen;
+ }
+ }
+
+ WeightedRandomAffix wra = ((WeightedRandomAffix) WeightedRandom.getRandomItem(random, pickList));
return wra.getAffix(random);
}
- public static String pickSuffix(Random random) {
- WeightedRandomAffix wra = ((WeightedRandomAffix) WeightedRandom.getRandomItem(random, suffixGen));
+ public static String pickSuffix(Random random, int jewelType) {
+ List<WeightedRandomAffix> pickList = generalSuffixGen;
+
+ if (random.nextInt(3) != 0) {
+ switch (jewelType) {
+ case 0:
+ pickList = ringSuffixGen;
+ break;
+ case 1:
+ pickList = braceletSuffixGen;
+ break;
+ case 2:
+ pickList = necklaceSuffixGen;
+ break;
+ case 3:
+ pickList = earringsSuffixGen;
+ break;
+ case -1:
+ default:
+ pickList = generalSuffixGen;
+ }
+ }
+
+ WeightedRandomAffix wra = ((WeightedRandomAffix) WeightedRandom.getRandomItem(random, pickList));
return wra.getAffix(random);
}
diff --git a/src/main/java/darkknight/jewelrycraft/affixes/DamageAffix.java b/src/main/java/darkknight/jewelrycraft/affixes/DamageAffix.java
index 2cbfce3..ec7b044 100644
--- a/src/main/java/darkknight/jewelrycraft/affixes/DamageAffix.java
+++ b/src/main/java/darkknight/jewelrycraft/affixes/DamageAffix.java
@@ -20,7 +20,7 @@ public class DamageAffix extends ModifierEffect {
this.mult = mult;
}
-
+
@Override
public void onEntityHurt(ItemStack item, EntityPlayer player, LivingHurtEvent event, ItemBaseJewelry jewelry) {
event.ammount += befFlat;
diff --git a/src/main/java/darkknight/jewelrycraft/curses/CurseInsomnia.java b/src/main/java/darkknight/jewelrycraft/curses/CurseInsomnia.java
new file mode 100644
index 0000000..47c46ba
--- /dev/null
+++ b/src/main/java/darkknight/jewelrycraft/curses/CurseInsomnia.java
@@ -0,0 +1,36 @@
+package darkknight.jewelrycraft.curses;
+
+import darkknight.jewelrycraft.api.Curse;
+import darkknight.jewelrycraft.util.Variables;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.util.ChatComponentText;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.util.StatCollector;
+import net.minecraft.world.World;
+import net.minecraftforge.event.entity.player.PlayerSleepInBedEvent;
+
+public class CurseInsomnia extends Curse {
+ public CurseInsomnia(String name, int txtID, String texturepack) {
+ super(name, txtID, texturepack);
+ }
+
+ @Override
+ public String getDescription() {
+ return StatCollector.translateToLocal("curse." + Variables.MODID + ".insomnia.description");
+ }
+
+ @Override
+ public String getDisplayName() {
+ return StatCollector.translateToLocal("curse." + Variables.MODID + ".insomnia");
+ }
+
+ @Override
+ public void playerSleepAction(World worldObj, EntityPlayer player, PlayerSleepInBedEvent event) {
+ event.result = EntityPlayer.EnumStatus.OTHER_PROBLEM;
+
+ if (!worldObj.isRemote) {
+ player.addChatMessage(
+ new ChatComponentText(EnumChatFormatting.DARK_RED + "You toss and turn, but can't get to sleep"));
+ }
+ }
+}
diff --git a/src/main/java/darkknight/jewelrycraft/curses/CurseList.java b/src/main/java/darkknight/jewelrycraft/curses/CurseList.java
index f123863..e76407d 100755
--- a/src/main/java/darkknight/jewelrycraft/curses/CurseList.java
+++ b/src/main/java/darkknight/jewelrycraft/curses/CurseList.java
@@ -11,7 +11,6 @@ public class CurseList {
public static Curse flaming;
public static Curse blind;
public static Curse greed;
- public static Curse incredibleDevotion;
public static Curse infamy;
public static Curse midasTouch;
@@ -22,13 +21,14 @@ public class CurseList {
public static Curse deathsTouch;
public static Curse scionOfHell;
public static Curse moneyEqualsPower;
+
public static Curse doubleDown;
-
+ public static Curse incredibleDevotion;
+ public static Curse insomnia;
+
// Not yet implemented
public static Curse sacredOath;
- // None at the moment :)
-
public static void preInit(FMLPreInitializationEvent e) {
rotten = new CurseRottenHeart(Variables.MODNAME + ":" + "Rotten Heart", 0, CURSE_TEXPACK);
@@ -62,5 +62,8 @@ public class CurseList {
CURSE_TEXPACK);
//sacredOath = new CurseSacredOath(Variables.MODNAME + ":" + "Sacred Oath", 21, CURSE_TEXPACK);
+
+ insomnia = new CurseInsomnia(Variables.MODNAME + ":" + "Insomnia", 22,
+ CURSE_TEXPACK);
}
}
diff --git a/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java b/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java
index c658f8d..6ee4add 100755
--- a/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java
+++ b/src/main/java/darkknight/jewelrycraft/item/ItemBaseJewelry.java
@@ -34,7 +34,13 @@ public abstract class ItemBaseJewelry extends Item {
setCreativeTab(JewelrycraftMod.jewelrycraft);
}
-
+
+ /**
+ * @return Returns the id of the type, 0 is for ring, 1 is for bracelet, 2 is
+ * for necklace and 3 is for earrings
+ */
+ public abstract int type();
+
@Override
public boolean requiresMultipleRenderPasses() {
return true;
diff --git a/src/main/java/darkknight/jewelrycraft/item/ItemBracelet.java b/src/main/java/darkknight/jewelrycraft/item/ItemBracelet.java
index fe01d89..a10548c 100755
--- a/src/main/java/darkknight/jewelrycraft/item/ItemBracelet.java
+++ b/src/main/java/darkknight/jewelrycraft/item/ItemBracelet.java
@@ -15,6 +15,11 @@ public class ItemBracelet extends ItemBaseJewelry {
public ItemBracelet() {
}
+ @Override
+ public int type() {
+ return 1;
+ }
+
/**
* @param iconRegister
*/
diff --git a/src/main/java/darkknight/jewelrycraft/item/ItemEarrings.java b/src/main/java/darkknight/jewelrycraft/item/ItemEarrings.java
index e8f4052..fffc21a 100755
--- a/src/main/java/darkknight/jewelrycraft/item/ItemEarrings.java
+++ b/src/main/java/darkknight/jewelrycraft/item/ItemEarrings.java
@@ -15,6 +15,10 @@ public class ItemEarrings extends ItemBaseJewelry {
public ItemEarrings() {
}
+ @Override
+ public int type() {
+ return 3;
+ }
/**
* @param iconRegister
*/
diff --git a/src/main/java/darkknight/jewelrycraft/item/ItemNecklace.java b/src/main/java/darkknight/jewelrycraft/item/ItemNecklace.java
index 8f67ab6..6287289 100755
--- a/src/main/java/darkknight/jewelrycraft/item/ItemNecklace.java
+++ b/src/main/java/darkknight/jewelrycraft/item/ItemNecklace.java
@@ -15,6 +15,11 @@ public class ItemNecklace extends ItemBaseJewelry {
public ItemNecklace() {
}
+ @Override
+ public int type() {
+ return 2;
+ }
+
/**
* @param iconRegister
*/
diff --git a/src/main/java/darkknight/jewelrycraft/item/ItemRing.java b/src/main/java/darkknight/jewelrycraft/item/ItemRing.java
index 87ca8d8..6c209ce 100755
--- a/src/main/java/darkknight/jewelrycraft/item/ItemRing.java
+++ b/src/main/java/darkknight/jewelrycraft/item/ItemRing.java
@@ -15,6 +15,11 @@ public class ItemRing extends ItemBaseJewelry {
public ItemRing() {
}
+ @Override
+ public int type() {
+ return 0;
+ }
+
/**
* @param iconRegister
*/
diff --git a/src/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java b/src/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java
index 4cfbbc8..9b4930f 100755
--- a/src/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java
+++ b/src/main/java/darkknight/jewelrycraft/tileentity/TileEntityShadowEye.java
@@ -5,9 +5,11 @@ import java.util.ArrayList;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import darkknight.jewelrycraft.affixes.AffixMods;
+import darkknight.jewelrycraft.api.IJewelryItem;
import darkknight.jewelrycraft.block.BlockHandPedestal;
import darkknight.jewelrycraft.block.BlockList;
import darkknight.jewelrycraft.config.ConfigHandler;
+import darkknight.jewelrycraft.item.ItemBaseJewelry;
import darkknight.jewelrycraft.model.ModelShadowEye;
import darkknight.jewelrycraft.util.JewelryNBT;
import darkknight.jewelrycraft.util.JewelrycraftUtil;
@@ -15,6 +17,7 @@ import darkknight.jewelrycraft.util.Variables;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
+import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.NetworkManager;
@@ -64,11 +67,18 @@ public class TileEntityShadowEye extends TileEntity {
super.updateEntity();
StringBuilder er = new StringBuilder();
boolean valid = isValidStructure(worldObj, xCoord, yCoord, zCoord, blockMetadata, er);
- boolean centerHasItem = false, hasMods = false, hasAffixes = false;
+ boolean centerHasItem = false, centerIsJewelry = false, hasMods = false, hasAffixes = false;
if (valid) {
TileEntity te = worldObj.getTileEntity(xCoord, yCoord - 3, zCoord);
if (te instanceof TileEntityHandPedestal) {
- centerHasItem = ((TileEntityHandPedestal) te).heldItemStack != null;
+ ItemStack heldItemStack = ((TileEntityHandPedestal) te).heldItemStack;
+
+ centerHasItem = heldItemStack != null;
+ if (centerHasItem) {
+ Item heldItem = heldItemStack.getItem();
+
+ centerIsJewelry = heldItem instanceof IJewelryItem || heldItem instanceof ItemBaseJewelry;
+ }
}
hasMods = getNumberOfItems(worldObj, xCoord, yCoord, zCoord) > 0;
@@ -76,10 +86,10 @@ public class TileEntityShadowEye extends TileEntity {
hasAffixes = worldObj.getBlock(xCoord, yCoord + 2, zCoord) == Blocks.enchanting_table;
}
- boolean canStartRitual = valid && centerHasItem && (hasMods || hasAffixes);
+ boolean canStartRitual = valid && (centerHasItem && centerIsJewelry) && (hasMods || hasAffixes);
if (!canStartRitual && valid) {
- if (!centerHasItem) {
- er.append("Center pedestal requires an item");
+ if (!centerHasItem || !centerIsJewelry) {
+ er.append("Center pedestal requires a piece of jewelry");
} else if (!hasMods && !hasAffixes) {
er.append("Need at least one modifier, or an enchanting table for affixes.");
} else {
@@ -110,36 +120,11 @@ public class TileEntityShadowEye extends TileEntity {
if (opening == 2 && timer <= 0 && t == 10 && shouldAddData) {
addData(worldObj, xCoord, yCoord, zCoord);
TileEntityHandPedestal pedstl = (TileEntityHandPedestal) worldObj.getTileEntity(xCoord, yCoord - 3, zCoord);
- if (pedstl != null && pedstl.getHeldItemStack() != null) {
- JewelryNBT.addModifiers(pedstl.getHeldItemStack(), pedestalItems);
-
- if (!worldObj.isRemote)
- if (worldObj.getBlock(xCoord, yCoord + 2, zCoord) == Blocks.enchanting_table) {
- if (worldObj.rand.nextBoolean()) {
- JewelryNBT.addPrefix(pedstl.getHeldItemStack(), AffixMods.pickPrefix(worldObj.rand));
- target.addChatMessage(new ChatComponentText(
- EnumChatFormatting.DARK_PURPLE + "The item is infused with a prefix"));
- } else if (target.experienceLevel > 2) {
- target.addExperienceLevel(-2);
- JewelryNBT.addPrefix(pedstl.getHeldItemStack(), AffixMods.pickPrefix(worldObj.rand));
- if (!worldObj.isRemote)
- target.addChatMessage(new ChatComponentText(
- EnumChatFormatting.DARK_PURPLE + "You infuse the item with a prefix"));
- }
-
- if (worldObj.rand.nextBoolean()) {
- JewelryNBT.addSuffix(pedstl.getHeldItemStack(), AffixMods.pickSuffix(worldObj.rand));
- if (!worldObj.isRemote)
- target.addChatMessage(new ChatComponentText(
- EnumChatFormatting.DARK_PURPLE + "The item is infused with a suffix"));
- } else if (target.experienceLevel > 2) {
- target.addExperienceLevel(-2);
- JewelryNBT.addSuffix(pedstl.getHeldItemStack(), AffixMods.pickSuffix(worldObj.rand));
- if (!worldObj.isRemote)
- target.addChatMessage(new ChatComponentText(
- EnumChatFormatting.DARK_PURPLE + "You infuse the item with a suffix"));
- }
- }
+ ItemStack centerItem = pedstl == null ? null : pedstl.getHeldItemStack();
+ if (pedstl != null && centerItem != null) {
+ if (!worldObj.isRemote) {
+ modifyJewelry(centerItem);
+ }
}
revertPedestals(worldObj, xCoord, yCoord, zCoord);
@@ -186,6 +171,51 @@ public class TileEntityShadowEye extends TileEntity {
}
}
+ private void modifyJewelry(ItemStack centerItem) {
+ Item itm = centerItem.getItem();
+
+ int jewelType = -1;
+
+ if (itm instanceof IJewelryItem) {
+ IJewelryItem jewelryItem = (IJewelryItem) itm;
+
+ jewelType = jewelryItem.type();
+ } else if (itm instanceof ItemBaseJewelry) {
+ ItemBaseJewelry jewelry = (ItemBaseJewelry) itm;
+
+ jewelType = jewelry.type();
+ }
+
+ JewelryNBT.addModifiers(centerItem, pedestalItems);
+
+ if (worldObj.getBlock(xCoord, yCoord + 2, zCoord) == Blocks.enchanting_table) {
+ if (worldObj.rand.nextBoolean()) {
+ JewelryNBT.addPrefix(centerItem, AffixMods.pickPrefix(worldObj.rand, jewelType));
+ target.addChatMessage(
+ new ChatComponentText(EnumChatFormatting.DARK_PURPLE + "The item is infused with a prefix"));
+ } else if (target.experienceLevel > 2) {
+ target.addExperienceLevel(-2);
+ JewelryNBT.addPrefix(centerItem, AffixMods.pickPrefix(worldObj.rand, jewelType));
+ if (!worldObj.isRemote)
+ target.addChatMessage(new ChatComponentText(
+ EnumChatFormatting.DARK_PURPLE + "You infuse the item with a prefix"));
+ }
+
+ if (worldObj.rand.nextBoolean()) {
+ JewelryNBT.addSuffix(centerItem, AffixMods.pickSuffix(worldObj.rand, jewelType));
+ if (!worldObj.isRemote)
+ target.addChatMessage(new ChatComponentText(
+ EnumChatFormatting.DARK_PURPLE + "The item is infused with a suffix"));
+ } else if (target.experienceLevel > 2) {
+ target.addExperienceLevel(-2);
+ JewelryNBT.addSuffix(centerItem, AffixMods.pickSuffix(worldObj.rand, jewelType));
+ if (!worldObj.isRemote)
+ target.addChatMessage(new ChatComponentText(
+ EnumChatFormatting.DARK_PURPLE + "You infuse the item with a suffix"));
+ }
+ }
+ }
+
public boolean isValidStructure(World world, int x, int y, int z, int metadata, StringBuilder err) {
if (world.getBlockMetadata(x, y, z) == 0 || world.getBlockMetadata(x, y, z) == 2) {
// Layers from top to bottom
diff --git a/src/main/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java b/src/main/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java
index 7a85cff..ef5d19f 100755
--- a/src/main/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java
+++ b/src/main/java/darkknight/jewelrycraft/util/JewelrycraftUtil.java
@@ -381,8 +381,8 @@ public class JewelrycraftUtil {
JewelryNBT.addGem(jewelry, gem);
}
- String prefix = AffixMods.pickPrefix(random);
- String suffix = AffixMods.pickSuffix(random);
+ String prefix = AffixMods.pickPrefix(random, effType);
+ String suffix = AffixMods.pickSuffix(random, effType);
if (random.nextBoolean())
JewelryNBT.addPrefix(jewelry, prefix);
diff --git a/src/main/resources/assets/jewelrycraft2/lang/en_US.lang b/src/main/resources/assets/jewelrycraft2/lang/en_US.lang
index 91d393c..b87ee5e 100755
--- a/src/main/resources/assets/jewelrycraft2/lang/en_US.lang
+++ b/src/main/resources/assets/jewelrycraft2/lang/en_US.lang
@@ -133,6 +133,7 @@ curse.jewelrycraft2.scionofhell.description=The infernal lord sends his regards
curse.jewelrycraft2.doubledown.description=All or nothing
curse.jewelrycraft2.incredibledevotion.description=How far are you willing to go?
curse.jewelrycraft2.sacredoath.description=Swear upon it (NYI)
+curse.jewelrycraft2.sacredoath.description=Wide awake and watching
curse.jewelrycraft2.blind=Blind
curse.jewelrycraft2.flamingsoul=Flaming Soul
@@ -149,7 +150,8 @@ curse.jewelrycraft2.moneyEqualsPower=Money = Power
curse.jewelrycraft2.scionofhell=Scion of Hell
curse.jewelrycraft2.doubledown=Double Down
curse.jewelrycraft2.incredibledevotion=Incredible Devotion
-Curse.jewelrycraft2.sacredoath=Sacred Oath
+curse.jewelrycraft2.sacredoath=Sacred Oath
+curse.jewelrycraft2.insomnia=Insomnia
curse.jewelrycraft2.activated=You got cursed, press C to open the tab to see the active curses.
diff --git a/src/main/resources/assets/jewelrycraft2/textures/gui/jewelrycraft2_curses_0.png b/src/main/resources/assets/jewelrycraft2/textures/gui/jewelrycraft2_curses_0.png
index 6e5b606..1709a98 100755
--- a/src/main/resources/assets/jewelrycraft2/textures/gui/jewelrycraft2_curses_0.png
+++ b/src/main/resources/assets/jewelrycraft2/textures/gui/jewelrycraft2_curses_0.png
Binary files differ