我是java /编程新手,我认为一个很好的学习方法就是制作一个简单的文本RPG游戏。 我在一个班级档案里,你可以雇佣工人为你开采矿石。基本上,我从用户那里获得2000金,随机抽取一个数字1-5到10次,他们根据这个数字得到10次矿石。 (例如,1铜,4金)循环if语句
这是我到目前为止,当我运行它,它把我的金牌,但只给了我1吨矿石当它真正应该给我10,任何帮助吗? 编辑:对不起,忘了提,我不得不INT X = 0;在顶部
if ((input.input.equalsIgnoreCase("a")) && inventory.goldCoins >= 2000) {
System.out.println("You have hired Sanchez for $2000!");
inventory.goldCoins -= 2000;
do {
int workerOre = (int)(Math.random() * 5 + 1);
if (workerOre == 1) {
inventory.addInventory("Copper Ore");
menu.start();
} else if (workerOre == 2) {
inventory.addInventory("Iron Ore");
menu.start();
} else if (workerOre == 3) {
inventory.addInventory("Steel Ore");
menu.start();
} else if (workerOre == 4) {
inventory.addInventory("Gold Ore");
menu.start();
} else if (workerOre == 5) {
inventory.addInventory("Copper Ore");
}
x++;
} while (x < 10);
System.out.println("Sanchez has finished his shift and the ore has been added to your inventory!");
} else if ((input.input.equalsIgnoreCase("a")) && inventory.goldCoins < 2000) {
System.out.println("You do not have enough money!");
worker();
}
嘿,这工作,但它给了我的情况下确切的矿石5。我希望它是随机的,所以也许像3铜1钢1黄金等,这是怎么回事?为什么它给10个5个星期? – user2809361
随机工具可能不完美,或者您的库存添加系统系统可能不完整。尝试用System.out.println();替换库存加法器进行测试,并查看输出结果。玩弄它,可能会有一些错误修复。 – michaelwm