C++ x 中的 RPG 游戏可以低于 0
Rpg game in C++ x can go below 0?
我正在制作一个 c++ rpg。
这是我的代码:http://pastebin.com/cyR5bzKR
它让我去-1,然后我哪儿也去不了。我也可以去4,然后我哪儿也去不了。
有什么帮助吗?
我不希望这过于复杂。
附言我正在使用代码::块我认为这不是问题所在。
在决定玩家是否应该能够移动时,您希望考虑下一个操作。
这样的事情应该可以工作...
if(dir == "L" && x-1 >= xMin) {
printf("You Went Left");
x--;
}
你有这样的代码:
if (x >= min) --x;
在递减之前,您正在检查一个值是否大于或等于另一个值。 即,如果它相等,您仍然会递减,因此,之后它将小于该值。
解决方案是仅在大于最小值时才递减:
if (x > min) --x;
当你向右移动时,你需要检查你是否不在最右边的位置。同样,当向左移动时,您需要检查您是否不在最左侧的位置。
但是你正在测试你没有超出最右/最左的位置(并且还在检查你在板上,这似乎没有必要)。
你想要类似的东西
if (dir == "R" && x < xmax) ++x;
else if (dir == "L" && x > xmin) --x;
您执行的其他测试是多余的。
if(dir == "L" && x > xMin)
{
printf("You Went Left");
x--;
}
else if(dir == "R" && x < xMax)
{
printf("You Went Right");
x++;
}
else
{
printf("You can't go that way.");
}
相关文章:
- 矢量下标超出SFML游戏中的范围
- 我可以使用任何好的逻辑来阻止计算机将 O 放在井字游戏中的现有 X 上
- C++游戏中的 UDP 通信问题
- 使用虚幻引擎4编程的平台游戏中的偏转问题
- 井字游戏中的错误
- 需要井字游戏中的 for 循环帮助
- 如何防止无限循环游戏中的堆栈溢出
- 在重新居中之前获取游戏中的光标位置
- 内存相关崩溃:Cocos2d游戏中的三维数组
- 模拟游戏中的键
- ECS 和游戏中的适当用法
- 人生游戏中的随机播种不能很好地工作
- 如何更新游戏中的INT转换
- 我可以(ab)将VirtualAlloc用于游戏中的每个类似矢量的容器吗?
- 我在C 的Tictactoe游戏中的功能之一
- 如何处理C 游戏中的许多对象
- 棋盘游戏中的递归地雷爆炸函数
- 如何使用C 关闭Cocos2D-X iOS游戏中的通知中心
- 游戏中的C++指针
- 太空射击游戏中的3D音效