package miscperipherals.safe; import net.minecraft.block.Block; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; public class ReflectionStore { // EE3 public static Item miniumStone; public static Item philStone; public static Object actionResultSuccess; // Additional Pipes public static Block blockChunkLoader; public static Block blockChunkLoaderB; // ChickenChunks public static Block blockChunkLoaderC; // EnderStorage public static Block blockEnderChest; // Steve's Carts public static Item modules; public static Class moduleDataHull; public static Block blockDetector; public static Block blockAdvDetector; // Nuclear Control public static Integer damageInfoPanel; public static Integer damageInfoPanelExtender; public static Integer damageRange; public static Block blockNuclearControlMain; public static Item itemUpgrade; // Advanced Solar Panel public static Block blockAdvSolarPanel; public static Integer advGenDay; public static Integer hGenDay; public static Integer uhGenDay; public static Integer advGenNight; public static Integer hGenNight; public static Integer uhGenNight; // WRCBE public static Item recieverDish; public static Item obsidianStick; public static Item wirelessTransceiver; // MFFS public static Integer forcefieldtransportcost; public static Object eb; public static Object ffb; public static Object oss; public static Item MFFSitemcardempty; public static Item MFFSItemIDCard; public static Item MFFSitemWrench; // Factorization public static ItemStack barrel_item; // Multi Page Chest public static Block chestBlock; public static void initEE3() { miniumStone = Reflector.getField("com.pahimar.ee3.item.ModItems", "miniumStone", Item.class); philStone = Reflector.getField("com.pahimar.ee3.item.ModItems", "philStone", Item.class); actionResultSuccess = Reflector.getField("com.pahimar.ee3.event.ActionEvent$ActionResult", "SUCCESS", Object.class); } public static void initAPUnofficial() { Object instance = Reflector.getField("buildcraft.additionalpipes.AdditionalPipes", "instance", Object.class); if (instance != null) { blockChunkLoader = Reflector.getField(instance, "blockChunkLoader", Block.class); } } public static void initAdditionalPipes() { blockChunkLoaderB = Reflector.getField("net.kyprus.additionalpipes.AdditionalPipes", "blockChunkLoader", Block.class); } public static void initChickenChunks() { blockChunkLoaderC = Reflector.getField("codechicken.chunkloader.ChickenChunks", "blockChunkLoader", Block.class); } public static void initEnderStorage() { blockEnderChest = Reflector.getField("codechicken.enderstorage.EnderStorage", "blockEnderChest", Block.class); } public static void initStevesCarts() { modules = Reflector.getField("vswe.stevescarts.StevesCarts", "modules", Item.class); moduleDataHull = Reflector.getClass("vswe.stevescarts.ModuleData.ModuleDataHull"); Object instance = Reflector.getField("vswe.stevescarts.StevesCarts", "instance", Object.class); if (instance != null) { blockDetector = Reflector.getField(instance, "blockDetector", Block.class); blockAdvDetector = Reflector.getField(instance, "blockAdvDetector", Block.class); } } public static void initIC2NuclearControl() { damageInfoPanel = Reflector.getField("shedar.mods.ic2.nuclearcontrol.BlockNuclearControlMain", "DAMAGE_INFO_PANEL", Integer.class); damageInfoPanelExtender = Reflector.getField("shedar.mods.ic2.nuclearcontrol.BlockNuclearControlMain", "DAMAGE_INFO_PANEL_EXTENDER", Integer.class); damageRange = Reflector.getField("shedar.mods.ic2.nuclearcontrol.items.ItemUpgrade", "DAMAGE_RANGE", Integer.class); Object instance = Reflector.getField("shedar.mods.ic2.nuclearcontrol.IC2NuclearControl", "instance", Object.class); if (instance != null) { blockNuclearControlMain = Reflector.getField(instance, "blockNuclearControlMain", Block.class); itemUpgrade = Reflector.getField(instance, "itemUpgrade", Item.class); } } public static void initAdvancedSolarPanel() { blockAdvSolarPanel = Reflector.getField("advsolar.AdvancedSolarPanel", "blockAdvSolarPanel", Block.class); advGenDay = Reflector.getField("advsolar.AdvancedSolarPanel", "advGenDay", Integer.class); hGenDay = Reflector.getField("advsolar.AdvancedSolarPanel", "hGenDay", Integer.class); uhGenDay = Reflector.getField("advsolar.AdvancedSolarPanel", "uhGenDay", Integer.class); advGenNight = Reflector.getField("advsolar.AdvancedSolarPanel", "advGenNight", Integer.class); hGenNight = Reflector.getField("advsolar.AdvancedSolarPanel", "hGenNight", Integer.class); uhGenNight = Reflector.getField("advsolar.AdvancedSolarPanel", "uhGenNight", Integer.class); } public static void initWRCBECore() { recieverDish = Reflector.getField("codechicken.wirelessredstone.core.WirelessRedstoneCore", "recieverDish", Item.class); wirelessTransceiver = Reflector.getField("codechicken.wirelessredstone.core.WirelessRedstoneCore", "wirelessTransceiver", Item.class); obsidianStick = Reflector.getField("codechicken.wirelessredstone.core.WirelessRedstoneCore", "obsidianStick", Item.class); } public static void initModularForceFieldSystem() { forcefieldtransportcost = Reflector.getField("mods.mffs.common.ModularForceFieldSystem", "forceFieldTransportCost", Integer.class); eb = Reflector.getField("mods.mffs.common.SecurityRight", "EB", Object.class); ffb = Reflector.getField("mods.mffs.common.SecurityRight", "FFB", Object.class); oss = Reflector.getField("mods.mffs.common.SecurityRight", "OSS", Object.class); MFFSitemcardempty = Reflector.getField("mods.mffs.common.ModularForceFieldSystem", "MFFSitemcardempty", Item.class); MFFSItemIDCard = Reflector.getField("mods.mffs.common.ModularForceFieldSystem", "MFFSItemIDCard", Item.class); MFFSitemWrench = Reflector.getField("mods.mffs.common.ModularForceFieldSystem", "MFFSitemWrench", Item.class); } public static void initFactorization() { Object registry = Reflector.getField("factorization.common.Core", "registry", Object.class); if (registry != null) { barrel_item = Reflector.getField(registry, "barrel_item", ItemStack.class); } } public static void initMultiPageChest() { chestBlock = Reflector.getField("cubex2.mods.multipagechest.MultiPageChest", "chestBlock", Block.class); } }