”First” the platformer 
@Stage\n\n@タイトル\n\nwhen flag clicked\nset [プログラム管理 v] to [オープニング]\nerase all\ngo to [front v] layer\nset [ghost v] effect to (0)\nset size to (100) %\nhide\npen up\nset pen size to (1)\nset pen color to (#1dff00)\ngo to x: (0) y: (0)\npen down\nrepeat (80)\n    change x by (0.1)\n    change x by (-0.1)\n    change pen size by (15)\nend\npen up\ngo to x: (0) y: (220)\nswitch costume to (琴 v)\nshow\nrepeat (10)\n    change y by (-22)\nend\nwait (1) seconds\nrepeat (26)\n    change x by (-6)\nend\nstamp\nhide\nswitch costume to (mikawakengyo v)\nwait (1) seconds\ngo to x: (80) y: (220)\nshow\nrepeat (10)\n    change y by (-22)\nend\nstamp\nwait (1.5) seconds\nhide\ngo to x: (0) y: (0)\nswitch costume to (黒 v)\nset [ghost v] effect to (100)\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\n    wait (0.1) seconds\nend\nerase all\nset [プログラム管理 v] to [1]\nwait (0.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\n    wait (0.1) seconds\nend\nhide\nforever\n    play sound [BGM素材ﾀﾞﾖｰ v] until done\nend\n\nswitch costume to (サムネ v)\nset [ghost v] effect to (0)\ngo to [front v] layer\nshow\n\n@キャラ\n\nwhen flag clicked\nhide\nwait (0.1) seconds\nwait until <not <(プログラム管理) = [オープニング]>>\nスポーン [-180] [-90]\nwait (1) seconds\nforever\n    change [落ちる速さ v] by (-1)\n    change y by (落ちる速さ)\n    着地 <(落ちる速さ) > [0]>\n    移動\n    if <<[220] < (x position)> and <touching (_edge_ v)?>> then\n        次のステージへ\n    end\n    if <<(y position) < [-180]> or <touching (触ってはいけないもの v)?>> then\n        ヤラレチャッタ\n    end\nend\n\ndefine スポーン (x) (y)\nset [速さx v] to [0]\npoint in direction (90)\ngo to x: (-180) y: (-90)\nset size to (60) %\nshow\n\ndefine 着地 <上昇中ですか？>\nchange [落下していますか？ v] by (1)\nrepeat until <not <touching (地形 v)?>>\n    if <上昇中ですか？> then\n        change y by (-1)\n        set [落ちる速さ v] to [0]\n    else\n        change y by (1)\n        set [落下していますか？ v] to [0]\n        set [落ちる速さ v] to [0]\n    end\nend\n\ndefine 移動\nif <<<mouse down?> and <[0] < (mouse x)>> or <<key (d v) pressed?> or <key (right arrow v) pressed?>>> then\n    if <<<mouse down?> and <(mouse x) < [0]>> or <<key (a v) pressed?> or <key (left arrow v) pressed?>>> then\n        減速\n    else\n        歩行 [1] [1]\n    end\nelse\n    if <<<mouse down?> and <(mouse x) < [0]>> or <<key (a v) pressed?> or <key (left arrow v) pressed?>>> then\n        歩行 [2] [-1]\n    else\n        減速\n    end\nend\nif <<(落下していますか？) < [3]> and <<<mouse down?> and <[30] < (mouse y)>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>>> then\n    set [落ちる速さ v] to [14]\nend\nif <<<(落下していますか？) < [3]> and <(落ちる速さ) < [10]>> and <<<mouse down?> and <(mouse y) < [-30]>> or <<key (s v) pressed?> or <key (down arrow v) pressed?>>>> then\n    switch costume to (4 v)\nelse\n    if <touching (地形 v)?> then\n        switch costume to (4 v)\n    end\nend\n\ndefine 減速\nset [速さx v] to ((速さX) * (0.88))\n坂\nswitch costume to (3 v)\n\ndefine 歩行 (コスチューム) (向き)\nchange [速さx v] by ((1) * (向き))\nif <([abs v] of ((6) * (向き)) ) < ([abs v] of (速さX) )> then\n    set [速さx v] to ((6) * (向き))\nend\n坂\nswitch costume to (コスチューム)\n\ndefine 坂\nchange x by (速さX)\nset [坂 v] to [0]\nrepeat until <<not <touching (地形 v)?>> or <[7] < (坂)>>\n    change y by (1)\n    change [坂 v] by (1)\nend\nif <[7] < (坂)> then\n    change x by ((速さX) * (-1))\n    change y by ((坂) * (-1))\nend\n\ndefine ヤラレチャッタ\npoint in direction (90)\nrepeat (10)\n    turn right (15) degrees\n    change y by (10)\nend\nset [回転 v] to [10]\nrepeat (20)\n    turn right (15) degrees\n    change y by (回転)\n    change [回転 v] by (-1)\nend\nset [やられる速度 v] to [-10]\nrepeat until <<touching (_edge_ v)?> and <(y position) < [0]>>\n    turn right (15) degrees\n    change y by (やられる速度)\n    change [やられる速度 v] by (-2)\nend\nhide\nwait (1) seconds\nスポーン [-180] [-90]\n\ndefine 次のステージへ\nbroadcast (NEXT v)\nwait (1) seconds\nスポーン [-180] [-90]\nwait (0.7) seconds\n\n@地形\n\nwhen flag clicked\nhide\nwait (0.1) seconds\nwait until <not <(プログラム管理) = [オープニング]>>\nshow\nforever\n    go to x: (0) y: (0)\n    switch costume to (プログラム管理)\nend\n\n@触ってはいけないもの\n\nwhen flag clicked\nhide\nwait (0.1) seconds\ngo to x: (0) y: (0)\nwait until <not <(プログラム管理) = [オープニング]>>\nshow\nforever\n    switch costume to (プログラム管理)\nend\n\n@エフェクト\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\n\nwhen I receive [next v]\nset [brightness v] effect to (20)\nshow\nset x to (270)\nset [next 速さ v] to [-32]\nrepeat (16)\n    change x by (NEXT 速さ)\n    change [next 速さ v] by (2)\n    go to [front v] layer\nend\nchange [プログラム管理 v] by (1)\nwait (0.5) seconds\nrepeat (20)\n    change [next 速さ v] by (-2)\n    change x by (NEXT 速さ)\nend\nhide\n\n@飾り\n\nwhen I start as a clone\nset size to (pick random (60) to (100)) %\nset x to (pick random (-240) to (240))\nset [ghost v] effect to (pick random (30) to (70))\nshow\nglide (pick random (2) to (4)) secs to x: (pick random (-238) to (238)) y: (180)\ndelete this clone\n\nwhen flag clicked\nwait (0.1) seconds\nwait until <not <(プログラム管理) = [オープニング]>>\ngo to x: (pick random (-240) to (240)) y: (-180)\nswitch costume to (pick random (1) to (3))\nhide\ngo to [back v] layer\nforever\n    create clone of (_myself_ v)\n    turn right (pick random (20) to (340)) degrees\n    change [color v] effect by (pick random (0) to (10))\n    next costume\n    wait (pick random (0.05) to (0.15)) seconds\nend\n\n