当前位置: 首页>>代码示例>>C++>>正文


C++ WorldMap::fillVolume方法代码示例

本文整理汇总了C++中WorldMap::fillVolume方法的典型用法代码示例。如果您正苦于以下问题:C++ WorldMap::fillVolume方法的具体用法?C++ WorldMap::fillVolume怎么用?C++ WorldMap::fillVolume使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在WorldMap的用法示例。


在下文中一共展示了WorldMap::fillVolume方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1:

void FeatureGenerator::create1by1Tower(v2di_t cornerIndex, int baseHeight, WorldMap &worldMap) {
  int worldX = cornerIndex.x * WORLD_CHUNK_SIDE;
  int worldZ = cornerIndex.y * WORLD_CHUNK_SIDE;

  //  height_info_t heightInfo = getHeightInfo (worldX, worldZ, WORLD_CHUNK_SIDE, WORLD_CHUNK_SIDE, worldMap);

  //  createPlain (cornerIndex, 1, 1, worldMap);

  // now build the tower
  v3di_t a, b;

  //heightInfo.avg++;
  int roofHeight = 25;

  // fill it
  a.x = worldX + 3;
  a.y = baseHeight;
  a.z = worldZ + 3;

  b.x = worldX + 12;
  b.y = baseHeight + roofHeight;
  b.z = worldZ + 12;

  worldMap.fillVolume(a, b, BLOCK_TYPE_OLD_BRICK);

  // hollow it out
  a.x = worldX + 4;
  a.y = baseHeight;
  a.z = worldZ + 4;

  b.x = worldX + 11;
  b.y = baseHeight + roofHeight;
  b.z = worldZ + 11;

  worldMap.fillVolume(a, b, BLOCK_TYPE_AIR);

  // make the door
  a.x = worldX + 3;
  a.z = worldZ + 7;
  a.y = baseHeight;

  b.x = worldX + 3;
  b.z = worldZ + 8;
  b.y = a.y;

  for (int i = 0; i < 3; i++) {
    worldMap.clearBlock(a);
    worldMap.clearBlock(b);
    a.y++;
    b.y++;
  }

  // draw a couple stairs
  //  v3di_t southwestInsideCorner = v3di_v (worldX + 6, heightInfo.avg, worldZ + 6);
  //  buildSpiralStaircase (southwestInsideCorner, 3, heightInfo.avg + 26,
  //    r_numi (0, FG_NUM_CORNERS), worldMap);

  v3di_t southwestInsideCorner = v3di_v(worldX + 5, baseHeight, worldZ + 5);
  FeatureUtil::buildSpiralStaircase(southwestInsideCorner, 5, baseHeight + 26,
    r_numi(0, FG_NUM_CORNERS), worldMap);

  //  v3di_t southwestInsideCorner = v3di_v (worldX + 3, heightInfo.avg, worldZ + 3);
  //  buildSpiralStaircase (southwestInsideCorner, 9, heightInfo.avg + 27, FG_CORNER_SW, worldMap);


  //  worldMap.swapOutToInactive ();

}
开发者ID:jrbeck,项目名称:longshot,代码行数:68,代码来源:FeatureGenerator.cpp


注:本文中的WorldMap::fillVolume方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。