[☁︎Online] Adventure ~a scroll platformer~

Instructions: 宣伝：オンラインバトルゲーム\n https://scratch.mit.edu/projects/872139794\nこのプラットフォーマーはランクが付きます。\n下を読まないと損するよ。\nーーーーーーーーーー操作方法ーーーーーーーーーーー\n[⬆️キー、タップ]：ジャンプ\n[➡️キー、タップ]：右へ移動\n[⬅️キー、タップ]：左へ移動\nランクはゴールしたら左下に表示されます。\nーーーーーーーー確認目安[難易度]ーーーーーーーーーー\n難易度＝星の数\n・難易度0：何もない。進むだけ\n・難易度1：多少の障害物\n・難易度2：多少のテクニックが必要\n・難易度3：複雑なステージと障害物\n・難易度4：多量の障害物、中程度のテクニックが必要\n・難易度5：複雑なステージ、多量の障害物、高度なテクニックが必要\nーーーーーーーー確認目安[ランク]ーーーーーーーーーー\n・E：プラットフォーマーが得意ではない。\n・D：プラットフォーマーを多少はプレイできる\n・C：プラットフォーマーに慣れている\n・B：プラットフォーマーを熟知している\n・A：プラットフォーマーに置いて高度なテクニックを使える\n・S：プラットフォーマーに置いて高度なテクニックを使いこなせる\n・Z：プラットフォーマーに置いて高度なテクニックを使いこなし、なおかつ成功率が高く、より早く動くことができる\nーーーーーーーーーー皆さんへーーーーーーーーーーー\nこのゲームは非常に高難易度です。ステージが少しずつ難しくなっていきます。\n別にクリアできなかったからって悔しがる必要ないからね？だって最後の方はみんなが最も苦手であろう種類のステージを入れてるから。すぐに行けるような人がやばすぎるだけ。\nーーーーーーーーーーーーーーーーーーーーーーーーー\n#プラットフォーマー

