カービィのプラットフォーマー 　Kirby's Platformer

Instructions: https://scratch.mit.edu/projects/585018304\n新作です!!\n \n[日本語]\n↑ ↓ → ←を使って操作します。画面をタッチしても動かすことができます。\nZキーを押すとリセットします。\n穴に落ちたり、ゴルドーというトゲトゲしたキャラクターに触れてはいけません。\n右端に行くと次のステージに進めます。\n全部で10ステージです。\n一回目のクリアでメタナイト、デデデ大王、ワドルディが使えるようになります。二回目のクリアでは...\n\n[English]\nUse ↑ ↓ → ← to move. You can also move it by touching \nthe screen.\nReset with Z key.\nDon't fall into a hole or touch a spiky character called Gordo.\nIf you go to the right end, you will advance to the next stage.\nThere are 10 stages in total.\nThe first clear will allow you to use Meta Knight, King Dedede, and Waddle Dee. In the second clear ...

@Stage\n\nwhen flag clicked\nset [キャラ v] to [1]\nswitch backdrop to (背景 v)\nforever\n    reset timer\n    change [ターボ対策 v] by (1)\nend\n\nwhen [timer v] > (0)\nbroadcast (停止ボタン v)\n\nwhen flag clicked\nforever\n    set [ターボ対策 v] to [0]\n    wait (0.001) seconds\n    if <[3] < (ターボ対策)> then\n        stop [all v]\n    end\nend\n\nif <[0] < (クリア回数)> then\n    if <key (m v) pressed?> then\n        set [キャラ v] to [2]\n    end\n    if <key (w v) pressed?> then\n        set [キャラ v] to [3]\n    end\n    if <key (d v) pressed?> then\n        set [キャラ v] to [4]\n    end\nend\nif <[1] < (クリア回数)> then\n    if <key (s v) pressed?> then\n        set [キャラ v] to [5]\n    end\nend\n\n@プレイヤー\n\nwhen I start as a clone\nrepeat (5)\n    change [ghost v] effect by (20)\n    change size by (-5)\nend\ndelete this clone\n\ndefine リセット\nif <(キャラ) = [1]> then\n    switch costume to (カービィ v)\nend\nif <(キャラ) = [2]> then\n    switch costume to (メタナイト v)\nend\nif <(キャラ) = [3]> then\n    switch costume to (デデデ v)\nend\nif <(キャラ) = [4]> then\n    switch costume to (ワドルディ v)\nend\nif <(キャラ) = [5]> then\n    switch costume to (マホロア v)\nend\nset [x v] to [0]\nset [y v] to [0]\nif <(ステージ) = [10]> then\n    go to x: (-210) y: (-108)\nelse\n    if <(ステージ) = [11]> then\n        go to x: (0) y: (-80)\n    else\n        go to x: (-180) y: (-80)\n    end\nend\n\nwhen I receive [次へ v]\nwait (1) seconds\nforever\n    if <(感知) = [1]> then\n        リセット\n    end\nend\n\nwhen I receive [停止ボタン v]\nhide\n\ndefine 死んだんじゃないの\nリセット\nset [声 v] to [0]\nif <(キャラ) = [1]> then\n    set [声 v] to (pick random (1) to (7))\nend\nif <<(キャラ) = [2]> or <(キャラ) = [3]>> then\n    set [声 v] to (pick random (1) to (3))\nend\nstart sound [激突 v]\nif <(キャラ) = [1]> then\n    if <(声) = [1]> then\n        start sound [カービィ v]\n    end\n    if <(声) = [2]> then\n        start sound [カービィ2 v]\n    end\n    if <(声) = [3]> then\n        start sound [カービィ3 v]\n    end\n    if <(声) = [4]> then\n        start sound [カービィ4 v]\n    end\n    if <(声) = [5]> then\n        start sound [カービィ5 v]\n    end\n    if <(声) = [6]> then\n        start sound [カービィ6 v]\n    end\n    if <(声) = [7]> then\n        start sound [カービィ7 v]\n    end\nend\nif <(キャラ) = [2]> then\n    if <(声) = [1]> then\n        start sound [メタナイト v]\n    end\n    if <(声) = [2]> then\n        start sound [メタナイト2 v]\n    end\n    if <(声) = [3]> then\n        start sound [メタナイト3 v]\n    end\nend\nif <(キャラ) = [3]> then\n    if <(声) = [1]> then\n        start sound [デデ v]\n    end\n    if <(声) = [2]> then\n        start sound [デデデ v]\n    end\n    if <(声) = [3]> then\n        start sound [デデデ2 v]\n    end\nend\nif <(キャラ) = [5]> then\n    start sound [マホロア v]\nend\nリセット\n\nwhen flag clicked\nhide\nset [ステージ v] to [1]\nforever\n    if <(ステージ) = [10]> then\n        if <<[-179] > (y position)> or <touching (ゴルドー v)?>> then\n            死んだんじゃないの\n        end\n    else\n        if <<(y position) = [-184]> or <touching (ゴルドー v)?>> then\n            死んだんじゃないの\n        end\n    end\n    if <key (z v) pressed?> then\n        リセット\n    end\n    if <(ステージ) = [10]> then\n        if <[239] < (x position)> then\n            broadcast (次へ v)\n            wait (1) seconds\n            リセット\n        end\n    else\n        if <(ステージ) = [11]> then\n            stop [this script v]\n        else\n            if <[243] < (x position)> then\n                broadcast (次へ v)\n                wait (1) seconds\n                リセット\n            end\n        end\n    end\nend\n\nwhen I receive [開始 v]\nshow\nset [x v] to [0]\nset [y v] to [0]\ngo to x: (-180) y: (-80)\nset rotation style [left-right v]\npoint in direction (90)\nforever\n    create clone of (_myself_ v)\n    if <(ステージ) = [10]> then\n        set size to (50) %\n        change y by (0.5)\n        change [y v] by (-0.5)\n    else\n        set size to (100) %\n        change y by (1)\n        change [y v] by (-1)\n    end\n    if <<key (right arrow v) pressed?> or <<(x position) < (mouse x)> and <mouse down?>>> then\n        point in direction (90)\n        if <(しゃがみ) = [0]> then\n            if <(ステージ) = [10]> then\n                change [x v] by (0.5)\n            else\n                change [x v] by (1)\n            end\n        end\n    end\n    if <<key (left arrow v) pressed?> or <<(mouse x) < (x position)> and <mouse down?>>> then\n        point in direction (-90)\n        if <(しゃがみ) = [0]> then\n            if <(ステージ) = [10]> then\n                change [x v] by (-0.5)\n            else\n                change [x v] by (-1)\n            end\n        end\n    end\n    set [x v] to ((x) * (0.9))\n    change x by (x)\n    if <(ステージ) = [10]> then\n        if <touching (ステージ v)?> then\n            change y by (0.5)\n            if <touching (ステージ v)?> then\n                change y by (0.5)\n                if <touching (ステージ v)?> then\n                    change y by (0.5)\n                    if <touching (ステージ v)?> then\n                        change y by (0.5)\n                        if <touching (ステージ v)?> then\n                            change y by (0.5)\n                            if <touching (ステージ v)?> then\n                                change y by (0.5)\n                                if <touching (ステージ v)?> then\n                                    change y by (0.5)\n                                    if <touching (ステージ v)?> then\n                                        change y by (0.5)\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    else\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 y by (1)\n                                    if <touching (ステージ v)?> then\n                                        change y by (1)\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    if <touching (ステージ v)?> then\n        if <(ステージ) = [10]> then\n            change y by (-4)\n        else\n            change y by (-8)\n        end\n        change x by ((x) * (-1))\n        if <(しゃがみ) = [0]> then\n            if <<key (up arrow v) pressed?> or <<(y position) < (mouse y)> and <mouse down?>>> then\n                start sound [ジャンプ v]\n                if <(ステージ) = [10]> then\n                    set [y v] to [6]\n                    if <(x) > [0]> then\n                        set [x v] to [-4]\n                    else\n                        set [x v] to [4]\n                    end\n                else\n                    set [y v] to [12]\n                    if <(x) > [0]> then\n                        set [x v] to [-8]\n                    else\n                        set [x v] to [8]\n                    end\n                end\n            else\n                set [x v] to [0]\n            end\n        end\n    end\n    change y by (y)\n    if <touching (ステージ v)?> then\n        change y by (() - (y))\n        set [y v] to [0]\n    end\n    if <(ステージ) = [10]> then\n        change y by (-0.5)\n    else\n        change y by (-1)\n    end\n    if <(感知) = [0]> then\n        if <not <key (z v) pressed?>> then\n            if <(しゃがみ) = [0]> then\n                if <<<key (up arrow v) pressed?> and <touching (ステージ v)?>> or <<<(y position) < (mouse y)> and <mouse down?>> and <touching (ステージ v)?>>> then\n                    start sound [ジャンプ v]\n                    if <(ステージ) = [10]> then\n                        set [y v] to [7]\n                    else\n                        set [y v] to [14]\n                    end\n                end\n            end\n            if <<key (down arrow v) pressed?> and <touching (ステージ v)?>> then\n                set [しゃがみ v] to [1]\n                if <(キャラ) = [1]> then\n                    switch costume to (カービィ2 v)\n                end\n                if <(キャラ) = [2]> then\n                    switch costume to (メタナイト2 v)\n                end\n                if <(キャラ) = [3]> then\n                    switch costume to (デデデ2 v)\n                end\n                if <(キャラ) = [4]> then\n                    switch costume to (ワドルディ2 v)\n                end\n                if <(キャラ) = [5]> then\n                    switch costume to (マホロア2 v)\n                end\n            else\n                set [しゃがみ v] to [0]\n                if <(キャラ) = [1]> then\n                    switch costume to (カービィ v)\n                end\n                if <(キャラ) = [2]> then\n                    switch costume to (メタナイト v)\n                end\n                if <(キャラ) = [3]> then\n                    switch costume to (デデデ v)\n                end\n                if <(キャラ) = [4]> then\n                    switch costume to (ワドルディ v)\n                end\n                if <(キャラ) = [5]> then\n                    switch costume to (マホロア v)\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [開始 v]\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\n@ゴルドー\n\nwhen I start as a clone\nforever\n    if <<(ステージ) = [8]> or <(ステージ) = [10]>> then\n        show\n    else\n        delete this clone\n    end\nend\n\nwhen I receive [ステージ変更 v]\nif <(ステージ) = [8]> then\n    go to x: (-90) y: (0)\n    create clone of (_myself_ v)\n    go to x: (100) y: (0)\n    create clone of (_myself_ v)\nend\nif <(ステージ) = [10]> then\n    set size to (25) %\n    go to x: (-85) y: (60)\n    create clone of (_myself_ v)\nend\nstop [this script v]\n\nwhen I start as a clone\nforever\n    repeat (3)\n        next costume\n        wait (0.05) seconds\n    end\n    wait (0.45) seconds\n    switch costume to (コスチューム4 v)\n    wait (0.05) seconds\n    switch costume to (コスチューム3 v)\n    wait (0.05) seconds\n    switch costume to (コスチューム1 v)\n    wait (0.55) seconds\nend\n\nwhen I start as a clone\nforever\n    if <(ステージ) = [8]> then\n        repeat (50)\n            change y by (-3)\n        end\n        repeat (50)\n            change y by (3)\n        end\n    end\n    if <(ステージ) = [10]> then\n        repeat (40)\n            change y by (-1.5)\n        end\n        repeat (40)\n            change y by (1.5)\n        end\n    end\nend\n\nwhen flag clicked\nhide\nset size to (50) %\nswitch costume to (コスチューム1 v)\ndelete this clone\n\nwhen I receive [停止ボタン v]\nhide\n\n@演出\n\nwhen I receive [次へ v]\nset [感知 v] to [1]\nshow\nset [ghost v] effect to (0)\nswitch costume to (コスチューム1 v)\nrepeat (8)\n    next costume\nend\nwait (1) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nset [感知 v] to [0]\nhide\nbroadcast (初期化 v)\n\nwhen flag clicked\nset [感知 v] to [0]\nhide\n\nwhen I receive [停止ボタン v]\nhide\n\n@ゴール後\n\nwhen I receive [ステージ変更 v]\nif <(ステージ) = [11]> then\n    show\n    if <(クリア回数) = [1]> then\n        switch costume to (クリア v)\n    else\n        if <(クリア回数) = [2]> then\n            switch costume to (クリア2 v)\n        else\n            switch costume to (クリア3 v)\n        end\n    end\nend\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\n\nwhen I receive [停止ボタン v]\nhide\n\n@変更完了\n\nwhen flag clicked\nhide\nif <[0] < (クリア回数)> then\n    show\n    forever\n        if <(しゃがみ) = [0]> then\n            set [brightness v] effect to (0)\n            if <<key (space v) pressed?> or <<touching (mouse-pointer v)?> and <mouse down?>>> then\n                broadcast (キャラ変更終了 v)\n                stop [this script v]\n            end\n        else\n            set [brightness v] effect to (-50)\n        end\n    end\nelse\n    broadcast (開始 v)\nend\n\nwhen I receive [キャラ変更終了 v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nbroadcast (開始 v)\n\nwhen I receive [停止ボタン v]\nhide\n\n@キャラ変更時\n\nwhen flag clicked\nset [キャラ v] to [1]\nswitch costume to (カービィ v)\nset [しゃがみ v] to [0]\nhide\ngo to x: (0) y: (30)\nif <[0] < (クリア回数)> then\n    show\n    forever\n        if <(しゃがみ) = [0]> then\n            if <<key (left arrow v) pressed?> or <<mouse down?> and <[0] < (mouse x)>>> then\n                broadcast (キャラ次へ v)\n            end\n            if <<key (right arrow v) pressed?> or <<mouse down?> and <[0] > (mouse x)>>> then\n                broadcast (キャラ前へ v)\n            end\n            wait until <not <<key (right arrow v) pressed?> or <key (left arrow v) pressed?>>>\n        end\n    end\nend\n\nwhen I receive [キャラ次へ v]\nset [しゃがみ v] to [1]\ngo to x: (0) y: (30)\nset [x v] to [0]\nrepeat (12)\n    change [x v] by (4.2)\n    change x by (x)\nend\nif <(クリア回数) = [1]> then\n    if <(キャラ) = [4]> then\n        set [キャラ v] to [1]\n    else\n        change [キャラ v] by (1)\n    end\nelse\n    if <(キャラ) = [5]> then\n        set [キャラ v] to [1]\n    else\n        change [キャラ v] by (1)\n    end\nend\nswitch costume to (キャラ)\ngo to x: (-300) y: (30)\nrepeat (23)\n    change x by (((0) - (x position)) / (4))\nend\nset [しゃがみ v] to [0]\n\nrepeat (12)\n    change [x v] by (-4)\n    change x by (x)\nend\n\nwhen I receive [キャラ前へ v]\nset [しゃがみ v] to [1]\ngo to x: (0) y: (30)\nset [x v] to [0]\nrepeat (12)\n    change [x v] by (-4.2)\n    change x by (x)\nend\nif <(クリア回数) = [1]> then\n    if <(キャラ) = [1]> then\n        set [キャラ v] to [4]\n    else\n        change [キャラ v] by (-1)\n    end\nelse\n    if <(キャラ) = [1]> then\n        set [キャラ v] to [5]\n    else\n        change [キャラ v] by (-1)\n    end\nend\nswitch costume to (キャラ)\ngo to x: (300) y: (30)\nrepeat (23)\n    change x by (((0) - (x position)) / (4))\nend\nset [しゃがみ v] to [0]\n\nrepeat (12)\n    change [x v] by (4)\n    change x by (x)\nend\n\nwhen I receive [キャラ変更終了 v]\nstop [other scripts in sprite v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [停止ボタン v]\nhide\n\n@スプライト1\n\nwhen I receive [停止ボタン v]\nset [ghost v] effect to (100)\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nforever\n    play sound [ナッツヌーン v] until done\nend\n\nwhen flag clicked\nhide\n\nset [pixelate v] effect to (50)\n\nwhen I receive [キャラ変更終了 v]\n\n@ステージ\n\nwhen I receive [次へ v]\nstart sound [とびら v]\nwait (1) seconds\nchange [ステージ v] by (1)\nif <(ステージ) = [11]> then\n    change [クリア回数 v] by (1)\nend\nbroadcast (ステージ変更 v)\n\nwhen flag clicked\nshow\nswitch costume to (1 v)\nforever\n    play sound [雲の夢 v] until done\nend\n\nwhen flag clicked\nforever\n    if <(ステージ) = [6]> then\n        stop [other scripts in sprite v]\n        broadcast (スカイタワー v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [スカイタワー v]\nforever\n    play sound [スカイタワー v] until done\nend\n\nwhen I receive [停止ボタン v]\nhide\n\nwhen I receive [ステージ変更 v]\nif <(ステージ) = [11]> then\n    if <(クリア回数) = [1]> then\n        switch costume to (終1 v)\n    else\n        if <(クリア回数) = [2]> then\n            switch costume to (終2 v)\n        else\n            switch costume to (終3 v)\n        end\n    end\nelse\n    switch costume to (ステージ)\nend\n\n