Exemplo n.º 1
0
 protected void UpdateBlocks(Level world)
 {
     world.GetBlock(Coordinates.BlockUp()).BlockUpdate(world, Coordinates);
     world.GetBlock(Coordinates.BlockDown()).BlockUpdate(world, Coordinates);
     world.GetBlock(Coordinates.BlockWest()).BlockUpdate(world, Coordinates);
     world.GetBlock(Coordinates.BlockEast()).BlockUpdate(world, Coordinates);
     world.GetBlock(Coordinates.BlockSouth()).BlockUpdate(world, Coordinates);
     world.GetBlock(Coordinates.BlockNorth()).BlockUpdate(world, Coordinates);
 }
Exemplo n.º 2
0
        public override void BlockUpdate(Level level, BlockCoordinates blockCoordinates)
        {
            bool shouldKeep = true;

            shouldKeep &= IsValid(level.GetBlock(Coordinates.BlockUp()));
            shouldKeep &= IsValid(level.GetBlock(Coordinates.BlockDown()));

            if (Metadata < 2)
            {
                shouldKeep &= IsValid(level.GetBlock(Coordinates.BlockWest()));
                shouldKeep &= IsValid(level.GetBlock(Coordinates.BlockEast()));
            }
            else
            {
                shouldKeep &= IsValid(level.GetBlock(Coordinates.BlockSouth()));
                shouldKeep &= IsValid(level.GetBlock(Coordinates.BlockNorth()));
            }

            if (!shouldKeep)
            {
                Fill(level, Coordinates);
            }
        }