【发布时间】:2021-10-03 14:32:26
【问题描述】:
我正在创建一个简单的格斗游戏控制台应用程序,我的Player 对象上有一个health 属性,该属性在Fight 方法中更新。
我想知道是否可以在控制台中实时显示 health 变量,而无需调用多次更新控制台的方法。
这是我开始战斗并显示每个玩家的健康输出的主要方法。
public static void StartFight(Player p1, Player p2) {
Console.Clear();
Title(" BATTLE ");
Console.WriteLine($"{p1.name} Health: {p1.health} ");
Console.WriteLine($"{p2.name} Health: {p2.health} ");
// Loop giving each player a chance to attack
// and block each turn until 1 dies
while (true) {
if (Fight(p1, p2)) {
Title(" GAME OVER! ");
PlayAgain();
break;
}
if (Fight(p2, p1)) {
Title(" GAME OVER! ");
PlayAgain();
break;
}
}
}
是否可以实时写入控制台,这样我就不必继续写Console.WriteLine($"{p1.name} Health: {p1.health} ");?
【问题讨论】:
-
显示,是指在控制台中显示吗?
-
不看你的代码很难回答。我的建议是在调用方法之前声明变量并将该变量作为参数发送给方法。这样您就可以在控制台上更新和显示该变量。
-
@ErmiyaEskandary 是的,就像 Console.WriteLine($"Health: {player.health}");并自动更新
-
@virouz98 我已经更新了帖子以更准确。