背景を暗闇にし、自機の周囲しか見えないエフェクトをかけます。プレイヤーに考えて操作させる場面、慎重に操作させる場面に向いた処理です。プログラムでは暗闇処理をしている部屋としていない部屋を作っており、処理を行っている部屋が迷路になっています。darkness(x1,y1,x2,y2){$panel.clear();$panel.fillRect(x1,y1,x2,y2,$clBlack,5);$panel.drawSprite(x-$viewX,y-$viewY,$pat_area+0,3);}一旦$panel.fillRectで背景を全部塗りつぶした後、丸形状の画像を自機の上に重ねて描きます。丸画像はcolor(0,0,0):全黒でかかれており、パネルの一部だけが消去されるので、自機の周囲だけ穴が開いて見えるようになります。自機が特定の部屋に入ったときにのみ、処理を行うようにします。mapY==$dark_switch.mapY)darkness(0,0,$screenWidth,$screenHeight);シークレットオブジェクト(名前:dark_switch)が作ってあり、mapX,mapYには、オブジェクトが配置されている部屋の位置が入っています。自機のmapX,mapY(自機がいる部屋の位置)とシークレットオブジェクトのmapX,mapYが一致したときにだけ処理を行うようにしています。画面スクロール時に何も処理をしないと、暗闇の処理をする部屋の全体が見えてしまうので、スクロールに追従して黒描画を行います。mapY==$dark_switch.mapY)darkness(0,0,$screenWidth-dark_offset,$screenHeight);update();}}◆スクロール中の黒描画説明(例:右方向スクロール)携帯アフィリエイトで稼ぐトップページへ。