我正在寫一個有趣的小文字冒險,我有一個場面,人物能夠從河裏釣魚。我試圖讓他釣了幾條魚在一個時間,但是當我運行該代碼Random.Range方法保持下去,直到它通過我的門檻。我嘗試了幾次循環,看看能否讓它運行一次,但沒有這樣的運氣。C#Random.Range不會停止
我敢肯定,我失去了一些東西很明顯,但我一直運行到同樣的問題。首先,我嘗試了一個for循環,下面的代碼使用了while循環,但都沒有效果。非常感謝您的幫助。
這裏是我有問題的代碼:
public void catch_fish()
{
if (fish > 1000)
{
text.text = "Rock-Smasher already has a lot of fish! You should cook those first! \n\n " +
"Press Space to back to the river";
if (Input.GetKeyDown(KeyCode.Space))
{
currentState = States.river;
}
}
else
{
int amount = 0;
amount = Random.Range(0, 7);
fish = fish + amount;
text.text = "You peer down into the water and you quickly thrust your hand into the water, catching " + fish + " fish. Wow! \n\n " +
"Press R to go back to the river, or F to catch more fish";
if (Input.GetKeyDown(KeyCode.R))
{
currentState = States.river;
}
else if (Input.GetKeyDown(KeyCode.F))
{
currentState = States.catch_fish;
}
}
}
如果你正在使用C#的隨機類,你應該可以做這樣的事情:Random rnd = new Random(); amount = rnd.Next(1,7);' –
看到這個:http:// stackoverflow。 COM /問題/ 3975290 /生產-一個隨機數-IN-A-範圍,使用-C-銳 –
'Input.GetKeyDown'看起來像Unity3d,如果這是Unity3d你必須標記爲編輯添加到您的問題。 –