[英]using variables to create random integers in java
我創建了一個簡單的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錯誤在第124行,如果你看看pastebin,所有變量都在開頭聲明了雖然
簡單地宣布
static int charAttackTotal = charAttackBase + charAttackMod;
每次更改charAttackBase
或charAttackMod
時,都不會導致charAttackTotal
自動更新。 每當您對其他變量進行更改時,您將需要顯式更新charAttackTotal
。
另一種方法是在需要時計算charAttackTotal
,可能使用函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.