0

私はこのチュートリアルを調べています: http://blog.new-bamboo.co.uk/2009/12/30/html5-canvas-snake-game

しかし、何らかの理由で、毎回ヘビをランダムな場所から開始する方法を理解できません..

これを行う方法はありますか?

4

1 に答える 1

5

これは、グリッド内で開始位置が設定されている場所です。

// The current position of the Snake's head, as xy coordinates
this.currentPosition = [50, 50];

ランダムな場所から開始するには:

var randX = Math.floor(Math.random() * x),  // x = 50 in the default grid
    randY = Math.floor(Math.random() * y);  // y = 50 in the default grid

this.currentPosition = [randX, randY];

ブログによると、実際のソースをコピーした場合、座標の配列ではなくオブジェクトを使用しており、計算が少し異なります。関数ではstart、新しい開始セルを選択するだけです。

var randX = Math.floor(Math.random() * 40) * this.gridSize,  
    randY = Math.floor(Math.random() * 30) * this.gridSize; 

this.currentPosition = {'x': randX, 'y': randY};
于 2012-10-05T22:19:11.897 に答える