Search in sources :

Example 1 with ITilePortalNode

use of WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.ITilePortalNode in project BloodMagic by WayofTime.

the class BlockSet method buildAtIndex.

public void buildAtIndex(TEDemonPortal teDemonPortal, World world, int xCoord, int yCoord, int zCoord, ForgeDirection dir, int index, boolean populateInventories, int tier) {
    Block block = this.getBlock();
    if (index >= positions.size() || block == null) {
        return;
    }
    Int3 position = positions.get(index);
    int xOff = position.xCoord;
    int yOff = position.yCoord;
    int zOff = position.zCoord;
    int meta = this.getMetaForDirection(dir);
    switch(dir) {
        case NORTH:
            break;
        case SOUTH:
            xOff *= -1;
            zOff *= -1;
            break;
        case WEST:
            int temp = zOff;
            zOff = xOff * -1;
            xOff = temp;
            break;
        case EAST:
            int temp2 = zOff * -1;
            zOff = xOff;
            xOff = temp2;
            break;
        default:
    }
    world.setBlock(xCoord + xOff, yCoord + yOff, zCoord + zOff, block, meta, 3);
    if (populateInventories) {
        this.populateIfIInventory(world, xCoord + xOff, yCoord + yOff, zCoord + zOff, tier);
    }
    if (block instanceof IBlockPortalNode) {
        TileEntity tile = world.getTileEntity(xCoord + xOff, yCoord + yOff, zCoord + zOff);
        if (tile instanceof ITilePortalNode) {
            ((ITilePortalNode) tile).setPortalLocation(teDemonPortal);
        }
    }
}
Also used : TileEntity(net.minecraft.tileentity.TileEntity) ITilePortalNode(WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.ITilePortalNode) Int3(WayofTime.alchemicalWizardry.api.Int3) Block(net.minecraft.block.Block) IBlockPortalNode(WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.IBlockPortalNode)

Aggregations

Int3 (WayofTime.alchemicalWizardry.api.Int3)1 IBlockPortalNode (WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.IBlockPortalNode)1 ITilePortalNode (WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.ITilePortalNode)1 Block (net.minecraft.block.Block)1 TileEntity (net.minecraft.tileentity.TileEntity)1