From 36e85c82a34dbc82d068f60f852def45722df5d8 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Mon, 26 Jun 2017 23:00:43 +0100 Subject: [PATCH] Update to support reborn core mixin changes. --- src/main/java/techreborn/Core.java | 2 - .../java/techreborn/init/ModPoweredItems.java | 58 ---------------- .../techreborn/init/TechRebornMixins.java | 67 +++++++++++++++++++ .../reborncore.mixin.api.IMixinRegistry | 1 + 4 files changed, 68 insertions(+), 60 deletions(-) delete mode 100644 src/main/java/techreborn/init/ModPoweredItems.java create mode 100644 src/main/java/techreborn/init/TechRebornMixins.java create mode 100644 src/main/resources/META-INF/services/reborncore.mixin.api.IMixinRegistry diff --git a/src/main/java/techreborn/Core.java b/src/main/java/techreborn/Core.java index 6e35271ca..ec0c46a7d 100644 --- a/src/main/java/techreborn/Core.java +++ b/src/main/java/techreborn/Core.java @@ -95,8 +95,6 @@ public class Core { configDir = new File(new File(event.getModConfigurationDirectory(), "teamreborn"), "techreborn"); worldGen = new TechRebornWorldGen(); worldGen.configFile = (new File(configDir, "ores.json")); - //Must be done before the item classes are loaded. - ModPoweredItems.preInit(); TechRebornAPI.subItemRetriever = new SubItemRetriever(); //Recheck here because things break at times diff --git a/src/main/java/techreborn/init/ModPoweredItems.java b/src/main/java/techreborn/init/ModPoweredItems.java deleted file mode 100644 index b8258183a..000000000 --- a/src/main/java/techreborn/init/ModPoweredItems.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * This file is part of TechReborn, licensed under the MIT License (MIT). - * - * Copyright (c) 2017 TechReborn - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package techreborn.init; - -import reborncore.common.powerSystem.PoweredItem; - -/** - * Created by modmuss50 on 18/01/2017. - */ -public class ModPoweredItems { - - public static void preInit() { - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemRockCutter"); - PoweredItem.registerPoweredItem("techreborn.items.armor.ItemLithiumBatpack"); - PoweredItem.registerPoweredItem("techreborn.items.armor.ItemLapotronPack"); - PoweredItem.registerPoweredItem("techreborn.items.battery.ItemLithiumBattery"); - PoweredItem.registerPoweredItem("techreborn.items.battery.ItemLapotronicOrb"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemOmniTool"); - PoweredItem.registerPoweredItem("techreborn.items.battery.ItemEnergyCrystal"); - PoweredItem.registerPoweredItem("techreborn.items.battery.ItemLapotronCrystal"); - PoweredItem.registerPoweredItem("techreborn.items.battery.ItemReBattery"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemElectricTreetap"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemSteelDrill"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemDiamondDrill"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemAdvancedDrill"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemSteelChainsaw"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemDiamondChainsaw"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemAdvancedChainsaw"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemSteelJackhammer"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemDiamondJackhammer"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemAdvancedJackhammer"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemNanosaber"); - PoweredItem.registerPoweredItem("techreborn.items.tools.ItemCloakingDevice"); - } - -} diff --git a/src/main/java/techreborn/init/TechRebornMixins.java b/src/main/java/techreborn/init/TechRebornMixins.java new file mode 100644 index 000000000..9734b21d0 --- /dev/null +++ b/src/main/java/techreborn/init/TechRebornMixins.java @@ -0,0 +1,67 @@ +/* + * This file is part of TechReborn, licensed under the MIT License (MIT). + * + * Copyright (c) 2017 TechReborn + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package techreborn.init; + +import reborncore.common.powerSystem.PoweredItem; +import reborncore.mixin.api.IMixinRegistry; +import reborncore.mixin.api.MixinRegistationTime; +import reborncore.mixin.json.MixinTargetData; + +import java.util.ArrayList; +import java.util.List; + +public class TechRebornMixins implements IMixinRegistry { + @Override + public List register() { + List targetData = new ArrayList<>(); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemRockCutter")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.armor.ItemLithiumBatpack")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.armor.ItemLapotronPack")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.battery.ItemLithiumBattery")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.battery.ItemLapotronicOrb")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemOmniTool")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.battery.ItemEnergyCrystal")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.battery.ItemLapotronCrystal")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.battery.ItemReBattery")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemElectricTreetap")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemSteelDrill")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemDiamondDrill")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemAdvancedDrill")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemSteelChainsaw")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemDiamondChainsaw")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemAdvancedChainsaw")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemSteelJackhammer")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemDiamondJackhammer")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemAdvancedJackhammer")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemNanosaber")); + targetData.addAll(PoweredItem.registerPoweredItem("techreborn.items.tools.ItemCloakingDevice")); + return targetData; + } + + @Override + public MixinRegistationTime registrationTime() { + return MixinRegistationTime.LATE; + } +} diff --git a/src/main/resources/META-INF/services/reborncore.mixin.api.IMixinRegistry b/src/main/resources/META-INF/services/reborncore.mixin.api.IMixinRegistry new file mode 100644 index 000000000..fd7450cea --- /dev/null +++ b/src/main/resources/META-INF/services/reborncore.mixin.api.IMixinRegistry @@ -0,0 +1 @@ +techreborn.init.TechRebornMixins