--- ../src-base/minecraft/net/minecraft/block/BlockRedstoneWire.java +++ ../src-work/minecraft/net/minecraft/block/BlockRedstoneWire.java @@ -99,15 +99,15 @@ BlockPos blockpos = p_176341_2_.func_177972_a(p_176341_3_); IBlockState iblockstate = p_176341_1_.func_180495_p(p_176341_2_.func_177972_a(p_176341_3_)); - if (!func_176343_a(p_176341_1_.func_180495_p(blockpos), p_176341_3_) && (iblockstate.func_185915_l() || !func_176346_d(p_176341_1_.func_180495_p(blockpos.func_177977_b())))) + if (!canConnectTo(p_176341_1_.func_180495_p(blockpos), p_176341_3_, p_176341_1_, blockpos) && (iblockstate.func_185915_l() || !func_176340_e(p_176341_1_, blockpos.func_177977_b()))) { IBlockState iblockstate1 = p_176341_1_.func_180495_p(p_176341_2_.func_177984_a()); if (!iblockstate1.func_185915_l()) { - boolean flag = p_176341_1_.func_180495_p(blockpos).func_185896_q() || p_176341_1_.func_180495_p(blockpos).func_177230_c() == Blocks.field_150426_aN; + boolean flag = p_176341_1_.func_180495_p(blockpos).isSideSolid(p_176341_1_, blockpos, EnumFacing.UP) || p_176341_1_.func_180495_p(blockpos).func_177230_c() == Blocks.field_150426_aN; - if (flag && func_176346_d(p_176341_1_.func_180495_p(blockpos.func_177984_a()))) + if (flag && func_176340_e(p_176341_1_, blockpos.func_177984_a())) { if (iblockstate.func_185898_k()) { @@ -414,7 +414,7 @@ { return true; } - else if (func_176343_a(iblockstate, p_176339_3_)) + else if (canConnectTo(iblockstate, p_176339_3_, p_176339_1_, p_176339_2_)) { return true; } @@ -430,16 +430,11 @@ protected static boolean func_176340_e(IBlockAccess p_176340_0_, BlockPos p_176340_1_) { - return func_176346_d(p_176340_0_.func_180495_p(p_176340_1_)); + return canConnectTo(p_176340_0_.func_180495_p(p_176340_1_), null, p_176340_0_, p_176340_1_); } - protected static boolean func_176346_d(IBlockState p_176346_0_) + protected static boolean canConnectTo(IBlockState p_176343_0_, @Nullable EnumFacing p_176343_1_, IBlockAccess world, BlockPos pos) { - return func_176343_a(p_176346_0_, (EnumFacing)null); - } - - protected static boolean func_176343_a(IBlockState p_176343_0_, @Nullable EnumFacing p_176343_1_) - { Block block = p_176343_0_.func_177230_c(); if (block == Blocks.field_150488_af) @@ -457,7 +452,7 @@ } else { - return p_176343_0_.func_185897_m() && p_176343_1_ != null; + return p_176343_0_.func_177230_c().canConnectRedstone(p_176343_0_, world, pos, p_176343_1_); } }