mapEditor

マップを書き換える

Map.setAtまたはsetOnAtを使うと、プログラムの実行中にマップチップを書き換えることができます。

例1 - クリック(タッチ)した場所のマップを書き換える

Main

$map=new Map{row:20,col:20 ,chipWidth:32,chipHeight:32};

while(true) {
    //マウス(タッチ)の判定
    t=$touches[0];
    if (t.touched==1) {
        //タッチした場所のマップチップを書き換える
        //奥のレイヤーを書き換える場合はsetAt、手前のレイヤーを書き換えるときにはsetOnAt
        $map.setAt(t.x, t.y, $pat_mapchip+10);
    }
    update();
}

例2 - オブジェクトの移動した場所のマップを書き換える.

Main

$map=new Map{row:20,col:20 ,chipWidth:32,chipHeight:32};
new Player;

Player

x=0;
y=0;
while(true) {
    x+=2;
    y++;
    //現在プレイヤーがいる場所のマップチップを書き換える
    //奥のレイヤーを書き換える場合はsetAt、手前のレイヤーを書き換えるときにはsetOnAt
    $map.setAt(x,y,$pat_mapchip+88);
    update();
}

Backlink