コード例 #1
0
        public BlockInWorld <Block> GetBlock(IntVector position)
        {
            position = position - Position;
            position = position.DivideRoundDown(Constants.BlockSize);
            var block = InnerGrid.Get(position);

            return(block != null ? new BlockInWorld <Block>(block, this, Position + position * Constants.BlockSize) : null);
        }
コード例 #2
0
 public Block SetBlock(IntVector position, Block block)
 {
     position = position - Position;
     position = position.DivideRoundDown(Constants.BlockSize);
     if (block != null)
     {
         block.Position = CoordinateSystem.Normalize(Position + position * Constants.BlockSize);
     }
     return(InnerGrid.Set(position, block).RemovedItem);
 }