在我的游戏中,我希望玩家玩游戏的次数越多,通过随机生成敌人来杀死敌人就越难,就像 iOS 上的游戏“地牢突袭”一样。这是敌人应该拥有的统计数据:
- 生命值
- 攻击
- 时间:敌人攻击前所需的秒数(时间越长,敌人越慢。)
- 时间因攻击量而异(如果敌人真的很强,一定要慢)
- 分数:敌人被击杀时给出的分数
我认为正确的做法是确定敌人可以获得的最小统计数据,然后根据游戏状态增加它,并使用算法相应地计算它们,但我真的不知道该怎么做甚至从哪里开始。
在我的游戏中,我希望玩家玩游戏的次数越多,通过随机生成敌人来杀死敌人就越难,就像 iOS 上的游戏“地牢突袭”一样。这是敌人应该拥有的统计数据:
我认为正确的做法是确定敌人可以获得的最小统计数据,然后根据游戏状态增加它,并使用算法相应地计算它们,但我真的不知道该怎么做甚至从哪里开始。
您可能希望从能够在特定范围内生成随机数开始。最简单的情况是在最小值和最大值之间均匀地生成随机数。随着游戏的进行,您可以更改最小值和最大值以随着统计数据的增加而增加。你的播放器。
你可以这样做,
NSUInteger BoundedUniformRandomNumber( NSUInteger min, NSUInteger max)
{
NSUInteger range = max - min;
u_int32_t randomNumber = (u_int32_t)min + arc4random_uniform((u_int32_t)range);
return (NSUInteger)randomNumber;
}
注意arc4random_uniform
是 from stdlib
so please include #import <stdlib.h>
,也是arc4random_uniform
半开的,这意味着它会返回最小值,但永远不会返回最大值。因此,您将在上述函数中生成的最大值实际上是max - 1
.
希望这能让你开始。