【发布时间】:2014-04-28 01:01:03
【问题描述】:
我正在创建一个简单的 rpg 游戏,您可以在其中与怪物战斗。你的攻击是如何产生的,是通过生成一个随机数,将最大值设置为你的攻击状态。攻击属性在课程开始时声明为 0,但稍后根据玩家选择的课程设置为 3 个数字(10、15 或 20)之一。然后我使用这一行来生成玩家攻击:
charDamage = rand.nextInt(charAttackTotal) + 10;
但是当我运行它时,它给了我一个错误,说 n (charAttackTotal) 必须是正数。
这就是我获得 charAttackTotal 的方式:
static int charAttackBase = 0; this is what is set to 10,15, or20
static int charAttackMod = 0; this is set by what weapons the player has
static int charAttackTotal = charAttackBase + charAttackMod - 10;
但是当我把它放在一个空的类中时它工作得很好。这是在函数(方法)之外声明这些变量然后在方法内部使用的错误还是什么?如果您想查看它,我已将所有代码放在pastebin上,这是一个链接:
http://pastebin.com/RBMScyss 如果您查看 pastebin,则错误在第 124 行,尽管所有变量都在开头声明了
【问题讨论】:
-
0 + 0 - 10