gpt4 book ai didi

c# - 在控制台上平滑显示网格而不会出现抖动

转载 作者:太空宇宙 更新时间:2023-11-03 21:37:45 26 4
gpt4 key购买 nike

我正在制作这款基于 pacman 控制台的游戏,其中有一 block 40x40 的棋盘。棋盘上有吃 bean 人和敌人在吃食物。 pacman 用 0 表示,敌人用 # 表示。每次位置发生变化时,显示功能都会被调用,在当前逻辑中,每秒清除整个控制台并重新打印板上的每个元素。但是这样,每当显示整个板时都会出现这些 SCSS 。请告诉我一个更好的方法来实现吃 bean 人和敌人的平稳运动,理想情况下我应该只改变吃 bean 人和敌人的位置,但我需要清除控制台以便在同一地点显示网格,否则它会继续向下滚动。显示功能代码如下:

public static void display()
{
Console.Clear();
for (int i = 0; i < 40; i++)
{
for (int j = 0; j < 40; j++)
{
bool packFound = false;
bool enmFound = false;

foreach (Packman element in myVers.packmans)
{
if (element.x == i && element.y == j)
{
packFound = true;
break;
}
}
foreach (Packman element in myVers.enemys)
{
if (element.x == i && element.y == j)
{
enmFound = true;
break;
}
}

if (packFound == true)
{
Console.Write('0');
myVers.board[i, j] = ' ';
}
else if (enmFound == true)
{
myVers.board[i, j] = ' ';
Console.Write('#');
}
else
{
Console.Write(myVers.board[i, j]);
}
}
Console.Write('\n');
}
//Console.Write("\nFood Count " + myVers.foodCount + "\n");
}

最佳答案

如果您只重绘真正改变的字符会怎样?也许使用 Console.SetCursorPosition

关于c# - 在控制台上平滑显示网格而不会出现抖动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20869381/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com