Archery Platformer

Instructions: 神イラスト⤵︎\nhttps://scratch.mit.edu/projects/944269649/\nスクサバイバー(神ゲー)⤵︎\nhttps://scratch.mit.edu/projects/882976590/\nSKY MOONプロコン⤵︎\nhttps://scratch.mit.edu/projects/938899949/\n日本語は下\n~English~\n{Game description}\nYou are Santa Claus, and the purpose is to deliver gifts to the house on the stage. There are 5 houses, and if you deliver gifts to all the houses, it's clear.\nBy pressing hearts and stars, you will be able to use rainbow costumes.\n{How to operate}\nOperate with arrow keys or taps.\n\n~日本語~\n{ゲームの説明}\nあなたはサンタクロースで、目的はステージ上の家にプレゼントを届けることです。5軒の家があり、すべての家に贈り物を届ければクリアです\nハートと星を押すことで、虹のスキンを使うことができます。\n{操作方法}\n矢印キーまたはタップで操作します。

@Stage\n\nwhen flag clicked\nforever\n    play sound [C418 - Aria Math \(Minecraft Volume Beta\)3 v] until done\nend\n\n@Sprite8\n\nwhen flag clicked\nshow\ngo to x: (-193) y: (-10)\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    if <key (right arrow v) pressed?> then\n        change [xv v] by (0.7)\n        point in direction (90)\n        next costume\n    end\n    if <key (left arrow v) pressed?> then\n        change [xv v] by (-0.7)\n        point in direction (-90)\n        next costume\n    end\n    change x by (Xv)\n    set [xv v] to ((Xv) * (0.9))\n    if <touching (sprite2 v)?> then\n        change y by (0.5)\n        if <touching (sprite2 v)?> then\n            change y by (0.5)\n            if <touching (sprite2 v)?> then\n                change y by (0.5)\n                if <touching (sprite2 v)?> then\n                    change y by (0.5)\n                    if <touching (sprite2 v)?> then\n                        change y by (0.5)\n                        if <touching (sprite2 v)?> then\n                            change y by (0.5)\n                            if <touching (sprite2 v)?> then\n                                change y by (0.5)\n                                if <touching (sprite2 v)?> then\n                                    change y by (0.5)\n                                    if <key (up arrow v) pressed?> then\n                                        switch costume to (idle/jump v)\n                                        if <[0] < (Xv)> then\n                                            set [xv v] to [-7]\n                                        else\n                                            set [xv v] to [7]\n                                        end\n                                        set [yv v] to [10]\n                                    else\n                                        set [xv v] to ((Xv) * (-1.3))\n                                        change x by (Xv)\n                                        set [xv v] to [0]\n                                        change x by ((Xv) / (5))\n                                    end\n                                    change y by (-4)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [yv v] by (-0.5)\n    change y by (Yv)\n    if <touching (sprite2 v)?> then\n        set [yv v] to ((Yv) * (-0.25))\n        change y by (Yv)\n        if <touching (sprite2 v)?> then\n            change y by (Yv)\n            if <touching (sprite2 v)?> then\n                change y by (Yv)\n                if <touching (sprite2 v)?> then\n                    change y by (Yv)\n                end\n            end\n        end\n    end\n    change y by (-1)\n    if <<key (up arrow v) pressed?> and <touching (sprite2 v)?>> then\n        switch costume to (idle/jump v)\n        set [yv v] to [7]\n    end\n    change y by (1)\n    if <touching (sprite7 v)?> then\n        set [ghost v] effect to (0)\n        start sound (pick random (1) to (3))\n        broadcast (oof v)\n        wait (0.1) seconds\n        go to x: (-193) y: (-10)\n        set [ghost v] effect to (100)\n        set [xv v] to [0]\n        set [yv v] to [0]\n    end\n    if <touching (sprite12 v)?> then\n        set [touching ground? v] to [1]\n        if <key (up arrow v) pressed?> then\n            set [yv v] to [4]\n        else\n            set [yv v] to [-2.5]\n        end\n    else\n        set [touching ground? v] to [0]\n    end\nend\n\nchange [x v] by (0.5)\n\nchange [x v] by (-0.5)\n\nif <(Xv) > [0]> then\n    set [xv v] to [-5]\nelse\n    set [xv v] to [5]\nend\nset [yv v] to [12]\n\nwhen flag clicked\nset [ghost v] effect to (100)\nset [xv v] to [0]\nset [yv v] to [0]\nshow\n\nswitch costume to (costume15 v)\n\nshow\n\nwhen I receive [next v]\ngo to x: (-193) y: (-10)\n\nwhen I receive [restart v]\ngo to x: (-193) y: (-10)\n\nchange [yv v] by (0.5)\n\nchange [yv v] by (-0.01)\n\nstart sound [recording1 v]\n\nwhen I receive [end end v]\nstop [other scripts in sprite v]\n\nturn right (15) degrees\n\n@Sprite9\n\nwhen flag clicked\ngo to [back v] layer\nset [ghost v] effect to (25)\ncreate clone of (_myself_ v)\ngo to x: (135) y: (120)\nforever\n    change x by (-0.6)\n    if <(x position) = [-277]> then\n        go to x: (180) y: (120)\n    end\nend\n\nwhen I start as a clone\ngo to [back v] layer\nset [ghost v] effect to (25)\ngo to x: (232) y: (140)\nforever\n    change x by (-0.5)\n    if <(x position) = [-268]> then\n        go to x: (232) y: (140)\n    end\nend\n\n@Sprite2\n\nwhen flag clicked\nset [level v] to [1]\nswitch costume to (costume1 v)\n\nwhen I receive [next v]\nnext costume\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [11]> then\n        broadcast (end v)\n        stop [this script v]\n    end\nend\n\n@Sprite3\n\nwhen flag clicked\nforever\n    if <<key (up arrow v) pressed?> and <(touching ground?) = [1]>> then\n        wait until <(touching ground?) = [0]>\n        play sound [recording1 v] until done\n    end\nend\n\n@Sprite4\n\nwhen flag clicked\nhide\n\ngo to [front v] layer\n\n@Sprite5\n\nwhen flag clicked\nforever\n    play sound [C418 - Sweden \(Caution & Crisis Remix\) v] until done\nend\n\n@Sprite6\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    if <touching (sprite8 v)?> then\n        broadcast (next v)\n    end\nend\n\n@Sprite7\n\nwhen flag clicked\nswitch costume to (costume3 v)\n\nwhen I receive [next v]\nnext costume\n\n@Sprite10\n\ndefine Movement\n\nwhen flag clicked\nforever\n    go to (sprite8 v)\n    if <not <key (any v) pressed?>> then\n        switch costume to (arm4 v)\n    end\n    if <<key (up arrow v) pressed?> and <key (right arrow v) pressed?>> then\n        switch costume to (costume4 v)\n    end\n    if <<key (up arrow v) pressed?> and <key (left arrow v) pressed?>> then\n        switch costume to (costume4 v)\n    end\n    if <(costume [name v]) = [extra]> then\n        switch costume to (arm4 v)\n    end\n    if <<key (down arrow v) pressed?> and <not <<key (up arrow v) pressed?> or <<key (left arrow v) pressed?> or <key (right arrow v) pressed?>>>>> then\n        switch costume to (costume16 v)\n    end\nend\n\nsay [Hello!] for (2) seconds\n\nwhen flag clicked\nset [xv v] to [0]\nset [yv v] to [0]\n\nset [xv v] to ((Xv) * (0.9))\nchange x by (Xv)\n\nwhen flag clicked\nshow\nforever\n    if  then\n        point in direction (-90)\n        next costume\n    end\n    if  then\n        point in direction (90)\n        next costume\n    end\n    if <touching (sprite2 v)?> then\n        set [touching ground? v] to [1]\n    else\n        set [touching ground? v] to [0]\n    end\nend\n\nchange [xv v] by (-1)\n\nchange [xv v] by (1)\n\n\n\nstart sound (pick random (1) to (3))\n\nhide\nwait (0.1) seconds\nshow\n\nwhen I receive [oof v]\nswitch costume to (costume8 v)\nhide\nwait (0.2) seconds\nshow\n\n@Sprite1\n\nwhen flag clicked\nshow\nforever\n    if <touching (sprite8 v)?> then\n        say [Welcome! Arrow keys to move, try not to touch lava or cacti! Good luck!]\n    else\n        say []\n    end\nend\n\nwhen I receive [next v]\nhide\n\n@Sprite11\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to (105) %\n    else\n        set size to (100) %\n    end\nend\n\nwhen this sprite clicked\nbroadcast (restart v)\n\n@Sprite12\n\nwhen flag clicked\ngo to [front v] layer\nset [ghost v] effect to (25)\nswitch costume to (costume8 v)\n\nwhen I receive [next v]\nnext costume\n\n@Sprite13\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [next v]\nnext costume\n\n@Sprite14\n\nwhen flag clicked\nhide\nset rotation style [left-right v]\nforever\n    point towards (sprite8 v)\n    if <touching (sprite8 v)?> then\n        say [Good job! The chest behind me contains your prize! You deserve it for traveling this far!]\n    else\n        say []\n    end\nend\n\nwhen I receive [end v]\nshow\n\nwhen I receive [end end v]\nsay []\nstop [other scripts in sprite v]\n\n@Sprite15\n\nwhen flag clicked\nhide\nforever\n    if <touching (sprite8 v)?> then\n        broadcast (end end v)\n    end\nend\n\nwhen I receive [end v]\nshow\n\n@Sprite17\n\nwhen flag clicked\nhide\nset [ghost v] effect to (100)\n\nwhen I receive [end end v]\nshow\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\n\n@Sprite16\n\nwhen flag clicked\nhide\n\ngo to [front v] layer\n\nwhen flag clicked\nhide\n\n