私はCanvas APIゲームに取り組んでいます。私は新しい敵のインスタンスを作成するたびに新しい敵を作成したいと思いますないランダムではなく、3の特定の位置毎回ランダムな引数をとるJavaScript関数
それでは、私はこの機能を持っているとしましょう:。
var enemy = new Enemy(0, Math.random() * 184 + 50, Math.random() * 256);
これが0のY位置に新たな敵、ランダムであるX位置と速度の引数を作成し、それもランダムです。
これはうまく動作しますが、私は敵を欲しい3つの特定のポジションのみで作成され、新しい敵インスタンスが作成されるたびに速度が10ずつ増加する。
さらに詳しい情報:私は何をしたいが異なる引数で毎回新たな敵を作成する方法が
var increaseDifficulty = function(numEnemies) {
// remove all previous enemies on canvas
allEnemies.length = 0;
// load new set of enemies
for (var i = 0; i <= numEnemies; i++) {
var enemy = new Enemy(0, Math.random() * 184 + 50, Math.random() * 256);
allEnemies.push(enemy);
}
};
です:プレイヤーはそうのように、勝利の最終位置までのを得れば、新たな敵が呼び出されています。位置と速度のみ。
ような何か:
var enemy = new Enemy(0, 1, 1);
大きく異なるだろうと呼ばれている二度目:もちろん
var enemy = new Enemy(0, 3, 2);
値は1、2と3ではありませんが、あなたアイデアを得る。
UPDATE:
新たな敵がこの呼びかけ:
var Enemy = function(x, y, speed) {
this.x = x;
this.y = y;
this.speed = speed;
this.sprite = 'images/enemy-bug.png';
};
Enemy.prototype.update = function(dt) {
this.x += this.speed * dt;
if (this.x >= 505) {
this.x = 0;
}
checkCollision(this);
};
Enemy.prototype.render = function() {
ctx.drawImage(Resources.get(this.sprite), this.x, this.y);
};
「異なる表現」とはどういう意味ですか? – MUT
私は "議論"を意味する。申し訳ありませんが、私は質問を編集しました。 – Sparrky
あなたが達成したいことは明確ではありません。あなたが難しさを増やしたときにあなたはいくつの敵を作り出していますか?より具体的には、 'for'ループは何度反復されますか?あなたは実際に何個を作成したいですか? 3?または1、ランダムに3つのポジションからランダムに選択して、最初に何かをランダムに生成します(すべてを初期化するとき)?最初の敵をどうやって作りますか? – Adelin