@Stage\n\nwhen flag clicked\nwait (0.1) seconds\nplay sound [intro v] until done\nbroadcast (end intro v)\n\nwhen I receive [end intro v]\nplay sound [Post Malone - Circles \(Clean - Lyrics\) v] until done\n\n@One\n\nwhen flag clicked\ngo to [front v] layer\nset size to (150) %\ngo to x: (-197) y: (148)\nshow\nforever\n    if <(Coins) > [10]> then\n        switch costume to (((Coins) mod (10)) + (1))\n    else\n        switch costume to ((Coins) + (1))\n    end\nend\n\n@Ten\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to [front v] layer\nset size to (150) %\ngo to x: (-218) y: (148)\nshow\nforever\n    if <(Coins) > [9]> then\n        switch costume to ((((Coins) - ((Coins) mod (10))) / (10)) + (1))\n    else\n        switch costume to (costume1 v)\n    end\nend\n\n@point\n\nwhen flag clicked\ngo to x: (-194) y: (136)\n\n@MovingPlatform\n\nwhen flag clicked\nhide\ngo to x: (120) y: (-120)\nforever\n    if <(Stage#) = [3]> then\n        show\n        go to x: (120) y: (-120)\n        wait until <not <(Stage#) = [3]>>\n    end\nend\n\nwhen flag clicked\ngo to x: (120) y: (-120)\nforever\n    set y to ((-60) + (([sin v] of (((timer) - (1)) * (30)) ) * (90)))\nend\n\nwhen flag clicked\ngo to [front v] layer\ngo [backward v] (6) layers\nforever\n    if <not <(Stage#) = [3]>> then\n        hide\n    else\n        show\n    end\nend\n\n@NextStage\n\nwhen flag clicked\nshow\nset [stage# v] to [1]\nset [ghost v] effect to (100)\ngo to x: (0) y: (0)\nforever\n    if <(Stage#) = [10]> then\n        hide\n    end\nend\n\n@Coin3\n\nwhen flag clicked\nset [stage# v] to [1]\nforever\n    if <(Stage#) = [1]> then\n        show\n        go to x: (57) y: (1)\n        wait until <not <(Stage#) = [1]>>\n    end\n    if <(Stage#) = [2]> then\n        show\n        go to x: (-23) y: (-70)\n        wait until <not <(Stage#) = [2]>>\n    end\n    if <(Stage#) = [3]> then\n        hide\n    end\n    if <(Stage#) = [4]> then\n        show\n        go to x: (103) y: (59)\n        wait until <not <(Stage#) = [4]>>\n    end\n    if <(Stage#) = [5]> then\n        show\n        go to x: (210) y: (84)\n        wait until <not <(Stage#) = [5]>>\n    end\n    if <(Stage#) = [6]> then\n        show\n        go to x: (93) y: (59)\n        wait until <not <(Stage#) = [6]>>\n    end\n    if <(Stage#) = [7]> then\n        hide\n    end\n    if <(Stage#) = [8]> then\n        hide\n    end\n    if <(Stage#) = [9]> then\n        show\n        go to x: (167) y: (139)\n        wait until <not <(Stage#) = [9]>>\n    end\nend\n\nwhen flag clicked\nhide\nset [coins v] to [0]\nshow\nswitch costume to (costume1 v)\nforever\n    next costume\nend\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        start sound [Coin2 v]\n        hide\n        change [coins v] by (1)\n    end\nend\n\n@Coin2\n\nwhen flag clicked\nforever\n    if <(Stage#) = [1]> then\n        show\n        go to x: (29) y: (-14)\n        wait until <not <(Stage#) = [1]>>\n    end\n    if <(Stage#) = [2]> then\n        show\n        go to x: (5) y: (-56)\n        wait until <not <(Stage#) = [2]>>\n    end\n    if <(Stage#) = [3]> then\n        hide\n    end\n    if <(Stage#) = [4]> then\n        show\n        go to x: (132) y: (79)\n        wait until <not <(Stage#) = [4]>>\n    end\n    if <(Stage#) = [5]> then\n        show\n        go to x: (148) y: (84)\n        wait until <not <(Stage#) = [5]>>\n    end\n    if <(Stage#) = [6]> then\n        show\n        go to x: (65) y: (41)\n        wait until <not <(Stage#) = [6]>>\n    end\n    if <(Stage#) = [7]> then\n        hide\n    end\n    if <(Stage#) = [8]> then\n        hide\n    end\n    if <(Stage#) = [9]> then\n        show\n        go to x: (103) y: (139)\n        wait until <not <(Stage#) = [9]>>\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        start sound [Coin2 v]\n        hide\n        change [coins v] by (1)\n    end\nend\n\nwhen flag clicked\nhide\nset [coins v] to [0]\nshow\nswitch costume to (costume1 v)\nforever\n    next costume\nend\n\n@Coin1\n\ngo to x: (179) y: (18)\n\nwhen flag clicked\n\nwhen I receive [start all v]\nhide\nset [coins v] to [0]\nshow\nswitch costume to (costume1 v)\nforever\n    next costume\nend\n\nwhen I receive [start all v]\nforever\n    if <touching (player v)?> then\n        start sound [Coin2 v]\n        hide\n        change [coins v] by (1)\n    end\nend\n\nwhen I receive [start all v]\nforever\n    if <(Stage#) = [1]> then\n        show\n        go to x: (86) y: (1)\n        wait until <not <(Stage#) = [1]>>\n    end\n    if <(Stage#) = [2]> then\n        show\n        go to x: (33) y: (-70)\n        wait until <not <(Stage#) = [2]>>\n    end\n    if <(Stage#) = [3]> then\n        hide\n    end\n    if <(Stage#) = [4]> then\n        show\n        go to x: (163) y: (79)\n        wait until <not <(Stage#) = [4]>>\n    end\n    if <(Stage#) = [5]> then\n        show\n        go to x: (179) y: (95)\n        wait until <not <(Stage#) = [5]>>\n    end\n    if <(Stage#) = [6]> then\n        show\n        go to x: (123) y: (59)\n        wait until <not <(Stage#) = [6]>>\n    end\n    if <(Stage#) = [7]> then\n        hide\n    end\n    if <(Stage#) = [8]> then\n        hide\n    end\n    if <(Stage#) = [9]> then\n        show\n        go to x: (135) y: (145)\n        wait until <not <(Stage#) = [9]>>\n    end\nend\n\n@Stage\n\nwhen flag clicked\ngo to [back v] layer\nswitch costume to (1 v)\nforever\n    go to x: (0) y: (0)\n    switch costume to (Stage#)\nend\n\nset [stage# v] to [7]\n\ngo [forward v] (1) layers\n\n@Player\n\ndefine Run\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    if <key (right arrow v) pressed?> then\n        change [xv v] by (1)\n        switch costume to (costume3 v)\n    end\n    if <key (left arrow v) pressed?> then\n        change [xv v] by (-1)\n        switch costume to (costume2 v)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <<touching color (#8ab9ff)?> or <<touching color (#c0d9ff)?> or <touching color (#4885e0)?>>> then\n        change y by (1)\n        if <<touching color (#8ab9ff)?> or <<touching color (#c0d9ff)?> or <touching color (#4885e0)?>>> then\n            change y by (1)\n            if <<touching color (#8ab9ff)?> or <<touching color (#c0d9ff)?> or <touching color (#4885e0)?>>> then\n                change y by (1)\n                if <<touching color (#8ab9ff)?> or <<touching color (#c0d9ff)?> or <touching color (#4885e0)?>>> then\n                    change y by (1)\n                    if <<touching color (#8ab9ff)?> or <<touching color (#c0d9ff)?> or <touching color (#4885e0)?>>> then\n                        change y by (1)\n                        if <<touching color (#8ab9ff)?> or <<touching color (#c0d9ff)?> or <touching color (#4885e0)?>>> then\n                            change x by ((Xv) * (-1))\n                            change y by (-5)\n                            if <key (up arrow v) pressed?> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-5]\n                                else\n                                    set [xv v] to [5]\n                                end\n                                set [yv v] to [10]\n                            else\n                                set [xv v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [yv v] by (-1)\n    change y by (Yv)\n    if <<touching color (#8ab9ff)?> or <<touching color (#c0d9ff)?> or <touching color (#4885e0)?>>> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <<touching color (#8ab9ff)?> or <<touching color (#c0d9ff)?> or <touching color (#4885e0)?>>> then\n        if <key (up arrow v) pressed?> then\n            set [yv v] to [15]\n        end\n    end\n    if <touching color (#e34f4f)?> then\n        set [yv v] to [22]\n    end\n    change y by (1)\nend\n\nwhen [r v] key pressed\ngo to x: (-180) y: (-80)\n\nwhen flag clicked\nforever\n    if <touching (nextstage v)?> then\n        go to x: (-180) y: (-80)\n        change [stage# v] by (1)\n    end\nend\n\nwhen flag clicked\ngo to [front v] layer\ngo to x: (-180) y: (-80)\nRun\n\nwhen flag clicked\nforever\n    if <<touching color (#525fce)?> or <touching color (#6676ff)?>> then\n        go to x: (-180) y: (-80)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [end intro v]\nshow\n\n@...\n\nwhen flag clicked\nset [ghost v] effect to (0)\nhide\nrepeat (13)\n    create clone of (_myself_ v)\n    wait (0.2) seconds\nend\nhide\n\nwhen I start as a clone\nset [or v] to (pick random (1) to (2))\nif <(or) = [1]> then\n    go to x: (pick random (-240) to (240)) y: (-200)\nelse\n    go to x: (-270) y: (pick random (-240) to (240))\nend\ngo to [front v] layer\nset size to (pick random (30) to (200)) %\nset [ghost v] effect to (pick random (60) to (90))\nshow\nrepeat until <(x position) > [270]>\n    change x by ((size) / (30))\n    change y by ((size) / (30))\nend\ndelete this clone\n\nwhen I receive [end intro v]\nhide\n\n@c\n\nwhen flag clicked\nswitch costume to (1 v)\nshow\nrepeat until <(costume [number v]) = [11]>\n    next costume\nend\nwait (0.5) seconds\nrepeat until <(costume [number v]) = [28]>\n    next costume\nend\n\nwhen I receive [end intro v]\nhide\n\ngo to [front v] layer\n\n@Sprite1\n\nwhen I receive [end intro v]\nshow\n\nwhen I receive [start all v]\nhide\n\n@Sprite2\n\nwhen this sprite clicked\nbroadcast (Start All v)\nhide\n\nwhen I receive [end intro v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        repeat (10)\n            change size by (1)\n        end\n        repeat (10)\n            change size by (-1)\n        end\n    else\n    end\nend\n\nwhen flag clicked\nhide\n\n@Sprite3\n\nwhen flag clicked\nhide\n\nshow\n\n@Sprite4\n\nwhen flag clicked\nset size to (70) %\nhide\n\nwhen I receive [start all v]\nshow\n\nwhen this sprite clicked\nchange [stage# v] by (1)\n\n@Rain\n\ndefine The start!\ngo to [back v] layer\nshow\nset size to (10) %\nset [ghost v] effect to (pick random (25) to (75))\n\nwhen I start as a clone\nThe start!\ngo to (random position v)\nset y to (180)\nrepeat (55)\n    change y by (-7)\nend\ndelete this clone\n\nwhen I receive [start all v]\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I receive [start all v]\nforever\n    play sound [Rain v] until done\nend\n\n