extends SpriteChar; $map.setBGColor(color(0,200,255)); // 背景色を設定 anim=newAnimation(); while (1) { anim.pause(); if (getkey(39)&& $map.getAt(x+16,y)!=$pat_Block+1){ x+=3; f=0; anim.swing($pat_player+1,$pat_player+4,8); } // ↑カーソルキー右が押され、さらに右に壁が無ければ右へ移動 if (getkey(37)&& $map.getAt(x-16,y)!=$pat_Block+1){ x-=3; f=1; anim.swing($pat_player+1,$pat_player+4,8); } // カーソルキー左が押され、さらに左に壁が無ければ左へ移動 y+=vy; // vy: y 方向の速度。 yにvy を加える if ($map.getAt(x,y+24)==$pat_Block+1) { // ブロックに当たっていたら vy=0; // 落下速度を0にする if (getkey(32)) vy=-10; // スペースキーを押したらジャンプ } else { // ブロックに当たっていなかったら vy+=0.5; // 落下速度を上げる } $map.scrollTo(x-$screenWidth/2,y- $screenHeight/2); // スクロールする update(); }