レーザー！platformer

Instructions: 新作プラットフォーマー見て↓\nhttps://scratch.mit.edu/projects/657337018\nーーーーーーーーーーーーーーーーーーーーーーーー\nレーザーをよけるプラットフォーマーです。\n操作方法\nwasdまたは矢印キーで操作。\n壁キックはできないよ。\n

@Stage\n\nwhen I receive [スタート v]\nforever\n    play sound [208_BPM107 v] until done\nend\n\n@地面\n\nwhen I receive [スタート v]\nrepeat until <(costume [number v]) = [10]>\n    set [time　タイム v] to ((round ((timer) * (10))) / (10))\nend\n\nwhen I receive [スタート v]\nreset timer\nhide variable [time　タイム v]\nhide variable [☁ world record 世界記録 v]\nset [time　タイム v] to [0]\nswitch costume to (コスチューム1 v)\nwait until <(costume [number v]) = [10]>\nwait (1) seconds\nshow variable [time　タイム v]\nshow variable [☁ world record 世界記録 v]\nif <(time　タイム) < (☁ World Record 世界記録)> then\n    set [☁ world record 世界記録 v] to (time　タイム)\nend\n\nwhen I receive [next v]\nwait (0.5) seconds\nswitch costume to (ステージ)\n\nwhen I receive [スタート v]\nswitch costume to (ステージ)\n\n@完成したやつ\n\nwhen I receive [スタート v]\nwait (0.1) seconds\nforever\n    if <<<<(y position) = [-179]> or <touching (レーザー v)?>> or <touching (スプライト1 v)?>> or <touching (スプライト2 v)?>> then\n        if <not <(ステージ) = [5]>> then\n            set [x v] to [0]\n            set [y v] to [0]\n            set [命はあるんか v] to [0]\n            repeat (20)\n                change size by (-6)\n                change [ghost v] effect by (5)\n            end\n            go to x: (-200) y: (-100)\n            point in direction (90)\n            repeat (20)\n                change size by (2.2)\n                change [ghost v] effect by (-5)\n            end\n            set size to (60) %\n            set [命はあるんか v] to [1]\n        else\n            set [x v] to [0]\n            set [y v] to [0]\n            set [命はあるんか v] to [0]\n            repeat (20)\n                change size by (-6)\n                change [ghost v] effect by (5)\n            end\n            go to x: (-200) y: (50)\n            point in direction (90)\n            repeat (20)\n                change size by (2.2)\n                change [ghost v] effect by (-5)\n            end\n            set size to (60) %\n            set [命はあるんか v] to [1]\n        end\n    end\nend\n\nwhen flag clicked\nbroadcast (スタート v)\n\nwhen I receive [スタート v]\nset [ステージ v] to [1]\nset [命はあるんか v] to [1]\nset [スピード v] to [0.8]\nset [ジャンプ力 v] to [14]\nset [壁キックのジャンプ力 v] to [13]\nset [壁キックの跳ね返り v] to [4]\nset [地面の摩擦 v] to [0.9]\nset [重力 v] to [0.8]\nset [x v] to [0]\nset [y v] to [0]\nclear graphic effects\nset size to (60) %\nwait (0.01) seconds\npoint in direction (90)\ngo to [front v] layer\nset [x v] to [0]\nset [y v] to [0]\nclear graphic effects\ngo to x: (-200) y: (-100)\nshow\nforever\n    if <(命はあるんか) = [1]> then\n        if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <[0] > (mouse x)>>> then\n            change [x v] by ((0) - (スピード))\n            point in direction (-90)\n        end\n        if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > [0]>>> then\n            change [x v] by (スピード)\n            point in direction (90)\n        end\n        set [x v] to ((x) * (地面の摩擦))\n        change x by (x)\n        if <touching (地面 v)?> then\n            change y by (1)\n            if <touching (地面 v)?> then\n                change y by (1)\n                if <touching (地面 v)?> then\n                    change y by (1)\n                    if <touching (地面 v)?> then\n                        change y by (1)\n                        if <touching (地面 v)?> then\n                            change y by (1)\n                            if <touching (地面 v)?> then\n                                change y by (1)\n                                if <touching (地面 v)?> then\n                                    change x by ((0) - (x))\n                                    change y by (-5)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n        change [y v] by ((0) - (重力))\n        change y by (y)\n        if <touching (地面 v)?> then\n            change y by ((0) - (y))\n            set [y v] to [0]\n        end\n        change y by (-2)\n        if <touching (地面 v)?> then\n            if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > [0]>>> then\n                set [y v] to (ジャンプ力)\n            end\n        end\n        change y by (1)\n    end\nend\n\nwhen I receive [スタート v]\nforever\n    if <<<(x position) = [240]> and <not <(ステージ) = [4]>>> and <not <(ステージ) = [10]>>> then\n        broadcast (next v)\n        set [x v] to [0]\n        set [y v] to [0]\n        set [命はあるんか v] to [0]\n        wait (0.5) seconds\n        change [ステージ v] by (1)\n        wait (0.3) seconds\n        go to x: (-200) y: (-100)\n        wait (0.3) seconds\n        set [命はあるんか v] to [1]\n    end\n    if <<(x position) = [240]> and <(ステージ) = [4]>> then\n        broadcast (next v)\n        set [x v] to [0]\n        set [y v] to [0]\n        set [命はあるんか v] to [0]\n        wait (0.5) seconds\n        change [ステージ v] by (1)\n        wait (0.3) seconds\n        go to x: (-200) y: (50)\n        wait (0.3) seconds\n        set [命はあるんか v] to [1]\n    else\n        if <<(x position) = [240]> and <(ステージ) = [10]>> then\n            wait (0) seconds\n        end\n    end\nend\n\n@レーザー\n\nwhen I receive [スタート v]\nshow\nswitch costume to (r1 v)\nwait until <(ステージ) = [2]>\nswitch costume to (r2 v)\nwait until <(ステージ) = [3]>\nswitch costume to (r3 v)\nwait until <(ステージ) = [4]>\nswitch costume to (r4 v)\nrepeat until <(ステージ) = [5]>\n    wait (1) seconds\n    if <(ステージ) = [4]> then\n        switch costume to (k2 v)\n    end\n    wait (0.7) seconds\n    if <(ステージ) = [4]> then\n        switch costume to (r4 v)\n    end\nend\n\nwhen I receive [スタート v]\nwait until <(ステージ) = [5]>\nswitch costume to (r5 v)\nwait until <(ステージ) = [6]>\nswitch costume to (r6 v)\nwait until <(ステージ) = [7]>\nswitch costume to (r7 v)\nwait until <(解除) = [1]>\nhide\nwait until <(ステージ) = [8]>\nshow\nswitch costume to (r8 v)\nwait until <(解除) = [1]>\nhide\nwait until <(ステージ) = [9]>\nshow\nswitch costume to (r9 v)\nwait until <(解除) = [1]>\nswitch costume to (k1 v)\n\nwhen I receive [スタート v]\nclear graphic effects\ngo to [back v] layer\nforever\n    clear graphic effects\n    repeat (10)\n        change [ghost v] effect by (2)\n    end\n    wait (1) seconds\n    repeat (10)\n        change [ghost v] effect by (-4)\n    end\nend\n\nwhen I receive [スタート v]\nwait until <(ステージ) = [10]>\nswitch costume to (幻想奇談 v)\n\nbroadcast (next v)\nchange [ステージ v] by (1)\n\n@NEXT\n\nwhen I receive [next v]\nswitch costume to (コスチューム4 v)\ngo to [front v] layer\ncreate clone of (_myself_ v)\nwait (0.05) seconds\nswitch costume to (コスチューム3 v)\ngo to [front v] layer\ncreate clone of (_myself_ v)\nwait (0.05) seconds\nswitch costume to (コスチューム2 v)\ngo to [front v] layer\ncreate clone of (_myself_ v)\nwait (0.05) seconds\nswitch costume to (コスチューム1 v)\ngo to [front v] layer\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\ngo to x: (482) y: (0)\nshow\nglide (0.2) secs to x: (0) y: (0)\nwait (0.5) seconds\nglide (0.2) secs to x: (-482) y: (0)\nhide\ndelete this clone\n\nwhen I receive [スタート v]\ngo to x: (482) y: (0)\nhide\n\n@スプライト1\n\nwhen I receive [スタート v]\nswitch costume to (コスチューム1 v)\ngo to x: (30) y: (28)\nhide\nwait until <(ステージ) = [5]>\nshow\nrepeat until <(ステージ) = [6]>\n    glide (2) secs to x: (200) y: (28)\n    wait (0.5) seconds\n    glide (2) secs to x: (30) y: (28)\n    wait (0.5) seconds\nend\n\nwhen I receive [スタート v]\nwait until <(ステージ) = [6]>\nhide\nwait until <(ステージ) = [7]>\nswitch costume to (コスチューム2 v)\nshow\nrepeat until <(ステージ) = [8]>\n    wait (1) seconds\n    if <(ステージ) = [7]> then\n        show\n    end\n    wait (2) seconds\n    if <(ステージ) = [7]> then\n        hide\n    end\nend\n\nwhen I receive [スタート v]\nwait until <(ステージ) = [8]>\nhide\n\nwhen I receive [スタート v]\nclear graphic effects\ngo to [back v] layer\nforever\n    clear graphic effects\n    repeat (10)\n        change [ghost v] effect by (2)\n    end\n    wait (1) seconds\n    repeat (10)\n        change [ghost v] effect by (-4)\n    end\nend\n\n@スプライト3\n\nwhen I receive [スタート v]\ngo to x: (176) y: (51)\nset [解除 v] to [0]\nhide\nwait until <(ステージ) = [7]>\nshow\nwait until <touching (完成したやつ v)?>\nhide\nset [解除 v] to [1]\nwait (0.1) seconds\nset [解除 v] to [0]\nwait until <(ステージ) = [8]>\nset [解除 v] to [0]\ngo to x: (190) y: (-93)\nshow\nwait until <touching (完成したやつ v)?>\nhide\nset [解除 v] to [1]\nwait (0.1) seconds\nset [解除 v] to [0]\nwait until <(ステージ) = [9]>\nset [解除 v] to [0]\ngo to x: (-205) y: (167)\nshow\nwait until <touching (完成したやつ v)?>\nhide\nset [解除 v] to [1]\nwait (0.1) seconds\nset [解除 v] to [0]\n\n@スプライト2\n\nwhen I receive [スタート v]\nhide\nwait until <(ステージ) = [7]>\nswitch costume to (コスチューム1 v)\nshow\nwait until <(ステージ) = [8]>\nswitch costume to (コスチューム2 v)\nshow\nwait until <(ステージ) = [9]>\nswitch costume to (コスチューム3 v)\nshow\nwait until <(ステージ) = [10]>\nhide\n\nwhen I receive [スタート v]\nclear graphic effects\ngo to [back v] layer\nforever\n    clear graphic effects\n    repeat (10)\n        change [ghost v] effect by (2)\n    end\n    wait (1) seconds\n    repeat (10)\n        change [ghost v] effect by (-4)\n    end\nend\n\n@ターボを対策\n\nwhen I receive [最後 v]\nshow\nstop [all v]\n\nwhen I receive [スタート v]\nforever\n    if <(ターボ対策) > [900]> then\n        broadcast (最後 v)\n    end\nend\n\nwhen I receive [スタート v]\nset [ターボ対策 v] to [0]\nforever\n    change [ターボ対策 v] by (1)\nend\n\nwhen I receive [スタート v]\nhide\nforever\n    wait (0.01) seconds\n    set [ターボ対策 v] to [0]\nend\n\n@スプライト4\n\nwhen I receive [スタート v]\nhide\n\ngo to [front v] layer\n\n