0

要素 (建物) が間違った位置に表示される理由。クリック後、ベースからダウンロードした後と同じコードを使用します。

このコードは、要素(建物)をドロップした後に使用します。このコードはうまくいきます。

else if (build[row] != null && build[row][col] != null) {
        tilePositionY -= building.height - tile.height;
            tilePositionX -= (building.width / 2) - (tile.width / 2);
        context.drawImage(building, Math.round(tilePositionX), Math.round(tilePositionY), building.width, building.height);
}

このコードは、ベースからダウンロードした後に使用します

if (oldBuild[row] && oldBuild[row][col]){
    tilePositionY -= building.height - tile.height;
    tilePositionX -= (building.width / 2) - (tile.width / 2);
        context.drawImage(building, Math.round(tilePositionX), Math.round(tilePositionY), building.width, building.height);
}

ajaxリクエスト

var oldBuild = [];

                $.ajax({
                    type     : "GET",
                    url      : "dane.php",
                    async    : false,
                    success : function(msg) {
                        oldBuild = msg;
                    }
                });

dane.php

$sql = mysql_query("SELECT * FROM test");
$return=[];
while($RES = mysql_fetch_array($sql))
{
    if(!isset($return[$RES['row']]))
    $return[$RES['row']]=[];
    $return[$RES['row']][$RES['col']]= true; //albo rodzaj budynku
}
echo json_encode($return, JSON_FORCE_OBJECT);
4

0 に答える 0