aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gtPlusPlus/core/common
diff options
context:
space:
mode:
authorAlexdoru <57050655+Alexdoru@users.noreply.github.com>2024-10-04 02:55:32 +0200
committerAlexdoru <57050655+Alexdoru@users.noreply.github.com>2024-10-04 03:20:21 +0200
commitcfef58d806c72214c3331410de4862853bbe19b5 (patch)
tree2e506b8ac475d0b4299e1acc61fa8fa0ed210167 /src/main/java/gtPlusPlus/core/common
parented1a293c56f3fcfe2c4bf8e336aaa8871cd385f8 (diff)
downloadGT5-Unofficial-cfef58d806c72214c3331410de4862853bbe19b5.tar.gz
GT5-Unofficial-cfef58d806c72214c3331410de4862853bbe19b5.tar.bz2
GT5-Unofficial-cfef58d806c72214c3331410de4862853bbe19b5.zip
make GT++ CommonProxy implement IFuelHandler directly instead of using a separate class
Diffstat (limited to 'src/main/java/gtPlusPlus/core/common')
-rw-r--r--src/main/java/gtPlusPlus/core/common/CommonProxy.java38
1 files changed, 25 insertions, 13 deletions
diff --git a/src/main/java/gtPlusPlus/core/common/CommonProxy.java b/src/main/java/gtPlusPlus/core/common/CommonProxy.java
index 4346fb9e31..a53e088afc 100644
--- a/src/main/java/gtPlusPlus/core/common/CommonProxy.java
+++ b/src/main/java/gtPlusPlus/core/common/CommonProxy.java
@@ -2,6 +2,7 @@ package gtPlusPlus.core.common;
import net.minecraft.entity.monster.EntityBlaze;
import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
import net.minecraftforge.common.MinecraftForge;
@@ -10,6 +11,7 @@ import net.minecraftforge.event.entity.living.LivingAttackEvent;
import baubles.common.container.InventoryBaubles;
import baubles.common.lib.PlayerHandler;
import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.IFuelHandler;
import cpw.mods.fml.common.Optional;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLLoadCompleteEvent;
@@ -22,12 +24,12 @@ import cpw.mods.fml.common.registry.GameRegistry;
import galaxyspace.core.entity.mob.EntityEvolvedColdBlaze;
import gregtech.api.enums.Mods;
import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.api.objects.data.Pair;
import gtPlusPlus.core.block.ModBlocks;
import gtPlusPlus.core.config.ASMConfiguration;
import gtPlusPlus.core.creative.AddToCreativeTab;
import gtPlusPlus.core.entity.InternalEntityRegistry;
import gtPlusPlus.core.handler.BookHandler;
-import gtPlusPlus.core.handler.BurnableFuelHandler;
import gtPlusPlus.core.handler.CompatHandler;
import gtPlusPlus.core.handler.CompatIntermodStaging;
import gtPlusPlus.core.handler.GuiHandler;
@@ -44,7 +46,7 @@ import gtPlusPlus.core.util.minecraft.EntityUtils;
import gtPlusPlus.core.util.minecraft.ItemUtils;
import gtPlusPlus.xmod.ic2.CustomInternalName;
-public class CommonProxy {
+public class CommonProxy implements IFuelHandler {
public CommonProxy() {
// Should Register Gregtech Materials I've Made
@@ -100,16 +102,7 @@ public class CommonProxy {
}
public void postInit(final FMLPostInitializationEvent e) {
-
- // Make Burnables burnable
- if (!GTPPCore.burnables.isEmpty()) {
- BurnableFuelHandler fuelHandler = new BurnableFuelHandler();
- GameRegistry.registerFuelHandler(fuelHandler);
- Logger.INFO(
- "[Fuel Handler] Registering " + fuelHandler.getClass()
- .getName());
- }
-
+ GameRegistry.registerFuelHandler(this);
// Compat Handling
Logger.INFO("Removing recipes from other mods.");
CompatHandler.RemoveRecipesFromOtherMods();
@@ -121,7 +114,6 @@ public class CommonProxy {
CompatHandler.runQueuedRecipes();
Logger.INFO("Registering custom mob drops.");
registerCustomMobDrops();
-
// Moved last, to prevent recipes being generated post initialisation.
Logger.INFO("Loading Gregtech API recipes.");
CompatHandler.startLoadingGregAPIBasedRecipes();
@@ -207,6 +199,26 @@ public class CommonProxy {
return ctx.getServerHandler().playerEntity;
}
+ @Override
+ public int getBurnTime(ItemStack aStack) {
+ for (Pair<Integer, ItemStack> temp : GTPPCore.burnables) {
+ int aStackID = Item.getIdFromItem(aStack.getItem());
+ int burnID = Item.getIdFromItem(
+ temp.getValue()
+ .getItem());
+ if (aStackID == burnID) {
+ int burn = temp.getKey();
+ ItemStack fuel = temp.getValue();
+ ItemStack testItem = ItemUtils.getSimpleStack(fuel, aStack.stackSize);
+
+ if (aStack.isItemEqual(testItem)) {
+ return burn;
+ }
+ }
+ }
+ return 0;
+ }
+
@Optional.Method(modid = Mods.Names.BAUBLES)
@SubscribeEvent
public void onPlayerAttacked(LivingAttackEvent event) {