45 lines
1.3 KiB
Java
45 lines
1.3 KiB
Java
package resonantinduction.electrical.levitator;
|
|
|
|
import net.minecraft.entity.player.EntityPlayer;
|
|
import net.minecraft.inventory.IInventory;
|
|
import net.minecraft.item.ItemBlock;
|
|
import net.minecraft.item.ItemStack;
|
|
import net.minecraft.tileentity.TileEntity;
|
|
import net.minecraft.world.World;
|
|
import net.minecraftforge.common.ForgeDirection;
|
|
|
|
public class ItemBlockContractor extends ItemBlock
|
|
{
|
|
public ItemBlockContractor(int id)
|
|
{
|
|
super(id);
|
|
}
|
|
|
|
@Override
|
|
public boolean placeBlockAt(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ, int metadata)
|
|
{
|
|
boolean place = super.placeBlockAt(stack, player, world, x, y, z, side, hitX, hitY, hitZ, metadata);
|
|
|
|
if (place)
|
|
{
|
|
TileEMLevitator tileContractor = (TileEMLevitator) world.getBlockTileEntity(x, y, z);
|
|
tileContractor.setDirection(ForgeDirection.getOrientation(side));
|
|
|
|
if (!tileContractor.isLatched())
|
|
{
|
|
for (ForgeDirection side1 : ForgeDirection.VALID_DIRECTIONS)
|
|
{
|
|
TileEntity tileEntity = world.getBlockTileEntity(x + side1.offsetX, y + side1.offsetY, z + side1.offsetZ);
|
|
|
|
if (tileEntity instanceof IInventory)
|
|
{
|
|
tileContractor.setDirection(side1.getOpposite());
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
return place;
|
|
}
|
|
}
|