From 208b1f1e0d5faf601b53818b04f6699b2e6cb6bc Mon Sep 17 00:00:00 2001 From: OnyxDarkKnight Date: Tue, 5 May 2015 22:07:10 +0100 Subject: - Working on a GUI showing what curses you get with a description on them - Added a search bar in the Liquids Tab for easier searching - Fixed an issue with golden objects giving errors due to missing default texture - Improved the Infamy Mask to have less parts, thus causing less lag - Improved ingots and ore detection - Fixed certain ores when smelted outputting a different ingot - Necklaces and Rings now render as well - Updated the guide at the Guide item to have the proper link to the mod as well as mention the right people who helped with it - Added a list of the ores that work in the guide - Added a new tab to the guide regarding the ores and the ingots they create - Changed the stun effect caused by rings with feathers as modifiers to be a potion effect instead --- .../jewelrycraft/potions/PotionList.java | 55 ++++++++++++++++++++++ .../jewelrycraft/potions/PotionStun.java | 26 ++++++++++ 2 files changed, 81 insertions(+) create mode 100644 src/main/java/darkknight/jewelrycraft/potions/PotionList.java create mode 100644 src/main/java/darkknight/jewelrycraft/potions/PotionStun.java (limited to 'src/main/java/darkknight/jewelrycraft/potions') diff --git a/src/main/java/darkknight/jewelrycraft/potions/PotionList.java b/src/main/java/darkknight/jewelrycraft/potions/PotionList.java new file mode 100644 index 0000000..2ee508d --- /dev/null +++ b/src/main/java/darkknight/jewelrycraft/potions/PotionList.java @@ -0,0 +1,55 @@ +/** + * + */ +package darkknight.jewelrycraft.potions; + +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; +import net.minecraft.potion.Potion; +import cpw.mods.fml.common.event.FMLInitializationEvent; +import cpw.mods.fml.common.event.FMLPostInitializationEvent; +import cpw.mods.fml.common.event.FMLPreInitializationEvent; + +/** + * @author Sorin + * + */ +public class PotionList +{ + public static Potion stun; + + public static void preInit(FMLPreInitializationEvent e) + { + Potion[] potionTypes = null; + + for (Field f : Potion.class.getDeclaredFields()) { + f.setAccessible(true); + try { + if (f.getName().equals("potionTypes") || f.getName().equals("field_76425_a")) { + Field modfield = Field.class.getDeclaredField("modifiers"); + modfield.setAccessible(true); + modfield.setInt(f, f.getModifiers() & ~Modifier.FINAL); + + potionTypes = (Potion[])f.get(null); + final Potion[] newPotionTypes = new Potion[256]; + System.arraycopy(potionTypes, 0, newPotionTypes, 0, potionTypes.length); + f.set(null, newPotionTypes); + } + } catch (Exception e1) { + System.err.println("Severe error, please report this to the mod author:"); + System.err.println(e1); + } + } + + } + + public static void init(FMLInitializationEvent e) + { + stun = new PotionStun(32, true, 0x000000); + } + + public static void postInit(FMLPostInitializationEvent e) + { + + } +} diff --git a/src/main/java/darkknight/jewelrycraft/potions/PotionStun.java b/src/main/java/darkknight/jewelrycraft/potions/PotionStun.java new file mode 100644 index 0000000..f01a467 --- /dev/null +++ b/src/main/java/darkknight/jewelrycraft/potions/PotionStun.java @@ -0,0 +1,26 @@ +/** + * + */ +package darkknight.jewelrycraft.potions; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import darkknight.jewelrycraft.util.Variables; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; + +/** + * @author Sorin + */ +public class PotionStun extends Potion +{ + protected PotionStun(int id, boolean isBad, int color) + { + super(id, isBad, color); + this.setPotionName(Variables.MODID + ".potion.stun"); + } + + @SideOnly(Side.CLIENT) + public void renderInventoryEffect(int x, int y, PotionEffect effect, net.minecraft.client.Minecraft mc) { } +} -- cgit v1.2.3