From d146c7dd2b444489d14433fdab2ea1de85b6281a Mon Sep 17 00:00:00 2001 From: Tschipp Date: Fri, 6 Jul 2018 16:37:02 +0200 Subject: [PATCH] Added more mods to the default blacklist [1.11.2] --- src/main/java/tschipp/carryon/CarryOn.java | 2 +- .../carryon/client/event/RenderEvents.java | 107 +++++++++--------- .../carryon/common/config/Configs.java | 9 +- .../carryon/common/handler/PickupHandler.java | 76 ++++++++----- src/main/resources/mcmod.info | 2 +- 5 files changed, 111 insertions(+), 85 deletions(-) diff --git a/src/main/java/tschipp/carryon/CarryOn.java b/src/main/java/tschipp/carryon/CarryOn.java index 81f666a..9636537 100644 --- a/src/main/java/tschipp/carryon/CarryOn.java +++ b/src/main/java/tschipp/carryon/CarryOn.java @@ -34,7 +34,7 @@ public class CarryOn { public static CarryOn instance; public static final String MODID = "carryon"; - public static final String VERSION = "1.9"; + public static final String VERSION = "1.9.1"; public static final String NAME = "Carry On"; public static final String ACCEPTED_VERSIONS = "[1.11,1.12)"; public static final String UPDATE_JSON = "https://gist.githubusercontent.com/Tschipp/dccadee7c90d7a34e6e76a35d9d6fa2e/raw/"; diff --git a/src/main/java/tschipp/carryon/client/event/RenderEvents.java b/src/main/java/tschipp/carryon/client/event/RenderEvents.java index f8f19a2..486d2ed 100644 --- a/src/main/java/tschipp/carryon/client/event/RenderEvents.java +++ b/src/main/java/tschipp/carryon/client/event/RenderEvents.java @@ -187,7 +187,7 @@ public class RenderEvents ItemStack stack = player.getHeldItemMainhand(); int perspective = Minecraft.getMinecraft().gameSettings.thirdPersonView; boolean f1 = Minecraft.getMinecraft().gameSettings.hideGUI; - + if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack) && perspective == 0 && !f1) { if (Loader.isModLoaded("realrender") || Loader.isModLoaded("rfpr")) @@ -212,65 +212,64 @@ public class RenderEvents GlStateManager.rotate(8, 1f, 0, 0); } - IBakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, world, player) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileStack, world, player); + IBakedModel model = ModelOverridesHandler.hasCustomOverrideModel(state, tag) ? ModelOverridesHandler.getCustomOverrideModel(state, tag, world, player) : Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(tileStack, world, player); - CarryOnOverride carryOverride = ScriptChecker.getOverride(player); - if (carryOverride != null) + CarryOnOverride carryOverride = ScriptChecker.getOverride(player); + if (carryOverride != null) + { + double[] translation = ScriptParseHelper.getXYZArray(carryOverride.getRenderTranslation()); + double[] rotation = ScriptParseHelper.getXYZArray(carryOverride.getRenderRotation()); + double[] scale = ScriptParseHelper.getScale(carryOverride.getRenderScale()); + Block b = StringParser.getBlock(carryOverride.getRenderNameBlock()); + if (b != null) { - double[] translation = ScriptParseHelper.getXYZArray(carryOverride.getRenderTranslation()); - double[] rotation = ScriptParseHelper.getXYZArray(carryOverride.getRenderRotation()); - double[] scale = ScriptParseHelper.getScale(carryOverride.getRenderScale()); - Block b = StringParser.getBlock(carryOverride.getRenderNameBlock()); - if (b != null) - { - ItemStack s = new ItemStack(b, 1, carryOverride.getRenderMeta()); - s.setTagCompound(carryOverride.getRenderNBT()); - model = Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(s, world, player); - } - - GlStateManager.translate(translation[0], translation[1], translation[2]); - GlStateManager.rotate((float) rotation[0], 1, 0, 0); - GlStateManager.rotate((float) rotation[1], 0, 1, 0); - GlStateManager.rotate((float) rotation[2], 0, 0, 1); - GlStateManager.scale(scale[0], scale[1], scale[2]); - + ItemStack s = new ItemStack(b, 1, carryOverride.getRenderMeta()); + s.setTagCompound(carryOverride.getRenderNBT()); + model = Minecraft.getMinecraft().getRenderItem().getItemModelWithOverrides(s, world, player); } - int i = this.getBrightnessForRender(Minecraft.getMinecraft().player); - int j = i % 65536; - int k = i / 65536; - OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, j, k); - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - this.setLightmapDisabled(false); + GlStateManager.translate(translation[0], translation[1], translation[2]); + GlStateManager.rotate((float) rotation[0], 1, 0, 0); + GlStateManager.rotate((float) rotation[1], 0, 1, 0); + GlStateManager.rotate((float) rotation[2], 0, 0, 1); + GlStateManager.scale(scale[0], scale[1], scale[2]); - Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); + } - if (ModelOverridesHandler.hasCustomOverrideModel(state, tag)) + int i = this.getBrightnessForRender(Minecraft.getMinecraft().player); + int j = i % 65536; + int k = i / 65536; + OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, j, k); + GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); + this.setLightmapDisabled(false); + + Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); + + if (ModelOverridesHandler.hasCustomOverrideModel(state, tag)) + { + Object override = ModelOverridesHandler.getOverrideObject(state, tag); + + if (override instanceof ItemStack) { - Object override = ModelOverridesHandler.getOverrideObject(state, tag); - if (override instanceof ItemStack) - { - - Minecraft.getMinecraft().getRenderItem().renderItem((ItemStack) override, model); - } - else - { - Minecraft.getMinecraft().getRenderItem().renderItem(tileStack.isEmpty() ? stack : tileStack, model); - } + Minecraft.getMinecraft().getRenderItem().renderItem((ItemStack) override, model); } else { Minecraft.getMinecraft().getRenderItem().renderItem(tileStack.isEmpty() ? stack : tileStack, model); } - - this.setLightmapDisabled(true); + } + else + { + Minecraft.getMinecraft().getRenderItem().renderItem(tileStack.isEmpty() ? stack : tileStack, model); + } - if (perspective == 0) - { - event.setCanceled(true); - } + this.setLightmapDisabled(true); + if (perspective == 0) + { + event.setCanceled(true); + } GlStateManager.scale(1, 1, 1); GlStateManager.popMatrix(); @@ -285,15 +284,21 @@ public class RenderEvents RenderManager manager = mc.getRenderManager(); RenderPlayer renderPlayer = manager.getSkinMap().get(aplayer.getSkinType()); ModelPlayer modelPlayer = renderPlayer.getMainModel(); - modelPlayer.bipedLeftArm.isHidden = false; - modelPlayer.bipedRightArm.isHidden = false; - modelPlayer.bipedLeftArmwear.isHidden = false; - modelPlayer.bipedRightArmwear.isHidden = false; + + if (modelPlayer != null) + { + if (modelPlayer.bipedLeftArm != null && modelPlayer.bipedRightArm != null) + { + modelPlayer.bipedLeftArm.isHidden = false; + modelPlayer.bipedRightArm.isHidden = false; + modelPlayer.bipedLeftArmwear.isHidden = false; + modelPlayer.bipedRightArmwear.isHidden = false; + } + } } } } - @SideOnly(Side.CLIENT) private int getBrightnessForRender(EntityPlayer player) { @@ -410,7 +415,7 @@ public class RenderEvents } Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); - + if (ModelOverridesHandler.hasCustomOverrideModel(state, tag)) { Object override = ModelOverridesHandler.getOverrideObject(state, tag); diff --git a/src/main/java/tschipp/carryon/common/config/Configs.java b/src/main/java/tschipp/carryon/common/config/Configs.java index 323ccb7..fe44531 100644 --- a/src/main/java/tschipp/carryon/common/config/Configs.java +++ b/src/main/java/tschipp/carryon/common/config/Configs.java @@ -119,7 +119,7 @@ public class Configs { "tconstruct:*", "rustic:*", "botania:*", - "astralsorcery:*", + "astralsorcery:*", "quark:colored_bed_*", "immersiveengineering:*", "embers:block_furnace", @@ -139,8 +139,11 @@ public class Configs { "skyresources:*", "lootbags:*", "exsartagine:*", - "aquamunda:tank" - + "aquamunda:tank", + "opencomputers:*", + "malisisdoors:*", + "industrialforegoing:*", + "minecolonies:*", }; @Config.RequiresMcRestart() diff --git a/src/main/java/tschipp/carryon/common/handler/PickupHandler.java b/src/main/java/tschipp/carryon/common/handler/PickupHandler.java index 1fdfa9d..31502f3 100644 --- a/src/main/java/tschipp/carryon/common/handler/PickupHandler.java +++ b/src/main/java/tschipp/carryon/common/handler/PickupHandler.java @@ -4,10 +4,6 @@ import java.util.UUID; import javax.annotation.Nullable; -import com.feed_the_beast.ftbl.lib.math.BlockPosContainer; -import com.feed_the_beast.ftbu.api.chunks.BlockInteractionType; -import com.feed_the_beast.ftbu.api_impl.ClaimedChunkStorage; - import net.darkhax.gamestages.capabilities.PlayerDataHandler; import net.darkhax.gamestages.capabilities.PlayerDataHandler.IStageData; import net.minecraft.block.Block; @@ -20,10 +16,12 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.EnumHand; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; -import net.minecraftforge.fml.common.Loader; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.event.entity.player.AttackEntityEvent; +import net.minecraftforge.event.world.BlockEvent; +import tschipp.carryon.CarryOn; import tschipp.carryon.common.config.CarryOnConfig; import tschipp.carryon.common.item.ItemTile; import tschipp.carryon.common.scripting.CarryOnOverride; @@ -46,7 +44,7 @@ public class PickupHandler CarryOnOverride override = ScriptChecker.inspectBlock(world.getBlockState(pos), world, pos, tag); if (override != null) { - return (ScriptChecker.fulfillsConditions(override, player)) && handleFTBUtils((EntityPlayerMP) player, world, pos, state); + return (ScriptChecker.fulfillsConditions(override, player)) && handleProtections((EntityPlayerMP) player, world, pos, state); } else { @@ -56,6 +54,7 @@ public class PickupHandler { return false; } + CarryOn.LOGGER.info("Block is allowed"); } else { @@ -71,19 +70,22 @@ public class PickupHandler if (distance < Math.pow(CarryOnConfig.settings.maxDistance, 2)) { + if (!ItemTile.isLocked(pos, world)) { + if (CustomPickupOverrideHandler.hasSpecialPickupConditions(state)) { IStageData stageData = PlayerDataHandler.getStageData(player); String condition = CustomPickupOverrideHandler.getPickupCondition(state); if (stageData.hasUnlockedStage(condition)) - return true && handleFTBUtils((EntityPlayerMP) player, world, pos, state); + return true && handleProtections((EntityPlayerMP) player, world, pos, state); } else if (CarryOnConfig.settings.pickupAllBlocks ? true : tile != null) { - return true && handleFTBUtils((EntityPlayerMP) player, world, pos, state); + + return true && handleProtections((EntityPlayerMP) player, world, pos, state); } } @@ -104,7 +106,7 @@ public class PickupHandler CarryOnOverride override = ScriptChecker.inspectEntity(toPickUp); if (override != null) { - return (ScriptChecker.fulfillsConditions(override, player)); + return (ScriptChecker.fulfillsConditions(override, player)) && handleProtections((EntityPlayerMP) player, toPickUp); } else { @@ -125,17 +127,17 @@ public class PickupHandler if (tame.getOwnerId() != null && tame.getOwnerId() != player.getUUID(player.getGameProfile())) return false; } - - if (CustomPickupOverrideHandler.hasSpecialPickupConditions(toPickUp)) - { - IStageData stageData = PlayerDataHandler.getStageData(player); - String condition = CustomPickupOverrideHandler.getPickupCondition(toPickUp); - if (stageData.hasUnlockedStage(condition)) - return true; - } - else - return true; } + + if (CustomPickupOverrideHandler.hasSpecialPickupConditions(toPickUp)) + { + IStageData stageData = PlayerDataHandler.getStageData(player); + String condition = CustomPickupOverrideHandler.getPickupCondition(toPickUp); + if (stageData.hasUnlockedStage(condition)) + return true && handleProtections((EntityPlayerMP) player, toPickUp); + } + else + return true && handleProtections((EntityPlayerMP) player, toPickUp); } } @@ -177,10 +179,10 @@ public class PickupHandler IStageData stageData = PlayerDataHandler.getStageData(player); String condition = CustomPickupOverrideHandler.getPickupCondition(toPickUp); if (stageData.hasUnlockedStage(condition)) - return true; + return true && handleProtections((EntityPlayerMP) player, toPickUp); } else - return true; + return true && handleProtections((EntityPlayerMP) player, toPickUp); } } } @@ -191,14 +193,30 @@ public class PickupHandler return false; } - private static boolean handleFTBUtils(EntityPlayerMP player, World world, BlockPos pos, IBlockState state) + private static boolean handleProtections(EntityPlayerMP player, World world, BlockPos pos, IBlockState state) { - if (Loader.isModLoaded("ftbu")) - { - BlockPosContainer container = new BlockPosContainer(world, pos, state); - return ClaimedChunkStorage.INSTANCE.canPlayerInteract((EntityPlayerMP) player, EnumHand.MAIN_HAND, container, BlockInteractionType.CNB_BREAK); - } - return true; + boolean breakable = true; + + BlockEvent.BreakEvent event = new BlockEvent.BreakEvent(world, pos, state, player); + MinecraftForge.EVENT_BUS.post(event); + + if(event.isCanceled()) + breakable = false; + + return breakable; + } + + private static boolean handleProtections(EntityPlayerMP player, Entity entity) + { + boolean canPickup = true; + + AttackEntityEvent event = new AttackEntityEvent(player, entity); + MinecraftForge.EVENT_BUS.post(event); + + if(event.isCanceled()) + canPickup = false; + + return canPickup; } } diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index d4d44cd..17e2a17 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -2,7 +2,7 @@ { "modid" : "carryon", "name" : "Carry On", - "version" : "1.9", "mcversion" : "1.11.2", + "version" : "1.9.1", "mcversion" : "1.11.2", "url" : "", "credits" : "Tschipp, Purplicious_Cow, cy4n", "authorList" : ["Tschipp, Purplicious_Cow, cy4n"],