本文整理汇总了C++中TileMap::clear方法的典型用法代码示例。如果您正苦于以下问题:C++ TileMap::clear方法的具体用法?C++ TileMap::clear怎么用?C++ TileMap::clear使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TileMap
的用法示例。
在下文中一共展示了TileMap::clear方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
TileMap *RoomLoader::loadTileMap(const std::string& filename)
{
std::cout << "Loading tilemap " + filename + "...";
std::vector<std::string> data = tokenize(loadFile(filename), "\n", true);
int width = 0;
int height = 0;
int row;
int col;
for (row = 0; row < (int)data.size(); row++)
{
if (row == 0)
width = data[row].size();
height++;
}
height = (height - 1) / 2;
TileMap* tileMap = new TileMap(width, height);
tileMap->clear(0,0);
// Load solidities
for (row = 0; row < height; row++)
{
for (col = 0; col < width; col++)
{
char c = data.at(row).at(col);
if (c == '.')
{
tileMap->setFlags(col, row, 0);
}
else if (c == '#')
{
tileMap->setFlags(col, row, TileMap::FLAG_SOLID);
}
}
}
// Load tiles
for (row = height; row < height*2; row++)
{
for (col = 0; col < width; col++)
{
char c = data.at(row).at(col);
int tile = c - ((c >= 'a')? 'a' - 10 : '0');
tileMap->setTile(col, row - height, tile);
}
}
//std::cout << tileMap->toString() << std::endl;
std::cout << " Done!" << std::endl;
return tileMap;
}