我正忙于使用nodejs来修改游戏,但我想知道如何做这样的事情:
var zombieDirector =
{
zombieBison = 1
zombieChicken = 2
zombie = 3
skeleton = 3
}
并且这些名称还有另一个var
var zombieBison = 'Entities/Zombies/zombieBison.cfg'
现在让Bison更经常地产生罕见的骨骼和僵尸。
你得到这个,randomZombie等于'Entities / Zombies / aZombie.cfg'
ks.map.spawnEntity('zombie', randomZombie, 0, 0, 3);
var randomZombie = zombieDirector[Math.floor(Math.random() * zombieDirector.length)];
另一方面:请不要JQuery
提前致谢
答案 0 :(得分:1)
从本质上讲,你所说的是加权随机数生成。有点棘手,如果你想使用数学,但你可以使用数组来完成,如下所示:
var choices = [];
for(prop in zombieDirector) {
for(var i = 0; i<zombieDirector[prop]; i++) {
choices.push(prop);
}
}
var choice = choices[Math.floor(Math.random() * choices.length + .5)];
变量choice
现在将有一个随机怪物名称,根据您在zombieDirector
中提供的数字进行加权。