From 8926a92fa3175a497d623a788b0b36f12d1369b4 Mon Sep 17 00:00:00 2001 From: Draknyte1 Date: Sun, 24 Apr 2016 03:22:02 +1000 Subject: Refactor no. 3 I think that's enough until 1.1.x --- .../miscutil/core/handler/CraftingManager.java | 6 +- .../miscutil/core/handler/DebugRenderManager.java | 46 ------- src/Java/miscutil/core/handler/GuiHandler.java | 10 +- .../miscutil/core/handler/ResourceHandler.java | 83 ------------- .../core/handler/UnbreakableBlockManager.java | 138 --------------------- src/Java/miscutil/core/handler/XEventHandler.java | 65 ---------- .../events/PickaxeBlockBreakEventHandler.java | 65 ++++++++++ .../handler/events/UnbreakableBlockManager.java | 138 +++++++++++++++++++++ 8 files changed, 208 insertions(+), 343 deletions(-) delete mode 100644 src/Java/miscutil/core/handler/DebugRenderManager.java delete mode 100644 src/Java/miscutil/core/handler/ResourceHandler.java delete mode 100644 src/Java/miscutil/core/handler/UnbreakableBlockManager.java delete mode 100644 src/Java/miscutil/core/handler/XEventHandler.java create mode 100644 src/Java/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java create mode 100644 src/Java/miscutil/core/handler/events/UnbreakableBlockManager.java (limited to 'src/Java/miscutil/core/handler') diff --git a/src/Java/miscutil/core/handler/CraftingManager.java b/src/Java/miscutil/core/handler/CraftingManager.java index 42b602440d..144b5a0726 100644 --- a/src/Java/miscutil/core/handler/CraftingManager.java +++ b/src/Java/miscutil/core/handler/CraftingManager.java @@ -8,14 +8,10 @@ public class CraftingManager { } public static void addCraftingRecipies() { - // Shaped Recipie - //GameRegistry.addRecipe(new ItemStack(ModItems.tutPickaxe, 1), new Object[] { "###", " S ", " S ", '#', ModItems.tutItem, 'S', Items.stick }); - //Shapeless Recipie - //GameRegistry.addShapelessRecipe(new ItemStack(ModItems.tutItem, 10), new Object[]{Blocks.dirt , Blocks.cobblestone}); } public static void addSmeltingRecipies() { - //GameRegistry.addSmelting(ModItems.tutItem, new ItemStack(Blocks.diamond_block, 5), 20.0F); + } } diff --git a/src/Java/miscutil/core/handler/DebugRenderManager.java b/src/Java/miscutil/core/handler/DebugRenderManager.java deleted file mode 100644 index 451d465e5e..0000000000 --- a/src/Java/miscutil/core/handler/DebugRenderManager.java +++ /dev/null @@ -1,46 +0,0 @@ -package miscutil.core.handler; - -import miscutil.core.item.tool.staballoy.StaballoyPickaxe; -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.gui.Gui; -import net.minecraft.client.gui.ScaledResolution; -import net.minecraft.item.Item; -import net.minecraftforge.client.event.RenderGameOverlayEvent; -import cpw.mods.fml.common.eventhandler.SubscribeEvent; - -public class DebugRenderManager extends Gui { - - int width, height; - Minecraft mc = Minecraft.getMinecraft(); - - @SubscribeEvent - public void eventHandler(RenderGameOverlayEvent.Text event) - { - - //if (mc.thePlayer.getHeldItem().equals(ModItems.itemStaballoyPickaxe)){ - ScaledResolution res = new ScaledResolution(this.mc, this.mc.displayWidth, this.mc.displayHeight); - FontRenderer fontRender = mc.fontRenderer; - this.width = res.getScaledWidth(); - this.height = res.getScaledHeight(); - Minecraft.getMinecraft().entityRenderer.setupOverlayRendering(); - String str = "Words"; - Item heldItem = null; - - try{heldItem = mc.thePlayer.getHeldItem().getItem(); - - if (heldItem != null){ - if (heldItem instanceof StaballoyPickaxe){ - - int dmg =((StaballoyPickaxe) heldItem).getDamage(((StaballoyPickaxe) heldItem).thisPickaxe); - - ((StaballoyPickaxe) heldItem).checkFacing(((StaballoyPickaxe) heldItem).localWorld); - str = "DAMAGE: "+ dmg +" | FACING: "+((StaballoyPickaxe) heldItem).FACING+" | FACING_HORIZONTAL: "+((StaballoyPickaxe) heldItem).FACING_HORIZONTAL+" | LOOKING DIRECTION: "+((StaballoyPickaxe) heldItem).lookingDirection; - - drawString(fontRender, str, (this.width - fontRender.getStringWidth(str)) / 2, this.height / 10, 0xFFAA00); - } - } - }catch(NullPointerException e){} - - } -} \ No newline at end of file diff --git a/src/Java/miscutil/core/handler/GuiHandler.java b/src/Java/miscutil/core/handler/GuiHandler.java index 9412ed8983..951b697aab 100644 --- a/src/Java/miscutil/core/handler/GuiHandler.java +++ b/src/Java/miscutil/core/handler/GuiHandler.java @@ -1,7 +1,5 @@ package miscutil.core.handler; -import miscutil.core.gui.GUI_Bat_Buf; -import miscutil.core.gui.GUI_Battery_Buffer; import miscutil.core.util.Utils; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.world.World; @@ -16,8 +14,8 @@ public class GuiHandler implements IGuiHandler { @Override //ContainerModTileEntity public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) { - if (ID == GUI1) - return new GUI_Battery_Buffer(); + if (ID == GUI1){} + //return new GUI_Battery_Buffer(); return null; } @@ -27,11 +25,11 @@ public class GuiHandler implements IGuiHandler { Utils.LOG_WARNING("getClientGuiElement Called by: "+player+", in world: "+player.dimension+" at x:"+x+", y:"+y+", z:"+z+"."); if (ID == GUI1){ Utils.LOG_WARNING("Opening Gui with Id: "+ID); - return new GUI_Battery_Buffer(); + //return new GUI_Battery_Buffer(); } else if (ID == GUI2){ Utils.LOG_WARNING("Opening Gui with Id: "+ID+" Energy Buffer"); - return new GUI_Bat_Buf(); + //return new GUI_Bat_Buf(); } return null; } diff --git a/src/Java/miscutil/core/handler/ResourceHandler.java b/src/Java/miscutil/core/handler/ResourceHandler.java deleted file mode 100644 index e8f81f4d02..0000000000 --- a/src/Java/miscutil/core/handler/ResourceHandler.java +++ /dev/null @@ -1,83 +0,0 @@ -package miscutil.core.handler; - -import org.apache.commons.lang3.Validate; - -public class ResourceHandler -{ - private final String resourceDomain; - private final String resourcePath; - private static final String __OBFID = "CL_00001082"; - - public ResourceHandler(String p_i1292_1_, String p_i1292_2_) - { - Validate.notNull(p_i1292_2_); - - if (p_i1292_1_ != null && p_i1292_1_.length() != 0) - { - this.resourceDomain = p_i1292_1_; - } - else - { - this.resourceDomain = "minecraft"; - } - - this.resourcePath = p_i1292_2_; - } - - public ResourceHandler(String p_i1293_1_) - { - String s1 = "miscUtils"; - String s2 = p_i1293_1_; - int i = p_i1293_1_.indexOf(58); - - if (i >= 0) - { - s2 = p_i1293_1_.substring(i + 1, p_i1293_1_.length()); - - if (i > 1) - { - s1 = p_i1293_1_.substring(0, i); - } - } - - this.resourceDomain = s1.toLowerCase(); - this.resourcePath = s2; - } - - public String getResourcePath() - { - return this.resourcePath; - } - - public String getResourceDomain() - { - return this.resourceDomain; - } - - public String toString() - { - return this.resourceDomain + ":" + this.resourcePath; - } - - public boolean equals(Object p_equals_1_) - { - if (this == p_equals_1_) - { - return true; - } - else if (!(p_equals_1_ instanceof ResourceHandler)) - { - return false; - } - else - { - ResourceHandler resourcelocation = (ResourceHandler)p_equals_1_; - return this.resourceDomain.equals(resourcelocation.resourceDomain) && this.resourcePath.equals(resourcelocation.resourcePath); - } - } - - public int hashCode() - { - return 31 * this.resourceDomain.hashCode() + this.resourcePath.hashCode(); - } -} \ No newline at end of file diff --git a/src/Java/miscutil/core/handler/UnbreakableBlockManager.java b/src/Java/miscutil/core/handler/UnbreakableBlockManager.java deleted file mode 100644 index b15f5bb561..0000000000 --- a/src/Java/miscutil/core/handler/UnbreakableBlockManager.java +++ /dev/null @@ -1,138 +0,0 @@ -package miscutil.core.handler; - -import gregtech.api.interfaces.metatileentity.IMetaTileEntity; -import gregtech.api.metatileentity.BaseMetaPipeEntity; -import gregtech.api.metatileentity.BaseMetaTileEntity; -import gregtech.api.metatileentity.BaseTileEntity; -import miscutil.core.util.Utils; -import miscutil.gregtech.api.metatileentity.implementations.GregtechMetaSafeBlock; -import net.minecraft.block.Block; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.world.World; - -public class UnbreakableBlockManager{ - - private static boolean hasRun = false; - - 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 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); - - 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(-1); - ThisBlock.setBlockUnbreakable(); - 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); - Utils.LOG_ERROR("New Indestructible Flag enabled."); - //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"); - MetaSafeBlock.bUnbreakable = false; - //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."); - } - - //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); - hasRun = false; - - } - else { - Utils.LOG_WARNING("I is not an instanceof MetaSafeBlockBase"); - Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable); - } - } 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); - } - }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); - } - } - -} diff --git a/src/Java/miscutil/core/handler/XEventHandler.java b/src/Java/miscutil/core/handler/XEventHandler.java deleted file mode 100644 index 4aa3154cee..0000000000 --- a/src/Java/miscutil/core/handler/XEventHandler.java +++ /dev/null @@ -1,65 +0,0 @@ -package miscutil.core.handler; - -import gregtech.api.interfaces.metatileentity.IMetaTileEntity; -import gregtech.api.metatileentity.BaseMetaPipeEntity; -import gregtech.api.metatileentity.BaseMetaTileEntity; -import gregtech.api.metatileentity.BaseTileEntity; -import miscutil.core.util.Utils; -import miscutil.gregtech.api.metatileentity.implementations.base.GregtechMetaSafeBlockBase; -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 XEventHandler { - @SubscribeEvent - 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 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){ - - String ownerUUID = ((GregtechMetaSafeBlockBase)X).ownerUUID; - String accessorUUID = playerInternal.getUniqueID().toString(); - Utils.LOG_WARNING("Owner UUID: "+ownerUUID); - Utils.LOG_WARNING("Accessor UUID: "+accessorUUID); - - if (((GregtechMetaSafeBlockBase)X).bUnbreakable){ - if (accessorUUID.equals(ownerUUID)){ - Utils.messagePlayer(playerInternal, "Since you own this block, it has been destroyed."); - event.setCanceled(false); - } - else { - event.setCanceled(true); - Utils.messagePlayer(playerInternal, "Since you do not own this block, it has not been destroyed."); - } - // - } - } - } - } - - } - catch (NullPointerException e) { - System.out.print("Caught a NullPointerException involving Safe Blocks. Cause: "+e.getCause()); - } - } - - - @SubscribeEvent - 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/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java b/src/Java/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java new file mode 100644 index 0000000000..9169249136 --- /dev/null +++ b/src/Java/miscutil/core/handler/events/PickaxeBlockBreakEventHandler.java @@ -0,0 +1,65 @@ +package miscutil.core.handler.events; + +import gregtech.api.interfaces.metatileentity.IMetaTileEntity; +import gregtech.api.metatileentity.BaseMetaPipeEntity; +import gregtech.api.metatileentity.BaseMetaTileEntity; +import gregtech.api.metatileentity.BaseTileEntity; +import miscutil.core.util.Utils; +import miscutil.gregtech.api.metatileentity.implementations.base.GregtechMetaSafeBlockBase; +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(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 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){ + + String ownerUUID = ((GregtechMetaSafeBlockBase)X).ownerUUID; + String accessorUUID = playerInternal.getUniqueID().toString(); + Utils.LOG_WARNING("Owner UUID: "+ownerUUID); + Utils.LOG_WARNING("Accessor UUID: "+accessorUUID); + + if (((GregtechMetaSafeBlockBase)X).bUnbreakable){ + if (accessorUUID.equals(ownerUUID)){ + Utils.messagePlayer(playerInternal, "Since you own this block, it has been destroyed."); + event.setCanceled(false); + } + else { + event.setCanceled(true); + Utils.messagePlayer(playerInternal, "Since you do not own this block, it has not been destroyed."); + } + // + } + } + } + } + + } + catch (NullPointerException e) { + System.out.print("Caught a NullPointerException involving Safe Blocks. Cause: "+e.getCause()); + } + } + + + @SubscribeEvent + 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/miscutil/core/handler/events/UnbreakableBlockManager.java b/src/Java/miscutil/core/handler/events/UnbreakableBlockManager.java new file mode 100644 index 0000000000..9ce59cb2c2 --- /dev/null +++ b/src/Java/miscutil/core/handler/events/UnbreakableBlockManager.java @@ -0,0 +1,138 @@ +package miscutil.core.handler.events; + +import gregtech.api.interfaces.metatileentity.IMetaTileEntity; +import gregtech.api.metatileentity.BaseMetaPipeEntity; +import gregtech.api.metatileentity.BaseMetaTileEntity; +import gregtech.api.metatileentity.BaseTileEntity; +import miscutil.core.util.Utils; +import miscutil.gregtech.api.metatileentity.implementations.GregtechMetaSafeBlock; +import net.minecraft.block.Block; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public class UnbreakableBlockManager{ + + private static boolean hasRun = false; + + 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 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); + + 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(-1); + ThisBlock.setBlockUnbreakable(); + 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); + Utils.LOG_ERROR("New Indestructible Flag enabled."); + //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"); + MetaSafeBlock.bUnbreakable = false; + //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."); + } + + //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); + hasRun = false; + + } + else { + Utils.LOG_WARNING("I is not an instanceof MetaSafeBlockBase"); + Utils.LOG_WARNING("Checking State of Flag[nUnbreakable]. Value="+MetaSafeBlock.bUnbreakable); + } + } 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); + } + }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); + } + } + +} -- cgit