1
我正在创建一个Battleship Console应用程序。 我希望系统能够随机挑选重型攻击或轻微攻击,这样玩家有机会获胜,系统也是如此。这是我的代码。如何随机化两个功能的结果
玩家和敌人的健康都被设置为“30”
public void eHeavyAttack()
{
Console.Clear();
Random r = new Random();
int rInt = r.Next(1, 7);
Player_Health = Player_Health - rInt;
Console.WriteLine("The enemy has dealt " + rInt + " damage!");
Console.WriteLine("Your health is now at " + Player_Health + " health!");
Console.ReadKey();
}
public void eMinorAttack()
{
Console.Clear();
Random r = new Random();
int rInt = r.Next(0, 4);
Player_Health = Player_Health - rInt;
Console.WriteLine("The enemy has dealt " + rInt + " damage!");
Console.WriteLine("Your health is now at " + Player_Health + " health!");
}
此代码的问题是什么? –
没有问题我只想知道是否有办法让系统随机选择其中一个。 –
我注意到你现有的代码是交叉关注点:你的逻辑改变了玩家状态('Player_Health')也直接写入控制台输出 - 并且使用'Console.Clear'改变了'Console'全局状态 - 这使得它很难推理你的功能。尽量减少副作用。这意味着您的应用程序代码将很容易移植到其他环境中,例如网络应用程序或游戏控制台。 – Dai