diff options
author | Draknyte1 <Draknyte1@hotmail.com> | 2016-03-19 17:49:54 +1000 |
---|---|---|
committer | Draknyte1 <Draknyte1@hotmail.com> | 2016-03-19 17:49:54 +1000 |
commit | 73a8779a5f46eeb449005840fdf1b9120816e380 (patch) | |
tree | 46f78335513ae30a8b64cfc152bd1d7c88769057 /src/Java/miscutil/core/handler | |
parent | 19d776282c79fd00687f163866db520460f0d314 (diff) | |
download | GT5-Unofficial-73a8779a5f46eeb449005840fdf1b9120816e380.tar.gz GT5-Unofficial-73a8779a5f46eeb449005840fdf1b9120816e380.tar.bz2 GT5-Unofficial-73a8779a5f46eeb449005840fdf1b9120816e380.zip |
Updated SafeBlock GUI, Removed 2 unused buttons and their related code.
Playercache is now Active and caching playerdata, for use in GUIs and other places. ;)
Player Safe Blocks should now be 100% intruder safe.
Diffstat (limited to 'src/Java/miscutil/core/handler')
-rw-r--r-- | src/Java/miscutil/core/handler/XEventHandler.java | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/Java/miscutil/core/handler/XEventHandler.java b/src/Java/miscutil/core/handler/XEventHandler.java new file mode 100644 index 0000000000..3742f29e47 --- /dev/null +++ b/src/Java/miscutil/core/handler/XEventHandler.java @@ -0,0 +1,61 @@ +package miscutil.core.handler; + +import gregtech.api.interfaces.metatileentity.IMetaTileEntity; +import gregtech.api.metatileentity.BaseMetaTileEntity; +import gregtech.api.metatileentity.BaseTileEntity; +import miscutil.core.util.Utils; +import miscutil.gregtech.metatileentity.implementations.base.GregtechMetaSafeBlockBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.event.world.BlockEvent.BreakEvent; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; + +public class XEventHandler { + @SubscribeEvent + public void onBreakBlock(BreakEvent event) { + TileEntity entity = event.world.getTileEntity(event.x, event.y, event.z); + EntityPlayer playerInternal = event.getPlayer(); + + try{ + if (entity instanceof BaseTileEntity){ + IMetaTileEntity X = ((BaseMetaTileEntity)entity).getMetaTileEntity(); + 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 { + Utils.messagePlayer(playerInternal, "Since you do not own this block, it has not been destroyed."); + event.setCanceled(true); + } + // + } + } + } + } + catch (NullPointerException e) { + System.out.print("Caught a NullPointerException involving Safe Blocks. Cause: "+e.getCause()); + } + + + + + + + + + + + + + + + } +} |