各タイルが 32x32 ピクセルのタイル システムがあります。xy 座標パラメーターに基づいてタイルのタイプが返される関数を作成しようとしていますが、xy 座標を 32x32 グリッド システムに適切に変換する方法がわかりません。
function getTileAtCoordinates(x, y) {
if (x < 32) x = 32;
if (y < 32) y = 32;
xTile = x;
xTile = xTile - (x % 32);
xTile = x / 32;
yTile = y;
yTile = yTile - (x % 32);
yTile = y / 32;
return getMapTile(xTile, yTile);
}
getMapTile 関数は明らかに 2 次元配列 (x と y) からタイル タイプを取得します。何らかの理由で、関数は時折 10 進数値を使用しようとしますが、10 進数値が関数に渡されることはないため、私の数学が正しければ発生しないはずです。
編集: 私が基本的に達成しようとしているのは、座標が (32, 32) の場合、それは (1, 1) に変換され、(65, 33) は (3, 2) に変換されることです。