我正在制作一个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 = ......等等
答案 0 :(得分: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
将是您生成的所有怪物的数组。
答案 1 :(得分: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;
}