大きなグリッドがある小さなゲームを作ろうとしています。(10x20)スペース、および小さなグリッド(3x3)。小さなグリッドを大きなグリッドまでマッピングしたいと思います。
配置するグリッドのay/行の場所とax/セルの場所を指定できる必要があります。
これどうやってするの?
例:
small grid:
|0|1|0|
|1|1|1|
|0|1|0|
large grid
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
result:
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|1|0|0|0|0|0
|0|0|0|1|1|1|0|0|0|0
|0|0|0|0|1|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
|0|0|0|0|0|0|0|0|0|0
更新 ゲームはテトリスです。小さなグリッド(ブリック)が大きなグリッドの境界から出てこないことを確認しました。
A brick holds:
X: cell position on the large grid
Y: row position on the large grid
Width: the width of the small grid
Height: the height of the small grid
Fields: the small grid where some fields are 0 (unmarked), and some are 1 (marked)
私はこのようなことを試しました:しかしそれを機能させることができません
for (var row = brick.y; row < brick.y + brick.height; row++) {
for (var cell = brick.x; cell < brick.x + brick.width; cell++) {
for (var fieldRow = 0; fieldRow < brick.type.fields.length; fieldRow++) {
for (var fieldCell = 0; fieldCell < brick.type.fields[fieldRow].length; fieldCell++) {
console.log(brick.type.fields[fieldRow][fieldCell]);
if (brick.type.fields[fieldRow][fieldCell] == 1) {
this.grid[row][cell] = 1;
}
}
}
}
}