aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/core/handler
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-11-06 19:32:27 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-11-06 19:32:27 +1000
commitcbe0e497be8e466c380a5b4fa781b314ede9ada3 (patch)
treeb85848b432adf458e3abda466ee46d9dfc3e454b /src/Java/gtPlusPlus/core/handler
parentc40416b036c0e89451e1558253ccf07bbee028d0 (diff)
downloadGT5-Unofficial-cbe0e497be8e466c380a5b4fa781b314ede9ada3.tar.gz
GT5-Unofficial-cbe0e497be8e466c380a5b4fa781b314ede9ada3.tar.bz2
GT5-Unofficial-cbe0e497be8e466c380a5b4fa781b314ede9ada3.zip
Revert "$ Cleaned up the entire project."
This reverts commit 0669f5eb9d5029a8b94ec552171b0837605f7747. # Conflicts: # src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMTE_NuclearReactor.java # src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_MassFabricator.java Revert "% Cleaned up Imports." This reverts commit 3654052fb63a571c5eaca7f20714b87c17f7e966.
Diffstat (limited to 'src/Java/gtPlusPlus/core/handler')
-rw-r--r--src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java187
-rw-r--r--src/Java/gtPlusPlus/core/handler/COMPAT_IntermodStaging.java25
-rw-r--r--src/Java/gtPlusPlus/core/handler/CraftingManager.java14
-rw-r--r--src/Java/gtPlusPlus/core/handler/GuiHandler.java188
-rw-r--r--src/Java/gtPlusPlus/core/handler/Recipes/LateRegistrationHandler.java30
-rw-r--r--src/Java/gtPlusPlus/core/handler/Recipes/RegistrationHandler.java33
-rw-r--r--src/Java/gtPlusPlus/core/handler/events/LoginEventHandler.java136
-rw-r--r--src/Java/gtPlusPlus/core/handler/events/PickaxeBlockBreakEventHandler.java74
-rw-r--r--src/Java/gtPlusPlus/core/handler/events/UnbreakableBlockManager.java179
-rw-r--r--src/Java/gtPlusPlus/core/handler/workbench/Workbench_CraftingHandler.java207
-rw-r--r--src/Java/gtPlusPlus/core/handler/workbench/Workbench_RecipeSorter.java44
11 files changed, 607 insertions, 510 deletions
diff --git a/src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java b/src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
index b107dcfa31..63cf7d42c2 100644
--- a/src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
+++ b/src/Java/gtPlusPlus/core/handler/COMPAT_HANDLER.java
@@ -1,122 +1,155 @@
package gtPlusPlus.core.handler;
-import java.util.LinkedList;
-import java.util.Queue;
-
+import static gtPlusPlus.core.lib.LoadedMods.Gregtech;
import gregtech.api.util.GT_OreDictUnificator;
-import gtPlusPlus.core.common.compat.*;
+import gtPlusPlus.core.common.compat.COMPAT_BigReactors;
+import gtPlusPlus.core.common.compat.COMPAT_CompactWindmills;
+import gtPlusPlus.core.common.compat.COMPAT_EnderIO;
+import gtPlusPlus.core.common.compat.COMPAT_ExtraUtils;
+import gtPlusPlus.core.common.compat.COMPAT_IC2;
+import gtPlusPlus.core.common.compat.COMPAT_MorePlanets;
+import gtPlusPlus.core.common.compat.COMPAT_PneumaticCraft;
+import gtPlusPlus.core.common.compat.COMPAT_RFTools;
+import gtPlusPlus.core.common.compat.COMPAT_SimplyJetpacks;
+import gtPlusPlus.core.common.compat.COMPAT_Thaumcraft;
import gtPlusPlus.core.handler.Recipes.LateRegistrationHandler;
import gtPlusPlus.core.handler.Recipes.RegistrationHandler;
import gtPlusPlus.core.item.ModItems;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.LoadedMods;
-import gtPlusPlus.core.recipe.*;
+import gtPlusPlus.core.recipe.RECIPES_GREGTECH;
+import gtPlusPlus.core.recipe.RECIPES_LaserEngraver;
+import gtPlusPlus.core.recipe.ShapedRecipeObject;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.item.ItemUtils;
import gtPlusPlus.core.util.recipe.RecipeUtils;
-import gtPlusPlus.xmod.gregtech.registration.gregtech.*;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.Gregtech4Content;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechDehydrator;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechEnergyBuffer;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechGeothermalThermalGenerator;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialBlastSmelter;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialCentrifuge;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialCokeOven;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialElectrolyzer;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialMacerator;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialMassFabricator;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialMultiTank;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialPlatePress;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIndustrialWiremill;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechIronBlastFurnace;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechLFTR;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechPowerSubStation;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechRocketFuelGenerator;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechSafeBlock;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechSolarGenerators;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechSteamCondenser;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechSuperConductionPoint;
+import gtPlusPlus.xmod.gregtech.registration.gregtech.GregtechTieredFluidTanks;
+
+import java.util.LinkedList;
+import java.util.Queue;
+
import net.minecraft.item.ItemStack;
public class COMPAT_HANDLER {
+
+ public static Queue<Object> RemoveRecipeQueue = new LinkedList<Object>();
+ public static Queue<ShapedRecipeObject> AddRecipeQueue = new LinkedList<ShapedRecipeObject>();
+ public static Boolean areInitItemsLoaded = false;
+
+
+ public static void registerMyModsOreDictEntries(){
- public static Queue<Object> RemoveRecipeQueue = new LinkedList<Object>();
- public static Queue<ShapedRecipeObject> AddRecipeQueue = new LinkedList<ShapedRecipeObject>();
- public static Boolean areInitItemsLoaded = false;
+ Utils.LOG_INFO("Registering Materials with OreDict.");
+ //In-house
- public static void InitialiseHandlerThenAddRecipes() {
- RegistrationHandler.run();
- }
+ //tools
+ GT_OreDictUnificator.registerOre("craftingToolSandHammer", new ItemStack(ModItems.itemSandstoneHammer));
- public static void InitialiseLateHandlerThenAddRecipes() {
- LateRegistrationHandler.run();
+ for(int i=1; i<=10; i++){
+ GT_OreDictUnificator.registerOre("bufferCore_"+CORE.VOLTAGES[i-1], new ItemStack(ItemUtils.getItem("miscutils:item.itemBufferCore"+i)));
+ }
}
+
+ public static void registerGregtechMachines() {
+ if (Gregtech) {
+ new RECIPES_LaserEngraver();
+ GregtechEnergyBuffer.run();
+ GregtechLFTR.run();
+ GregtechSteamCondenser.run();
+ GregtechSafeBlock.run();
+ GregtechSuperConductionPoint.run();
+ GregtechIronBlastFurnace.run();
+ GregtechIndustrialCentrifuge.run();
+ GregtechIndustrialCokeOven.run();
+ GregtechIndustrialPlatePress.run();
+ GregtechRocketFuelGenerator.run();
+ GregtechIndustrialElectrolyzer.run();
+ GregtechIndustrialMacerator.run();
+ GregtechIndustrialWiremill.run();
+ GregtechIndustrialMassFabricator.run();
+ GregtechIndustrialBlastSmelter.run();
+ GregtechSolarGenerators.run();
+ GregtechPowerSubStation.run();
+ GregtechDehydrator.run();
+ GregtechTieredFluidTanks.run();
+ GregtechIndustrialMultiTank.run();
+ GregtechGeothermalThermalGenerator.run();
+ Gregtech4Content.run();
+ }
- // InterMod
- public static void intermodOreDictionarySupport() {
-
- if (LoadedMods.Big_Reactors) {
+ }
+
+ //InterMod
+ public static void intermodOreDictionarySupport(){
+
+ if (LoadedMods.Big_Reactors){
COMPAT_BigReactors.OreDict();
}
- if (LoadedMods.EnderIO) {
+ if (LoadedMods.EnderIO){
COMPAT_EnderIO.OreDict();
}
- if (LoadedMods.MorePlanets) {
+ if (LoadedMods.MorePlanets){
COMPAT_MorePlanets.OreDict();
}
- if (LoadedMods.Simply_Jetpacks) {
+ if (LoadedMods.Simply_Jetpacks){
COMPAT_SimplyJetpacks.OreDict();
}
- if (LoadedMods.RFTools) {
+ if (LoadedMods.RFTools){
COMPAT_RFTools.OreDict();
}
- if (LoadedMods.Thaumcraft) {
+ if (LoadedMods.Thaumcraft){
COMPAT_Thaumcraft.OreDict();
}
- if (LoadedMods.Extra_Utils) {
+ if (LoadedMods.Extra_Utils){
COMPAT_ExtraUtils.OreDict();
}
- if (LoadedMods.PneumaticCraft) {
+ if (LoadedMods.PneumaticCraft){
COMPAT_PneumaticCraft.OreDict();
}
- if (LoadedMods.CompactWindmills) {
+ if (LoadedMods.CompactWindmills){
COMPAT_CompactWindmills.OreDict();
}
- if (LoadedMods.IndustrialCraft2) {
+ if (LoadedMods.IndustrialCraft2){
COMPAT_IC2.OreDict();
- }
+ }
}
-
- public static void registerGregtechMachines() {
- if (LoadedMods.Gregtech) {
- new RECIPES_LaserEngraver();
- GregtechEnergyBuffer.run();
- GregtechLFTR.run();
- GregtechSteamCondenser.run();
- GregtechSafeBlock.run();
- GregtechSuperConductionPoint.run();
- GregtechIronBlastFurnace.run();
- GregtechIndustrialCentrifuge.run();
- GregtechIndustrialCokeOven.run();
- GregtechIndustrialPlatePress.run();
- GregtechRocketFuelGenerator.run();
- GregtechIndustrialElectrolyzer.run();
- GregtechIndustrialMacerator.run();
- GregtechIndustrialWiremill.run();
- GregtechIndustrialMassFabricator.run();
- GregtechIndustrialBlastSmelter.run();
- GregtechSolarGenerators.run();
- GregtechPowerSubStation.run();
- GregtechDehydrator.run();
- GregtechTieredFluidTanks.run();
- GregtechIndustrialMultiTank.run();
- GregtechGeothermalThermalGenerator.run();
- Gregtech4Content.run();
- }
-
+
+ public static void RemoveRecipesFromOtherMods(){
+ //Removal of Recipes
+ for(Object item : RemoveRecipeQueue){
+ RecipeUtils.removeCraftingRecipe(item);
+ }
}
-
- public static void registerMyModsOreDictEntries() {
-
- Utils.LOG_INFO("Registering Materials with OreDict.");
- // In-house
-
- // tools
- GT_OreDictUnificator.registerOre("craftingToolSandHammer", new ItemStack(ModItems.itemSandstoneHammer));
-
- for (int i = 1; i <= 10; i++) {
- GT_OreDictUnificator.registerOre("bufferCore_" + CORE.VOLTAGES[i - 1],
- new ItemStack(ItemUtils.getItem("miscutils:item.itemBufferCore" + i)));
- }
+
+ public static void InitialiseHandlerThenAddRecipes(){
+ RegistrationHandler.run();
}
-
- public static void RemoveRecipesFromOtherMods() {
- // Removal of Recipes
- for (final Object item : COMPAT_HANDLER.RemoveRecipeQueue) {
- RecipeUtils.removeCraftingRecipe(item);
- }
+ public static void InitialiseLateHandlerThenAddRecipes(){
+ LateRegistrationHandler.run();
}
-
- public static void startLoadingGregAPIBasedRecipes() {
+
+ public static void startLoadingGregAPIBasedRecipes(){
RECIPES_GREGTECH.run();
}
}
diff --git a/src/Java/gtPlusPlus/core/handler/COMPAT_IntermodStaging.java b/src/Java/gtPlusPlus/core/handler/COMPAT_IntermodStaging.java
index 4dce04f3d5..ccf2b83837 100644
--- a/src/Java/gtPlusPlus/core/handler/COMPAT_IntermodStaging.java
+++ b/src/Java/gtPlusPlus/core/handler/COMPAT_IntermodStaging.java
@@ -10,7 +10,18 @@ import gtPlusPlus.xmod.thermalfoundation.HANDLER_TF;
public class COMPAT_IntermodStaging {
- public static void init() {
+ public static void preInit(){
+ HANDLER_GT.preInit();
+ HANDLER_GC.preInit();
+ HANDLER_TF.preInit();
+ HANDLER_FR.preInit();
+ HANDLER_Psych.preInit();
+ HANDLER_IC2.preInit();
+ HANDLER_Computronics.preInit();
+
+ }
+
+ public static void init(){
HANDLER_GT.init();
HANDLER_GC.init();
HANDLER_TF.init();
@@ -20,7 +31,7 @@ public class COMPAT_IntermodStaging {
HANDLER_Computronics.init();
}
- public static void postInit() {
+ public static void postInit(){
HANDLER_GT.postInit();
HANDLER_GC.postInit();
HANDLER_TF.postInit();
@@ -30,15 +41,5 @@ public class COMPAT_IntermodStaging {
HANDLER_Computronics.postInit();
}
- public static void preInit() {
- HANDLER_GT.preInit();
- HANDLER_GC.preInit();
- HANDLER_TF.preInit();
- HANDLER_FR.preInit();
- HANDLER_Psych.preInit();
- HANDLER_IC2.preInit();
- HANDLER_Computronics.preInit();
-
- }
}
diff --git a/src/Java/gtPlusPlus/core/handler/CraftingManager.java b/src/Java/gtPlusPlus/core/handler/CraftingManager.java
index 89f7ec1682..bd0f114b1a 100644
--- a/src/Java/gtPlusPlus/core/handler/CraftingManager.java
+++ b/src/Java/gtPlusPlus/core/handler/CraftingManager.java
@@ -2,16 +2,16 @@ package gtPlusPlus.core.handler;
public class CraftingManager {
- public static void addCraftingRecipies() {
-
+ public static void mainRegistry() {
+ addCraftingRecipies();
+ addSmeltingRecipies();
}
- public static void addSmeltingRecipies() {
-
+ public static void addCraftingRecipies() {
+
}
- public static void mainRegistry() {
- CraftingManager.addCraftingRecipies();
- CraftingManager.addSmeltingRecipies();
+ public static void addSmeltingRecipies() {
+
}
}
diff --git a/src/Java/gtPlusPlus/core/handler/GuiHandler.java b/src/Java/gtPlusPlus/core/handler/GuiHandler.java
index e3cf2caf9b..c2b120d428 100644
--- a/src/Java/gtPlusPlus/core/handler/GuiHandler.java
+++ b/src/Java/gtPlusPlus/core/handler/GuiHandler.java
@@ -1,9 +1,9 @@
package gtPlusPlus.core.handler;
-import cpw.mods.fml.common.network.IGuiHandler;
-import cpw.mods.fml.common.network.NetworkRegistry;
import gtPlusPlus.GTplusplus;
-import gtPlusPlus.core.container.*;
+import gtPlusPlus.core.container.Container_BackpackBase;
+import gtPlusPlus.core.container.Container_Workbench;
+import gtPlusPlus.core.container.Container_WorkbenchAdvanced;
import gtPlusPlus.core.gui.beta.Gui_ID_Registry;
import gtPlusPlus.core.gui.beta.MU_GuiId;
import gtPlusPlus.core.gui.item.GuiBaseBackpack;
@@ -22,129 +22,143 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ChunkCoordinates;
import net.minecraft.world.World;
+import cpw.mods.fml.common.network.IGuiHandler;
+import cpw.mods.fml.common.network.NetworkRegistry;
public class GuiHandler implements IGuiHandler {
- public static final int GUI1 = 0; // Frame Alveary
- public static final int GUI2 = 1; // RTG
- public static final int GUI3 = 2; // BackpackHandler
- public static final int GUI4 = 3; // Workbench
- public static final int GUI5 = 4; // Workbench Adv
- public static final int GUI6 = 5; //
- public static final int GUI7 = 6; //
- public static final int GUI8 = 7; //
-
- private static short decodeGuiData(final int guiId) {
- return (short) (guiId >> 16);
- }
+ public static final int GUI1 = 0; //Frame Alveary
+ public static final int GUI2 = 1; //RTG
+ public static final int GUI3 = 2; //BackpackHandler
+ public static final int GUI4 = 3; //Workbench
+ public static final int GUI5 = 4; //Workbench Adv
+ public static final int GUI6 = 5; //
+ public static final int GUI7 = 6; //
+ public static final int GUI8 = 7; //
- private static MU_GuiId decodeGuiID(final int guiData) {
- final int guiId = guiData & 0xFF;
- return Gui_ID_Registry.getGuiId(guiId);
- }
- private static int encodeGuiData(final IGuiManager guiHandler, final short data) {
- final MU_GuiId guiId = Gui_ID_Registry.getGuiIdForGuiHandler(guiHandler);
- return data << 16 | guiId.getId();
- }
- public static void init() {
+ public static void init(){
- Utils.LOG_INFO("Registering GUIs.");
- NetworkRegistry.INSTANCE.registerGuiHandler(GTplusplus.instance, new GuiHandler());
- // Register GuiHandler
- // NetworkRegistry.INSTANCE.registerGuiHandler(GTplusplus.instance, new
- // GuiHandler());
+ Utils.LOG_INFO("Registering GUIs.");
+ NetworkRegistry.INSTANCE.registerGuiHandler(GTplusplus.instance, new GuiHandler());
+ //Register GuiHandler
+ //NetworkRegistry.INSTANCE.registerGuiHandler(GTplusplus.instance, new GuiHandler());
}
- // New Methods
- public static void openGui(final EntityPlayer entityplayer, final IGuiManager guiHandler) {
- GuiHandler.openGui(entityplayer, guiHandler, (short) 0);
- }
- public static void openGui(final EntityPlayer entityplayer, final IGuiManager guiHandler, final short data) {
- final int guiData = GuiHandler.encodeGuiData(guiHandler, data);
- final ChunkCoordinates coordinates = guiHandler.getCoordinates();
- entityplayer.openGui(GTplusplus.instance, guiData, entityplayer.worldObj, coordinates.posX, coordinates.posY,
- coordinates.posZ);
- }
+ @Override //ContainerModTileEntity
+ public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
+ TileEntity te = world.getTileEntity(x, y, z);
- @Override // GuiModTileEntity
- public Object getClientGuiElement(final int ID, final EntityPlayer player, final World world, final int x,
- final int y, final int z) {
- Utils.LOG_WARNING("getClientGuiElement Called by: " + player + ", in world: " + player.dimension + " at x:" + x
- + ", y:" + y + ", z:" + z + ".");
- final TileEntity te = world.getTileEntity(x, y, z);
- if (te != null) {
- if (ID == GuiHandler.GUI1) {
- if (CORE.configSwitches.enableCustomAlvearyBlocks) {
- Utils.LOG_WARNING("Opening Gui with Id: " + ID + " Alveary Frame Housing");
- return new GUI_FrameHousing((TileAlvearyFrameHousing) te, player);
+ if (te != null){
+ if (ID == GUI1){
+ if (CORE.configSwitches.enableCustomAlvearyBlocks){
+ return new CONTAINER_FrameHousing((TileAlvearyFrameHousing)te, player);
}
}
- else if (ID == GuiHandler.GUI2) {
- Utils.LOG_WARNING("Opening Gui with Id: " + ID + " RTG");
- // return new GUI_RTG((TileEntityRTG) te.);
+ else if (ID == GUI2){
+ //return new CONTAINER_RTG(player, (TileEntityRTG)te);
}
+
+
}
- if (ID == GuiHandler.GUI3) {
- // We have to cast the new container as our custom class
- // and pass in currently held item for the inventory
- return new GuiBaseBackpack(new Container_BackpackBase(player, player.inventory,
- new BaseInventoryBackpack(player.getHeldItem())));
+ if (ID == GUI3)
+ {
+ // Use the player's held item to create the inventory
+ return new Container_BackpackBase(player, player.inventory, new BaseInventoryBackpack(player.getHeldItem()));
}
- if (te != null) {
- if (ID == GuiHandler.GUI4) {
- return new GUI_Workbench(player.inventory, (TileEntityWorkbench) te);
+ if (te != null){
+ if (ID == GUI4){
+
+ return new Container_Workbench(player.inventory, (TileEntityWorkbench)te);
+
}
- if (ID == GuiHandler.GUI5) {
+ if (ID == GUI5){
Utils.LOG_INFO("sad");
- return new GUI_WorkbenchAdvanced(player.inventory, (TileEntityWorkbenchAdvanced) te);
+ return new Container_WorkbenchAdvanced(player.inventory, (TileEntityWorkbenchAdvanced)te);
+
}
}
+
+
+
+
+
+
return null;
}
- @Override // ContainerModTileEntity
- public Object getServerGuiElement(final int ID, final EntityPlayer player, final World world, final int x,
- final int y, final int z) {
- final TileEntity te = world.getTileEntity(x, y, z);
-
- if (te != null) {
- if (ID == GuiHandler.GUI1) {
- if (CORE.configSwitches.enableCustomAlvearyBlocks) {
- return new CONTAINER_FrameHousing((TileAlvearyFrameHousing) te, player);
+ @Override //GuiModTileEntity
+ public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) {
+ Utils.LOG_WARNING("getClientGuiElement Called by: "+player+", in world: "+player.dimension+" at x:"+x+", y:"+y+", z:"+z+".");
+ TileEntity te = world.getTileEntity(x, y, z);
+ if (te != null){
+ if (ID == GUI1){
+ if (CORE.configSwitches.enableCustomAlvearyBlocks){
+ Utils.LOG_WARNING("Opening Gui with Id: "+ID+" Alveary Frame Housing");
+ return new GUI_FrameHousing((TileAlvearyFrameHousing) te, player);
}
}
- else if (ID == GuiHandler.GUI2) {
- // return new CONTAINER_RTG(player, (TileEntityRTG)te);
+ else if (ID == GUI2){
+ Utils.LOG_WARNING("Opening Gui with Id: "+ID+" RTG");
+ //return new GUI_RTG((TileEntityRTG) te.);
}
-
}
- if (ID == GuiHandler.GUI3) {
- // Use the player's held item to create the inventory
- return new Container_BackpackBase(player, player.inventory,
- new BaseInventoryBackpack(player.getHeldItem()));
+ if (ID == GUI3)
+ {
+ // We have to cast the new container as our custom class
+ // and pass in currently held item for the inventory
+ return new GuiBaseBackpack((Container_BackpackBase) new Container_BackpackBase(player, player.inventory, new BaseInventoryBackpack(player.getHeldItem())));
}
- if (te != null) {
- if (ID == GuiHandler.GUI4) {
-
- return new Container_Workbench(player.inventory, (TileEntityWorkbench) te);
-
+ if (te != null){
+ if (ID == GUI4){
+ return new GUI_Workbench(player.inventory, (TileEntityWorkbench)te);
}
- if (ID == GuiHandler.GUI5) {
+ if (ID == GUI5){
Utils.LOG_INFO("sad");
- return new Container_WorkbenchAdvanced(player.inventory, (TileEntityWorkbenchAdvanced) te);
-
+ return new GUI_WorkbenchAdvanced(player.inventory, (TileEntityWorkbenchAdvanced)te);
}
}
return null;
}
+
+
+ //New Methods
+ public static void openGui(EntityPlayer entityplayer, IGuiManager guiHandler)
+ {
+ openGui(entityplayer, guiHandler, (short)0);
+ }
+
+ public static void openGui(EntityPlayer entityplayer, IGuiManager guiHandler, short data)
+ {
+ int guiData = encodeGuiData(guiHandler, data);
+ ChunkCoordinates coordinates = guiHandler.getCoordinates();
+ entityplayer.openGui(GTplusplus.instance, guiData, entityplayer.worldObj, coordinates.posX, coordinates.posY, coordinates.posZ);
+ }
+
+ private static int encodeGuiData(IGuiManager guiHandler, short data)
+ {
+ MU_GuiId guiId = Gui_ID_Registry.getGuiIdForGuiHandler(guiHandler);
+ return data << 16 | guiId.getId();
+ }
+
+ private static MU_GuiId decodeGuiID(int guiData)
+ {
+ int guiId = guiData & 0xFF;
+ return Gui_ID_Registry.getGuiId(guiId);
+ }
+
+ private static short decodeGuiData(int guiId)
+ {
+ return (short)(guiId >> 16);
+ }
+
} \ No newline at end of file
diff --git a/src/Java/gtPlusPlus/core/handler/Recipes/LateRegistrationHandler.java b/src/Java/gtPlusPlus/core/handler/Recipes/LateRegistrationHandler.java
index 71fa76ba38..7d739bdca3 100644
--- a/src/Java/gtPlusPlus/core/handler/Recipes/LateRegistrationHandler.java
+++ b/src/Java/gtPlusPlus/core/handler/Recipes/LateRegistrationHandler.java
@@ -6,25 +6,23 @@ import gtPlusPlus.core.util.Utils;
public class LateRegistrationHandler {
- public static int recipesSuccess = 0;
- public static int recipesFailed = 0;
-
- private final static void init() {
- for (final ShapedRecipeObject item : COMPAT_HANDLER.AddRecipeQueue) {
- item.buildRecipe();
- }
+ public static int recipesSuccess = 0;
+ public static int recipesFailed = 0;
+
+ public static void run(){
+ init();
+ }
+
+ private final static void init(){
+ for(ShapedRecipeObject item : COMPAT_HANDLER.AddRecipeQueue){
+ item.buildRecipe();
+ }
try {
Thread.sleep(10);
- }
- catch (final InterruptedException e) {
+ } catch (InterruptedException e) {
Utils.LOG_INFO(e.toString());
}
- Utils.LOG_INFO("Late Recipes Loaded: " + LateRegistrationHandler.recipesSuccess + " Failed: "
- + LateRegistrationHandler.recipesFailed);
+ Utils.LOG_INFO("Late Recipes Loaded: "+recipesSuccess+" Failed: "+recipesFailed);
}
-
- public static void run() {
- LateRegistrationHandler.init();
- }
-
+
}
diff --git a/src/Java/gtPlusPlus/core/handler/Recipes/RegistrationHandler.java b/src/Java/gtPlusPlus/core/handler/Recipes/RegistrationHandler.java
index 00e0327134..275a67f571 100644
--- a/src/Java/gtPlusPlus/core/handler/Recipes/RegistrationHandler.java
+++ b/src/Java/gtPlusPlus/core/handler/Recipes/RegistrationHandler.java
@@ -1,31 +1,34 @@
package gtPlusPlus.core.handler.Recipes;
import gtPlusPlus.core.handler.COMPAT_HANDLER;
-import gtPlusPlus.core.recipe.*;
+import gtPlusPlus.core.recipe.RECIPES_General;
+import gtPlusPlus.core.recipe.RECIPES_MachineComponents;
+import gtPlusPlus.core.recipe.RECIPES_Machines;
+import gtPlusPlus.core.recipe.RECIPES_Shapeless;
+import gtPlusPlus.core.recipe.RECIPES_Tools;
+import gtPlusPlus.core.recipe.RECIPE_Batteries;
import gtPlusPlus.core.util.Utils;
public class RegistrationHandler {
- public static int recipesSuccess = 0;
- public static int recipesFailed = 0;
-
- private final static void init() {
+ public static int recipesSuccess = 0;
+ public static int recipesFailed = 0;
+
+ public static void run(){
+ init();
+ }
+
+ private final static void init(){
RECIPES_Tools.RECIPES_LOAD();
RECIPES_Machines.RECIPES_LOAD();
RECIPES_Shapeless.RECIPES_LOAD();
RECIPES_MachineComponents.RECIPES_LOAD();
RECIPE_Batteries.RECIPES_LOAD();
RECIPES_General.RECIPES_LOAD();
- // RECIPES_MTWRAPPER.run();
- Utils.LOG_INFO(
- "Loaded: " + RegistrationHandler.recipesSuccess + " Failed: " + RegistrationHandler.recipesFailed);
+ //RECIPES_MTWRAPPER.run();
+ Utils.LOG_INFO("Loaded: "+recipesSuccess+" Failed: "+recipesFailed);
COMPAT_HANDLER.areInitItemsLoaded = true;
- // Utils.LOG_INFO("MT Loaded: "+RECIPES_MTWRAPPER.MT_RECIPES_LOADED+" MT
- // Failed: "+RECIPES_MTWRAPPER.MT_RECIPES_FAILED);
+ //Utils.LOG_INFO("MT Loaded: "+RECIPES_MTWRAPPER.MT_RECIPES_LOADED+" MT Failed: "+RECIPES_MTWRAPPER.MT_RECIPES_FAILED);
}
-
- public static void run() {
- RegistrationHandler.init();
- }
-
+
}
diff --git a/src/Java/gtPlusPlus/core/handler/events/LoginEventHandler.java b/src/Java/gtPlusPlus/core/handler/events/LoginEventHandler.java
index 0e38e91ddb..e529d47699 100644
--- a/src/Java/gtPlusPlus/core/handler/events/LoginEventHandler.java
+++ b/src/Java/gtPlusPlus/core/handler/events/LoginEventHandler.java
@@ -1,24 +1,25 @@
package gtPlusPlus.core.handler.events;
-import java.util.UUID;
-
-import cpw.mods.fml.common.eventhandler.SubscribeEvent;
-import cpw.mods.fml.common.gameevent.PlayerEvent;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.player.PlayerCache;
import gtPlusPlus.core.util.player.PlayerUtils;
+
+import java.util.UUID;
+
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
+import cpw.mods.fml.common.eventhandler.SubscribeEvent;
+import cpw.mods.fml.common.gameevent.PlayerEvent;
public class LoginEventHandler {
- public String localPlayersName;
- public UUID localPlayersUUID;
- private EntityPlayer localPlayerRef;
+ public String localPlayersName;
+ public UUID localPlayersUUID;
+ private EntityPlayer localPlayerRef;
@SubscribeEvent
- public void onPlayerLogin(final PlayerEvent.PlayerLoggedInEvent event) {
+ public void onPlayerLogin(PlayerEvent.PlayerLoggedInEvent event) {
this.localPlayerRef = event.player;
this.localPlayersName = event.player.getDisplayName();
@@ -26,71 +27,68 @@ public class LoginEventHandler {
try {
- if (this.localPlayerRef instanceof EntityPlayerMP && this.localPlayerRef != null) {
- // Populates player cache
- if (!this.localPlayerRef.worldObj.isRemote) {
- PlayerCache.appendParamChanges(this.localPlayersName, this.localPlayersUUID.toString());
-
- if (!CORE.isModUpToDate) {
- Utils.LOG_INFO("You're not using the latest recommended version of GT++, consider updating.");
- Utils.LOG_INFO("Latest version is: " + CORE.MASTER_VERSION);
- Utils.LOG_INFO("You currently have: " + CORE.VERSION);
- PlayerUtils.messagePlayer(this.localPlayerRef,
- "You're not using the latest recommended version of GT++, consider updating.");
- }
- else {
- Utils.LOG_INFO("You're using the latest recommended version of GT++.");
- }
+ if (localPlayerRef instanceof EntityPlayerMP && localPlayerRef != null){
+ //Populates player cache
+ if (!localPlayerRef.worldObj.isRemote){
+ PlayerCache.appendParamChanges(localPlayersName, localPlayersUUID.toString());
+
+ if (!CORE.isModUpToDate){
+ Utils.LOG_INFO("You're not using the latest recommended version of GT++, consider updating.");
+ Utils.LOG_INFO("Latest version is: "+CORE.MASTER_VERSION);
+ Utils.LOG_INFO("You currently have: "+CORE.VERSION);
+ PlayerUtils.messagePlayer(localPlayerRef, "You're not using the latest recommended version of GT++, consider updating.");
+ }
+ else {
+ Utils.LOG_INFO("You're using the latest recommended version of GT++.");
+ }
+
}
- /*
- * if (localPlayerRef.getCommandSenderName().toLowerCase().
- * equalsIgnoreCase("ImQ009") ||
- * localPlayerRef.getCommandSenderName().toLowerCase().contains(
- * "player")){ Utils.LOG_INFO("Spawning a new Santa Thread.");
- * Thread t = new Thread() { UUID threadHandlerIDthing =
- * localPlayersUUID;
- *
- * @Override public void run() { while(true &&
- * Minecraft.getMinecraft().getIntegratedServer() != null) { try
- * { if(localPlayerRef == null){ localPlayerRef =
- * Utils.getPlayerOnServerFromUUID(threadHandlerIDthing); }
- *
- *
- * //ImQ009 is a legend. if
- * (localPlayerRef.getCommandSenderName().toLowerCase().
- * equalsIgnoreCase("ImQ009")){
- * Utils.messagePlayer(localPlayerRef,
- * "Enjoy some complimentary Raisin Bread.");
- * localPlayerRef.inventory.addItemStackToInventory(UtilsItems.
- * getSimpleStack(ModItems.itemIngotRaisinBread,
- * MathUtils.randInt(1, 5))); }
- *
- *
- * if
- * (localPlayerRef.getCommandSenderName().toLowerCase().contains
- * ("player")){ Utils.messagePlayer(localPlayerRef,
- * "Enjoy some complimentary Raisin Bread.");
- * localPlayerRef.inventory.addItemStackToInventory(UtilsItems.
- * getSimpleStack(ModItems.itemIngotRaisinBread,
- * MathUtils.randInt(1, 5))); }
- * Thread.sleep(1000*60*MathUtils.randInt(15, 90)); } catch
- * (InterruptedException ie) { Utils.LOG_INFO(
- * "Santa Mode Disabled."); } }
- *
- * Utils.LOG_INFO("Thread Stopped. Handler Closed.");
- *
- * } }; //t.start();
- *
- *
- * }
- */
-
- }
- }
- catch (final Throwable errr) {
+
+ /*if (localPlayerRef.getCommandSenderName().toLowerCase().equalsIgnoreCase("ImQ009") || localPlayerRef.getCommandSenderName().toLowerCase().contains("player")){
+ Utils.LOG_INFO("Spawning a new Santa Thread.");
+ Thread t = new Thread() {
+ UUID threadHandlerIDthing = localPlayersUUID;
+ @Override
+ public void run() {
+ while(true && Minecraft.getMinecraft().getIntegratedServer() != null) {
+ try {
+ if(localPlayerRef == null){
+ localPlayerRef = Utils.getPlayerOnServerFromUUID(threadHandlerIDthing);
+ }
+
+
+ //ImQ009 is a legend.
+ if (localPlayerRef.getCommandSenderName().toLowerCase().equalsIgnoreCase("ImQ009")){
+ Utils.messagePlayer(localPlayerRef, "Enjoy some complimentary Raisin Bread.");
+ localPlayerRef.inventory.addItemStackToInventory(UtilsItems.getSimpleStack(ModItems.itemIngotRaisinBread, MathUtils.randInt(1, 5)));
+ }
+
+
+ if (localPlayerRef.getCommandSenderName().toLowerCase().contains("player")){
+ Utils.messagePlayer(localPlayerRef, "Enjoy some complimentary Raisin Bread.");
+ localPlayerRef.inventory.addItemStackToInventory(UtilsItems.getSimpleStack(ModItems.itemIngotRaisinBread, MathUtils.randInt(1, 5)));
+ }
+ Thread.sleep(1000*60*MathUtils.randInt(15, 90));
+ } catch (InterruptedException ie) {
+ Utils.LOG_INFO("Santa Mode Disabled.");
+ }
+ }
+
+ Utils.LOG_INFO("Thread Stopped. Handler Closed.");
+
+ }
+ };
+ //t.start();
+
+
+ }*/
+
+
+ }
+ } catch (Throwable errr){
Utils.LOG_INFO("Login Handler encountered an error.");
}
diff --git a/src/Java/gtPlusPlus/core/handler/events/PickaxeBlockBreakEventHandler.java b/src/Java/gtPlusPlus/core/handler/events/PickaxeBlockBreakEventHandler.java
index 5c962a5d2f..49b844f057 100644
--- a/src/Java/gtPlusPlus/core/handler/events/PickaxeBlockBreakEventHandler.java
+++ b/src/Java/gtPlusPlus/core/handler/events/PickaxeBlockBreakEventHandler.java
@@ -1,53 +1,54 @@
package gtPlusPlus.core.handler.events;
-import java.util.UUID;
-
-import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.metatileentity.*;
+import gregtech.api.metatileentity.BaseMetaPipeEntity;
+import gregtech.api.metatileentity.BaseMetaTileEntity;
+import gregtech.api.metatileentity.BaseTileEntity;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.player.PlayerUtils;
import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.machines.GregtechMetaSafeBlockBase;
+
+import java.util.UUID;
+
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
import net.minecraftforge.event.world.BlockEvent.BreakEvent;
+import cpw.mods.fml.common.eventhandler.SubscribeEvent;
public class PickaxeBlockBreakEventHandler {
@SubscribeEvent
- public void onBreakBlock(final BreakEvent event) {
- try {
- final TileEntity entity = event.world.getTileEntity(event.x, event.y, event.z);
- if (entity != null && !entity.equals(null)) {
- final EntityPlayer playerInternal = event.getPlayer();
+ public void onBreakBlock(BreakEvent event) {
+ try{
+ TileEntity entity = event.world.getTileEntity(event.x, event.y, event.z);
+ if (entity != null && !entity.equals(null)){
+ EntityPlayer playerInternal = event.getPlayer();
Utils.LOG_WARNING(entity.getClass().getSimpleName());
- if (entity.getClass().getSimpleName().equals("")) {
+ if (entity.getClass().getSimpleName().equals("")){
}
- if (entity instanceof BaseTileEntity && !(entity instanceof BaseMetaPipeEntity)) {
- final IMetaTileEntity X = ((BaseMetaTileEntity) entity).getMetaTileEntity();
- final Block ThisBlock = X.getBaseMetaTileEntity().getBlock(event.x, event.y, event.z);
- if (X instanceof GregtechMetaSafeBlockBase) {
-
- final UUID ownerUUID = ((GregtechMetaSafeBlockBase) X).ownerUUID;
- final UUID accessorUUID = playerInternal.getUniqueID();
- Utils.LOG_WARNING("Owner UUID: " + ownerUUID);
- Utils.LOG_WARNING("Accessor UUID: " + accessorUUID);
-
- if (((GregtechMetaSafeBlockBase) X).bUnbreakable) {
+ if (entity instanceof BaseTileEntity && !(entity instanceof BaseMetaPipeEntity)){
+ IMetaTileEntity X = ((BaseMetaTileEntity)entity).getMetaTileEntity();
+ Block ThisBlock = X.getBaseMetaTileEntity().getBlock(event.x, event.y, event.z);
+ if (X instanceof GregtechMetaSafeBlockBase){
- Utils.LOG_INFO("UUID info. Accessor: " + accessorUUID + " | Owner: " + ownerUUID);
+ UUID ownerUUID = ((GregtechMetaSafeBlockBase)X).ownerUUID;
+ UUID accessorUUID = playerInternal.getUniqueID();
+ Utils.LOG_WARNING("Owner UUID: "+ownerUUID);
+ Utils.LOG_WARNING("Accessor UUID: "+accessorUUID);
- if (accessorUUID == ownerUUID) {
- PlayerUtils.messagePlayer(playerInternal,
- "Since you own this block, it has been destroyed.");
+ if (((GregtechMetaSafeBlockBase)X).bUnbreakable){
+
+ Utils.LOG_INFO("UUID info. Accessor: "+accessorUUID + " | Owner: "+ownerUUID);
+
+ if (accessorUUID == ownerUUID){
+ PlayerUtils.messagePlayer(playerInternal, "Since you own this block, it has been destroyed.");
event.setCanceled(false);
}
else {
event.setCanceled(true);
- PlayerUtils.messagePlayer(playerInternal,
- "Since you do not own this block, it has not been destroyed.");
+ PlayerUtils.messagePlayer(playerInternal, "Since you do not own this block, it has not been destroyed.");
}
//
}
@@ -56,17 +57,16 @@ public class PickaxeBlockBreakEventHandler {
}
}
- catch (final NullPointerException e) {
- System.out.print("Caught a NullPointerException involving Safe Blocks. Cause: " + e.getCause());
+ catch (NullPointerException e) {
+ System.out.print("Caught a NullPointerException involving Safe Blocks. Cause: "+e.getCause());
}
}
-
+
+
@SubscribeEvent
- public void onPlayerInteraction(final PlayerInteractEvent aEvent) {
- if (aEvent.entityPlayer != null && aEvent.entityPlayer.worldObj != null && aEvent.action != null
- && aEvent.world.provider != null && !aEvent.entityPlayer.worldObj.isRemote && aEvent.action != null
- && aEvent.action != PlayerInteractEvent.Action.RIGHT_CLICK_AIR) {
- // Utils.LOG_ERROR("Test");
- }
- }
+ public void onPlayerInteraction(PlayerInteractEvent aEvent) {
+ if (aEvent.entityPlayer != null && aEvent.entityPlayer.worldObj != null && aEvent.action != null && aEvent.world.provider != null && !aEvent.entityPlayer.worldObj.isRemote && aEvent.action != null && aEvent.action != PlayerInteractEvent.Action.RIGHT_CLICK_AIR) {
+ //Utils.LOG_ERROR("Test");
+ }
+ }
}
diff --git a/src/Java/gtPlusPlus/core/handler/events/UnbreakableBlockManager.java b/src/Java/gtPlusPlus/core/handler/events/UnbreakableBlockManager.java
index a7c25266ff..3e126d4463 100644
--- a/src/Java/gtPlusPlus/core/handler/events/UnbreakableBlockManager.java
+++ b/src/Java/gtPlusPlus/core/handler/events/UnbreakableBlockManager.java
@@ -1,130 +1,137 @@
package gtPlusPlus.core.handler.events;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
-import gregtech.api.metatileentity.*;
+import gregtech.api.metatileentity.BaseMetaPipeEntity;
+import gregtech.api.metatileentity.BaseMetaTileEntity;
+import gregtech.api.metatileentity.BaseTileEntity;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.GregtechMetaSafeBlock;
import net.minecraft.block.Block;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
-public class UnbreakableBlockManager {
+public class UnbreakableBlockManager{
private static boolean hasRun = false;
- // BaseMetaTileEntity
- // GregtechMetaSafeBlock
+ public final BaseMetaTileEntity getmTileEntity() {
+ return mTileEntity;
+ }
+
+
+ public final void setmTileEntity(BaseMetaTileEntity mTileEntity/*, EntityPlayer aPlayer*/) {
+ UnbreakableBlockManager.mTileEntity = mTileEntity;
+ if (!hasRun){
+ hasRun = true;
+ makeIndestructible(/*aPlayer*/);
+ }
+ else {
+ Utils.LOG_WARNING("Why do you run twice?");
+ }
+ }
+
+
+ //BaseMetaTileEntity
+ //GregtechMetaSafeBlock
private static BaseMetaTileEntity mTileEntity = null;
- private static void innerInvincible(final GregtechMetaSafeBlock MetaSafeBlock, final TileEntity entity,
- final World TE_WORLD, /* EntityPlayer aPlayer, */ final int X, final int Y, final int Z) {
- if (entity != null && !entity.equals(null)) {
- Utils.LOG_WARNING("Checking new State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
- Utils.LOG_WARNING("Grabbed TE: " + entity.toString());
- if (entity instanceof BaseTileEntity && !(entity instanceof BaseMetaPipeEntity)) {
- final IMetaTileEntity I = ((BaseMetaTileEntity) entity).getMetaTileEntity();
- Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
- Utils.LOG_WARNING(
- "I Details: " + I.getMetaName() + " | " + I.getTileEntityBaseType() + " | " + I.toString());
+ private void makeIndestructible(/*EntityPlayer aPlayer*/){
+
+
+ Utils.LOG_WARNING("Initializing the code to set this TE to -1 hardness and make it indestructible.");
+ int X = ((BaseMetaTileEntity)mTileEntity).xCoord; //(GregtechMetaSafeBlock) this.mTileEntity.getXCoord();
+ int Y = ((BaseMetaTileEntity)mTileEntity).yCoord;
+ int Z = ((BaseMetaTileEntity)mTileEntity).zCoord;
+ Utils.LOG_WARNING("Grabbing TileEntity @ [x,y,z] |"+X+"|"+Y+"|"+Z+"|");
+
+
+
+ try{
+ GregtechMetaSafeBlock MetaSafeBlock = ((GregtechMetaSafeBlock) this.mTileEntity.getMetaTileEntity());
+ TileEntity BaseMetaTileEntity = ((BaseMetaTileEntity)mTileEntity).getTileEntity(X, Y, Z);
+ //MetaSafeBlockBase.
+ World TE_WORLD = MetaSafeBlock.getBaseMetaTileEntity().getWorld();
+ Utils.LOG_WARNING("Checking new State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
+ TileEntity entity = BaseMetaTileEntity;
+ innerInvincible(MetaSafeBlock, entity, TE_WORLD, /*aPlayer,*/ X, Y, Z);
+ }
+ catch (NullPointerException e) {
+ System.out.print("Caught a NullPointerException involving Safe Blocks. Cause: ");
+ e.printStackTrace();
+ }
+ }
+
+
+ private static void innerInvincible(GregtechMetaSafeBlock MetaSafeBlock, TileEntity entity, World TE_WORLD, /*EntityPlayer aPlayer,*/ int X, int Y, int Z){
+ if (entity != null && !entity.equals(null)){
+ Utils.LOG_WARNING("Checking new State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
+ Utils.LOG_WARNING("Grabbed TE: "+entity.toString());
+
+
+
+
+ if (entity instanceof BaseTileEntity && !(entity instanceof BaseMetaPipeEntity)){
+ IMetaTileEntity I = ((BaseMetaTileEntity)entity).getMetaTileEntity();
+ Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
+ Utils.LOG_WARNING("I Details: "+I.getMetaName()+" | "+I.getTileEntityBaseType()+" | "+I.toString());
+
- if (I instanceof GregtechMetaSafeBlock) {
- Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
- final Block ThisBlock = I.getBaseMetaTileEntity().getBlock(X, Y, Z);
- Utils.LOG_WARNING("Block Details: " + ThisBlock.toString());
- if (((GregtechMetaSafeBlock) I).bUnbreakable) {
+
+ if (I instanceof GregtechMetaSafeBlock){
+ Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
+
+ Block ThisBlock = I.getBaseMetaTileEntity().getBlock(X, Y, Z);
+ Utils.LOG_WARNING("Block Details: "+ThisBlock.toString());
+
+
+ if (((GregtechMetaSafeBlock)I).bUnbreakable){
ThisBlock.setHardness(Integer.MAX_VALUE);
- // ThisBlock.setResistance(18000000.0F);
+ //ThisBlock.setResistance(18000000.0F);
ThisBlock.setResistance(-1);
ThisBlock.setBlockUnbreakable();
- Utils.LOG_WARNING("Changing State of Flag. Old Value=" + MetaSafeBlock.bUnbreakable
- + " Expected Value=true");
+ Utils.LOG_WARNING("Changing State of Flag. Old Value="+MetaSafeBlock.bUnbreakable+" Expected Value=true");
MetaSafeBlock.bUnbreakable = true;
- // entity.markDirty();
- Utils.LOG_WARNING(
- "Checking new State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
+ //entity.markDirty();
+ Utils.LOG_WARNING("Checking new State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
Utils.LOG_ERROR("New Indestructible Flag enabled.");
- // GT_Utility.sendChatToPlayer(aPlayer, "Block is now
- // unbreakable.");
+ //GT_Utility.sendChatToPlayer(aPlayer, "Block is now unbreakable.");
}
+
+
+
else {
ThisBlock.setHardness(1);
ThisBlock.setResistance(1.0F);
- Utils.LOG_WARNING("Changing State of Flag. Old Value=" + MetaSafeBlock.bUnbreakable
- + " Expected Value=false");
+ Utils.LOG_WARNING("Changing State of Flag. Old Value="+MetaSafeBlock.bUnbreakable+" Expected Value=false");
MetaSafeBlock.bUnbreakable = false;
- // entity.markDirty();
- Utils.LOG_WARNING(
- "Checking new State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
+ //entity.markDirty();
+ Utils.LOG_WARNING("Checking new State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
Utils.LOG_ERROR("New Indestructible Flag disabled.");
- // GT_Utility.sendChatToPlayer(aPlayer, "Block is now
- // breakable.");
+ //GT_Utility.sendChatToPlayer(aPlayer, "Block is now breakable.");
}
- // entity.markDirty();
+ //entity.markDirty();
- Utils.LOG_WARNING("Block Hardness: " + ThisBlock.getBlockHardness(TE_WORLD, X, Y, Z));
- Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
- UnbreakableBlockManager.hasRun = false;
+ Utils.LOG_WARNING("Block Hardness: "+ThisBlock.getBlockHardness(TE_WORLD, X, Y, Z));
+ Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
+ hasRun = false;
}
else {
Utils.LOG_WARNING("I is not an instanceof MetaSafeBlockBase");
- Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
+ Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
}
- }
- else {
+ } else {
Utils.LOG_WARNING("TE is not an instanceof BaseTileEntity or may be a pipe.");
- Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
+ Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
}
- }
- else {
+ }else {
Utils.LOG_WARNING("Did not grab a TE instance to make a block instance from.");
- Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
- }
- }
-
- public final BaseMetaTileEntity getmTileEntity() {
- return UnbreakableBlockManager.mTileEntity;
- }
-
- private void makeIndestructible(/* EntityPlayer aPlayer */) {
-
- Utils.LOG_WARNING("Initializing the code to set this TE to -1 hardness and make it indestructible.");
- final int X = UnbreakableBlockManager.mTileEntity.xCoord; // (GregtechMetaSafeBlock)
- // this.mTileEntity.getXCoord();
- final int Y = UnbreakableBlockManager.mTileEntity.yCoord;
- final int Z = UnbreakableBlockManager.mTileEntity.zCoord;
- Utils.LOG_WARNING("Grabbing TileEntity @ [x,y,z] |" + X + "|" + Y + "|" + Z + "|");
-
- try {
- final GregtechMetaSafeBlock MetaSafeBlock = (GregtechMetaSafeBlock) UnbreakableBlockManager.mTileEntity
- .getMetaTileEntity();
- final TileEntity BaseMetaTileEntity = UnbreakableBlockManager.mTileEntity.getTileEntity(X, Y, Z);
- // MetaSafeBlockBase.
- final World TE_WORLD = MetaSafeBlock.getBaseMetaTileEntity().getWorld();
- Utils.LOG_WARNING("Checking new State of Flag[nUnbreakable]. Value=" + MetaSafeBlock.bUnbreakable);
- final TileEntity entity = BaseMetaTileEntity;
- UnbreakableBlockManager.innerInvincible(MetaSafeBlock, entity, TE_WORLD, /* aPlayer, */ X, Y, Z);
- }
- catch (final NullPointerException e) {
- System.out.print("Caught a NullPointerException involving Safe Blocks. Cause: ");
- e.printStackTrace();
- }
- }
-
- public final void setmTileEntity(
- final BaseMetaTileEntity mTileEntity/* , EntityPlayer aPlayer */) {
- UnbreakableBlockManager.mTileEntity = mTileEntity;
- if (!UnbreakableBlockManager.hasRun) {
- UnbreakableBlockManager.hasRun = true;
- this.makeIndestructible(/* aPlayer */);
- }
- else {
- Utils.LOG_WARNING("Why do you run twice?");
+ Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable);
}
}
diff --git a/src/Java/gtPlusPlus/core/handler/workbench/Workbench_CraftingHandler.java b/src/Java/gtPlusPlus/core/handler/workbench/Workbench_CraftingHandler.java
index 39868fd9f9..b5c0c035ec 100644
--- a/src/Java/gtPlusPlus/core/handler/workbench/Workbench_CraftingHandler.java
+++ b/src/Java/gtPlusPlus/core/handler/workbench/Workbench_CraftingHandler.java
@@ -1,6 +1,8 @@
package gtPlusPlus.core.handler.workbench;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
@@ -8,163 +10,194 @@ import net.minecraft.init.Items;
import net.minecraft.inventory.InventoryCrafting;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
-import net.minecraft.item.crafting.*;
+import net.minecraft.item.crafting.IRecipe;
+import net.minecraft.item.crafting.ShapedRecipes;
+import net.minecraft.item.crafting.ShapelessRecipes;
import net.minecraft.world.World;
public class Workbench_CraftingHandler {
- private static final Workbench_CraftingHandler instance = new Workbench_CraftingHandler();
+ private static final Workbench_CraftingHandler instance = new Workbench_CraftingHandler();
+ private List recipes = new ArrayList();
+
public static final Workbench_CraftingHandler getInstance() {
- return Workbench_CraftingHandler.instance;
+ return instance;
}
-
- private final List recipes = new ArrayList();
-
public Workbench_CraftingHandler() {
-
- // just a example recipe so you know how to add them
- this.addRecipe(new ItemStack(Blocks.iron_block), new Object[] {
- "###", "###", "###", Character.valueOf('#'), Items.iron_ingot
- });
-
- // another example Recipe, but shapeless
- this.addShapelessRecipe(new ItemStack(Items.cake), new Object[] {
- Items.stick
- });
-
+
+ //just a example recipe so you know how to add them
+ addRecipe(new ItemStack(Blocks.iron_block), new Object[]
+ {
+ "###",
+ "###",
+ "###",
+ Character.valueOf('#'), Items.iron_ingot
+ });
+
+ //another example Recipe, but shapeless
+ addShapelessRecipe(new ItemStack(Items.cake),new Object[]{Items.stick});
+
+
}
-
- void addRecipe(final ItemStack par1ItemStack, final Object par2ArrayOfObj[]) {
+
+ void addRecipe(ItemStack par1ItemStack, Object par2ArrayOfObj[])
+ {
String s = "";
int i = 0;
int j = 0;
int k = 0;
- if (par2ArrayOfObj[i] instanceof String[]) {
- final String as[] = (String[]) par2ArrayOfObj[i++];
+ if (par2ArrayOfObj[i] instanceof String[])
+ {
+ String as[] = (String[])par2ArrayOfObj[i++];
- for (int l = 0; l < as.length; l++) {
- final String s2 = as[l];
+ for (int l = 0; l < as.length; l++)
+ {
+ String s2 = as[l];
k++;
j = s2.length();
- s = new StringBuilder().append(s).append(s2).toString();
+ s = (new StringBuilder()).append(s).append(s2).toString();
}
}
- else {
- while (par2ArrayOfObj[i] instanceof String) {
- final String s1 = (String) par2ArrayOfObj[i++];
+ else
+ {
+ while (par2ArrayOfObj[i] instanceof String)
+ {
+ String s1 = (String)par2ArrayOfObj[i++];
k++;
j = s1.length();
- s = new StringBuilder().append(s).append(s1).toString();
+ s = (new StringBuilder()).append(s).append(s1).toString();
}
}
- final HashMap hashmap = new HashMap();
+ HashMap hashmap = new HashMap();
- for (; i < par2ArrayOfObj.length; i += 2) {
- final Character character = (Character) par2ArrayOfObj[i];
+ for (; i < par2ArrayOfObj.length; i += 2)
+ {
+ Character character = (Character)par2ArrayOfObj[i];
ItemStack itemstack = null;
- if (par2ArrayOfObj[i + 1] instanceof Item) {
- itemstack = new ItemStack((Item) par2ArrayOfObj[i + 1]);
+ if (par2ArrayOfObj[i + 1] instanceof Item)
+ {
+ itemstack = new ItemStack((Item)par2ArrayOfObj[i + 1]);
}
- else if (par2ArrayOfObj[i + 1] instanceof Block) {
- itemstack = new ItemStack((Block) par2ArrayOfObj[i + 1], 1, -1);
+ else if (par2ArrayOfObj[i + 1] instanceof Block)
+ {
+ itemstack = new ItemStack((Block)par2ArrayOfObj[i + 1], 1, -1);
}
- else if (par2ArrayOfObj[i + 1] instanceof ItemStack) {
- itemstack = (ItemStack) par2ArrayOfObj[i + 1];
+ else if (par2ArrayOfObj[i + 1] instanceof ItemStack)
+ {
+ itemstack = (ItemStack)par2ArrayOfObj[i + 1];
}
hashmap.put(character, itemstack);
}
- final ItemStack aitemstack[] = new ItemStack[j * k];
+ ItemStack aitemstack[] = new ItemStack[j * k];
- for (int i1 = 0; i1 < j * k; i1++) {
- final char c = s.charAt(i1);
+ for (int i1 = 0; i1 < j * k; i1++)
+ {
+ char c = s.charAt(i1);
- if (hashmap.containsKey(Character.valueOf(c))) {
- aitemstack[i1] = ((ItemStack) hashmap.get(Character.valueOf(c))).copy();
+ if (hashmap.containsKey(Character.valueOf(c)))
+ {
+ aitemstack[i1] = ((ItemStack)hashmap.get(Character.valueOf(c))).copy();
}
- else {
+ else
+ {
aitemstack[i1] = null;
}
}
- this.recipes.add(new ShapedRecipes(j, k, aitemstack, par1ItemStack));
+ recipes.add(new ShapedRecipes(j, k, aitemstack, par1ItemStack));
}
- public void addShapelessRecipe(final ItemStack par1ItemStack, final Object par2ArrayOfObj[]) {
- final ArrayList arraylist = new ArrayList();
- final Object aobj[] = par2ArrayOfObj;
- final int i = aobj.length;
+ public void addShapelessRecipe(ItemStack par1ItemStack, Object par2ArrayOfObj[])
+ {
+ ArrayList arraylist = new ArrayList();
+ Object aobj[] = par2ArrayOfObj;
+ int i = aobj.length;
- for (int j = 0; j < i; j++) {
- final Object obj = aobj[j];
+ for (int j = 0; j < i; j++)
+ {
+ Object obj = aobj[j];
- if (obj instanceof ItemStack) {
- arraylist.add(((ItemStack) obj).copy());
+ if (obj instanceof ItemStack)
+ {
+ arraylist.add(((ItemStack)obj).copy());
continue;
}
- if (obj instanceof Item) {
- arraylist.add(new ItemStack((Item) obj));
+ if (obj instanceof Item)
+ {
+ arraylist.add(new ItemStack((Item)obj));
continue;
}
- if (obj instanceof Block) {
- arraylist.add(new ItemStack((Block) obj));
+ if (obj instanceof Block)
+ {
+ arraylist.add(new ItemStack((Block)obj));
}
- else {
+ else
+ {
throw new RuntimeException("Invalid shapeless recipe!");
}
}
- this.recipes.add(new ShapelessRecipes(par1ItemStack, arraylist));
+ recipes.add(new ShapelessRecipes(par1ItemStack, arraylist));
}
- public ItemStack findMatchingRecipe(final InventoryCrafting par1InventoryCrafting, final World par2World) {
+ public ItemStack findMatchingRecipe(InventoryCrafting par1InventoryCrafting, World par2World)
+ {
int i = 0;
ItemStack itemstack = null;
ItemStack itemstack1 = null;
- for (int j = 0; j < par1InventoryCrafting.getSizeInventory(); j++) {
- final ItemStack itemstack2 = par1InventoryCrafting.getStackInSlot(j);
+ for (int j = 0; j < par1InventoryCrafting.getSizeInventory(); j++)
+ {
+ ItemStack itemstack2 = par1InventoryCrafting.getStackInSlot(j);
- if (itemstack2 == null) {
+ if (itemstack2 == null)
+ {
continue;
}
- if (i == 0) {
+ if (i == 0)
+ {
itemstack = itemstack2;
}
- if (i == 1) {
+ if (i == 1)
+ {
itemstack1 = itemstack2;
}
i++;
}
- // TODO - Update from itemIDs
- /*
- * if (i == 2 && itemstack.itemID == itemstack1.itemID &&
- * itemstack.stackSize == 1 && itemstack1.stackSize == 1 &&
- * Item.itemsList[itemstack.itemID].isDamageable()) { Item item =
- * Item.itemsList[itemstack.itemID]; int l = item.getMaxDamage() -
- * itemstack.getItemDamageForDisplay(); int i1 = item.getMaxDamage() -
- * itemstack1.getItemDamageForDisplay(); int j1 = l + i1 +
- * (item.getMaxDamage() * 10) / 100; int k1 = item.getMaxDamage() - j1;
- *
- * if (k1 < 0) { k1 = 0; }
- *
- * return new ItemStack(itemstack.itemID, 1, k1); }
- */
-
- for (int k = 0; k < this.recipes.size(); k++) {
- final IRecipe irecipe = (IRecipe) this.recipes.get(k);
-
- if (irecipe.matches(par1InventoryCrafting, par2World)) {
+ //TODO - Update from itemIDs
+ /*if (i == 2 && itemstack.itemID == itemstack1.itemID && itemstack.stackSize == 1 && itemstack1.stackSize == 1 && Item.itemsList[itemstack.itemID].isDamageable())
+ {
+ Item item = Item.itemsList[itemstack.itemID];
+ int l = item.getMaxDamage() - itemstack.getItemDamageForDisplay();
+ int i1 = item.getMaxDamage() - itemstack1.getItemDamageForDisplay();
+ int j1 = l + i1 + (item.getMaxDamage() * 10) / 100;
+ int k1 = item.getMaxDamage() - j1;
+
+ if (k1 < 0)
+ {
+ k1 = 0;
+ }
+
+ return new ItemStack(itemstack.itemID, 1, k1);
+ }*/
+
+ for (int k = 0; k < recipes.size(); k++)
+ {
+ IRecipe irecipe = (IRecipe)recipes.get(k);
+
+ if (irecipe.matches(par1InventoryCrafting, par2World))
+ {
return irecipe.getCraftingResult(par1InventoryCrafting);
}
}
@@ -172,7 +205,9 @@ public class Workbench_CraftingHandler {
return null;
}
- public List getRecipeList() {
- return this.recipes;
+
+ public List getRecipeList()
+ {
+ return recipes;
}
} \ No newline at end of file
diff --git a/src/Java/gtPlusPlus/core/handler/workbench/Workbench_RecipeSorter.java b/src/Java/gtPlusPlus/core/handler/workbench/Workbench_RecipeSorter.java
index 3c41a1552b..79d80aa677 100644
--- a/src/Java/gtPlusPlus/core/handler/workbench/Workbench_RecipeSorter.java
+++ b/src/Java/gtPlusPlus/core/handler/workbench/Workbench_RecipeSorter.java
@@ -2,34 +2,42 @@ package gtPlusPlus.core.handler.workbench;
import java.util.Comparator;
-import net.minecraft.item.crafting.*;
+import net.minecraft.item.crafting.IRecipe;
+import net.minecraft.item.crafting.ShapedRecipes;
+import net.minecraft.item.crafting.ShapelessRecipes;
-public class Workbench_RecipeSorter implements Comparator {
+public class Workbench_RecipeSorter implements Comparator
+{
final Workbench_CraftingHandler CraftingManagerCrafter;
- Workbench_RecipeSorter(final Workbench_CraftingHandler par1CraftingManager) {
- this.CraftingManagerCrafter = par1CraftingManager;
+ Workbench_RecipeSorter(Workbench_CraftingHandler par1CraftingManager)
+ {
+ CraftingManagerCrafter = par1CraftingManager;
}
- @Override
- public int compare(final Object par1Obj, final Object par2Obj) {
- return this.compareRecipes((IRecipe) par1Obj, (IRecipe) par2Obj);
+ public int compareRecipes(IRecipe par1IRecipe, IRecipe par2IRecipe)
+ {
+ if ((par1IRecipe instanceof ShapelessRecipes) && (par2IRecipe instanceof ShapedRecipes))
+ {
+ return 1;
}
- public int compareRecipes(final IRecipe par1IRecipe, final IRecipe par2IRecipe) {
- if (par1IRecipe instanceof ShapelessRecipes && par2IRecipe instanceof ShapedRecipes) {
- return 1;
- }
+ if ((par2IRecipe instanceof ShapelessRecipes) && (par1IRecipe instanceof ShapedRecipes))
+ {
+ return -1;
+ }
- if (par2IRecipe instanceof ShapelessRecipes && par1IRecipe instanceof ShapedRecipes) {
- return -1;
- }
+ if (par2IRecipe.getRecipeSize() < par1IRecipe.getRecipeSize())
+ {
+ return -1;
+ }
- if (par2IRecipe.getRecipeSize() < par1IRecipe.getRecipeSize()) {
- return -1;
- }
+ return par2IRecipe.getRecipeSize() <= par1IRecipe.getRecipeSize() ? 0 : 1;
+ }
- return par2IRecipe.getRecipeSize() <= par1IRecipe.getRecipeSize() ? 0 : 1;
+ public int compare(Object par1Obj, Object par2Obj)
+ {
+ return compareRecipes((IRecipe)par1Obj, (IRecipe)par2Obj);
}
} \ No newline at end of file