私がしている 40x20 の文字ブロックをアニメーション化したいと思いますcout
。system("cls");
コンソールをクリアしてから、キャラクターの次のブロックをすぐに表示したいと思います。現在、次のブロックはタイプライター スタイルで作成されています。
私の質問に対する最も簡単な答えは、タイプライター スタイルではなく、20 行 x 40 文字の oss ストリーム カウントを一度に作成することです。
Main.cpp:
mazeCreator.cout();
Sleep(5000);
system("cls");
カウト()
void MazeCreator::cout() {
char wallChar = (char) 219;
char pavedChar = (char) 176;
char lightChar = ' ';
char startChar = 'S';
char finishChar = 'F';
char errorChar = '!';
char removedWallChar = 'R';
char landmarkLocationChar = 'L';
ostringstream oss;
for (int row = 0; row < rows; row++) {
oss << " ";
for (int col = 0; col < columns; col++) {
if (mazeArray[row][col] == wall)
oss << wallChar;
else if (mazeArray[row][col] == paved)
oss << pavedChar;
else if (mazeArray[row][col] == light)
oss << lightChar;
else if (mazeArray[row][col] == start)
oss << startChar;
else if (mazeArray[row][col] == finish)
oss << finishChar;
else if (mazeArray[row][col] == removedWall)
oss << removedWallChar;
else if (mazeArray[row][col] == landmarkLocation)
oss << landmarkLocationChar;
else
oss << errorChar;
}
oss << "\n";
}
oss << "\n\n";
cout << oss.str();
}