我正在学习如何创建自己的基于文本的游戏。对于经验丰富的程序员来说,这并不是一件令人惊讶的事情,但这让我感到沮丧。我的代码很简单,目标是:你有一个显示健康,法力和耐力的栏。 为简单起见,如果用户输入' n',我想从耐力中减去1并再次显示该条。这是我的代码,并不重要你放入它的内容,它不会更新。
#include <iostream>
#include <string>
int main()
{
while (true)
{
int nHealth=10;
int nMana=5;
int nStamina=20;
char sMovement[] = { 'n', 's', 'w', 'e', 0 };
std::cout << "Health: " << nHealth << " Mana: " << nMana << " Stamina: " << nStamina << std::endl;
char chInput;
std::cin >> chInput;
if (chInput==sMovement[0])
{
nStamina = nStamina - 1;
}
}
}
答案 0 :(得分:2)
没关系我弄明白了,我意识到代码完美无缺,但是当它循环回到While()时它会将nStamina重置为20,所以它确实做了减法,但它重置了以便修复它我宣布循环外的变量。