我进入了一个资源游戏模拟项目。我要做的是...
“如果有足够的可用资源,则会满足请求,并且将从可用数量中减去请求的数量。如果没有足够的资源,则动画会消耗可用的数量并等待更多的资源可用。”
问题是我如何使这成为可能......减少资源,然后在某个地方保留仍然需要的东西,并在有可用资源时减少它(如贷款)......
例子:
... 需要 100 枚金币.... 但是 ... 50 枚金币可用...
... 减少 50 黄金... 等到黄金>=50 然后
... 减少 50 黄金...
ETC...
示例代码...
public void feedArmy(){
if(food>=100){
food=food-100;
System.out.println("*Feed Soldiers (-100 Food)");
System.out.println(toString());
}
else{
System.out.println("*Feed Soldiers (-100 Food)");
System.out.println("-Not Enough Food!"); //get loan instead
}
}
(编辑后)现在的最佳解决方案:
实际上......我想只是减少木材的所需值,然后如果数字变为负数,我保持负值将其变为正值
数学.abs();
所以如果木头是 30 并且我想要 100... 我做 30-100=-70; 然后贷款=-70;...
然后我 Math.abs(loan); 所以贷款=70;
然后我做了一个if(wood>loan){ wood=wood-loan}
//我可能需要睡觉直到木头再次刷新......就是这样......我仍然不知道生产者/消费者的东西是什么......