Merge branch 'master' into 1.12

This commit is contained in:
Tschipp 2018-01-24 17:03:28 +01:00
commit 3dbd7deb84
10 changed files with 127 additions and 55 deletions

View File

@ -24,10 +24,10 @@ compileJava {
} }
minecraft { minecraft {
version = "1.12-14.21.1.2387" version = "1.12.2-14.23.1.2555"
runDir = "run" runDir = "run"
mappings = "snapshot_20170624" mappings = "snapshot_20171003"
// makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. // makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
} }
@ -45,10 +45,10 @@ repositories {
dependencies { dependencies {
deobfCompile "net.darkhax.gamestages:GameStages-1.12:1.0.13" deobfCompile "net.darkhax.gamestages:GameStages-1.12.2:1.0.76"
deobfCompile "LatMod:FTBUtilities:4.1.6" deobfCompile "LatMod:FTBUtilities:5.0.0"
deobfCompile "LatMod:FTBLib:4.1.6" deobfCompile "LatMod:FTBLib:5.0.0"
} }

14
docs/issue_template.md Normal file
View File

@ -0,0 +1,14 @@
### Expected Behavior
### Actual Behavior
### Steps to Reproduce
### Version of Minecraft, Carry On, Forge
### Screenshots encouraged

View File

@ -32,7 +32,7 @@ public class CarryOn {
public static CarryOn instance; public static CarryOn instance;
public static final String MODID = "carryon"; public static final String MODID = "carryon";
public static final String VERSION = "1.7"; public static final String VERSION = "1.7.1";
public static final String NAME = "Carry On"; 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,1.13)";
public static final String UPDATE_JSON = "https://gist.githubusercontent.com/Tschipp/dccadee7c90d7a34e6e76a35d9d6fa2e/raw/"; public static final String UPDATE_JSON = "https://gist.githubusercontent.com/Tschipp/dccadee7c90d7a34e6e76a35d9d6fa2e/raw/";

View File

@ -249,7 +249,7 @@ public class RenderEntityEvents
Minecraft.getMinecraft().getRenderManager().doRenderEntity(entity, 0.0D, 0.0D, 0.0D, f, 0.0F, true); Minecraft.getMinecraft().getRenderManager().renderEntity(entity, 0.0D, 0.0D, 0.0D, f, 0.0F, true);
this.setLightmapDisabled(true); this.setLightmapDisabled(true);
} }

View File

