From f0bb82ddc8b22e42ebb246a8951c53fee243e650 Mon Sep 17 00:00:00 2001 From: Tschipp Date: Thu, 8 Feb 2018 15:02:26 +0100 Subject: [PATCH] Fixed comp. issue with ftbu and betterplacement --- build.gradle | 4 ++-- src/main/java/tschipp/carryon/CarryOn.java | 4 ++-- .../carryon/client/event/RenderEvents.java | 1 + .../carryon/common/event/ItemEvents.java | 7 +++++++ .../carryon/common/handler/PickupHandler.java | 18 ++++++++++++++---- .../carryon/common/item/ItemEntity.java | 8 ++++++++ .../tschipp/carryon/common/item/ItemTile.java | 9 +++++++++ src/main/resources/mcmod.info | 2 +- 8 files changed, 44 insertions(+), 9 deletions(-) diff --git a/build.gradle b/build.gradle index 70b9541..7d8aaee 100644 --- a/build.gradle +++ b/build.gradle @@ -47,8 +47,8 @@ dependencies { deobfCompile "net.darkhax.gamestages:GameStages-1.12.2:1.0.76" - deobfCompile "LatMod:FTBUtilities:5.0.0" - deobfCompile "LatMod:FTBLib:5.0.0" + deobfCompile "LatMod:FTBUtilities:4.2.4" + deobfCompile "LatMod:FTBLib:4.2.5" } diff --git a/src/main/java/tschipp/carryon/CarryOn.java b/src/main/java/tschipp/carryon/CarryOn.java index 81f774c..8b29bef 100644 --- a/src/main/java/tschipp/carryon/CarryOn.java +++ b/src/main/java/tschipp/carryon/CarryOn.java @@ -32,9 +32,9 @@ public class CarryOn { public static CarryOn instance; public static final String MODID = "carryon"; - public static final String VERSION = "1.7.1"; + public static final String VERSION = "1.7.2"; public static final String NAME = "Carry On"; - public static final String ACCEPTED_VERSIONS = "[1.12,1.13)"; + public static final String ACCEPTED_VERSIONS = "[1.12.2,1.13)"; public static final String UPDATE_JSON = "https://gist.githubusercontent.com/Tschipp/dccadee7c90d7a34e6e76a35d9d6fa2e/raw/"; public static final Logger LOGGER = LogManager.getFormatterLogger("CarryOn"); public static File CONFIGURATION_FILE; diff --git a/src/main/java/tschipp/carryon/client/event/RenderEvents.java b/src/main/java/tschipp/carryon/client/event/RenderEvents.java index b919144..7e56c87 100644 --- a/src/main/java/tschipp/carryon/client/event/RenderEvents.java +++ b/src/main/java/tschipp/carryon/client/event/RenderEvents.java @@ -131,6 +131,7 @@ public class RenderEvents event.setCanceled(true); Minecraft.getMinecraft().currentScreen = null; } + } } } diff --git a/src/main/java/tschipp/carryon/common/event/ItemEvents.java b/src/main/java/tschipp/carryon/common/event/ItemEvents.java index 145b082..5b4447e 100644 --- a/src/main/java/tschipp/carryon/common/event/ItemEvents.java +++ b/src/main/java/tschipp/carryon/common/event/ItemEvents.java @@ -50,6 +50,9 @@ public class ItemEvents @SubscribeEvent(priority = EventPriority.HIGH) public void onBlockClick(PlayerInteractEvent.RightClickBlock event) { + if(event.isCanceled()) + return; + EntityPlayer player = event.getEntityPlayer(); ItemStack stack = player.getHeldItemMainhand(); if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) @@ -240,15 +243,19 @@ public class ItemEvents Block block = world.getBlockState(pos).getBlock(); IBlockState state = world.getBlockState(pos); + if (main.isEmpty() && off.isEmpty() && CarryOnKeybinds.isKeyPressed(player)) { + ItemStack stack = new ItemStack(RegistrationHandler.itemTile); TileEntity te = world.getTileEntity(pos); if (PickupHandler.canPlayerPickUpBlock(player, te, world, pos)) { + if (ItemTile.storeTileData(te, world, pos, state.getActualState(world, pos), stack)) { + IBlockState statee = world.getBlockState(pos); NBTTagCompound tag = new NBTTagCompound(); tag = world.getTileEntity(pos) != null ? world.getTileEntity(pos).writeToNBT(tag) : new NBTTagCompound(); diff --git a/src/main/java/tschipp/carryon/common/handler/PickupHandler.java b/src/main/java/tschipp/carryon/common/handler/PickupHandler.java index 38ff416..7cc75c5 100644 --- a/src/main/java/tschipp/carryon/common/handler/PickupHandler.java +++ b/src/main/java/tschipp/carryon/common/handler/PickupHandler.java @@ -4,9 +4,9 @@ import java.util.UUID; import javax.annotation.Nullable; -import com.feed_the_beast.ftblib.lib.math.BlockPosContainer; -import com.feed_the_beast.ftbutilities.data.BlockInteractionType; -import com.feed_the_beast.ftbutilities.data.ClaimedChunks; +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.ClaimedChunks; import net.darkhax.gamestages.capabilities.PlayerDataHandler; import net.darkhax.gamestages.capabilities.PlayerDataHandler.IStageData; @@ -24,6 +24,7 @@ import net.minecraft.util.EnumHand; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; import net.minecraftforge.fml.common.Loader; +import tschipp.carryon.CarryOn; import tschipp.carryon.common.config.CarryOnConfig; import tschipp.carryon.common.item.ItemTile; import tschipp.carryon.common.scripting.CarryOnOverride; @@ -56,6 +57,7 @@ public class PickupHandler { return false; } + CarryOn.LOGGER.info("Block is allowed"); } else { @@ -71,8 +73,10 @@ 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); @@ -83,6 +87,7 @@ public class PickupHandler } else if (CarryOnConfig.settings.pickupAllBlocks ? true : tile != null) { + return true && handleFTBUtils((EntityPlayerMP) player, world, pos, state); } @@ -195,9 +200,14 @@ public class PickupHandler { if (Loader.isModLoaded("ftbu")) { + BlockPosContainer container = new BlockPosContainer(world, pos, state); - return ClaimedChunks.instance.canPlayerInteract((EntityPlayerMP) player, EnumHand.MAIN_HAND, container, BlockInteractionType.CNB_BREAK); + + boolean work = ClaimedChunks.INSTANCE.canPlayerInteract((EntityPlayerMP) player, EnumHand.MAIN_HAND, container, BlockInteractionType.CNB_BREAK); + + return work; } + return true; } diff --git a/src/main/java/tschipp/carryon/common/item/ItemEntity.java b/src/main/java/tschipp/carryon/common/item/ItemEntity.java index c6aa912..4728de0 100644 --- a/src/main/java/tschipp/carryon/common/item/ItemEntity.java +++ b/src/main/java/tschipp/carryon/common/item/ItemEntity.java @@ -21,9 +21,11 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.util.text.translation.I18n; import net.minecraft.world.World; import net.minecraftforge.fml.common.registry.ForgeRegistries; +import net.minecraftforge.fml.common.Loader; import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraftforge.fml.common.registry.GameRegistry; import tschipp.carryon.CarryOn; +import tschipp.carryon.client.keybinds.CarryOnKeybinds; import tschipp.carryon.common.config.CarryOnConfig; import tschipp.carryon.network.client.CarrySlotPacket; @@ -90,6 +92,12 @@ public class ItemEntity extends Item ItemStack stack = player.getHeldItem(hand); Block block = world.getBlockState(pos).getBlock(); + if(Loader.isModLoaded("betterplacement")) + { + if(CarryOnKeybinds.isKeyPressed(player)) + return EnumActionResult.FAIL; + } + if (hasEntityData(stack)) { BlockPos finalPos = pos; diff --git a/src/main/java/tschipp/carryon/common/item/ItemTile.java b/src/main/java/tschipp/carryon/common/item/ItemTile.java index a3e9905..4cb532c 100644 --- a/src/main/java/tschipp/carryon/common/item/ItemTile.java +++ b/src/main/java/tschipp/carryon/common/item/ItemTile.java @@ -33,9 +33,11 @@ import net.minecraft.util.text.event.ClickEvent; import net.minecraft.util.text.event.ClickEvent.Action; import net.minecraft.world.World; import net.minecraftforge.fml.common.registry.ForgeRegistries; +import net.minecraftforge.fml.common.Loader; import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraftforge.fml.common.registry.GameRegistry; import tschipp.carryon.CarryOn; +import tschipp.carryon.client.keybinds.CarryOnKeybinds; import tschipp.carryon.common.config.CarryOnConfig; import tschipp.carryon.common.handler.CustomPickupOverrideHandler; import tschipp.carryon.common.handler.ModelOverridesHandler; @@ -84,6 +86,13 @@ public class ItemTile extends Item @Override public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { + if(Loader.isModLoaded("betterplacement")) + { + if(CarryOnKeybinds.isKeyPressed(player)) + return EnumActionResult.FAIL; + } + + Block block = world.getBlockState(pos).getBlock(); ItemStack stack = player.getHeldItem(hand); if (hasTileData(stack)) diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index 8fd6995..342b0be 100644 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -2,7 +2,7 @@ { "modid" : "carryon", "name" : "Carry On", - "version" : "1.7.1", "mcversion" : "1.12", + "version" : "1.7.2", "mcversion" : "1.12.2", "url" : "", "credits" : "Tschipp, Purplicious_Cow, cy4n", "authorList" : ["Tschipp, Purplicious_Cow, cy4n"],