我的游戏是cocos2d中的小型射击游戏。敌人每隔一段时间生成子弹射击玩家。我已经创建了一个随机的y,因此子弹在随机高度触及相反的边缘。如果子弹触及玩家则敌人获胜 但是,我需要设定敌人准确度的概率。如果敌人的概率是80%的准确度?我该怎么设置我的程序?对于10次射击,8应该直接朝向玩家 我怎样才能决定哪一个应该直截了当哪一个应该错过。同时玩家也会射击敌人。
谢谢。
答案 0 :(得分:2)
我会这样做。
假设您的玩家有位置y。要获得80%的准确度,请从区间[y - height*0.2, y + height*0.2]
中选择一个随机数,其中height
是屏幕的高度。一般来说,要获得准确度,请从[y - height*(1-p), y + height*(1-p)]
中选择一个数字。当p = 1.0(100%)时,子弹将完全瞄准玩家的位置。
这并不意味着准确度为80%的敌人会在玩家身上完成10次射击中的8次,但是子弹越接近就越准确。
这当然忽略了子弹旅行的时间,但这可以包含在没有太多工作的情况下。