0

我正在制作一个 javascript 游戏,我想生成敌人,但这似乎不起作用

var Monster = function(x,y) {
    this.x = x;
    this.y = y;
};

var spawnMonsters = function() {
    for(var i = 0; i < spawn; i++) {
        var name = "Monster";
        name += i;
        name = new Monster(Math.random()*canvas.width-16,0); 
    }     
};

请帮忙?虽然我可以通过硬编码每个怪物名称来生成多个敌人。比如 Monster2=new Monster(Math.random()*canvas.width-16,0); Monster3=……等

4

2 回答 2

3

在 javascript 中,您不能像在 PHP 中那样使用“变量”。

你可以试试这个:

var monsters = [];

function spawn(num) {
  for (var i = 0; i < num; ++i) {
    monster.push(new Monster(Math.random() * canvas.width - 16, 0));
  }
}

现在monsters将是您生成的所有怪物的数组。

于 2013-04-03T15:48:13.370 回答
0

您可以生成如下字符串:

function makeid()
{
var text = "";
var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";

for( var i=0; i < 5; i++ )
    text += possible.charAt(Math.floor(Math.random() * possible.length));

return text;
}
于 2013-04-03T15:47:56.167 回答