在我的应用程序中,当敌人被杀死时,弹药就会被丢弃。有4种不同类型的弹药与这个代码int diceRoll = arc4random() % 3; //0 to 3,每种弹药类型现在有25%的频率为产卵。例如,是否有可能使第二类弹药变得更加频繁?例如,最高可达40%,因此其他弹药类型将为20%
发布于 2013-03-03 19:28:17
您是否尝试过:
int spaceSet = pow(10, 3); //range of 1000, the bigger the more noticible it gets
int diceRoll = arc4random() % (spaceSet - 1);
if(diceRoll < (2 * (spaceSet / 10)))
diceRoll = 0;
else if(diceRoll < (4 * (spaceSet / 10)))
diceRoll = 1;
else if(diceRoll < (7 * (spaceSet / 10)))
diceRoll = 2;
else
diceRoll = 3;增加随机集并对其进行预测似乎是一个好主意。
发布于 2013-03-03 21:06:56
Careful...int diceRoll = arc4random() %3给出了3个不同的值:0到2,如下所示:
int i, diceRoll;
for (i=1;i<20;i++){
diceRoll = arc4random() % 3;
NSLog(@"Roll %i",diceRoll);
}"%“表示”除以时的余数“,没有余数3。
https://stackoverflow.com/questions/15185073
复制相似问题