Planets ~ Space platformer [CONTEST ENTRY]

Instructions: __________________Planets__________________\nSTORY: you are an astronaut getting samples from 3 different planets. You start playing after you get the samples from the respective planet.\n\nHOW TO PLAY: to move use wasd or arrow keys. get to the right side of the screen to proceed to the next level. don't touch lava in the first stage, sinking snow in the second stage, and acid in the third stage.\n\nNEW GAME: https://scratch.mit.edu/projects/380301611/\n\nMJM3: the contest \nThepugmen(me): code and art\nBiome (a game made by me and iamapug68): art\ncactus flower: music\n

@Stage\n\nwhen flag clicked\nswitch backdrop to (2 v)\n\nwhen I receive [go v]\nswitch backdrop to (1 v)\n\nwhen I receive [animation1 v]\nwait (3) seconds\nswitch backdrop to (5 v)\n\nwhen I receive [animation2 v]\nwait (3) seconds\nswitch backdrop to (4 v)\n\n@player\n\ndefine say (text)\nset [say v] to []\nset [letter v] to []\nrepeat (length of (text))\n    change [letter v] by (1)\n    set [say v] to (join (say) (letter (letter) of (text)))\n    say (say)\nend\nwait (2.5) seconds\nsay []\n\nwhen flag clicked\nhide\n\nwhen I receive [go v]\nforever\n    go to [front v] layer\n    if <<(y position) < [-175]> or <<<touching color (#fffa00)?> or <touching color (#ffffff)?>> or <touching color (#da5300)?>>> then\n        go to x: (-225) y: (-40)\n        start sound [Drum Boing v]\n        set [x move v] to [0]\n        set [y move v] to [0]\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        change [x move v] by (-1)\n        point in direction (-90)\n    end\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        change [x move v] by (1)\n        point in direction (90)\n    end\nend\n\nwhen I receive [go v]\nshow\n\nwhen I receive [go v]\nset size to (150) %\nswitch costume to (overworld v)\nshow\ngo to x: (-225) y: (-40)\nset [x move v] to [0]\nset [y move v] to [0]\nforever\n    if <<(x position) = [235]> or <(x position) > [235]>> then\n        go to x: (-225) y: (-40)\n        broadcast (next level v)\n    end\nend\n\nwhen I receive [the end :\) v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [go v]\nforever\n    set [x move v] to ((x move) * (0.85))\n    change x by (x move)\n    if <touching (real platformer  v)?> then\n        change y by (-2)\n        if <touching (real platformer  v)?> then\n            change y by (1)\n            if <touching (real platformer  v)?> then\n                change y by (1)\n                if <touching (real platformer  v)?> then\n                    change y by (1)\n                    if <touching (real platformer  v)?> then\n                        change y by (1)\n                        if <touching (real platformer  v)?> then\n                            change y by (1)\n                            if <touching (real platformer  v)?> then\n                                change y by (-5)\n                                change x by ((-1) * (x move))\n                                if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <not <<(x move) = [0]> or <<touching color (#4dd0ff)?> or <touching color (#00a0ff)?>>>>> then\n                                    set [y move v] to [8]\n                                    set [x move v] to (((x move) / ([abs v] of (x move) )) * (-10))\n                                else\n                                    set [x move v] to [0]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n        change y by (2)\n    end\nend\n\nwhen I receive [go v]\nforever\n    change y by (-3)\n    if <touching (real platformer  v)?> then\n        if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n            set [y move v] to [10]\n        end\n    end\n    change y by (3)\n    if <(y move) > [-15]> then\n        change [y move v] by (-0.5)\n    end\n    change y by (-2)\n    if <not <touching (real platformer  v)?>> then\n        change y by (-1)\n        if <not <touching (real platformer  v)?>> then\n            change y by (-1)\n            if <not <touching (real platformer  v)?>> then\n                change y by (-1)\n                if <not <touching (real platformer  v)?>> then\n                    change y by (-1)\n                    if <not <touching (real platformer  v)?>> then\n                        change y by (-1)\n                        if <not <touching (real platformer  v)?>> then\n                            change y by (5)\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (2)\n    change y by (y move)\n    if <touching (real platformer  v)?> then\n        change y by (-2)\n        if <touching (real platformer  v)?> then\n            change y by ((-1) * (y move))\n            set [y move v] to [-3]\n        end\n        change y by (2)\n    end\nend\n\nwhen I receive [go v]\nsay [Time to get back to the ship]\nsay [Use wasd or arrow keys to move]\n\nwhen I receive [animation1 v]\ngo to x: (-225) y: (-40)\nhide\nwait (3) seconds\nsay [Time to get back to the ship]\nsay [brr, its so cold]\n\nwhen I receive [animation2 v]\ngo to x: (-225) y: (-40)\nhide\n\nwhen I receive [animation 3  v]\ngo to x: (-225) y: (-40)\nhide\n\nwhen I receive [next level v]\ngo to x: (-225) y: (-40)\nshow\n\nwhen I receive [animation2 v]\ngo to x: (-225) y: (-40)\nhide\nwait (3) seconds\nsay [Time to get back to the ship]\nsay [that was some tasty candy I mean good samples ]\n\nwhen I receive [animation 3  v]\ngo to x: (-225) y: (-40)\nhide\nwait (3) seconds\nsay [Finally back to earth]\nsay [now... I can take this suit off]\nsay [wait!!! how do I take this suit off!?!?!?!?]\nbroadcast (the end ;\) v)\n\nwhen I receive [the end ;\) v]\nhide\n\n@real platformer \n\nwhen flag clicked\nswitch costume to (costume1 v)\nset [level v] to [1]\nhide\n\nwhen I receive [next level v]\nnext costume\nset [ghost v] effect to (100)\nchange [level v] by (1)\n\nwhen I receive [go v]\nshow\nwait until <(level) = [11]>\nbroadcast (animation1 v)\nwait until <(level) = [18]>\nbroadcast (animation2 v)\nwait until <(level) = [28]>\nbroadcast (animation 3  v)\n\nwhen I receive [next level v]\nshow\n\nwhen I receive [animation2 v]\nhide\n\nwhen I receive [animation 3  v]\nhide\n\nwhen I receive [animation1 v]\nhide\n\nwhen I receive [the end ;\) v]\nhide\n\n@deco\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [next level v]\nshow\n\nwhen I receive [animation2 v]\nhide\n\nwhen I receive [animation 3  v]\nhide\n\nwhen I receive [animation1 v]\nhide\n\nwhen I receive [the end ;\) v]\nhide\n\n@thumb nail\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    reset timer\nend\n\nwhen [timer v] > (0.01)\ngo to [front v] layer\nshow\n\n@animation pt1\n\nwhen I start as a clone\ngo to [front v] layer\nswitch costume to (clone v)\ngo to x: (pick random (-125) to (125)) y: (pick random (-150) to (-50))\nset size to (500) %\nset [ghost v] effect to (50)\nrepeat (15)\n    change size by (4)\nend\n\nwhen I receive [clone delete v]\ndelete this clone\n\nwhen I receive [cutscene start v]\nstart sound [Rocket-SoundBible.com-941967813 v]\nshow\nswitch costume to (1 v)\nset size to (100) %\ngo to x: (0) y: (0)\nrepeat (8)\n    go to [front v] layer\n    show\n    create clone of (_myself_ v)\n    change y by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by ((my variable) * (-1))\n    wait (0.01) seconds\nend\ngo to x: (0) y: (0)\nrepeat (13)\n    next costume\n    wait (.025) seconds\nend\nbroadcast (clone delete v)\nrepeat (12)\n    next costume\n    wait (.01) seconds\nend\nbroadcast (go v)\nhide\ndelete this clone\n\nwhen I receive [animation1 v]\nstart sound [Rocket-SoundBible.com-941967813 v]\nshow\nswitch costume to (mars1 v)\nset size to (100) %\ngo to x: (0) y: (0)\nrepeat (8)\n    go to [front v] layer\n    create clone of (_myself_ v)\n    change y by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by ((my variable) * (-1))\n    wait (0.01) seconds\nend\ngo to x: (0) y: (0)\nrepeat (13)\n    next costume\n    wait (.025) seconds\nend\nbroadcast (clone delete v)\nrepeat (12)\n    next costume\n    wait (.01) seconds\nend\nbroadcast (next level v)\nhide\ndelete this clone\n\nwhen flag clicked\nhide\n\nwhen I receive [animation2 v]\nstart sound [Rocket-SoundBible.com-941967813 v]\n\nwhen I receive [animation 3  v]\nstart sound [Rocket-SoundBible.com-941967813 v]\n\n@animation pt2\n\nwhen I start as a clone\ngo to [front v] layer\nswitch costume to (clone v)\ngo to x: (pick random (-125) to (125)) y: (pick random (-150) to (-50))\nset size to (500) %\nset [ghost v] effect to (50)\nrepeat (15)\n    change size by (4)\nend\n\nwhen I receive [clone delete v]\ndelete this clone\n\nwhen I receive [animation2 v]\nshow\nswitch costume to (1 v)\nset size to (100) %\ngo to x: (0) y: (0)\nrepeat (8)\n    go to [front v] layer\n    create clone of (_myself_ v)\n    change y by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by ((my variable) * (-1))\n    wait (0.01) seconds\nend\ngo to x: (0) y: (0)\nrepeat (13)\n    next costume\n    wait (.025) seconds\nend\nbroadcast (clone delete v)\nrepeat (12)\n    next costume\n    wait (.01) seconds\nend\nbroadcast (next level v)\nhide\ndelete this clone\n\nwhen flag clicked\nhide\n\nwhen I receive [animation 3  v]\nshow\nswitch costume to (mars1 v)\nset size to (100) %\ngo to x: (0) y: (0)\nrepeat (8)\n    go to [front v] layer\n    create clone of (_myself_ v)\n    change y by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by ((my variable) * (-1))\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change y by (my variable)\n    wait (0.01) seconds\n    create clone of (_myself_ v)\n    change x by ((my variable) * (-1))\n    wait (0.01) seconds\nend\ngo to x: (0) y: (0)\nrepeat (14)\n    next costume\n    wait (.025) seconds\nend\nbroadcast (clone delete v)\nrepeat (11)\n    next costume\n    wait (.01) seconds\nend\nbroadcast (next level v)\nhide\ndelete this clone\n\n@Snow\n\nwhen I start as a clone\npoint in direction (180)\nforever\n    move (5) steps\nend\n\nwhen I start as a clone\ngo to [front v] layer\nshow\ngo to x: (pick random (-237) to (237)) y: (179)\nforever\n    repeat until <touching (real platformer  v)?>\n        repeat (5)\n            turn right (pick random (-4) to (4)) degrees\n        end\n        wait (1) seconds\n    end\n    wait until <touching (real platformer  v)?>\n    forever\n        delete this clone\n    end\nend\n\nwhen I receive [go v]\nhide\nforever\n    if <(level) = [12]> then\n        repeat until <(level) = [18]>\n            wait (0.1) seconds\n            create clone of (_myself_ v)\n        end\n    end\nend\n\n@The end\n\nwhen I receive [the end ;\) v]\nshow\n\nwhen flag clicked\nhide\n\nwhen I receive [go v]\nforever\n    play sound [circulate v] until done\nend\n\n@loves, favs\n\nwhen I receive [the end ;\) v]\nhide\nforever\n    wait (.3) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\ngo to [front v] layer\nswitch costume to (pick random (1) to (2))\nset size to (0) %\ngo to (random position v)\npoint in direction (pick random (-180) to (180))\nset [ghost v] effect to (50)\nrepeat (20)\n    change size by (2)\nend\nwait (2) seconds\nrepeat (15)\n    change size by (-2)\nend\ndelete this clone\n\nbroadcast (THE END :\) v)\n\n@introduction \n\nwhen flag clicked\npoint in direction (90)\nset size to (100) %\nintro\n\nwhen I receive [go v]\nswitch costume to (costume2 v)\ngo to [front v] layer\nhide\n\ndefine intro\ngo to x: (0) y: (0)\ngo to [front v] layer\ngo to [front v] layer\nshow\nstart sound [intro song v]\nshow\nswitch costume to (costume1 v)\nrepeat (15)\n    next costume\nend\nswitch costume to (costume16 v)\nrepeat (16)\n    wait (.0003) seconds\n    next costume\nend\nswitch costume to (costume33 v)\nrepeat (6)\n    wait (.0003) seconds\n    next costume\nend\nwait (6) seconds\nbroadcast (cutscene start v)\nhide\nstop [other scripts in sprite v]\n\nwhen flag clicked\nwait (3) seconds\nforever\n    repeat (15)\n        change size by (3)\n    end\n    repeat (5)\n        change size by (-3)\n    end\nend\n\nwhen I receive [the end ;\) v]\ngo to x: (0) y: (100)\nswitch costume to (costume40 v)\npoint in direction (90)\nset size to (4) %\ngo to [front v] layer\nshow\nrepeat (25)\n    change size by (4)\n    turn right (14.4) degrees\nend\nset size to (100) %\n\n