diff --git a/src/main/java/WayofTime/bloodmagic/api/BloodMagicAPI.java b/src/main/java/WayofTime/bloodmagic/api/BloodMagicAPI.java index e7a322ee..defd9a2b 100644 --- a/src/main/java/WayofTime/bloodmagic/api/BloodMagicAPI.java +++ b/src/main/java/WayofTime/bloodmagic/api/BloodMagicAPI.java @@ -6,9 +6,13 @@ import lombok.Setter; import net.minecraft.item.Item; import net.minecraft.util.DamageSource; import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fml.common.registry.GameRegistry; public class BloodMagicAPI { + public static final String ORB = "ItemBloodOrb"; + public static final String SCRIBE = "ItemInscriptionTool"; + @Getter @Setter private static boolean loggingEnabled; @@ -18,11 +22,16 @@ public class BloodMagicAPI { @Getter private static DamageSource damageSource = new DamageSourceBloodMagic(); - @Getter @Setter - private static Item orbItem; - @Getter @Setter - private static Item scribeItem; - + /** + * Used to obtain Items from BloodMagic. Use the constants above for common items in case internal names + * change. + * + * @param name - The registered name of the item. Usually the same as the class name. + * @return - The requested Item + */ + public static Item getItem(String name) { + return GameRegistry.findItem(Constants.Mod.MODID, name); + } @Getter @Setter private static Fluid lifeEssence; diff --git a/src/main/java/WayofTime/bloodmagic/api/ritual/EnumRuneType.java b/src/main/java/WayofTime/bloodmagic/api/ritual/EnumRuneType.java index 0f9f811f..5215305c 100644 --- a/src/main/java/WayofTime/bloodmagic/api/ritual/EnumRuneType.java +++ b/src/main/java/WayofTime/bloodmagic/api/ritual/EnumRuneType.java @@ -24,7 +24,7 @@ public enum EnumRuneType implements IStringSerializable { } public ItemStack getScribeStack() { - return new ItemStack(BloodMagicAPI.getScribeItem(), 1, ordinal()); + return new ItemStack(BloodMagicAPI.getItem(BloodMagicAPI.SCRIBE), 1, ordinal()); } @Override diff --git a/src/main/java/WayofTime/bloodmagic/registry/ModItems.java b/src/main/java/WayofTime/bloodmagic/registry/ModItems.java index 718a943a..c35bb2a7 100644 --- a/src/main/java/WayofTime/bloodmagic/registry/ModItems.java +++ b/src/main/java/WayofTime/bloodmagic/registry/ModItems.java @@ -50,7 +50,6 @@ public class ModItems { public static void init() { bloodOrb = registerItem(new ItemBloodOrb()); - BloodMagicAPI.setOrbItem(bloodOrb); orbWeak = new BloodOrb("weak", 1, 5000); OrbRegistry.registerOrb(orbWeak); orbApprentice = new BloodOrb("apprentice", 2, 25000); @@ -69,7 +68,6 @@ public class ModItems { activationCrystal = registerItem(new ItemActivationCrystal()); slate = registerItem(new ItemSlate()); inscriptionTool = registerItem(new ItemInscriptionTool()); - BloodMagicAPI.setScribeItem(inscriptionTool); sacrificialDagger = registerItem(new ItemSacrificialDagger()); packSacrifice = registerItem(new ItemPackSacrifice());