@ -16,6 +16,7 @@ import net.minecraft.client.renderer.OpenGlHelper;
import net.minecraft.client.renderer.block.model.IBakedModel; import net.minecraft.client.renderer.block.model.IBakedModel;
import net.minecraft.client.renderer.entity.RenderManager; import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.entity.RenderPlayer; import net.minecraft.client.renderer.entity.RenderPlayer;
import net.minecraft.client.renderer.texture.TextureManager;
import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.client.resources.DefaultPlayerSkin; import net.minecraft.client.resources.DefaultPlayerSkin;
import net.minecraft.client.settings.GameSettings; import net.minecraft.client.settings.GameSettings;
@ -30,11 +31,13 @@ import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper; import net.minecraft.util.math.MathHelper;
import net.minecraft.util.math.Vec3d;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.client.event.GuiOpenEvent; import net.minecraftforge.client.event.GuiOpenEvent;
import net.minecraftforge.client.event.MouseEvent; import net.minecraftforge.client.event.MouseEvent;
import net.minecraftforge.client.event.RenderHandEvent; import net.minecraftforge.client.event.RenderHandEvent;
import net.minecraftforge.client.event.RenderPlayerEvent; import net.minecraftforge.client.event.RenderPlayerEvent;
import net.minecraftforge.client.event.RenderWorldLastEvent;
import net.minecraftforge.fml.common.Loader; import net.minecraftforge.fml.common.Loader;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.InputEvent; import net.minecraftforge.fml.common.gameevent.InputEvent;
@ -184,10 +187,11 @@ public class RenderEvents
AbstractClientPlayer aplayer = (AbstractClientPlayer) player; AbstractClientPlayer aplayer = (AbstractClientPlayer) player;
ItemStack stack = player.getHeldItemMainhand(); ItemStack stack = player.getHeldItemMainhand();
int perspective = Minecraft.getMinecraft().gameSettings.thirdPersonView; int perspective = Minecraft.getMinecraft().gameSettings.thirdPersonView;
boolean f1 = Minecraft.getMinecraft().gameSettings.hideGUI;
if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack)) if (!stack.isEmpty() && stack.getItem() == RegistrationHandler.itemTile && ItemTile.hasTileData(stack) && perspective == 0 && !f1)
{ {
if(Loader.isModLoaded("realrender") || Loader.isModLoaded("rfpr")) if (Loader.isModLoaded("realrender") || Loader.isModLoaded("rfpr"))
return; return;
Block block = ItemTile.getBlock(stack); Block block = ItemTile.getBlock(stack);
@ -209,8 +213,6 @@ public class RenderEvents
GlStateManager.rotate(8, 1f, 0, 0); GlStateManager.rotate(8, 1f, 0, 0);
} }
if (perspective == 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); CarryOnOverride carryOverride = ScriptChecker.getOverride(player);
@ -242,6 +244,8 @@ public class RenderEvents
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
this.setLightmapDisabled(false); this.setLightmapDisabled(false);
Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
if (ModelOverridesHandler.hasCustomOverrideModel(state, tag)) if (ModelOverridesHandler.hasCustomOverrideModel(state, tag))
{ {
Object override = ModelOverridesHandler.getOverrideObject(state, tag); Object override = ModelOverridesHandler.getOverrideObject(state, tag);
@ -268,7 +272,6 @@ public class RenderEvents
event.setCanceled(true); event.setCanceled(true);
} }
}
GlStateManager.scale(1, 1, 1); GlStateManager.scale(1, 1, 1);
GlStateManager.popMatrix(); GlStateManager.popMatrix();
@ -291,6 +294,7 @@ public class RenderEvents
} }
} }
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
private int getBrightnessForRender(EntityPlayer player) private int getBrightnessForRender(EntityPlayer player)
{ {
@ -362,19 +366,18 @@ public class RenderEvents
GlStateManager.translate(xOffset, yOffset, zOffset); GlStateManager.translate(xOffset, yOffset, zOffset);
GlStateManager.scale(0.6, 0.6, 0.6); GlStateManager.scale(0.6, 0.6, 0.6);
if (CarryOnConfig.settings.facePlayer ? !isChest(block) : isChest(block)) if (CarryOnConfig.settings.facePlayer ? !isChest(block) : isChest(block))
{ {
GlStateManager.rotate(rotation, 0, 1.0f, 0); GlStateManager.rotate(rotation, 0, 1.0f, 0);
GlStateManager.translate(0, 1.6, 0.65); GlStateManager.translate(0, 1.6, 0.65);
if((Loader.isModLoaded("realrender") || Loader.isModLoaded("rfpr")) && Minecraft.getMinecraft().gameSettings.thirdPersonView == 0) if ((Loader.isModLoaded("realrender") || Loader.isModLoaded("rfpr")) && Minecraft.getMinecraft().gameSettings.thirdPersonView == 0)
GlStateManager.translate(0, 0, -0.4); GlStateManager.translate(0, 0, -0.4);
} }
else else
{ {
GlStateManager.rotate(rotation + 180, 0, 1.0f, 0); GlStateManager.rotate(rotation + 180, 0, 1.0f, 0);
GlStateManager.translate(0, 1.6, -0.65); GlStateManager.translate(0, 1.6, -0.65);
if((Loader.isModLoaded("realrender") || Loader.isModLoaded("rfpr")) && Minecraft.getMinecraft().gameSettings.thirdPersonView == 0) if ((Loader.isModLoaded("realrender") || Loader.isModLoaded("rfpr")) && Minecraft.getMinecraft().gameSettings.thirdPersonView == 0)
GlStateManager.translate(0, 0, 0.4); GlStateManager.translate(0, 0, 0.4);
} }
@ -407,6 +410,8 @@ public class RenderEvents
} }
Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
if (ModelOverridesHandler.hasCustomOverrideModel(state, tag)) if (ModelOverridesHandler.hasCustomOverrideModel(state, tag))
{ {
Object override = ModelOverridesHandler.getOverrideObject(state, tag); Object override = ModelOverridesHandler.getOverrideObject(state, tag);
@ -552,7 +557,6 @@ public class RenderEvents
model.bipedRightArmwear.isHidden = false; model.bipedRightArmwear.isHidden = false;
} }
if (!renderLeft) if (!renderLeft)
{ {
this.fakeLeftArm.isHidden = true; this.fakeLeftArm.isHidden = true;
@ -561,7 +565,6 @@ public class RenderEvents
model.bipedLeftArmwear.isHidden = false; model.bipedLeftArmwear.isHidden = false;
} }
if (rotLeft != null) if (rotLeft != null)
{ {
if (!player.isSneaking()) if (!player.isSneaking())

View File

@ -55,6 +55,12 @@ public class Configs {
@Comment("Use Whitelist instead of Blacklist for Entities") @Comment("Use Whitelist instead of Blacklist for Entities")
public boolean useWhitelistEntities=false; public boolean useWhitelistEntities=false;
@Comment("Whether the player can hit blocks and entities while carrying or not")
public boolean hitWhileCarrying=false;
@Comment("Whether the player drops the carried object when hit or not")
public boolean dropCarriedWhenHit=false;
@Config.RequiresMcRestart() @Config.RequiresMcRestart()
@Comment("Use custom Pickup Scripts. Having this set to false, will not allow you to run scripts, but will save you some performance") @Comment("Use custom Pickup Scripts. Having this set to false, will not allow you to run scripts, but will save you some performance")
public boolean useScripts=false; public boolean useScripts=false;
@ -131,6 +137,8 @@ public class Configs {
"animania:hamster", "animania:hamster",
"animania:ferret*", "animania:ferret*",
"animania:hedgehog*", "animania:hedgehog*",
"animania:cart",
"animania:wagon",
"mynko:*" "mynko:*"
}; };
@ -155,6 +163,7 @@ public class Configs {
"minecraft:flower_pot->(block)minecraft:flower_pot", "minecraft:flower_pot->(block)minecraft:flower_pot",
"minecraft:leaves2->(item)minecraft:leaves2", "minecraft:leaves2->(item)minecraft:leaves2",
"minecraft:reeds->(block)minecraft:reeds", "minecraft:reeds->(block)minecraft:reeds",
"minecraft:daylight_detector_inverted->minecraft:daylight_detector",
"quark:custom_chest{type:\"spruce\"}->quark:custom_chest;0", "quark:custom_chest{type:\"spruce\"}->quark:custom_chest;0",
"quark:custom_chest{type:\"birch\"}->quark:custom_chest;1", "quark:custom_chest{type:\"birch\"}->quark:custom_chest;1",
"quark:custom_chest{type:\"jungle\"}->quark:custom_chest;2", "quark:custom_chest{type:\"jungle\"}->quark:custom_chest;2",
@ -191,17 +200,17 @@ public class Configs {
"storagedrawers:basicdrawers;4{Mat:\"acacia\"}->storagedrawers:basicdrawers;4{material:\"acacia\"}", "storagedrawers:basicdrawers;4{Mat:\"acacia\"}->storagedrawers:basicdrawers;4{material:\"acacia\"}",
"storagedrawers:basicdrawers;4{Mat:\"dark_oak\"}->storagedrawers:basicdrawers;4{material:\"dark_oak\"}", "storagedrawers:basicdrawers;4{Mat:\"dark_oak\"}->storagedrawers:basicdrawers;4{material:\"dark_oak\"}",
"animania:block_nest->(block)animania:block_nest", "animania:block_nest->(block)animania:block_nest",
"animania:cheese_mold;0->(block)cheese_mold;0", "animania:cheese_mold;0->(block)animania:cheese_mold;0",
"animania:cheese_mold;1->(block)cheese_mold;1", "animania:cheese_mold;1->(block)animania:cheese_mold;1",
"animania:cheese_mold;2->(block)cheese_mold;2", "animania:cheese_mold;2->(block)animania:cheese_mold;2",
"animania:cheese_mold;3->(block)cheese_mold;3", "animania:cheese_mold;3->(block)animania:cheese_mold;3",
"animania:cheese_mold;4->(block)cheese_mold;4", "animania:cheese_mold;4->(block)animania:cheese_mold;4",
"animania:cheese_mold;5->(block)cheese_mold;5", "animania:cheese_mold;5->(block)animania:cheese_mold;5",
"animania:cheese_mold;6->(block)cheese_mold;6", "animania:cheese_mold;6->(block)animania:cheese_mold;6",
"animania:cheese_mold;7->(block)cheese_mold;7", "animania:cheese_mold;7->(block)animania:cheese_mold;7",
"animania:cheese_mold;8->(block)cheese_mold;8", "animania:cheese_mold;8->(block)animania:cheese_mold;8",
"animania:cheese_mold;9->(block)cheese_mold;9", "animania:cheese_mold;9->(block)animania:cheese_mold;9",
"animania:cheese_mold;10->(block)cheese_mold;10", "animania:cheese_mold;10->(block)animania:cheese_mold;10",
}; };
} }

