首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我没有从代码中获得所需的输出,但while循环似乎出了问题。

我没有从代码中获得所需的输出,但while循环似乎出了问题。
EN

Stack Overflow用户
提问于 2020-01-27 10:59:02
回答 1查看 43关注 0票数 0

1)在游戏开始时,用户可以选择一种类型的玩家(1,2,3)。

2)每种类型的球员从以下属性开始-

3)玩家1-最大生命值= 50,伤害= 10,治疗= 20。

4)玩家2-最大生命值= 75,伤害= 25,治疗= 10。

5)玩家3-最大生命值= 100,伤害= 75,治疗= 20。

6)一个玩家只能被治疗到最大生命值(忽略这一点,因为我还没有编码)

7)玩家出生后,游戏允许玩家受到伤害或按以下方式得到治疗

8)按D(伤害)或H(治疗)玩家

( 9)按D或H可以重复无限次,直到玩家的生命降到0以下

10)当玩家的生命值为0或低于0时,游戏就结束了!

11)现向用户提供以下选择-

12)按S键重新开始游戏

13)按E键结束节目

14)如果用户按下"S“键,则整个游戏再次开始,用户现在可以创建任意类型的新玩家(1、2、3)。

15)如果用户按下"E",整个程序就结束了!

问题:

1当退出work循环的条件满足时,它确实会退出while循环,但是在按下任何其他数字以生成玩家的“伤害”和“恢复”时,输出是空的。

代码语言:javascript
复制
#include <iostream>

using namespace std;

int input;
char input1;
bool gameOver;

class player
{
    public:void p(int Health,int Damage,int Heal)
    {
        do
        {
          cout << "Player Health is" << Health;
          cin >> input1;

          switch(input1)
              {
                  case 'd':
                      Health -= Damage;
                      break;
                  case 'h':
                      Health += Heal;
                      break;
              }

           if(Health == 0 || input1 == 's')
           {
                gameOver = true;
           }

        } while (gameOver == false);
    }
}p1;

int main()
{

    do{
        //system("cls");
        cin >> input;

        if(input == 1)
        {
            p1.p(50,10,20);
        }
        if(input == 2)
        {
            player p2;
            p2.p(75,25,10);
        }
        if(input == 3)
        {
            player p2;
            p2.p(100,75,20);
        }



    } while (input != 5);

    return 0;
}
EN

回答 1

Stack Overflow用户

发布于 2020-01-27 11:25:16

当您启动下一个玩家游戏循环时,变量gameOver不会被重置为false。试着做这样的事情:

代码语言:javascript
复制
void p(int Health, int Damage, int Heal)
{
  gameOver = false;
  do
  {
    // game logic...
  } while (gameOver == false)
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59929793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档