package fox.spiteful.forbidden.potions;
import fox.spiteful.forbidden.Config;
import fox.spiteful.forbidden.compat.Compat;
import net.minecraft.potion.Potion;
import net.minecraft.util.ResourceLocation;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
public class DarkPotions {
public static final ResourceLocation icons = new ResourceLocation("forbidden", "textures/misc/potions.png");
public static Potion bloodSeal;
public static Potion dragonwrack;
public static void alchemize(){
if(Potion.potionTypes.length < 256) {
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 e) {
System.err.println("Severe error, please report this to the mod author:");
System.err.println(e);
}
}
}
if(Compat.bm)
bloodSeal = new PotionBloodSeal(Config.bloodSealPotionID);
}
}