View File

@ -3,6 +3,7 @@ package tschipp.carryon.common.event;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.entity.player.EntityPlayerMP;
@ -20,10 +21,13 @@ import net.minecraft.util.text.event.ClickEvent.Action;
import net.minecraft.world.GameRules; import net.minecraft.world.GameRules;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.event.entity.EntityJoinWorldEvent; import net.minecraftforge.event.entity.EntityJoinWorldEvent;
import net.minecraftforge.event.entity.living.LivingAttackEvent;
import net.minecraftforge.event.entity.player.AttackEntityEvent;
import net.minecraftforge.event.entity.player.PlayerEvent; import net.minecraftforge.event.entity.player.PlayerEvent;
import net.minecraftforge.event.entity.player.PlayerEvent.BreakSpeed; import net.minecraftforge.event.entity.player.PlayerEvent.BreakSpeed;
import net.minecraftforge.event.entity.player.PlayerEvent.StartTracking; import net.minecraftforge.event.entity.player.PlayerEvent.StartTracking;
import net.minecraftforge.event.entity.player.PlayerInteractEvent; import net.minecraftforge.event.entity.player.PlayerInteractEvent;
import net.minecraftforge.event.world.BlockEvent.BreakEvent;
import net.minecraftforge.fml.common.eventhandler.Event.Result; import net.minecraftforge.fml.common.eventhandler.Event.Result;
import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.EventPriority;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
@ -31,6 +35,7 @@ import net.minecraftforge.fml.common.gameevent.PlayerEvent.PlayerLoggedInEvent;
import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint;
import tschipp.carryon.CarryOn; import tschipp.carryon.CarryOn;
import tschipp.carryon.client.keybinds.CarryOnKeybinds; import tschipp.carryon.client.keybinds.CarryOnKeybinds;
import tschipp.carryon.common.config.CarryOnConfig;
import tschipp.carryon.common.handler.PickupHandler; import tschipp.carryon.common.handler.PickupHandler;
import tschipp.carryon.common.handler.RegistrationHandler; import tschipp.carryon.common.handler.RegistrationHandler;
import tschipp.carryon.common.item.ItemEntity; import tschipp.carryon.common.item.ItemEntity;
@ -128,7 +133,6 @@ public class ItemEvents
} }
} }
@SubscribeEvent @SubscribeEvent
public void onEntityStartTracking(StartTracking event) public void onEntityStartTracking(StartTracking event)
{ {
@ -164,16 +168,60 @@ public class ItemEvents
} }
} }
@SubscribeEvent @SubscribeEvent
public void harvestSpeed(BreakSpeed event) public void harvestSpeed(BreakSpeed event)
{ {
EntityPlayer player = event.getEntityPlayer(); EntityPlayer player = event.getEntityPlayer();
if(player != null) if (player != null && !CarryOnConfig.settings.hitWhileCarrying)
{ {
ItemStack stack = player.getHeldItemMainhand(); ItemStack stack = player.getHeldItemMainhand();
if(!stack.isEmpty() && (stack.getItem() == RegistrationHandler.itemTile || stack.getItem() == RegistrationHandler.itemEntity)) if (!stack.isEmpty() && (stack.getItem() == RegistrationHandler.itemTile || stack.getItem() == RegistrationHandler.itemEntity))
event.setNewSpeed(0); event.setNewSpeed(0);
}
}
@SubscribeEvent
public void attackEntity(AttackEntityEvent event)
{
EntityPlayer player = event.getEntityPlayer();
ItemStack stack = player.getHeldItemMainhand();
if (!stack.isEmpty() && !CarryOnConfig.settings.hitWhileCarrying && (stack.getItem() == RegistrationHandler.itemTile || stack.getItem() == RegistrationHandler.itemEntity))
{
event.setCanceled(true);
}
}
@SubscribeEvent
public void harvestSpeed(BreakEvent event)
{
EntityPlayer player = event.getPlayer();
if (player != null && !CarryOnConfig.settings.hitWhileCarrying)
{
ItemStack stack = player.getHeldItemMainhand();
if (!stack.isEmpty() && (stack.getItem() == RegistrationHandler.itemTile || stack.getItem() == RegistrationHandler.itemEntity))
event.setCanceled(true);
}
}
@SubscribeEvent
public void playerAttack(LivingAttackEvent event)
{
EntityLivingBase eliving = event.getEntityLiving();
if (eliving instanceof EntityPlayer && CarryOnConfig.settings.dropCarriedWhenHit)
{
EntityPlayer player = (EntityPlayer) eliving;
ItemStack stack = player.getHeldItemMainhand();
if (!stack.isEmpty() && (stack.getItem() == RegistrationHandler.itemTile || stack.getItem() == RegistrationHandler.itemEntity))
{
if (!player.world.isRemote)
{
player.setHeldItem(EnumHand.MAIN_HAND, ItemStack.EMPTY);
EntityItem item = new EntityItem(player.world, player.posX, player.posY, player.posZ, stack);
player.world.spawnEntity(item);
}
}
} }
} }
@ -249,7 +297,7 @@ public class ItemEvents
boolean keepInv = rules.getBoolean("keepInventory"); boolean keepInv = rules.getBoolean("keepInventory");
boolean wasCarrying = player.inventory.hasItemStack(new ItemStack(RegistrationHandler.itemTile)) || player.inventory.hasItemStack(new ItemStack(RegistrationHandler.itemEntity)); boolean wasCarrying = player.inventory.hasItemStack(new ItemStack(RegistrationHandler.itemTile)) || player.inventory.hasItemStack(new ItemStack(RegistrationHandler.itemEntity));
if((wasDead ? keepInv : true) && wasCarrying) if ((wasDead ? keepInv : true) && wasCarrying)
{ {
int carrySlot = original.inventory.currentItem; int carrySlot = original.inventory.currentItem;
@ -259,7 +307,7 @@ public class ItemEvents
EntityItem item = new EntityItem(world); EntityItem item = new EntityItem(world);
item.setItem(stack); item.setItem(stack);
BlockPos pos = original.getBedLocation(); BlockPos pos = original.getBedLocation();
if(pos == null) if (pos == null)
pos = player.getPosition(); pos = player.getPosition();
item.setPosition(pos.getX(), pos.getY(), pos.getZ()); item.setPosition(pos.getX(), pos.getY(), pos.getZ());
world.spawnEntity(item); world.spawnEntity(item);

View File

@ -4,9 +4,9 @@ import java.util.UUID;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import com.feed_the_beast.ftbl.lib.math.BlockPosContainer; import com.feed_the_beast.ftblib.lib.math.BlockPosContainer;
import com.feed_the_beast.ftbu.api.chunks.BlockInteractionType; import com.feed_the_beast.ftbutilities.data.BlockInteractionType;
import com.feed_the_beast.ftbu.api_impl.ClaimedChunks; import com.feed_the_beast.ftbutilities.data.ClaimedChunks;
import net.darkhax.gamestages.capabilities.PlayerDataHandler; import net.darkhax.gamestages.capabilities.PlayerDataHandler;
import net.darkhax.gamestages.capabilities.PlayerDataHandler.IStageData; import net.darkhax.gamestages.capabilities.PlayerDataHandler.IStageData;
@ -196,7 +196,7 @@ public class PickupHandler
if (Loader.isModLoaded("ftbu")) if (Loader.isModLoaded("ftbu"))
{ {
BlockPosContainer container = new BlockPosContainer(world, pos, state); BlockPosContainer container = new BlockPosContainer(world, pos, state);
return ClaimedChunks.INSTANCE.canPlayerInteract((EntityPlayerMP) player, EnumHand.MAIN_HAND, container, BlockInteractionType.CNB_BREAK); return ClaimedChunks.instance.canPlayerInteract((EntityPlayerMP) player, EnumHand.MAIN_HAND, container, BlockInteractionType.CNB_BREAK);
} }
return true; return true;
} }

