From 0eb64b26598c034345f7db01ff10f3cb6c0d800d Mon Sep 17 00:00:00 2001 From: Ellpeck Date: Mon, 4 Jul 2016 20:15:41 +0200 Subject: [PATCH] Remove some utils that were stupid --- .../mod/blocks/BlockAtomicReconstructor.java | 2 +- .../mod/blocks/BlockBookletStand.java | 9 +-- .../mod/blocks/BlockBreaker.java | 3 +- .../mod/blocks/BlockCoffeeMachine.java | 9 +-- .../mod/blocks/BlockColoredLamp.java | 7 +- .../mod/blocks/BlockDirectionalBreaker.java | 3 +- .../mod/blocks/BlockDropper.java | 3 +- .../mod/blocks/BlockFluidCollector.java | 3 +- .../mod/blocks/BlockFurnaceDouble.java | 13 ++- .../mod/blocks/BlockGrinder.java | 5 +- .../mod/blocks/BlockItemRepairer.java | 3 +- .../mod/blocks/BlockLampPowerer.java | 18 +++-- .../mod/blocks/BlockPhantom.java | 8 +- .../mod/blocks/BlockSmileyCloud.java | 9 +-- .../mod/blocks/BlockTreasureChest.java | 9 +-- .../mod/blocks/BlockWallAA.java | 3 +- .../mod/blocks/BlockWildPlant.java | 11 +-- .../mod/blocks/BlockXPSolidifier.java | 9 +-- .../mod/blocks/base/BlockFluidFlowing.java | 5 +- .../render/RenderReconstructorLens.java | 5 +- .../mod/blocks/render/RenderSmileyCloud.java | 5 +- .../mod/event/ClientEvents.java | 3 +- .../actuallyadditions/mod/gen/OreGen.java | 22 ++--- .../mod/items/ItemBooklet.java | 12 +-- .../mod/items/ItemChestToCrateUpgrade.java | 5 +- .../mod/items/ItemDrill.java | 9 ++- .../mod/items/ItemGrowthRing.java | 13 +-- .../mod/items/ItemLeafBlower.java | 5 +- .../mod/items/ItemWaterBowl.java | 4 +- .../mod/items/ItemWaterRemovalRing.java | 3 +- .../mod/items/lens/LensColor.java | 9 ++- .../mod/items/lens/LensDeath.java | 3 +- .../mod/items/lens/LensDetonation.java | 3 +- .../mod/items/lens/LensDisruption.java | 3 +- .../mod/misc/LaserRelayConnectionHandler.java | 7 +- .../mod/misc/MethodHandler.java | 7 +- .../mod/recipe/FuelHandler.java | 1 + .../tile/TileEntityAtomicReconstructor.java | 7 +- .../mod/tile/TileEntityBreaker.java | 10 +-- .../tile/TileEntityDirectionalBreaker.java | 11 +-- .../mod/tile/TileEntityDropper.java | 5 +- .../mod/tile/TileEntityFishingNet.java | 7 +- .../mod/tile/TileEntityFluidCollector.java | 31 +++---- .../mod/tile/TileEntityFurnaceDouble.java | 11 ++- .../mod/tile/TileEntityFurnaceSolar.java | 7 +- .../mod/tile/TileEntityGreenhouseGlass.java | 14 ++-- .../mod/tile/TileEntityGrinder.java | 11 ++- .../mod/tile/TileEntityHeatCollector.java | 11 +-- .../mod/tile/TileEntityInputter.java | 4 +- .../mod/tile/TileEntityItemViewer.java | 2 +- .../mod/tile/TileEntityLaserRelay.java | 3 +- .../mod/tile/TileEntityLaserRelayEnergy.java | 2 +- .../mod/tile/TileEntityLaserRelayItem.java | 2 +- .../tile/TileEntityLavaFactoryController.java | 21 ++--- .../mod/tile/TileEntityLeafGenerator.java | 5 +- .../mod/tile/TileEntityMiner.java | 3 +- .../mod/tile/TileEntityPhantomPlacer.java | 7 +- .../mod/tile/TileEntityPhantomface.java | 13 ++- .../mod/tile/TileEntitySmileyCloud.java | 11 ++- .../actuallyadditions/mod/util/AssetUtil.java | 7 ++ .../actuallyadditions/mod/util/PosUtil.java | 80 ------------------- .../mod/util/StringUtil.java | 4 + .../actuallyadditions/mod/util/Util.java | 10 --- .../actuallyadditions/mod/util/WorldUtil.java | 42 ++++------ 64 files changed, 251 insertions(+), 341 deletions(-) delete mode 100644 src/main/java/de/ellpeck/actuallyadditions/mod/util/PosUtil.java diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockAtomicReconstructor.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockAtomicReconstructor.java index 8c0d93da1..26b623ba7 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockAtomicReconstructor.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockAtomicReconstructor.java @@ -141,7 +141,7 @@ public class BlockAtomicReconstructor extends BlockContainerBase implements IHud @Override public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){ int rotation = BlockPistonBase.getFacingFromEntity(pos, player).ordinal(); - PosUtil.setMetadata(pos, world, rotation, 2); + world.setBlockState(pos, this.getStateFromMeta(rotation), 2); super.onBlockPlacedBy(world, pos, state, player, stack); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockBookletStand.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockBookletStand.java index c389764aa..aba005c2c 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockBookletStand.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockBookletStand.java @@ -17,7 +17,6 @@ import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.items.InitItems; import de.ellpeck.actuallyadditions.mod.tile.TileEntityBookletStand; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.StringUtil; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -102,16 +101,16 @@ public class BlockBookletStand extends BlockContainerBase implements IHudDisplay int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3; if(rotation == 0){ - PosUtil.setMetadata(pos, world, 0, 2); + world.setBlockState(pos, this.getStateFromMeta(0), 2); } if(rotation == 1){ - PosUtil.setMetadata(pos, world, 3, 2); + world.setBlockState(pos, this.getStateFromMeta(3), 2); } if(rotation == 2){ - PosUtil.setMetadata(pos, world, 1, 2); + world.setBlockState(pos, this.getStateFromMeta(1), 2); } if(rotation == 3){ - PosUtil.setMetadata(pos, world, 2, 2); + world.setBlockState(pos, this.getStateFromMeta(2), 2); } TileEntityBookletStand tile = (TileEntityBookletStand)world.getTileEntity(pos); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockBreaker.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockBreaker.java index 143f4150b..7a8ee49a3 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockBreaker.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockBreaker.java @@ -16,7 +16,6 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.tile.TileEntityBreaker; import de.ellpeck.actuallyadditions.mod.tile.TileEntityPlacer; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.BlockPistonBase; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -75,7 +74,7 @@ public class BlockBreaker extends BlockContainerBase{ @Override public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){ int rotation = BlockPistonBase.getFacingFromEntity(pos, player).ordinal(); - PosUtil.setMetadata(pos, world, rotation, 2); + world.setBlockState(pos, this.getStateFromMeta(rotation), 2); super.onBlockPlacedBy(world, pos, state, player, stack); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockCoffeeMachine.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockCoffeeMachine.java index a5ea017b6..281e67f21 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockCoffeeMachine.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockCoffeeMachine.java @@ -14,7 +14,6 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.tile.TileEntityCoffeeMachine; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraft.block.properties.PropertyInteger; @@ -97,16 +96,16 @@ public class BlockCoffeeMachine extends BlockContainerBase{ int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3; if(rotation == 0){ - PosUtil.setMetadata(pos, world, 0, 2); + world.setBlockState(pos, this.getStateFromMeta(0), 2); } if(rotation == 1){ - PosUtil.setMetadata(pos, world, 3, 2); + world.setBlockState(pos, this.getStateFromMeta(3), 2); } if(rotation == 2){ - PosUtil.setMetadata(pos, world, 1, 2); + world.setBlockState(pos, this.getStateFromMeta(1), 2); } if(rotation == 3){ - PosUtil.setMetadata(pos, world, 2, 2); + world.setBlockState(pos, this.getStateFromMeta(2), 2); } super.onBlockPlacedBy(world, pos, state, player, stack); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockColoredLamp.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockColoredLamp.java index 13ea5a03f..eb5d2ce7f 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockColoredLamp.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockColoredLamp.java @@ -16,7 +16,6 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase; import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase; import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheColoredLampColors; import de.ellpeck.actuallyadditions.mod.util.ModUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.StringUtil; import net.minecraft.block.Block; import net.minecraft.block.material.Material; @@ -68,7 +67,7 @@ public class BlockColoredLamp extends BlockBase{ //Turning On if(player.isSneaking()){ if(!world.isRemote){ - PosUtil.setBlock(pos, world, this.isOn ? InitBlocks.blockColoredLamp : InitBlocks.blockColoredLampOn, PosUtil.getMetadata(state), 2); + world.setBlockState(pos, (this.isOn ? InitBlocks.blockColoredLamp : InitBlocks.blockColoredLampOn).getStateFromMeta(this.getMetaFromState(state)), 2); } return true; } @@ -81,9 +80,9 @@ public class BlockColoredLamp extends BlockBase{ String name = OreDictionary.getOreName(oreID); TheColoredLampColors color = TheColoredLampColors.getColorFromDyeName(name); if(color != null){ - if(PosUtil.getMetadata(state) != color.ordinal()){ + if(this.getMetaFromState(state) != color.ordinal()){ if(!world.isRemote){ - PosUtil.setMetadata(pos, world, color.ordinal(), 2); + world.setBlockState(pos, this.getStateFromMeta(color.ordinal()), 2); if(!player.capabilities.isCreativeMode){ player.inventory.decrStackSize(player.inventory.currentItem, 1); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockDirectionalBreaker.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockDirectionalBreaker.java index 54f672c3c..9f37f45b5 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockDirectionalBreaker.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockDirectionalBreaker.java @@ -15,7 +15,6 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.tile.TileEntityDirectionalBreaker; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.BlockPistonBase; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -72,7 +71,7 @@ public class BlockDirectionalBreaker extends BlockContainerBase{ @Override public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){ int rotation = BlockPistonBase.getFacingFromEntity(pos, player).ordinal(); - PosUtil.setMetadata(pos, world, rotation, 2); + world.setBlockState(pos, this.getStateFromMeta(rotation), 2); super.onBlockPlacedBy(world, pos, state, player, stack); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockDropper.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockDropper.java index 5141a0759..517c1134a 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockDropper.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockDropper.java @@ -14,7 +14,6 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.tile.TileEntityDropper; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.BlockPistonBase; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -71,7 +70,7 @@ public class BlockDropper extends BlockContainerBase{ @Override public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){ int rotation = BlockPistonBase.getFacingFromEntity(pos, player).ordinal(); - PosUtil.setMetadata(pos, world, rotation, 2); + world.setBlockState(pos, this.getStateFromMeta(rotation), 2); super.onBlockPlacedBy(world, pos, state, player, stack); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockFluidCollector.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockFluidCollector.java index 3045acc89..c6152b475 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockFluidCollector.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockFluidCollector.java @@ -16,7 +16,6 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.tile.TileEntityFluidCollector; import de.ellpeck.actuallyadditions.mod.tile.TileEntityFluidPlacer; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.BlockPistonBase; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -78,7 +77,7 @@ public class BlockFluidCollector extends BlockContainerBase{ @Override public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){ int rotation = BlockPistonBase.getFacingFromEntity(pos, player).ordinal(); - PosUtil.setMetadata(pos, world, rotation, 2); + world.setBlockState(pos, this.getStateFromMeta(rotation), 2); super.onBlockPlacedBy(world, pos, state, player, stack); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockFurnaceDouble.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockFurnaceDouble.java index d20a89525..f28fdb5ae 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockFurnaceDouble.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockFurnaceDouble.java @@ -15,7 +15,6 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.proxy.ClientProxy; import de.ellpeck.actuallyadditions.mod.tile.TileEntityFurnaceDouble; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraft.block.properties.PropertyInteger; @@ -59,7 +58,7 @@ public class BlockFurnaceDouble extends BlockContainerBase{ @Override @SideOnly(Side.CLIENT) public void randomDisplayTick(IBlockState state, World world, BlockPos pos, Random rand){ - int meta = PosUtil.getMetadata(state); + int meta = this.getMetaFromState(state); if(meta > 3){ float f = (float)pos.getX()+0.5F; @@ -105,7 +104,7 @@ public class BlockFurnaceDouble extends BlockContainerBase{ @Override public int getLightValue(IBlockState state, IBlockAccess world, BlockPos pos){ - return PosUtil.getMetadata(state) > 3 ? 12 : 0; + return this.getMetaFromState(state) > 3 ? 12 : 0; } @Override @@ -118,16 +117,16 @@ public class BlockFurnaceDouble extends BlockContainerBase{ int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3; if(rotation == 0){ - PosUtil.setMetadata(pos, world, 0, 2); + world.setBlockState(pos, this.getStateFromMeta(0), 2); } if(rotation == 1){ - PosUtil.setMetadata(pos, world, 3, 2); + world.setBlockState(pos, this.getStateFromMeta(3), 2); } if(rotation == 2){ - PosUtil.setMetadata(pos, world, 1, 2); + world.setBlockState(pos, this.getStateFromMeta(1), 2); } if(rotation == 3){ - PosUtil.setMetadata(pos, world, 2, 2); + world.setBlockState(pos, this.getStateFromMeta(2), 2); } super.onBlockPlacedBy(world, pos, state, player, stack); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockGrinder.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockGrinder.java index b947a5b70..773b4ea58 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockGrinder.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockGrinder.java @@ -16,7 +16,6 @@ import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.proxy.ClientProxy; import de.ellpeck.actuallyadditions.mod.tile.TileEntityGrinder; import de.ellpeck.actuallyadditions.mod.tile.TileEntityGrinderDouble; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraft.block.properties.PropertyInteger; @@ -60,7 +59,7 @@ public class BlockGrinder extends BlockContainerBase{ @Override @SideOnly(Side.CLIENT) public void randomDisplayTick(IBlockState state, World world, BlockPos pos, Random rand){ - int meta = PosUtil.getMetadata(state); + int meta = this.getMetaFromState(state); if(meta == 1){ for(int i = 0; i < 5; i++){ @@ -86,7 +85,7 @@ public class BlockGrinder extends BlockContainerBase{ @Override public int getLightValue(IBlockState state, IBlockAccess world, BlockPos pos){ - return PosUtil.getMetadata(pos, world) == 1 ? 12 : 0; + return this.getMetaFromState(state) == 1 ? 12 : 0; } @Override diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockItemRepairer.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockItemRepairer.java index bb223860e..0aefdaf7d 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockItemRepairer.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockItemRepairer.java @@ -15,7 +15,6 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.tile.TileEntityItemRepairer; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; @@ -60,7 +59,7 @@ public class BlockItemRepairer extends BlockContainerBase{ @Override public int getLightValue(IBlockState state, IBlockAccess world, BlockPos pos){ - return PosUtil.getMetadata(pos, world) == 1 ? 12 : 0; + return this.getMetaFromState(state) == 1 ? 12 : 0; } @Override diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockLampPowerer.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockLampPowerer.java index 7b28c56be..3f36b7f38 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockLampPowerer.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockLampPowerer.java @@ -12,7 +12,6 @@ package de.ellpeck.actuallyadditions.mod.blocks; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; import net.minecraft.block.BlockPistonBase; @@ -51,23 +50,26 @@ public class BlockLampPowerer extends BlockBase{ @Override public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase player, ItemStack stack){ int rotation = BlockPistonBase.getFacingFromEntity(pos, player).ordinal(); - PosUtil.setMetadata(pos, world, rotation, 2); + world.setBlockState(pos, this.getStateFromMeta(rotation), 2); super.onBlockPlacedBy(world, pos, state, player, stack); } private void updateLamp(World world, BlockPos pos){ if(!world.isRemote){ - BlockPos coords = WorldUtil.getCoordsFromSide(WorldUtil.getDirectionByPistonRotation(PosUtil.getMetadata(pos, world)), pos, 0); - if(PosUtil.getBlock(coords, world) instanceof BlockColoredLamp){ + IBlockState state = world.getBlockState(pos); + BlockPos coords = pos.offset(WorldUtil.getDirectionByPistonRotation(state.getBlock().getMetaFromState(state))); + IBlockState coordsState = world.getBlockState(coords); + if(coordsState.getBlock() instanceof BlockColoredLamp){ + int meta = coordsState.getBlock().getMetaFromState(coordsState); if(world.isBlockIndirectlyGettingPowered(pos) > 0){ - if(!((BlockColoredLamp)PosUtil.getBlock(coords, world)).isOn){ - PosUtil.setBlock(coords, world, InitBlocks.blockColoredLampOn, PosUtil.getMetadata(coords, world), 2); + if(!((BlockColoredLamp)coordsState.getBlock()).isOn){ + world.setBlockState(coords, InitBlocks.blockColoredLampOn.getStateFromMeta(meta), 2); } } else{ - if(((BlockColoredLamp)PosUtil.getBlock(coords, world)).isOn){ - PosUtil.setBlock(coords, world, InitBlocks.blockColoredLamp, PosUtil.getMetadata(coords, world), 2); + if(((BlockColoredLamp)coordsState.getBlock()).isOn){ + world.setBlockState(coords, InitBlocks.blockColoredLamp.getStateFromMeta(meta), 2); } } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockPhantom.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockPhantom.java index f38c76e9f..92f036abf 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockPhantom.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockPhantom.java @@ -15,8 +15,8 @@ import de.ellpeck.actuallyadditions.mod.ActuallyAdditions; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.tile.*; import de.ellpeck.actuallyadditions.mod.util.ModUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.StringUtil; +import net.minecraft.block.Block; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; @@ -135,8 +135,10 @@ public class BlockPhantom extends BlockContainerBase implements IHudDisplay{ minecraft.fontRendererObj.drawStringWithShadow(TextFormatting.GOLD+StringUtil.localize("tooltip."+ModUtil.MOD_ID+".blockPhantomRange.desc")+": "+phantom.getRange(), resolution.getScaledWidth()/2+5, resolution.getScaledHeight()/2-40, StringUtil.DECIMAL_COLOR_WHITE); if(phantom.hasBoundPosition()){ int distance = (int)new Vec3d(posHit.getBlockPos()).distanceTo(new Vec3d(phantom.getBoundPosition())); - Item item = PosUtil.getItemBlock(phantom.getBoundPosition(), minecraft.theWorld); - String name = item == null ? "Absolutely Nothing" : item.getItemStackDisplayName(new ItemStack(PosUtil.getBlock(phantom.getBoundPosition(), minecraft.theWorld), 1, PosUtil.getMetadata(phantom.getBoundPosition(), minecraft.theWorld))); + IBlockState state = minecraft.theWorld.getBlockState(phantom.getBoundPosition()); + Block block = state.getBlock(); + Item item = Item.getItemFromBlock(block); + String name = item == null ? "Absolutely Nothing" : item.getItemStackDisplayName(new ItemStack(block, 1, block.getMetaFromState(state))); StringUtil.drawSplitString(minecraft.fontRendererObj, StringUtil.localizeFormatted("tooltip."+ModUtil.MOD_ID+".phantom.blockInfo.desc", name, phantom.getBoundPosition().getX(), phantom.getBoundPosition().getY(), phantom.getBoundPosition().getZ(), distance), resolution.getScaledWidth()/2+5, resolution.getScaledHeight()/2-30, 200, StringUtil.DECIMAL_COLOR_WHITE, true); if(phantom.isBoundThingInRange()){ diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockSmileyCloud.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockSmileyCloud.java index f7be9284d..1c8745557 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockSmileyCloud.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockSmileyCloud.java @@ -16,7 +16,6 @@ import de.ellpeck.actuallyadditions.mod.achievement.TheAchievements; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.tile.TileEntitySmileyCloud; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -108,16 +107,16 @@ public class BlockSmileyCloud extends BlockContainerBase{ int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3; if(rotation == 0){ - PosUtil.setMetadata(pos, world, 0, 2); + world.setBlockState(pos, this.getStateFromMeta(0), 2); } if(rotation == 1){ - PosUtil.setMetadata(pos, world, 3, 2); + world.setBlockState(pos, this.getStateFromMeta(3), 2); } if(rotation == 2){ - PosUtil.setMetadata(pos, world, 1, 2); + world.setBlockState(pos, this.getStateFromMeta(1), 2); } if(rotation == 3){ - PosUtil.setMetadata(pos, world, 2, 2); + world.setBlockState(pos, this.getStateFromMeta(2), 2); } super.onBlockPlacedBy(world, pos, state, player, stack); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockTreasureChest.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockTreasureChest.java index da333c60a..0d806d30a 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockTreasureChest.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockTreasureChest.java @@ -14,7 +14,6 @@ import de.ellpeck.actuallyadditions.api.ActuallyAdditionsAPI; import de.ellpeck.actuallyadditions.api.recipe.TreasureChestLoot; import de.ellpeck.actuallyadditions.mod.achievement.TheAchievements; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -83,16 +82,16 @@ public class BlockTreasureChest extends BlockBase{ int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3; if(rotation == 0){ - PosUtil.setMetadata(pos, world, 0, 2); + world.setBlockState(pos, this.getStateFromMeta(0), 2); } if(rotation == 1){ - PosUtil.setMetadata(pos, world, 3, 2); + world.setBlockState(pos, this.getStateFromMeta(3), 2); } if(rotation == 2){ - PosUtil.setMetadata(pos, world, 1, 2); + world.setBlockState(pos, this.getStateFromMeta(1), 2); } if(rotation == 3){ - PosUtil.setMetadata(pos, world, 2, 2); + world.setBlockState(pos, this.getStateFromMeta(2), 2); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockWallAA.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockWallAA.java index a00533333..699261da3 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockWallAA.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockWallAA.java @@ -11,7 +11,6 @@ package de.ellpeck.actuallyadditions.mod.blocks; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBase; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.Block; import net.minecraft.block.BlockFenceGate; import net.minecraft.block.BlockWall; @@ -132,8 +131,8 @@ public class BlockWallAA extends BlockBase{ } public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos){ - Block block = PosUtil.getBlock(pos, worldIn); IBlockState state = worldIn.getBlockState(pos); + Block block = state.getBlock(); return block != Blocks.BARRIER && (!(block != this && !(block instanceof BlockFenceGate)) || ((block.getMaterial(state).isOpaque() && block.isFullCube(state)) && block.getMaterial(state) != Material.GOURD)); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockWildPlant.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockWildPlant.java index 28e5b8fbe..502a0cd2e 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockWildPlant.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockWildPlant.java @@ -16,7 +16,6 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockBushBase; import de.ellpeck.actuallyadditions.mod.blocks.base.BlockPlant; import de.ellpeck.actuallyadditions.mod.blocks.base.ItemBlockBase; import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheWildPlants; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.StringUtil; import net.minecraft.block.Block; import net.minecraft.block.SoundType; @@ -50,15 +49,17 @@ public class BlockWildPlant extends BlockBushBase{ @Override public boolean canBlockStay(World world, BlockPos pos, IBlockState state){ - BlockPos offset = PosUtil.offset(pos, 0, -1, 0); - return PosUtil.getMetadata(state) == TheWildPlants.RICE.ordinal() ? PosUtil.getMaterial(offset, world) == Material.WATER : PosUtil.getBlock(offset, world).canSustainPlant(world.getBlockState(offset), world, offset, EnumFacing.UP, this); + BlockPos offset = pos.down(); + IBlockState offsetState = world.getBlockState(offset); + Block offsetBlock = offsetState.getBlock(); + return offsetBlock.getMetaFromState(offsetState) == TheWildPlants.RICE.ordinal() ? offsetBlock.getMaterial(offsetState) == Material.WATER : offsetBlock.canSustainPlant(world.getBlockState(offset), world, offset, EnumFacing.UP, this); } @Override @SideOnly(Side.CLIENT) public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player){ - int metadata = PosUtil.getMetadata(pos, world); + int metadata = this.getMetaFromState(state); return metadata >= ALL_WILD_PLANTS.length ? null : new ItemStack(((BlockPlant)ALL_WILD_PLANTS[metadata].wildVersionOf).seedItem); } @@ -72,7 +73,7 @@ public class BlockWildPlant extends BlockBushBase{ @Override public List getDrops(IBlockAccess world, BlockPos pos, IBlockState state, int fortune){ - int metadata = PosUtil.getMetadata(state); + int metadata = this.getMetaFromState(state); return metadata >= ALL_WILD_PLANTS.length ? null : ALL_WILD_PLANTS[metadata].wildVersionOf.getDrops(world, pos, ALL_WILD_PLANTS[metadata].wildVersionOf.getStateFromMeta(7), fortune); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockXPSolidifier.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockXPSolidifier.java index bb7670c98..e79c719a7 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockXPSolidifier.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/BlockXPSolidifier.java @@ -16,7 +16,6 @@ import de.ellpeck.actuallyadditions.mod.blocks.base.BlockContainerBase; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.items.InitItems; import de.ellpeck.actuallyadditions.mod.tile.TileEntityXPSolidifier; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -74,16 +73,16 @@ public class BlockXPSolidifier extends BlockContainerBase{ int rotation = MathHelper.floor_double((double)(player.rotationYaw*4.0F/360.0F)+0.5D) & 3; if(rotation == 0){ - PosUtil.setMetadata(pos, world, 0, 2); + world.setBlockState(pos, this.getStateFromMeta(0), 2); } if(rotation == 1){ - PosUtil.setMetadata(pos, world, 3, 2); + world.setBlockState(pos, this.getStateFromMeta(3), 2); } if(rotation == 2){ - PosUtil.setMetadata(pos, world, 1, 2); + world.setBlockState(pos, this.getStateFromMeta(1), 2); } if(rotation == 3){ - PosUtil.setMetadata(pos, world, 2, 2); + world.setBlockState(pos, this.getStateFromMeta(2), 2); } super.onBlockPlacedBy(world, pos, state, player, stack); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/base/BlockFluidFlowing.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/base/BlockFluidFlowing.java index 5e1b4cf57..066d960ec 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/base/BlockFluidFlowing.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/base/BlockFluidFlowing.java @@ -12,7 +12,6 @@ package de.ellpeck.actuallyadditions.mod.blocks.base; import de.ellpeck.actuallyadditions.mod.util.ItemUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.material.Material; import net.minecraft.item.EnumRarity; import net.minecraft.item.ItemStack; @@ -52,12 +51,12 @@ public class BlockFluidFlowing extends BlockFluidClassic implements ItemBlockBas @Override public boolean canDisplace(IBlockAccess world, BlockPos pos){ - return !PosUtil.getMaterial(pos, world).isLiquid() && super.canDisplace(world, pos); + return !world.getBlockState(pos).getMaterial().isLiquid() && super.canDisplace(world, pos); } @Override public boolean displaceIfPossible(World world, BlockPos pos){ - return !PosUtil.getMaterial(pos, world).isLiquid() && super.displaceIfPossible(world, pos); + return !world.getBlockState(pos).getMaterial().isLiquid() && super.displaceIfPossible(world, pos); } @Override diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/render/RenderReconstructorLens.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/render/RenderReconstructorLens.java index 24d749c32..1d80651d3 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/render/RenderReconstructorLens.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/render/RenderReconstructorLens.java @@ -14,7 +14,7 @@ package de.ellpeck.actuallyadditions.mod.blocks.render; import de.ellpeck.actuallyadditions.api.lens.ILensItem; import de.ellpeck.actuallyadditions.mod.tile.TileEntityAtomicReconstructor; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; +import net.minecraft.block.state.IBlockState; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.item.ItemStack; @@ -34,7 +34,8 @@ public class RenderReconstructorLens extends TileEntitySpecialRenderer{ GlStateManager.translate((float)x+0.5F, (float)y-0.5F, (float)z+0.5F); GlStateManager.rotate(180F, 0.0F, 0.0F, 1.0F); - int meta = PosUtil.getMetadata(tile.getPos(), tile.getWorld()); + IBlockState state = tile.getWorld().getBlockState(tile.getPos()); + int meta = state.getBlock().getMetaFromState(state); if(meta == 0){ GlStateManager.translate(0F, -0.5F, 0F); GlStateManager.rotate(90F, 1F, 0F, 0F); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/render/RenderSmileyCloud.java b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/render/RenderSmileyCloud.java index dfacd162e..63c42480d 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/render/RenderSmileyCloud.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/blocks/render/RenderSmileyCloud.java @@ -15,7 +15,7 @@ import de.ellpeck.actuallyadditions.mod.misc.cloud.SmileyCloudEasterEggs; import de.ellpeck.actuallyadditions.mod.proxy.ClientProxy; import de.ellpeck.actuallyadditions.mod.tile.TileEntitySmileyCloud; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; +import net.minecraft.block.state.IBlockState; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; @@ -42,7 +42,8 @@ public class RenderSmileyCloud extends TileEntitySpecialRenderer{ if(triggerName != null && theCloud.name != null){ if(triggerName.equalsIgnoreCase(theCloud.name)){ GlStateManager.pushMatrix(); - switch(PosUtil.getMetadata(theCloud.getPos(), theCloud.getWorld())){ + IBlockState state = theCloud.getWorld().getBlockState(theCloud.getPos()); + switch(state.getBlock().getMetaFromState(state)){ case 1: GlStateManager.rotate(180, 0, 1, 0); break; diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/event/ClientEvents.java b/src/main/java/de/ellpeck/actuallyadditions/mod/event/ClientEvents.java index ad682eb4a..1550e2a11 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/event/ClientEvents.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/event/ClientEvents.java @@ -15,7 +15,6 @@ import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.tile.IEnergyDisplay; import de.ellpeck.actuallyadditions.mod.tile.TileEntityBase; import de.ellpeck.actuallyadditions.mod.util.ModUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.StringUtil; import net.minecraft.block.Block; import net.minecraft.block.BlockRedstoneTorch; @@ -143,7 +142,7 @@ public class ClientEvents{ } if(posHit != null && posHit.getBlockPos() != null){ - Block blockHit = PosUtil.getBlock(posHit.getBlockPos(), minecraft.theWorld); + Block blockHit = minecraft.theWorld.getBlockState(posHit.getBlockPos()).getBlock(); TileEntity tileHit = minecraft.theWorld.getTileEntity(posHit.getBlockPos()); if(blockHit instanceof IHudDisplay){ diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/gen/OreGen.java b/src/main/java/de/ellpeck/actuallyadditions/mod/gen/OreGen.java index 4a84c7670..317cdc0fe 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/gen/OreGen.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/gen/OreGen.java @@ -17,7 +17,6 @@ import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.config.values.ConfigIntListValues; import de.ellpeck.actuallyadditions.mod.config.values.ConfigIntValues; import de.ellpeck.actuallyadditions.mod.util.ModUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; @@ -38,6 +37,7 @@ import net.minecraftforge.fml.common.IWorldGenerator; import net.minecraftforge.fml.common.eventhandler.Event; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.registry.GameRegistry; +import org.apache.commons.lang3.ArrayUtils; import java.util.ArrayList; import java.util.Random; @@ -59,7 +59,7 @@ public class OreGen implements IWorldGenerator{ public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider){ int dimension = world.provider.getDimension(); if(dimension != -1 && dimension != 1){ - if(world.getWorldType() != WorldType.FLAT && Util.arrayContains(ConfigIntListValues.ORE_GEN_DIMENSION_BLACKLIST.getValue(), world.provider.getDimension()) < 0){ + if(world.getWorldType() != WorldType.FLAT && Util.arrayContains(ArrayUtils.toObject(ConfigIntListValues.ORE_GEN_DIMENSION_BLACKLIST.getValue()), world.provider.getDimension()) < 0){ this.generateDefault(world, random, chunkX*16, chunkZ*16); } } @@ -94,7 +94,7 @@ public class OreGen implements IWorldGenerator{ @SubscribeEvent public void onWorldDecoration(DecorateBiomeEvent.Decorate event){ if((event.getResult() == Event.Result.ALLOW || event.getResult() == Event.Result.DEFAULT)){ - if(Util.arrayContains(ConfigIntListValues.PLANT_DIMENSION_BLACKLIST.getValue(), event.getWorld().provider.getDimension()) < 0){ + if(Util.arrayContains(ArrayUtils.toObject(ConfigIntListValues.PLANT_DIMENSION_BLACKLIST.getValue()), event.getWorld().provider.getDimension()) < 0){ this.generateRice(event); this.genPlantNormally(InitBlocks.blockWildPlant, TheWildPlants.CANOLA.ordinal(), ConfigIntValues.CANOLA_AMOUNT.getValue(), ConfigBoolValues.DO_CANOLA_GEN.isEnabled(), Material.GRASS, event); this.genPlantNormally(InitBlocks.blockWildPlant, TheWildPlants.FLAX.ordinal(), ConfigIntValues.FLAX_AMOUNT.getValue(), ConfigBoolValues.DO_FLAX_GEN.isEnabled(), Material.GRASS, event); @@ -111,8 +111,8 @@ public class OreGen implements IWorldGenerator{ if(event.getWorld().getBiomeGenForCoords(randomPos) instanceof BiomeOcean){ if(randomPos.getY() >= 25 && randomPos.getY() <= 45){ if(event.getWorld().getBlockState(randomPos).getMaterial() == Material.WATER){ - if(PosUtil.getMaterial(PosUtil.offset(randomPos, 0, -1, 0), event.getWorld()).isSolid()){ - PosUtil.setBlock(randomPos, event.getWorld(), InitBlocks.blockTreasureChest, event.getRand().nextInt(4), 2); + if(event.getWorld().getBlockState(randomPos.down()).getMaterial().isSolid()){ + event.getWorld().setBlockState(randomPos, InitBlocks.blockTreasureChest.getStateFromMeta(event.getRand().nextInt(4)), 2); } } } @@ -128,13 +128,13 @@ public class OreGen implements IWorldGenerator{ if(event.getRand().nextInt(50) == 0){ BlockPos randomPos = new BlockPos(event.getPos().getX()+event.getRand().nextInt(16)+8, 0, event.getPos().getZ()+event.getRand().nextInt(16)+8); randomPos = event.getWorld().getTopSolidOrLiquidBlock(randomPos); - if(PosUtil.getMaterial(randomPos, event.getWorld()) == Material.WATER){ + if(event.getWorld().getBlockState(randomPos).getMaterial() == Material.WATER){ ArrayList blocksAroundBottom = WorldUtil.getMaterialsAround(event.getWorld(), randomPos); - BlockPos posToGenAt = PosUtil.offset(randomPos, 0, 1, 0); + BlockPos posToGenAt = randomPos.up(); ArrayList blocksAroundTop = WorldUtil.getMaterialsAround(event.getWorld(), posToGenAt); if(blocksAroundBottom.contains(Material.GRASS) || blocksAroundBottom.contains(Material.GROUND) || blocksAroundBottom.contains(Material.ROCK) || blocksAroundBottom.contains(Material.SAND)){ - if(!blocksAroundTop.contains(Material.WATER) && PosUtil.getMaterial(posToGenAt, event.getWorld()) == Material.AIR){ - PosUtil.setBlock(posToGenAt, event.getWorld(), InitBlocks.blockWildPlant, TheWildPlants.RICE.ordinal(), 2); + if(!blocksAroundTop.contains(Material.WATER) && event.getWorld().getBlockState(posToGenAt).getMaterial() == Material.AIR){ + event.getWorld().setBlockState(posToGenAt, InitBlocks.blockWildPlant.getStateFromMeta(TheWildPlants.RICE.ordinal()), 2); } } } @@ -150,9 +150,9 @@ public class OreGen implements IWorldGenerator{ BlockPos randomPos = new BlockPos(event.getPos().getX()+event.getRand().nextInt(16)+8, 0, event.getPos().getZ()+event.getRand().nextInt(16)+8); randomPos = event.getWorld().getTopSolidOrLiquidBlock(randomPos); - if(PosUtil.getMaterial(PosUtil.offset(randomPos, 0, -1, 0), event.getWorld()) == blockBelow){ + if(event.getWorld().getBlockState(randomPos.down()).getMaterial() == blockBelow){ if(plant.canPlaceBlockAt(event.getWorld(), randomPos) && event.getWorld().isAirBlock(randomPos)){ - PosUtil.setBlock(randomPos, event.getWorld(), plant, meta, 2); + event.getWorld().setBlockState(randomPos, plant.getStateFromMeta(meta), 2); } } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemBooklet.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemBooklet.java index 0a2eb6574..9f7ad587e 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemBooklet.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemBooklet.java @@ -22,9 +22,9 @@ import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.items.base.ItemBase; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; import de.ellpeck.actuallyadditions.mod.util.ModUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.StringUtil; import net.minecraft.block.Block; +import net.minecraft.block.state.IBlockState; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.ScaledResolution; import net.minecraft.entity.player.EntityPlayer; @@ -59,8 +59,9 @@ public class ItemBooklet extends ItemBase implements IHudDisplay{ @Override public EnumActionResult onItemUse(ItemStack stack, EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing face, float hitX, float hitY, float hitZ){ if(player.isSneaking()){ - Block block = PosUtil.getBlock(pos, world); - ItemStack blockStack = new ItemStack(block, 1, PosUtil.getMetadata(pos, world)); + IBlockState state = world.getBlockState(pos); + Block block = state.getBlock(); + ItemStack blockStack = new ItemStack(block, 1, block.getMetaFromState(state)); BookletPage page = BookletUtils.getFirstPageForStack(blockStack); if(page != null){ if(world.isRemote){ @@ -98,9 +99,10 @@ public class ItemBooklet extends ItemBase implements IHudDisplay{ @Override public void displayHud(Minecraft minecraft, EntityPlayer player, ItemStack stack, RayTraceResult posHit, Profiler profiler, ScaledResolution resolution){ if(posHit != null){ - Block block = PosUtil.getBlock(posHit.getBlockPos(), minecraft.theWorld); + IBlockState state = minecraft.theWorld.getBlockState(posHit.getBlockPos()); + Block block = state.getBlock(); if(block != null && !block.isAir(minecraft.theWorld.getBlockState(posHit.getBlockPos()), minecraft.theWorld, posHit.getBlockPos())){ - ItemStack blockStack = new ItemStack(block, 1, PosUtil.getMetadata(posHit.getBlockPos(), minecraft.theWorld)); + ItemStack blockStack = new ItemStack(block, 1, block.getMetaFromState(state)); int height = resolution.getScaledHeight()/5*3; if(player.isSneaking()){ BookletPage page = BookletUtils.getFirstPageForStack(blockStack); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemChestToCrateUpgrade.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemChestToCrateUpgrade.java index c986bd12c..027cdfade 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemChestToCrateUpgrade.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemChestToCrateUpgrade.java @@ -14,7 +14,6 @@ import de.ellpeck.actuallyadditions.mod.blocks.InitBlocks; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.items.base.ItemBase; import de.ellpeck.actuallyadditions.mod.tile.TileEntityGiantChest; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.Block; import net.minecraft.block.BlockChest; import net.minecraft.entity.player.EntityPlayer; @@ -39,7 +38,7 @@ public class ItemChestToCrateUpgrade extends ItemBase{ public EnumActionResult onItemUse(ItemStack heldStack, EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float par8, float par9, float par10){ if(player.isSneaking()){ TileEntity tileHit = world.getTileEntity(pos); - Block block = PosUtil.getBlock(pos, world); + Block block = world.getBlockState(pos).getBlock(); if(block instanceof BlockChest && tileHit instanceof TileEntityChest){ if(!world.isRemote){ TileEntityChest chest = (TileEntityChest)tileHit; @@ -58,7 +57,7 @@ public class ItemChestToCrateUpgrade extends ItemBase{ if(!ConfigBoolValues.LESS_BLOCK_BREAKING_EFFECTS.isEnabled()){ world.playEvent(2001, pos, Block.getStateId(world.getBlockState(pos))); } - PosUtil.setBlock(pos, world, InitBlocks.blockGiantChest, 0, 2); + world.setBlockState(pos, InitBlocks.blockGiantChest.getDefaultState(), 2); //Copy Items into new Chest TileEntity newTileHit = world.getTileEntity(pos); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemDrill.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemDrill.java index b3279dc37..bf9deedff 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemDrill.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemDrill.java @@ -21,7 +21,6 @@ import de.ellpeck.actuallyadditions.mod.items.base.ItemEnergy; import de.ellpeck.actuallyadditions.mod.tile.TileEntityInventoryBase; import de.ellpeck.actuallyadditions.mod.util.ItemUtil; import de.ellpeck.actuallyadditions.mod.util.ModUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; import net.minecraft.block.material.Material; @@ -430,7 +429,8 @@ public class ItemDrill extends ItemEnergy{ } //Not defined later because main Block is getting broken below - float mainHardness = PosUtil.getBlock(aPos, world).getBlockHardness(world.getBlockState(aPos), world, aPos); + IBlockState state = world.getBlockState(aPos); + float mainHardness = state.getBlockHardness(world, aPos); //Break Middle Block first int use = this.getEnergyUsePerBlock(stack); @@ -452,7 +452,8 @@ public class ItemDrill extends ItemEnergy{ if(this.getEnergyStored(stack) >= use){ //Only break Blocks around that are (about) as hard or softer BlockPos thePos = new BlockPos(xPos, yPos, zPos); - if(PosUtil.getBlock(thePos, world).getBlockHardness(world.getBlockState(thePos), world, thePos) <= mainHardness+5.0F){ + IBlockState theState = world.getBlockState(thePos); + if(theState.getBlockHardness(world, thePos) <= mainHardness+5.0F){ this.tryHarvestBlock(world, thePos, true, stack, player, use); } } @@ -479,8 +480,8 @@ public class ItemDrill extends ItemEnergy{ * @param use The Energy that should be extracted per Block */ private boolean tryHarvestBlock(World world, BlockPos pos, boolean isExtra, ItemStack stack, EntityPlayer player, int use){ - Block block = PosUtil.getBlock(pos, world); IBlockState state = world.getBlockState(pos); + Block block = state.getBlock(); float hardness = block.getBlockHardness(state, world, pos); boolean canHarvest = (ForgeHooks.canHarvestBlock(block, player, world, pos) || this.canHarvestBlock(state, stack)) && (!isExtra || this.getStrVsBlock(stack, world.getBlockState(pos)) > 1.0F); if(hardness >= 0.0F && (!isExtra || (canHarvest && !block.hasTileEntity(world.getBlockState(pos))))){ diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemGrowthRing.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemGrowthRing.java index 58f4c0559..9f96b6507 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemGrowthRing.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemGrowthRing.java @@ -11,11 +11,11 @@ package de.ellpeck.actuallyadditions.mod.items; import de.ellpeck.actuallyadditions.mod.items.base.ItemEnergy; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import net.minecraft.block.Block; import net.minecraft.block.BlockGrass; import net.minecraft.block.IGrowable; +import net.minecraft.block.state.IBlockState; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumRarity; @@ -57,7 +57,7 @@ public class ItemGrowthRing extends ItemEnergy{ int theY = MathHelper.floor_double(player.posY+y); int theZ = MathHelper.floor_double(player.posZ+z); BlockPos posInQuestion = new BlockPos(theX, theY, theZ); - Block theBlock = PosUtil.getBlock(posInQuestion, world); + Block theBlock = world.getBlockState(posInQuestion).getBlock(); if((theBlock instanceof IGrowable || theBlock instanceof IPlantable) && !(theBlock instanceof BlockGrass)){ blocks.add(posInQuestion); } @@ -71,11 +71,14 @@ public class ItemGrowthRing extends ItemEnergy{ if(this.getEnergyStored(stack) >= energyUse){ BlockPos pos = blocks.get(Util.RANDOM.nextInt(blocks.size())); - int metaBefore = PosUtil.getMetadata(pos, world); - PosUtil.getBlock(pos, world).updateTick(world, pos, world.getBlockState(pos), Util.RANDOM); + IBlockState state = world.getBlockState(pos); + Block block = state.getBlock(); + int metaBefore = block.getMetaFromState(state); + block.updateTick(world, pos, world.getBlockState(pos), Util.RANDOM); //Show Particles if Metadata changed - if(PosUtil.getMetadata(pos, world) != metaBefore){ + IBlockState newState = world.getBlockState(pos); + if(newState.getBlock().getMetaFromState(newState) != metaBefore){ world.playEvent(2005, pos, 0); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemLeafBlower.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemLeafBlower.java index eed67428c..46c506985 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemLeafBlower.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemLeafBlower.java @@ -13,7 +13,6 @@ package de.ellpeck.actuallyadditions.mod.items; import de.ellpeck.actuallyadditions.api.misc.IDisplayStandItem; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.items.base.ItemBase; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.Block; import net.minecraft.block.BlockBush; import net.minecraft.entity.EntityLivingBase; @@ -108,7 +107,7 @@ public class ItemLeafBlower extends ItemBase implements IDisplayStandItem{ for(int reachY = (this.isAdvanced ? -rangeSides : -rangeUp); reachY < (this.isAdvanced ? rangeSides : rangeUp)+1; reachY++){ //The current Block to break BlockPos pos = new BlockPos(x+reachX, y+reachY, z+reachZ); - Block block = PosUtil.getBlock(pos, world); + Block block = world.getBlockState(pos).getBlock(); if(block != null && (block instanceof BlockBush || (this.isAdvanced && block.isLeaves(world.getBlockState(pos), world, pos)))){ breakPositions.add(pos); } @@ -120,7 +119,7 @@ public class ItemLeafBlower extends ItemBase implements IDisplayStandItem{ Collections.shuffle(breakPositions); BlockPos theCoord = breakPositions.get(0); - Block theBlock = PosUtil.getBlock(theCoord, world); + Block theBlock = world.getBlockState(theCoord).getBlock(); ArrayList drops = new ArrayList(); //Gets all of the Drops the Block should have diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemWaterBowl.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemWaterBowl.java index 204db232e..ec63fce58 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemWaterBowl.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemWaterBowl.java @@ -12,8 +12,6 @@ package de.ellpeck.actuallyadditions.mod.items; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.items.base.ItemBase; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; -import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.BlockLiquid; import net.minecraft.block.material.Material; @@ -97,7 +95,7 @@ public class ItemWaterBowl extends ItemBase{ return new ActionResult(EnumActionResult.FAIL, stack); } else{ - BlockPos pos1 = PosUtil.getBlock(pos, world).isReplaceable(world, pos) && trace.sideHit == EnumFacing.UP ? pos : pos.offset(trace.sideHit); + BlockPos pos1 = world.getBlockState(pos).getBlock().isReplaceable(world, pos) && trace.sideHit == EnumFacing.UP ? pos : pos.offset(trace.sideHit); if(!player.canPlayerEdit(pos1, trace.sideHit, stack)){ return new ActionResult(EnumActionResult.FAIL, stack); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemWaterRemovalRing.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemWaterRemovalRing.java index 5ab516fac..21f0fb2a5 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemWaterRemovalRing.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/ItemWaterRemovalRing.java @@ -12,7 +12,6 @@ package de.ellpeck.actuallyadditions.mod.items; import de.ellpeck.actuallyadditions.mod.items.base.ItemEnergy; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.Block; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -52,7 +51,7 @@ public class ItemWaterRemovalRing extends ItemEnergy{ //Remove Water BlockPos pos = new BlockPos(theX, theY, theZ); - Block block = PosUtil.getBlock(pos, world); + Block block = world.getBlockState(pos).getBlock(); if((block == Blocks.WATER || block == Blocks.FLOWING_WATER) && this.getEnergyStored(stack) >= energyUse){ world.setBlockToAir(pos); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensColor.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensColor.java index fa1196bd2..5f63cf9e4 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensColor.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensColor.java @@ -15,7 +15,6 @@ import de.ellpeck.actuallyadditions.api.ActuallyAdditionsAPI; import de.ellpeck.actuallyadditions.api.internal.IAtomicReconstructor; import de.ellpeck.actuallyadditions.api.lens.Lens; import de.ellpeck.actuallyadditions.api.recipe.IColorLensChanger; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; @@ -53,10 +52,12 @@ public class LensColor extends Lens{ public boolean invoke(IBlockState hitState, BlockPos hitBlock, IAtomicReconstructor tile){ if(hitBlock != null){ if(tile.getEnergy() >= ENERGY_USE){ - int meta = PosUtil.getMetadata(hitBlock, tile.getWorldObject()); - ItemStack returnStack = this.tryConvert(new ItemStack(PosUtil.getBlock(hitBlock, tile.getWorldObject()), 1, meta), hitState, hitBlock, tile); + IBlockState state = tile.getWorldObject().getBlockState(hitBlock); + Block block = state.getBlock(); + int meta = block.getMetaFromState(state); + ItemStack returnStack = this.tryConvert(new ItemStack(block, 1, meta), hitState, hitBlock, tile); if(returnStack != null && returnStack.getItem() instanceof ItemBlock){ - PosUtil.setBlock(hitBlock, tile.getWorldObject(), Block.getBlockFromItem(returnStack.getItem()), returnStack.getItemDamage(), 2); + tile.getWorldObject().setBlockState(hitBlock, Block.getBlockFromItem(returnStack.getItem()).getStateFromMeta(returnStack.getItemDamage()), 2); tile.extractEnergy(ENERGY_USE); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDeath.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDeath.java index 5a948fecb..0fd6f8e0f 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDeath.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDeath.java @@ -13,7 +13,6 @@ package de.ellpeck.actuallyadditions.mod.items.lens; import de.ellpeck.actuallyadditions.api.internal.IAtomicReconstructor; import de.ellpeck.actuallyadditions.api.lens.Lens; import de.ellpeck.actuallyadditions.mod.misc.DamageSources; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.EntityLivingBase; import net.minecraft.util.math.AxisAlignedBB; @@ -35,7 +34,7 @@ public class LensDeath extends Lens{ } } - return hitBlock != null && !PosUtil.getBlock(hitBlock, tile.getWorldObject()).isAir(hitState, tile.getWorldObject(), hitBlock); + return hitBlock != null && !hitState.getBlock().isAir(hitState, tile.getWorldObject(), hitBlock); } @Override diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDetonation.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDetonation.java index 017291cd9..125e802fa 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDetonation.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDetonation.java @@ -12,7 +12,6 @@ package de.ellpeck.actuallyadditions.mod.items.lens; import de.ellpeck.actuallyadditions.api.internal.IAtomicReconstructor; import de.ellpeck.actuallyadditions.api.lens.Lens; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.state.IBlockState; import net.minecraft.util.math.BlockPos; @@ -20,7 +19,7 @@ public class LensDetonation extends Lens{ @Override public boolean invoke(IBlockState state, BlockPos hitBlock, IAtomicReconstructor tile){ - if(hitBlock != null && !PosUtil.getBlock(hitBlock, tile.getWorldObject()).isAir(state, tile.getWorldObject(), hitBlock)){ + if(hitBlock != null && !state.getBlock().isAir(state, tile.getWorldObject(), hitBlock)){ int use = 250000; if(tile.getEnergy() >= use){ tile.getWorldObject().newExplosion(null, hitBlock.getX()+0.5, hitBlock.getY()+0.5, hitBlock.getZ()+0.5, 10F, true, true); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDisruption.java b/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDisruption.java index ba55e8126..b98f212e4 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDisruption.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/items/lens/LensDisruption.java @@ -13,7 +13,6 @@ package de.ellpeck.actuallyadditions.mod.items.lens; import de.ellpeck.actuallyadditions.api.internal.IAtomicReconstructor; import de.ellpeck.actuallyadditions.api.lens.Lens; import de.ellpeck.actuallyadditions.mod.util.ModUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; @@ -31,7 +30,7 @@ public class LensDisruption extends Lens{ @Override public boolean invoke(IBlockState hitState, BlockPos hitBlock, IAtomicReconstructor tile){ int energyUse = 150000; - if(tile.getEnergy() >= energyUse && hitBlock != null && !PosUtil.getBlock(hitBlock, tile.getWorldObject()).isAir(hitState, tile.getWorldObject(), hitBlock)){ + if(tile.getEnergy() >= energyUse && hitBlock != null && !hitState.getBlock().isAir(hitState, tile.getWorldObject(), hitBlock)){ int range = 2; ArrayList items = (ArrayList)tile.getWorldObject().getEntitiesWithinAABB(EntityItem.class, new AxisAlignedBB(hitBlock.getX()-range, hitBlock.getY()-range, hitBlock.getZ()-range, hitBlock.getX()+range, hitBlock.getY()+range, hitBlock.getZ()+range)); for(EntityItem item : items){ diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/misc/LaserRelayConnectionHandler.java b/src/main/java/de/ellpeck/actuallyadditions/mod/misc/LaserRelayConnectionHandler.java index 05da083e1..7b0ba117d 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/misc/LaserRelayConnectionHandler.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/misc/LaserRelayConnectionHandler.java @@ -12,7 +12,6 @@ package de.ellpeck.actuallyadditions.mod.misc; import de.ellpeck.actuallyadditions.mod.data.WorldData; import de.ellpeck.actuallyadditions.mod.tile.TileEntityLaserRelay; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import io.netty.util.internal.ConcurrentSet; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; @@ -91,8 +90,8 @@ public final class LaserRelayConnectionHandler{ * (Puts it into the correct network!) */ public static boolean addConnection(BlockPos firstRelay, BlockPos secondRelay, World world){ - int distance = (int)PosUtil.toVec(firstRelay).distanceTo(PosUtil.toVec(secondRelay)); - if(distance > TileEntityLaserRelay.MAX_DISTANCE || PosUtil.areSamePos(firstRelay, secondRelay)){ + int distanceSq = (int)firstRelay.distanceSq(secondRelay); + if(distanceSq > TileEntityLaserRelay.MAX_DISTANCE*TileEntityLaserRelay.MAX_DISTANCE || firstRelay.equals(secondRelay)){ return false; } @@ -165,7 +164,7 @@ public final class LaserRelayConnectionHandler{ public boolean contains(BlockPos relay){ for(BlockPos position : this.positions){ - if(position != null && PosUtil.areSamePos(position, relay)){ + if(position != null && position.equals(relay)){ return true; } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/misc/MethodHandler.java b/src/main/java/de/ellpeck/actuallyadditions/mod/misc/MethodHandler.java index fd654481c..250cca6b8 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/misc/MethodHandler.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/misc/MethodHandler.java @@ -16,7 +16,6 @@ import de.ellpeck.actuallyadditions.api.recipe.CoffeeIngredient; import de.ellpeck.actuallyadditions.api.recipe.LensConversionRecipe; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.items.lens.LensRecipeHandler; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.item.EntityItem; @@ -120,7 +119,7 @@ public class MethodHandler implements IMethodHandler{ @Override public boolean invokeConversionLens(IBlockState hitState, BlockPos hitBlock, IAtomicReconstructor tile){ - if(hitBlock != null && !PosUtil.getBlock(hitBlock, tile.getWorldObject()).isAir(hitState, tile.getWorldObject(), hitBlock)){ + if(hitBlock != null && !hitState.getBlock().isAir(hitState, tile.getWorldObject(), hitBlock)){ int range = 2; //Converting the Blocks @@ -128,7 +127,7 @@ public class MethodHandler implements IMethodHandler{ for(int reachZ = -range; reachZ < range+1; reachZ++){ for(int reachY = -range; reachY < range+1; reachY++){ BlockPos pos = new BlockPos(hitBlock.getX()+reachX, hitBlock.getY()+reachY, hitBlock.getZ()+reachZ); - List recipes = LensRecipeHandler.getRecipesFor(new ItemStack(PosUtil.getBlock(pos, tile.getWorldObject()), 1, PosUtil.getMetadata(pos, tile.getWorldObject()))); + List recipes = LensRecipeHandler.getRecipesFor(new ItemStack(hitState.getBlock(), 1, hitState.getBlock().getMetaFromState(hitState))); for(LensConversionRecipe recipe : recipes){ if(recipe != null && recipe.type == tile.getLens() && tile.getEnergy() >= recipe.energyUse){ List outputs = recipe.getOutputs(); @@ -138,7 +137,7 @@ public class MethodHandler implements IMethodHandler{ if(!ConfigBoolValues.LESS_BLOCK_BREAKING_EFFECTS.isEnabled()){ tile.getWorldObject().playEvent(2001, pos, Block.getStateId(tile.getWorldObject().getBlockState(pos))); } - PosUtil.setBlock(pos, tile.getWorldObject(), Block.getBlockFromItem(output.getItem()), output.getItemDamage(), 2); + tile.getWorldObject().setBlockState(pos, Block.getBlockFromItem(output.getItem()).getStateFromMeta(output.getItemDamage()), 2); } else{ EntityItem item = new EntityItem(tile.getWorldObject(), pos.getX()+0.5, pos.getY()+0.5, pos.getZ()+0.5, output.copy()); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/recipe/FuelHandler.java b/src/main/java/de/ellpeck/actuallyadditions/mod/recipe/FuelHandler.java index dc0c3973e..7475a3451 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/recipe/FuelHandler.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/recipe/FuelHandler.java @@ -24,6 +24,7 @@ import org.apache.commons.lang3.tuple.Pair; import java.util.HashMap; +//TODO Make this less hideous public class FuelHandler implements IFuelHandler{ private static final HashMap, Integer> FUEL_LIST = new HashMap, Integer>(); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityAtomicReconstructor.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityAtomicReconstructor.java index abbefd460..e42600573 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityAtomicReconstructor.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityAtomicReconstructor.java @@ -19,8 +19,8 @@ import de.ellpeck.actuallyadditions.api.lens.Lens; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.misc.SoundHandler; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; +import net.minecraft.block.state.IBlockState; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; @@ -99,7 +99,8 @@ public class TileEntityAtomicReconstructor extends TileEntityInventoryBase imple private void doWork(){ if(this.storage.getEnergyStored() >= ENERGY_USE){ - EnumFacing sideToManipulate = WorldUtil.getDirectionByPistonRotation(PosUtil.getMetadata(this.pos, this.worldObj)); + IBlockState state = this.worldObj.getBlockState(this.pos); + EnumFacing sideToManipulate = WorldUtil.getDirectionByPistonRotation(state.getBlock().getMetaFromState(state)); //Extract energy for shooting the laser itself too! this.storage.extractEnergy(ENERGY_USE, false); @@ -107,7 +108,7 @@ public class TileEntityAtomicReconstructor extends TileEntityInventoryBase imple Lens currentLens = this.getLens(); int distance = currentLens.getDistance(); for(int i = 0; i < distance; i++){ - BlockPos hitBlock = WorldUtil.getCoordsFromSide(sideToManipulate, this.pos, i); + BlockPos hitBlock = this.pos.offset(sideToManipulate, i); if(currentLens.invoke(this.worldObj.getBlockState(hitBlock), hitBlock, this)){ shootLaser(this.worldObj, this.getX(), this.getY(), this.getZ(), hitBlock.getX(), hitBlock.getY(), hitBlock.getZ(), currentLens); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityBreaker.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityBreaker.java index 95d8d0a3b..9901c4289 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityBreaker.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityBreaker.java @@ -12,7 +12,6 @@ package de.ellpeck.actuallyadditions.mod.tile; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; @@ -80,11 +79,12 @@ public class TileEntityBreaker extends TileEntityInventoryBase{ } private void doWork(){ - EnumFacing sideToManipulate = WorldUtil.getDirectionByPistonRotation(PosUtil.getMetadata(this.pos, this.worldObj)); + IBlockState state = this.worldObj.getBlockState(this.pos); + EnumFacing sideToManipulate = WorldUtil.getDirectionByPistonRotation(state.getBlock().getMetaFromState(state)); - BlockPos coordsBlock = WorldUtil.getCoordsFromSide(sideToManipulate, this.pos, 0); - Block blockToBreak = PosUtil.getBlock(coordsBlock, this.worldObj); + BlockPos coordsBlock = this.pos.offset(sideToManipulate, 0); IBlockState stateToBreak = this.worldObj.getBlockState(coordsBlock); + Block blockToBreak = stateToBreak.getBlock(); if(!this.isPlacer && blockToBreak != null && !(blockToBreak instanceof BlockAir) && blockToBreak.getBlockHardness(stateToBreak, this.worldObj, coordsBlock) > -1.0F){ List drops = blockToBreak.getDrops(this.worldObj, coordsBlock, stateToBreak, 0); float chance = ForgeEventFactory.fireBlockHarvesting(drops, this.worldObj, coordsBlock, this.worldObj.getBlockState(coordsBlock), 0, 1, false, null); @@ -94,7 +94,7 @@ public class TileEntityBreaker extends TileEntityInventoryBase{ if(!ConfigBoolValues.LESS_BLOCK_BREAKING_EFFECTS.isEnabled()){ this.worldObj.playEvent(2001, coordsBlock, Block.getStateId(stateToBreak)); } - WorldUtil.breakBlockAtSide(sideToManipulate, this.worldObj, this.pos); + this.worldObj.setBlockToAir(coordsBlock); WorldUtil.addToInventory(this, drops, true, true); this.markDirty(); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityDirectionalBreaker.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityDirectionalBreaker.java index d99148ad7..d95cf68aa 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityDirectionalBreaker.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityDirectionalBreaker.java @@ -13,11 +13,11 @@ package de.ellpeck.actuallyadditions.mod.tile; import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyReceiver; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; import net.minecraft.block.BlockAir; +import net.minecraft.block.state.IBlockState; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; @@ -82,11 +82,12 @@ public class TileEntityDirectionalBreaker extends TileEntityInventoryBase implem private void doWork(){ if(this.storage.getEnergyStored() >= ENERGY_USE*RANGE){ - EnumFacing sideToManipulate = WorldUtil.getDirectionByPistonRotation(PosUtil.getMetadata(this.pos, this.worldObj)); + IBlockState state = this.worldObj.getBlockState(this.pos); + EnumFacing sideToManipulate = WorldUtil.getDirectionByPistonRotation(state.getBlock().getMetaFromState(state)); for(int i = 0; i < RANGE; i++){ - BlockPos coordsBlock = WorldUtil.getCoordsFromSide(sideToManipulate, this.pos, i); - Block blockToBreak = PosUtil.getBlock(coordsBlock, this.worldObj); + BlockPos coordsBlock = this.pos.offset(sideToManipulate, i); + Block blockToBreak = this.worldObj.getBlockState(coordsBlock).getBlock(); if(blockToBreak != null && !(blockToBreak instanceof BlockAir) && blockToBreak.getBlockHardness(this.worldObj.getBlockState(coordsBlock), this.worldObj, this.pos) > -1.0F){ List drops = blockToBreak.getDrops(this.worldObj, coordsBlock, this.worldObj.getBlockState(coordsBlock), 0); float chance = ForgeEventFactory.fireBlockHarvesting(drops, this.worldObj, coordsBlock, this.worldObj.getBlockState(coordsBlock), 0, 1, false, null); @@ -96,7 +97,7 @@ public class TileEntityDirectionalBreaker extends TileEntityInventoryBase implem if(!ConfigBoolValues.LESS_BLOCK_BREAKING_EFFECTS.isEnabled()){ this.worldObj.playEvent(2001, coordsBlock, Block.getStateId(this.worldObj.getBlockState(coordsBlock))); } - WorldUtil.breakBlockAtSide(sideToManipulate, this.worldObj, this.getPos(), i); + this.worldObj.setBlockToAir(coordsBlock); WorldUtil.addToInventory(this, drops, true, true); this.storage.extractEnergy(ENERGY_USE, false); this.markDirty(); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityDropper.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityDropper.java index c0fc0e9c0..b84b51dbe 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityDropper.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityDropper.java @@ -10,8 +10,8 @@ package de.ellpeck.actuallyadditions.mod.tile; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; +import net.minecraft.block.state.IBlockState; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; @@ -67,7 +67,8 @@ public class TileEntityDropper extends TileEntityInventoryBase{ if(this.removeFromInventory(false) != null){ ItemStack stack = this.removeFromInventory(true); stack.stackSize = 1; - WorldUtil.dropItemAtSide(WorldUtil.getDirectionByPistonRotation(PosUtil.getMetadata(this.pos, this.worldObj)), this.worldObj, this.pos, stack); + IBlockState state = this.worldObj.getBlockState(this.pos); + WorldUtil.dropItemAtSide(WorldUtil.getDirectionByPistonRotation(state.getBlock().getMetaFromState(state)), this.worldObj, this.pos, stack); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFishingNet.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFishingNet.java index 31708fe00..53b876796 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFishingNet.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFishingNet.java @@ -10,11 +10,10 @@ package de.ellpeck.actuallyadditions.mod.tile; - -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.material.Material; +import net.minecraft.block.state.IBlockState; import net.minecraft.entity.item.EntityItem; import net.minecraft.inventory.IInventory; import net.minecraft.item.ItemStack; @@ -57,14 +56,14 @@ public class TileEntityFishingNet extends TileEntityBase{ super.updateEntity(); if(!this.worldObj.isRemote){ if(!this.isRedstonePowered){ - if(PosUtil.getMaterial(PosUtil.offset(this.pos, 0, -1, 0), this.worldObj) == Material.WATER){ + if(this.worldObj.getBlockState(this.pos.down()).getMaterial() == Material.WATER){ if(this.timeUntilNextDrop > 0){ this.timeUntilNextDrop--; if(this.timeUntilNextDrop <= 0){ LootContext.Builder builder = new LootContext.Builder((WorldServer)this.worldObj); List fishables = this.worldObj.getLootTableManager().getLootTableFromLocation(LootTableList.GAMEPLAY_FISHING).generateLootForPools(Util.RANDOM, builder.build()); for(ItemStack fishable : fishables){ - TileEntity tile = this.worldObj.getTileEntity(PosUtil.offset(this.pos, 0, 1, 0)); + TileEntity tile = this.worldObj.getTileEntity(this.pos.up()); if(tile != null && tile instanceof IInventory){ ArrayList list = new ArrayList(); list.add(fishable); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFluidCollector.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFluidCollector.java index 4bf35d1c7..4dadcf292 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFluidCollector.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFluidCollector.java @@ -10,12 +10,11 @@ package de.ellpeck.actuallyadditions.mod.tile; - -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; import net.minecraft.block.BlockLiquid; +import net.minecraft.block.state.IBlockState; import net.minecraft.init.Blocks; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; @@ -63,39 +62,41 @@ public class TileEntityFluidCollector extends TileEntityBase implements net.mine } private void doWork(){ - EnumFacing sideToManipulate = WorldUtil.getDirectionByPistonRotation(PosUtil.getMetadata(this.pos, this.worldObj)); - BlockPos coordsBlock = WorldUtil.getCoordsFromSide(sideToManipulate, this.pos, 0); + IBlockState state = this.worldObj.getBlockState(this.pos); + Block block = state.getBlock(); + EnumFacing sideToManipulate = WorldUtil.getDirectionByPistonRotation(block.getMetaFromState(state)); + BlockPos coordsBlock = this.pos.offset(sideToManipulate, 0); - Block blockToBreak = PosUtil.getBlock(coordsBlock, this.worldObj); - if(!this.isPlacer && blockToBreak != null && PosUtil.getMetadata(coordsBlock, this.worldObj) == 0 && Util.BUCKET <= this.tank.getCapacity()-this.tank.getFluidAmount()){ + IBlockState stateToBreak = this.worldObj.getBlockState(coordsBlock); + Block blockToBreak = stateToBreak.getBlock(); + if(!this.isPlacer && blockToBreak != null && blockToBreak.getMetaFromState(stateToBreak) == 0 && Util.BUCKET <= this.tank.getCapacity()-this.tank.getFluidAmount()){ if(blockToBreak instanceof IFluidBlock && ((IFluidBlock)blockToBreak).getFluid() != null){ if(this.tank.fillInternal(new FluidStack(((IFluidBlock)blockToBreak).getFluid(), Util.BUCKET), false) >= Util.BUCKET){ this.tank.fillInternal(new FluidStack(((IFluidBlock)blockToBreak).getFluid(), Util.BUCKET), true); - WorldUtil.breakBlockAtSide(sideToManipulate, this.worldObj, this.pos); + this.worldObj.setBlockToAir(coordsBlock); } } else if(blockToBreak == Blocks.LAVA || blockToBreak == Blocks.FLOWING_LAVA){ if(this.tank.fillInternal(new FluidStack(FluidRegistry.LAVA, Util.BUCKET), false) >= Util.BUCKET){ this.tank.fillInternal(new FluidStack(FluidRegistry.LAVA, Util.BUCKET), true); - WorldUtil.breakBlockAtSide(sideToManipulate, this.worldObj, this.pos); + this.worldObj.setBlockToAir(coordsBlock); } } else if(blockToBreak == Blocks.WATER || blockToBreak == Blocks.FLOWING_WATER){ if(this.tank.fillInternal(new FluidStack(FluidRegistry.WATER, Util.BUCKET), false) >= Util.BUCKET){ this.tank.fillInternal(new FluidStack(FluidRegistry.WATER, Util.BUCKET), true); - WorldUtil.breakBlockAtSide(sideToManipulate, this.worldObj, this.pos); + this.worldObj.setBlockToAir(coordsBlock); } } } - else if(this.isPlacer && PosUtil.getBlock(coordsBlock, this.worldObj).isReplaceable(this.worldObj, coordsBlock)){ + else if(this.isPlacer && blockToBreak.isReplaceable(this.worldObj, coordsBlock)){ if(this.tank.getFluidAmount() >= Util.BUCKET){ - Block block = this.tank.getFluid().getFluid().getBlock(); - if(block != null){ + Block fluid = this.tank.getFluid().getFluid().getBlock(); + if(fluid != null){ BlockPos offsetPos = this.pos.offset(sideToManipulate); - Block blockPresent = PosUtil.getBlock(offsetPos, this.worldObj); - boolean placeable = !(blockPresent instanceof BlockLiquid) && !(blockPresent instanceof IFluidBlock) && blockPresent.isReplaceable(this.worldObj, offsetPos); + boolean placeable = !(blockToBreak instanceof BlockLiquid) && !(blockToBreak instanceof IFluidBlock) && blockToBreak.isReplaceable(this.worldObj, offsetPos); if(placeable){ - PosUtil.setBlock(offsetPos, this.worldObj, block, 0, 3); + this.worldObj.setBlockState(offsetPos, fluid.getDefaultState(), 3); this.tank.drainInternal(Util.BUCKET, true); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFurnaceDouble.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFurnaceDouble.java index be082c394..dbac070c3 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFurnaceDouble.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFurnaceDouble.java @@ -12,7 +12,8 @@ package de.ellpeck.actuallyadditions.mod.tile; import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyReceiver; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; +import net.minecraft.block.Block; +import net.minecraft.block.state.IBlockState; import net.minecraft.item.ItemStack; import net.minecraft.item.crafting.FurnaceRecipes; import net.minecraft.nbt.NBTTagCompound; @@ -98,14 +99,16 @@ public class TileEntityFurnaceDouble extends TileEntityInventoryBase implements if(flag != (this.firstSmeltTime > 0 || this.secondSmeltTime > 0)){ this.markDirty(); - int meta = PosUtil.getMetadata(this.pos, this.worldObj); + IBlockState state = this.worldObj.getBlockState(this.pos); + Block block = state.getBlock(); + int meta = block.getMetaFromState(state); if(meta > 3){ if(!this.canSmeltOn(SLOT_INPUT_1, SLOT_OUTPUT_1) && !this.canSmeltOn(SLOT_INPUT_2, SLOT_OUTPUT_2)){ - PosUtil.setMetadata(this.pos, this.worldObj, meta-4, 2); + this.worldObj.setBlockState(this.pos, block.getStateFromMeta(meta-4), 2); } } else{ - PosUtil.setMetadata(this.pos, this.worldObj, meta+4, 2); + this.worldObj.setBlockState(this.pos, block.getStateFromMeta(meta+4), 2); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFurnaceSolar.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFurnaceSolar.java index 0ee78698c..f5825dfed 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFurnaceSolar.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityFurnaceSolar.java @@ -12,7 +12,7 @@ package de.ellpeck.actuallyadditions.mod.tile; import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyProvider; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; +import net.minecraft.block.state.IBlockState; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; import net.minecraft.util.math.BlockPos; @@ -80,8 +80,9 @@ public class TileEntityFurnaceSolar extends TileEntityBase implements IEnergyPro public boolean hasBlockAbove(){ for(int y = 1; y <= this.worldObj.getHeight(); y++){ - BlockPos offset = PosUtil.offset(this.pos, 0, y, 0); - if(!PosUtil.getBlock(offset, this.worldObj).isAir(this.worldObj.getBlockState(offset), this.worldObj, offset)){ + BlockPos offset = this.pos.down(y); + IBlockState state = this.worldObj.getBlockState(offset); + if(!state.getBlock().isAir(state, this.worldObj, offset)){ return true; } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityGreenhouseGlass.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityGreenhouseGlass.java index f459950c7..67d5bdf0c 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityGreenhouseGlass.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityGreenhouseGlass.java @@ -10,12 +10,11 @@ package de.ellpeck.actuallyadditions.mod.tile; - -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import net.minecraft.block.Block; import net.minecraft.block.BlockGrass; import net.minecraft.block.IGrowable; +import net.minecraft.block.state.IBlockState; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.math.BlockPos; import net.minecraftforge.common.IPlantable; @@ -54,10 +53,13 @@ public class TileEntityGreenhouseGlass extends TileEntityBase{ if(this.timeUntilNextFert <= 0){ BlockPos blockToFert = this.blockToFertilize(); if(blockToFert != null){ - int metaBefore = PosUtil.getMetadata(blockToFert, this.worldObj); - PosUtil.getBlock(blockToFert, this.worldObj).updateTick(this.worldObj, blockToFert, this.worldObj.getBlockState(blockToFert), Util.RANDOM); + IBlockState state = this.worldObj.getBlockState(blockToFert); + Block block = state.getBlock(); + int metaBefore = block.getMetaFromState(state); + block.updateTick(this.worldObj, blockToFert, this.worldObj.getBlockState(blockToFert), Util.RANDOM); - if(PosUtil.getMetadata(blockToFert, this.worldObj) != metaBefore){ + IBlockState newState = this.worldObj.getBlockState(blockToFert); + if(newState.getBlock().getMetaFromState(newState) != metaBefore){ this.worldObj.playEvent(2005, blockToFert, 0); } } @@ -74,7 +76,7 @@ public class TileEntityGreenhouseGlass extends TileEntityBase{ public BlockPos blockToFertilize(){ for(int i = this.pos.getY()-1; i > 0; i--){ BlockPos offset = new BlockPos(this.pos.getX(), i, this.pos.getZ()); - Block block = PosUtil.getBlock(this.pos, this.worldObj); + Block block = this.worldObj.getBlockState(this.pos).getBlock(); if(block != null && !(this.worldObj.isAirBlock(offset))){ if((block instanceof IGrowable || block instanceof IPlantable) && !(block instanceof BlockGrass)){ return offset; diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityGrinder.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityGrinder.java index 0c7ebacef..6522ceb99 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityGrinder.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityGrinder.java @@ -16,8 +16,9 @@ import cofh.api.energy.IEnergyReceiver; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.misc.SoundHandler; import de.ellpeck.actuallyadditions.mod.recipe.CrusherRecipeRegistry; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; +import net.minecraft.block.Block; +import net.minecraft.block.state.IBlockState; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; @@ -145,14 +146,16 @@ public class TileEntityGrinder extends TileEntityInventoryBase implements IEnerg if(flag != (this.firstCrushTime > 0 || this.secondCrushTime > 0)){ this.markDirty(); - int meta = PosUtil.getMetadata(this.pos, this.worldObj); + IBlockState state = this.worldObj.getBlockState(this.pos); + Block block = state.getBlock(); + int meta = block.getMetaFromState(state); if(meta == 1){ if(!this.canCrushOn(SLOT_INPUT_1, SLOT_OUTPUT_1_1, SLOT_OUTPUT_1_2) && (!this.isDouble || !this.canCrushOn(SLOT_INPUT_2, SLOT_OUTPUT_2_1, SLOT_OUTPUT_2_2))){ - PosUtil.setMetadata(this.pos, this.worldObj, 0, 2); + this.worldObj.setBlockState(this.pos, block.getStateFromMeta(0), 2); } } else{ - PosUtil.setMetadata(this.pos, this.worldObj, 1, 2); + this.worldObj.setBlockState(this.pos, block.getStateFromMeta(1), 2); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityHeatCollector.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityHeatCollector.java index 1b38efafa..4a3711cee 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityHeatCollector.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityHeatCollector.java @@ -12,11 +12,11 @@ package de.ellpeck.actuallyadditions.mod.tile; import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyProvider; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; import net.minecraft.block.material.Material; +import net.minecraft.block.state.IBlockState; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; import net.minecraft.util.math.BlockPos; @@ -55,9 +55,10 @@ public class TileEntityHeatCollector extends TileEntityBase implements IEnergyPr ArrayList blocksAround = new ArrayList(); if(ENERGY_PRODUCE <= this.storage.getMaxEnergyStored()-this.storage.getEnergyStored()){ for(int i = 1; i <= 5; i++){ - BlockPos coords = WorldUtil.getCoordsFromSide(WorldUtil.getDirectionBySidesInOrder(i), this.pos, 0); - Block block = PosUtil.getBlock(coords, this.worldObj); - if(block != null && block.getMaterial(this.worldObj.getBlockState(coords)) == Material.LAVA && PosUtil.getMetadata(coords, this.worldObj) == 0){ + BlockPos coords = this.pos.offset(WorldUtil.getDirectionBySidesInOrder(i)); + IBlockState state = this.worldObj.getBlockState(coords); + Block block = state.getBlock(); + if(block != null && block.getMaterial(this.worldObj.getBlockState(coords)) == Material.LAVA && block.getMetaFromState(state) == 0){ blocksAround.add(i); } } @@ -68,7 +69,7 @@ public class TileEntityHeatCollector extends TileEntityBase implements IEnergyPr if(Util.RANDOM.nextInt(10000) == 0){ int randomSide = blocksAround.get(Util.RANDOM.nextInt(blocksAround.size())); - WorldUtil.breakBlockAtSide(WorldUtil.getDirectionBySidesInOrder(randomSide), this.worldObj, this.pos); + this.worldObj.setBlockToAir(this.pos.offset(WorldUtil.getDirectionBySidesInOrder(randomSide))); } } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityInputter.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityInputter.java index c9a6ca733..9b8e2cdd9 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityInputter.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityInputter.java @@ -281,7 +281,7 @@ public class TileEntityInputter extends TileEntityInventoryBase implements IButt */ public void initVars(){ if(this.sideToPull != -1){ - this.placeToPull = WorldUtil.getTileEntityFromSide(WorldUtil.getDirectionBySidesInOrder(this.sideToPull), this.worldObj, this.pos); + this.placeToPull = this.worldObj.getTileEntity(this.pos.offset(WorldUtil.getDirectionBySidesInOrder(this.sideToPull))); if(this.placeToPull instanceof IInventory){ if(this.slotToPullEnd <= 0){ @@ -291,7 +291,7 @@ public class TileEntityInputter extends TileEntityInventoryBase implements IButt } if(this.sideToPut != -1){ - this.placeToPut = WorldUtil.getTileEntityFromSide(WorldUtil.getDirectionBySidesInOrder(this.sideToPut), this.worldObj, this.pos); + this.placeToPut = this.worldObj.getTileEntity(this.pos.offset(WorldUtil.getDirectionBySidesInOrder(this.sideToPut))); if(this.placeToPut instanceof IInventory){ if(this.slotToPutEnd <= 0){ diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityItemViewer.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityItemViewer.java index 006b76f21..a3e1cad34 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityItemViewer.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityItemViewer.java @@ -79,7 +79,7 @@ public class TileEntityItemViewer extends TileEntityInventoryBase{ if(this.worldObj != null){ //Why is that even possible..? for(int i = 0; i <= 5; i++){ EnumFacing side = WorldUtil.getDirectionBySidesInOrder(i); - BlockPos pos = WorldUtil.getCoordsFromSide(side, this.getPos(), 0); + BlockPos pos = this.getPos().offset(side); TileEntity tile = this.worldObj.getTileEntity(pos); if(tile instanceof TileEntityLaserRelayItem){ diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelay.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelay.java index 680b3c5e5..8a7deb848 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelay.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelay.java @@ -17,7 +17,6 @@ import de.ellpeck.actuallyadditions.mod.items.ItemLaserWrench.WrenchMode; import de.ellpeck.actuallyadditions.mod.misc.LaserRelayConnectionHandler; import de.ellpeck.actuallyadditions.mod.misc.LaserRelayConnectionHandler.ConnectionPair; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import io.netty.util.internal.ConcurrentSet; import net.minecraft.client.Minecraft; @@ -108,7 +107,7 @@ public abstract class TileEntityLaserRelay extends TileEntityBase{ LaserRelayConnectionHandler.Network network = LaserRelayConnectionHandler.getNetworkFor(this.pos, this.worldObj); if(network != null){ for(ConnectionPair aPair : network.connections){ - if(aPair.contains(this.pos) && PosUtil.areSamePos(this.pos, aPair.positions[0])){ + if(aPair.contains(this.pos) && this.pos.equals(aPair.positions[0])){ AssetUtil.renderParticlesFromAToB(aPair.positions[0].getX(), aPair.positions[0].getY(), aPair.positions[0].getZ(), aPair.positions[1].getX(), aPair.positions[1].getY(), aPair.positions[1].getZ(), ConfigBoolValues.LESS_PARTICLES.isEnabled() ? 1 : Util.RANDOM.nextInt(3)+1, 0.8F, this.isItem ? COLOR_ITEM : COLOR, 1F); } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelayEnergy.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelayEnergy.java index 793d9e183..76faac6cf 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelayEnergy.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelayEnergy.java @@ -67,7 +67,7 @@ public class TileEntityLaserRelayEnergy extends TileEntityLaserRelay implements this.receiversAround.clear(); for(EnumFacing side : EnumFacing.values()){ - BlockPos pos = WorldUtil.getCoordsFromSide(side, this.getPos(), 0); + BlockPos pos = this.getPos().offset(side); TileEntity tile = this.worldObj.getTileEntity(pos); if(tile instanceof IEnergyReceiver && !(tile instanceof TileEntityLaserRelay)){ this.receiversAround.put(side, (IEnergyReceiver)tile); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelayItem.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelayItem.java index f6e7284bf..fff75745b 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelayItem.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLaserRelayItem.java @@ -46,7 +46,7 @@ public class TileEntityLaserRelayItem extends TileEntityLaserRelay{ for(int i = 0; i <= 5; i++){ EnumFacing side = WorldUtil.getDirectionBySidesInOrder(i); - BlockPos pos = WorldUtil.getCoordsFromSide(side, this.getPos(), 0); + BlockPos pos = this.getPos().offset(side); TileEntity tile = this.worldObj.getTileEntity(pos); if(tile != null && !(tile instanceof TileEntityItemViewer)){ IItemHandler handler = tile.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, side.getOpposite()); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLavaFactoryController.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLavaFactoryController.java index 0914c578d..5a48e48bf 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLavaFactoryController.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLavaFactoryController.java @@ -14,8 +14,9 @@ import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyReceiver; import de.ellpeck.actuallyadditions.mod.blocks.InitBlocks; import de.ellpeck.actuallyadditions.mod.blocks.metalists.TheMiscBlocks; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; +import net.minecraft.block.Block; +import net.minecraft.block.state.IBlockState; import net.minecraft.init.Blocks; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; @@ -63,7 +64,7 @@ public class TileEntityLavaFactoryController extends TileEntityBase implements I this.currentWorkTime++; if(this.currentWorkTime >= 200){ this.currentWorkTime = 0; - PosUtil.setBlock(PosUtil.offset(this.pos, 0, 1, 0), this.worldObj, Blocks.LAVA, 0, 2); + this.worldObj.setBlockState(this.pos.up(), Blocks.LAVA.getDefaultState(), 2); this.storage.extractEnergy(ENERGY_USE, false); } } @@ -80,18 +81,20 @@ public class TileEntityLavaFactoryController extends TileEntityBase implements I public int isMultiblock(){ BlockPos thisPos = this.pos; BlockPos[] positions = new BlockPos[]{ - PosUtil.offset(thisPos, 1, 1, 0), - PosUtil.offset(thisPos, -1, 1, 0), - PosUtil.offset(thisPos, 0, 1, 1), - PosUtil.offset(thisPos, 0, 1, -1) + thisPos.add(1, 1, 0), + thisPos.add(-1, 1, 0), + thisPos.add(0, 1, 1), + thisPos.add(0, 1, -1) }; if(WorldUtil.hasBlocksInPlacesGiven(positions, InitBlocks.blockMisc, TheMiscBlocks.LAVA_FACTORY_CASE.ordinal(), this.worldObj)){ - BlockPos pos = PosUtil.offset(thisPos, 0, 1, 0); - if(PosUtil.getBlock(pos, this.worldObj) == Blocks.LAVA || PosUtil.getBlock(pos, this.worldObj) == Blocks.FLOWING_LAVA){ + BlockPos pos = thisPos.up(); + IBlockState state = this.worldObj.getBlockState(pos); + Block block = state.getBlock(); + if(block == Blocks.LAVA || block == Blocks.FLOWING_LAVA){ return HAS_LAVA; } - if(PosUtil.getBlock(pos, this.worldObj) == null || this.worldObj.isAirBlock(pos)){ + if(block == null || this.worldObj.isAirBlock(pos)){ return HAS_AIR; } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLeafGenerator.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLeafGenerator.java index 5daa65ced..21ec7ba3a 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLeafGenerator.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityLeafGenerator.java @@ -14,7 +14,6 @@ import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyProvider; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import net.minecraft.block.Block; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumFacing; @@ -65,8 +64,8 @@ public class TileEntityLeafGenerator extends TileEntityBase implements IEnergyPr for(int reachX = -RANGE; reachX < RANGE+1; reachX++){ for(int reachZ = -RANGE; reachZ < RANGE+1; reachZ++){ for(int reachY = -RANGE; reachY < RANGE+1; reachY++){ - BlockPos pos = PosUtil.offset(this.pos, reachX, reachY, reachZ); - Block block = PosUtil.getBlock(pos, this.worldObj); + BlockPos pos = this.pos.add(reachX, reachY, reachZ); + Block block = this.worldObj.getBlockState(pos).getBlock(); if(block != null && block.isLeaves(this.worldObj.getBlockState(pos), this.worldObj, pos)){ breakPositions.add(pos); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityMiner.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityMiner.java index 10372450c..a2bd10001 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityMiner.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityMiner.java @@ -17,7 +17,6 @@ import de.ellpeck.actuallyadditions.mod.config.values.ConfigStringListValues; import de.ellpeck.actuallyadditions.mod.items.ItemDrill; import de.ellpeck.actuallyadditions.mod.network.gui.IButtonReactor; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; @@ -105,7 +104,7 @@ public class TileEntityMiner extends TileEntityInventoryBase implements IEnergyR IBlockState state = this.worldObj.getBlockState(pos); Block block = state.getBlock(); - int meta = PosUtil.getMetadata(pos, this.worldObj); + int meta = block.getMetaFromState(state); if(!block.isAir(this.worldObj.getBlockState(pos), this.worldObj, pos)){ if(block.getHarvestLevel(this.worldObj.getBlockState(pos)) <= ItemDrill.HARVEST_LEVEL && state.getBlockHardness(this.worldObj, pos) >= 0F && !(block instanceof BlockLiquid) && !(block instanceof IFluidBlock) && this.isMinable(block, meta)){ List drops = block.getDrops(this.worldObj, pos, this.worldObj.getBlockState(pos), 0); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityPhantomPlacer.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityPhantomPlacer.java index d0f7a930d..88035ce51 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityPhantomPlacer.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityPhantomPlacer.java @@ -14,7 +14,6 @@ import de.ellpeck.actuallyadditions.api.tile.IPhantomTile; import de.ellpeck.actuallyadditions.mod.config.values.ConfigBoolValues; import de.ellpeck.actuallyadditions.mod.inventory.GuiHandler; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import de.ellpeck.actuallyadditions.mod.util.WorldUtil; import net.minecraft.block.Block; @@ -126,7 +125,7 @@ public class TileEntityPhantomPlacer extends TileEntityInventoryBase implements private void doWork(){ if(this.isBreaker){ - Block blockToBreak = PosUtil.getBlock(this.boundPosition, this.worldObj); + Block blockToBreak = this.worldObj.getBlockState(this.boundPosition).getBlock(); if(blockToBreak != null && blockToBreak.getBlockHardness(this.worldObj.getBlockState(this.boundPosition), this.worldObj, this.boundPosition) > -1.0F){ ArrayList drops = new ArrayList(); drops.addAll(blockToBreak.getDrops(this.worldObj, this.boundPosition, this.worldObj.getBlockState(this.boundPosition), 0)); @@ -171,7 +170,7 @@ public class TileEntityPhantomPlacer extends TileEntityInventoryBase implements @Override public boolean isBoundThingInRange(){ - return this.hasBoundPosition() && PosUtil.toVec(this.boundPosition).distanceTo(new Vec3d(this.getPos().getX(), this.getPos().getY(), this.getPos().getZ())) <= this.range; + return this.hasBoundPosition() && this.boundPosition.distanceSq(this.pos) <= this.range*this.range; } @Override @@ -181,7 +180,7 @@ public class TileEntityPhantomPlacer extends TileEntityInventoryBase implements @Override public void setBoundPosition(BlockPos pos){ - this.boundPosition = pos == null ? null : PosUtil.copyPos(pos); + this.boundPosition = pos; } @Override diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityPhantomface.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityPhantomface.java index 55d0991fd..ad788ee9a 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityPhantomface.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityPhantomface.java @@ -14,7 +14,6 @@ import de.ellpeck.actuallyadditions.api.tile.IPhantomTile; import de.ellpeck.actuallyadditions.mod.blocks.BlockPhantom; import de.ellpeck.actuallyadditions.mod.blocks.InitBlocks; import de.ellpeck.actuallyadditions.mod.util.AssetUtil; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; import de.ellpeck.actuallyadditions.mod.util.Util; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; @@ -45,7 +44,7 @@ public class TileEntityPhantomface extends TileEntityInventoryBase implements IP public static int upgradeRange(int defaultRange, World world, BlockPos pos){ int newRange = defaultRange; for(int i = 0; i < 3; i++){ - Block block = PosUtil.getBlock(PosUtil.offset(pos, 0, 1+i, 0), world); + Block block = world.getBlockState(pos.up(1+i)).getBlock(); if(block == InitBlocks.blockPhantomBooster){ newRange = newRange*2; } @@ -106,15 +105,15 @@ public class TileEntityPhantomface extends TileEntityInventoryBase implements IP } protected boolean doesNeedUpdateSend(){ - return this.boundPosition != this.boundPosBefore || (this.boundPosition != null && PosUtil.getBlock(this.boundPosition, this.worldObj) != this.boundBlockBefore) || this.rangeBefore != this.range; + return this.boundPosition != this.boundPosBefore || (this.boundPosition != null && this.worldObj.getBlockState(this.boundPosition).getBlock() != this.boundBlockBefore) || this.rangeBefore != this.range; } protected void onUpdateSent(){ this.rangeBefore = this.range; this.boundPosBefore = this.boundPosition; - this.boundBlockBefore = this.boundPosition == null ? null : PosUtil.getBlock(this.boundPosition, this.worldObj); + this.boundBlockBefore = this.boundPosition == null ? null : this.worldObj.getBlockState(this.boundPosition).getBlock(); - this.worldObj.notifyNeighborsOfStateChange(this.pos, PosUtil.getBlock(this.pos, this.worldObj)); + this.worldObj.notifyNeighborsOfStateChange(this.pos, this.worldObj.getBlockState(this.boundPosition).getBlock()); this.sendUpdate(); this.markDirty(); @@ -158,7 +157,7 @@ public class TileEntityPhantomface extends TileEntityInventoryBase implements IP @Override public boolean isBoundThingInRange(){ - return this.hasBoundPosition() && PosUtil.toVec(this.boundPosition).distanceTo(PosUtil.toVec(this.getPos())) <= this.range; + return this.hasBoundPosition() && this.boundPosition.distanceSq(this.getPos()) <= this.range*this.range; } @Override @@ -168,7 +167,7 @@ public class TileEntityPhantomface extends TileEntityInventoryBase implements IP @Override public void setBoundPosition(BlockPos pos){ - this.boundPosition = pos == null ? null : PosUtil.copyPos(pos); + this.boundPosition = pos; } @Override diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntitySmileyCloud.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntitySmileyCloud.java index 155508cf0..88065560c 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntitySmileyCloud.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntitySmileyCloud.java @@ -11,7 +11,8 @@ package de.ellpeck.actuallyadditions.mod.tile; import de.ellpeck.actuallyadditions.mod.network.gui.IStringReactor; -import de.ellpeck.actuallyadditions.mod.util.PosUtil; +import net.minecraft.block.Block; +import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; @@ -58,15 +59,17 @@ public class TileEntitySmileyCloud extends TileEntityBase implements IStringReac } public void setStatus(boolean pinkAndFluffy){ - int meta = PosUtil.getMetadata(this.pos, this.worldObj); + IBlockState state = this.worldObj.getBlockState(this.pos); + Block block = state.getBlock(); + int meta = block.getMetaFromState(state); if(pinkAndFluffy){ if(meta <= 3){ - PosUtil.setMetadata(this.pos, this.worldObj, meta+4, 2); + this.worldObj.setBlockState(this.pos, block.getStateFromMeta(meta+4), 2); } } else{ if(meta >= 4){ - PosUtil.setMetadata(this.pos, this.worldObj, meta-4, 2); + this.worldObj.setBlockState(this.pos, block.getStateFromMeta(meta-4), 2); } } } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/util/AssetUtil.java b/src/main/java/de/ellpeck/actuallyadditions/mod/util/AssetUtil.java index 9c4f8b099..54fcb1c52 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/util/AssetUtil.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/util/AssetUtil.java @@ -35,20 +35,25 @@ import org.lwjgl.opengl.GL11; public final class AssetUtil{ + @SideOnly(Side.CLIENT) public static final ResourceLocation GUI_INVENTORY_LOCATION = getGuiLocation("guiInventory"); + @SideOnly(Side.CLIENT) public static ResourceLocation getGuiLocation(String file){ return new ResourceLocation(ModUtil.MOD_ID, "textures/gui/"+file+".png"); } + @SideOnly(Side.CLIENT) public static ResourceLocation getBookletGuiLocation(String file){ return new ResourceLocation(ModUtil.MOD_ID, "textures/gui/booklet/"+file+".png"); } + @SideOnly(Side.CLIENT) public static void displayNameString(FontRenderer font, int xSize, int yPositionOfMachineText, String text){ font.drawString(text, xSize/2-font.getStringWidth(text)/2, yPositionOfMachineText, StringUtil.DECIMAL_COLOR_WHITE); } + @SideOnly(Side.CLIENT) public static void displayNameString(FontRenderer font, int xSize, int yPositionOfMachineText, TileEntity tile){ displayNameString(font, xSize, yPositionOfMachineText, tile.getDisplayName().getFormattedText()); } @@ -94,6 +99,7 @@ public final class AssetUtil{ } //Copied from Gui.class and changed + @SideOnly(Side.CLIENT) public static void drawHorizontalGradientRect(int left, int top, int right, int bottom, int startColor, int endColor, float zLevel){ float f = (float)(startColor >> 24 & 255)/255.0F; float f1 = (float)(startColor >> 16 & 255)/255.0F; @@ -122,6 +128,7 @@ public final class AssetUtil{ GlStateManager.enableTexture2D(); } + @SideOnly(Side.CLIENT) public static void renderNameTag(String tag, double x, double y, double z){ FontRenderer fontrenderer = Minecraft.getMinecraft().fontRendererObj; float f = 1.6F; diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/util/PosUtil.java b/src/main/java/de/ellpeck/actuallyadditions/mod/util/PosUtil.java deleted file mode 100644 index afe2996af..000000000 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/util/PosUtil.java +++ /dev/null @@ -1,80 +0,0 @@ -/* - * This file ("PosUtil.java") is part of the Actually Additions mod for Minecraft. - * It is created and owned by Ellpeck and distributed - * under the Actually Additions License to be found at - * http://ellpeck.de/actaddlicense - * View the source code at https://github.com/Ellpeck/ActuallyAdditions - * - * © 2015-2016 Ellpeck - */ - -package de.ellpeck.actuallyadditions.mod.util; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.state.IBlockState; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public final class PosUtil{ - - public static Material getMaterial(BlockPos pos, IBlockAccess world){ - return getBlock(pos, world).getMaterial(world.getBlockState(pos)); - } - - public static Block getBlock(BlockPos pos, IBlockAccess world){ - if(pos != null){ - IBlockState state = world.getBlockState(pos); - if(state != null){ - return state.getBlock(); - } - } - return null; - } - - public static int getMetadata(BlockPos pos, IBlockAccess world){ - Block block = getBlock(pos, world); - return block != null ? block.getMetaFromState(world.getBlockState(pos)) : 0; - } - - public static int getMetadata(IBlockState state){ - Block block = state.getBlock(); - return block != null ? block.getMetaFromState(state) : 0; - } - - public static BlockPos offset(BlockPos pos, int x, int y, int z){ - return new BlockPos(pos.getX()+x, pos.getY()+y, pos.getZ()+z); - } - - public static boolean setBlock(BlockPos pos, World world, Block block, int meta, int flag){ - return world.setBlockState(pos, block.getStateFromMeta(meta), flag); - } - - public static Vec3d toVec(BlockPos pos){ - return new Vec3d(pos.getX(), pos.getY(), pos.getZ()); - } - - public static BlockPos copyPos(BlockPos pos){ - return new BlockPos(pos.getX(), pos.getY(), pos.getZ()); - } - - public static ItemBlock getItemBlock(BlockPos pos, IBlockAccess world){ - Item item = Item.getItemFromBlock(getBlock(pos, world)); - if(item instanceof ItemBlock){ - return (ItemBlock)item; - } - return null; - } - - public static void setMetadata(BlockPos pos, World world, int meta, int flag){ - world.setBlockState(pos, getBlock(pos, world).getStateFromMeta(meta), flag); - } - - public static boolean areSamePos(BlockPos first, BlockPos second){ - return first.getX() == second.getX() && first.getY() == second.getY() && first.getZ() == second.getZ(); - } -} diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/util/StringUtil.java b/src/main/java/de/ellpeck/actuallyadditions/mod/util/StringUtil.java index 827ddb41f..edd6df90d 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/util/StringUtil.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/util/StringUtil.java @@ -13,6 +13,8 @@ package de.ellpeck.actuallyadditions.mod.util; import net.minecraft.client.gui.FontRenderer; import net.minecraft.util.text.translation.I18n; import net.minecraftforge.fluids.FluidTank; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; import java.util.List; @@ -37,6 +39,7 @@ public final class StringUtil{ return I18n.translateToLocalFormatted(text, replace); } + @SideOnly(Side.CLIENT) public static void drawSplitString(FontRenderer renderer, String strg, int x, int y, int width, int color, boolean shadow){ List list = renderer.listFormattedStringToWidth(strg, width); for(int i = 0; i < list.size(); i++){ @@ -45,6 +48,7 @@ public final class StringUtil{ } } + @SideOnly(Side.CLIENT) public static String getFluidInfo(FluidTank tank){ return tank.getFluid() == null || tank.getFluid().getFluid() == null ? "0/"+tank.getCapacity()+" mB" : tank.getFluidAmount()+"/"+tank.getCapacity()+" mB "+tank.getFluid().getLocalizedName(); } diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/util/Util.java b/src/main/java/de/ellpeck/actuallyadditions/mod/util/Util.java index 0a4d758f5..39e04a976 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/util/Util.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/util/Util.java @@ -53,14 +53,4 @@ public final class Util{ } return -1; } - - public static int arrayContains(int[] array, int num){ - for(int i = 0; i < array.length; i++){ - if(num == array[i]){ - return i; - } - } - return -1; - } - } \ No newline at end of file diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/util/WorldUtil.java b/src/main/java/de/ellpeck/actuallyadditions/mod/util/WorldUtil.java index 50f1494df..ac4c13168 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/util/WorldUtil.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/util/WorldUtil.java @@ -55,21 +55,9 @@ import java.util.List; public final class WorldUtil{ - public static void breakBlockAtSide(EnumFacing side, World world, BlockPos pos){ - breakBlockAtSide(side, world, pos, 0); - } - - public static void breakBlockAtSide(EnumFacing side, World world, BlockPos pos, int offset){ - world.setBlockToAir(getCoordsFromSide(side, pos, offset)); - } - - public static BlockPos getCoordsFromSide(EnumFacing side, BlockPos pos, int offset){ - return new BlockPos(pos.getX()+side.getFrontOffsetX()*(offset+1), pos.getY()+side.getFrontOffsetY()*(offset+1), pos.getZ()+side.getFrontOffsetZ()*(offset+1)); - } - public static void doEnergyInteraction(TileEntity tile){ for(EnumFacing side : EnumFacing.values()){ - TileEntity otherTile = getTileEntityFromSide(side, tile.getWorld(), tile.getPos()); + TileEntity otherTile = tile.getWorld().getTileEntity(tile.getPos().offset(side)); if(otherTile != null){ IEnergyReceiver handlerTo = null; IEnergyProvider handlerFrom = null; @@ -103,7 +91,7 @@ public final class WorldUtil{ public static void doFluidInteraction(TileEntity tile){ for(EnumFacing side : EnumFacing.values()){ - TileEntity otherTile = getTileEntityFromSide(side, tile.getWorld(), tile.getPos()); + TileEntity otherTile = tile.getWorld().getTileEntity(tile.getPos().offset(side)); if(otherTile != null){ for(int i = 0; i < 2; i++){ //Push and pull with old fluid system @@ -137,11 +125,6 @@ public final class WorldUtil{ } } - public static TileEntity getTileEntityFromSide(EnumFacing side, World world, BlockPos pos){ - BlockPos c = getCoordsFromSide(side, pos, 0); - return world.getTileEntity(c); - } - /** * Checks if a given Block with a given Meta is present in given Positions * @@ -153,7 +136,8 @@ public final class WorldUtil{ */ public static boolean hasBlocksInPlacesGiven(BlockPos[] positions, Block block, int meta, World world){ for(BlockPos pos : positions){ - if(!(PosUtil.getBlock(pos, world) == block && PosUtil.getMetadata(pos, world) == meta)){ + IBlockState state = world.getBlockState(pos); + if(!(state.getBlock() == block && block.getMetaFromState(state) == meta)){ return false; } } @@ -163,7 +147,8 @@ public final class WorldUtil{ public static ItemStack useItemAtSide(EnumFacing side, World world, BlockPos pos, ItemStack stack){ if(world instanceof WorldServer && stack != null && stack.getItem() != null){ BlockPos offsetPos = pos.offset(side); - Block block = PosUtil.getBlock(offsetPos, world); + IBlockState state = world.getBlockState(offsetPos); + Block block = state.getBlock(); boolean replaceable = block.isReplaceable(world, offsetPos); //Fluids @@ -177,7 +162,7 @@ public final class WorldUtil{ } if(fluid != null && fluid.amount >= Util.BUCKET && fluid.getFluid().getBlock() != null && fluid.getFluid().getBlock().canPlaceBlockAt(world, offsetPos)){ - if(PosUtil.setBlock(offsetPos, world, fluid.getFluid().getBlock(), 0, 2)){ + if(world.setBlockState(offsetPos, fluid.getFluid().getBlock().getDefaultState(), 2)){ return stack.getItem().getContainerItem(stack); } } @@ -185,7 +170,7 @@ public final class WorldUtil{ //Redstone if(replaceable && stack.getItem() == Items.REDSTONE){ - PosUtil.setBlock(offsetPos, world, Blocks.REDSTONE_WIRE, 0, 2); + world.setBlockState(offsetPos, Blocks.REDSTONE_WIRE.getDefaultState(), 2); stack.stackSize--; return stack; } @@ -216,7 +201,7 @@ public final class WorldUtil{ } public static void dropItemAtSide(EnumFacing side, World world, BlockPos pos, ItemStack stack){ - BlockPos coords = getCoordsFromSide(side, pos, 0); + BlockPos coords = pos.offset(side); EntityItem item = new EntityItem(world, coords.getX()+0.5, coords.getY()+0.5, coords.getZ()+0.5, stack); item.motionX = 0; item.motionY = 0; @@ -247,10 +232,10 @@ public final class WorldUtil{ public static ArrayList getMaterialsAround(World world, BlockPos pos){ ArrayList blocks = new ArrayList(); - blocks.add(PosUtil.getMaterial(pos.offset(EnumFacing.NORTH), world)); - blocks.add(PosUtil.getMaterial(pos.offset(EnumFacing.EAST), world)); - blocks.add(PosUtil.getMaterial(pos.offset(EnumFacing.SOUTH), world)); - blocks.add(PosUtil.getMaterial(pos.offset(EnumFacing.WEST), world)); + blocks.add(world.getBlockState(pos.offset(EnumFacing.NORTH)).getMaterial()); + blocks.add(world.getBlockState(pos.offset(EnumFacing.EAST)).getMaterial()); + blocks.add(world.getBlockState(pos.offset(EnumFacing.SOUTH)).getMaterial()); + blocks.add(world.getBlockState(pos.offset(EnumFacing.WEST)).getMaterial()); return blocks; } @@ -262,6 +247,7 @@ public final class WorldUtil{ return addToInventory(inventory, 0, inventory.getSizeInventory(), stacks, side, actuallyDo, shouldAlwaysWork); } + //TODO This is disgusting and has to be updated to the capability system /** * Add an ArrayList of ItemStacks to an Array of slots *