View File

@ -7,8 +7,7 @@ import java.util.List;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.BlockDirectional; import net.minecraft.block.BlockStairs;
import net.minecraft.block.BlockHorizontal;
import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.IProperty;
import net.minecraft.block.properties.PropertyDirection; import net.minecraft.block.properties.PropertyDirection;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
@ -32,7 +31,6 @@ import net.minecraft.util.text.TextComponentString;
import net.minecraft.util.text.TextFormatting; import net.minecraft.util.text.TextFormatting;
import net.minecraft.util.text.event.ClickEvent; import net.minecraft.util.text.event.ClickEvent;
import net.minecraft.util.text.event.ClickEvent.Action; import net.minecraft.util.text.event.ClickEvent.Action;
import net.minecraft.util.text.translation.I18n;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.fml.common.registry.ForgeRegistries; import net.minecraftforge.fml.common.registry.ForgeRegistries;
import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint;
@ -121,7 +119,7 @@ public class ItemTile extends Item
if (prop instanceof PropertyDirection && this.equal(allowedValues, EnumFacing.HORIZONTALS)) if (prop instanceof PropertyDirection && this.equal(allowedValues, EnumFacing.HORIZONTALS))
{ {
world.setBlockState(pos2, containedstate.withProperty(prop, facing2.getOpposite())); world.setBlockState(pos2, containedstate.withProperty(prop, containedblock instanceof BlockStairs ? facing2 : facing2.getOpposite()));
set = true; set = true;
} }
else if (prop instanceof PropertyDirection && this.equal(allowedValues, EnumFacing.VALUES)) else if (prop instanceof PropertyDirection && this.equal(allowedValues, EnumFacing.VALUES))

View File

@ -2,7 +2,7 @@
{ {
"modid" : "carryon", "modid" : "carryon",
"name" : "Carry On", "name" : "Carry On",
"version" : "1.7", "mcversion" : "1.12", "version" : "1.7.1", "mcversion" : "1.12",
"url" : "", "url" : "",
"credits" : "Tschipp, Purplicious_Cow, cy4n", "credits" : "Tschipp, Purplicious_Cow, cy4n",
"authorList" : ["Tschipp, Purplicious_Cow, cy4n"], "authorList" : ["Tschipp, Purplicious_Cow, cy4n"],