Acid Moon | Scrolling Platformer

Instructions: --------------------->     Acid Moon\n\nYou are an astronaut of the U.S.A, you will investigate the Moon, recent reports show the moon's gravity has gotten stronger... this is part 1 of my new series "The Exploration Trilogy" (Btw the earth does in fact move as the player gets farther into the game)                                    How to play↴\n\nHow to play: To move use WASD or arrow keys, don't touch the acid (the green stuff) Parkour all the way to the other side to beat the game, no checkpoints because it will be too easy. This is a scrolling platformer so... ya. ----------> CLICK SPACE TO SKIP INTRO\n\nThe things you should do: Love and favorite this game maybe even a follow :D... why? because It took a lot of time and effort to make this game. If don't want to that's fine! Tell me your score in the comments!\n\nJoin the official studio for the game!\nhttps://scratch.mit.edu/studios/27975986/projects/ \n\nPART 2 OF THE GAME::\nhttps://scratch.mit.edu/projects/447973432/\n\nCredits:\n@Thepugmen (me): for all art and 50% of all code \n\n@jromagnoli: for the other 50% of code\n\ndimrain47: intro music\n\nMinecraft: for music\n\n------------------------------------------->\n#game #Game #GAME #Fun #FUN #happy #HAPPY #Moon #space #unstoppable #project #Thepugmen #Play #platfomer #Platfomer #Mobile #Mobilefrendly #LOVE #Favrote #Now #trending #dimrain47 #Music #Art #Animation #Games #Scratch #Dodge #Ar #Music #Enemy #Enemies #Space #Orange #Playing #Dodging #Play #Square #Cube #Thumbnail #Colors  #Cool #Awesome #Good #Great #Walking #Moving #Comment #Sequel #Difficulty #Wave #Easy #Normal #Hard #Animations #All  #Art #Music #Stories #Tutorials\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n( ͡° ͜ʖ ͡°)    -    Yo!

@Stage\n\nwhen I receive [go v]\nforever\n    play sound [Minecraft OST - So Below v] until done\nend\n\n@Player\n\nwhen flag clicked\nhide\nset size to (100) %\ngo to [front v] layer\nset [default size v] to [0]\n\ndefine out\nif <(y) < [-1]> then\n    repeat until <not <touching (platform2 v)?>>\n        change y by (1)\n    end\nelse\n    change y by ((y) * (-1))\nend\nset [y v] to [0]\n\ndefine out2\nset [i1 v] to [0]\nrepeat until <(i1) = [20]>\n    if <touching (platform2 v)?> then\n        stop [this script v]\n    end\n    change [i1 v] by (1)\n    change y by (-1)\nend\nchange y by (20)\n\nwhen I receive [go v]\nshow\nforever\n    switch costume to (hitbox v)\n    go to x: (default size) y: (y position)\n    if <key (right arrow v) pressed?> then\n        point in direction (90)\n        change [x v] by (.7)\n    end\n    if <key (left arrow v) pressed?> then\n        point in direction (-90)\n        change [x v] by (-.7)\n    end\n    set [x v] to ((x) * (0.9))\n    change x by (x)\n    if <touching (platform2 v)?> then\n        change y by (1)\n        if <touching (platform2 v)?> then\n            change y by (1)\n            if <touching (platform2 v)?> then\n                change y by (1)\n                if <touching (platform2 v)?> then\n                    change y by (1)\n                    if <touching (platform2 v)?> then\n                        change y by (1)\n                        if <touching (platform2 v)?> then\n                            change x by ((x) * (-1))\n                            change y by (-5)\n                            if <key (up arrow v) pressed?> then\n                                if <(x) > [0]> then\n                                    set [x v] to [-3]\n                                else\n                                    set [x v] to [3]\n                                end\n                                set [y v] to [12.5]\n                            else\n                                set [x v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [y v] by (-1.5)\n    change y by (y)\n    if <touching (platform2 v)?> then\n        out\n        if <key (up arrow v) pressed?> then\n            set [y v] to [13]\n        end\n        out2\n    end\n    if <[3] > (item (last) of [infront v])> then\n        set [default size v] to (x position)\n        if <not <(x position) > [0]>> then\n            set [default size v] to [0]\n            change [scrollx v] by ((x) * (-1))\n        end\n    else\n        if <(item (1) of [infront v]) > [0]> then\n            set [default size v] to (x position)\n            if <not <[0] > (x position)>> then\n                set [default size v] to [0]\n                change [scrollx v] by ((x) * (-1))\n            end\n        else\n            set [default size v] to [0]\n            change [scrollx v] by ((x) * (-1))\n        end\n    end\n    if <[-170] > (y position)> then\n        set [scrollx v] to [0]\n        go to x: (0) y: (0)\n    end\n    if <<(y) = [0]> and <([abs v] of (x) ) > [2]>> then\n        change [i v] by (0.5)\n        switch costume to (american v)\n    else\n        switch costume to (american v)\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <<touching color (#00ff11)?> or <touching color (#00be3f)?>> then\n        start sound [Clang v]\n        set [scrollx v] to [0]\n        go to x: (0) y: (0)\n    end\n    if <touching color (#ea0000)?> then\n        broadcast (END \(for now\) v)\n        hide\n        stop [other scripts in sprite v]\n        stop [this script v]\n    end\nend\n\n@Decoration\n\nwhen flag clicked\nset [scrollx v] to [0]\ngo to x: (0) y: (0)\nswitch costume to ((1) / (1))\nhide\n\nwhen I start as a clone\nshow\nforever\n    go to x: ((scrollx) + (((costume [number v]) - (1)) * (480))) y: (0)\n    if <<(x position) > [463.9]> or <[-463.9] > (x position)>> then\n        hide\n    else\n        show\n    end\n    replace item (costume [number v]) of [infront v] with (x position)\nend\n\nwhen I receive [go v]\nset [ghost v] effect to (0)\nrepeat (15)\n    create clone of (_myself_ v)\n    next costume\nend\n\nwhen I receive [end \(for now\) v]\nrepeat (50)\n    change [ghost v] effect by (2)\nend\n\n@Platform2\n\nwhen I start as a clone\nshow\nforever\n    go to x: ((scrollx) + (((costume [number v]) - (1)) * (480))) y: (0)\n    if <<(x position) > [463.9]> or <[-463.9] > (x position)>> then\n        hide\n    else\n        show\n    end\nend\n\nwhen flag clicked\nset [scrollx v] to [0]\ngo [backward v] (3) layers\nset [ghost v] effect to (100)\ngo to x: (0) y: (0)\nswitch costume to ((1) / (1))\nhide\n\nwhen I receive [go v]\nrepeat (15)\n    create clone of (_myself_ v)\n    next costume\nend\n\n@border thingy\n\nwhen flag clicked\ngo to [front v] layer\nhide\n\nwhen I receive [go v]\nshow\ngo to [front v] layer\nforever\n    go to x: (0) y: (0)\nend\n\nwhen I receive [go v]\ngo to [front v] layer\n\n@SCROLLING BG\n\nwhen flag clicked\ngo to x: (0) y: (50)\ngo to [back v] layer\n\nwhen I receive [go v]\nforever\n    set x to ((scrollx) / (25))\nend\n\nwhen I receive [end \(for now\) v]\nstop [other scripts in sprite v]\nglide (1) secs to x: (-90) y: (50)\n\n@Thumbnail\n\nwhen flag clicked\ngo to x: (0) y: (0)\nswitch costume to (costume5 v)\nset [ghost v] effect to (100)\n\nwhen I receive [go v]\nshow\nforever\n    go to [front v] layer\nend\n\n@Fade\n\nwhen I receive [menu v]\ngo to [front v] layer\nbroadcast (GO v)\nrepeat (50)\n    change [ghost v] effect by (2)\nend\n\nwhen flag clicked\nshow\ngo to [back v] layer\ngo to x: (0) y: (0)\nset [ghost v] effect to (0)\n\n@introduction \n\nwhen flag clicked\nwait (2.9) seconds\nforever\n    repeat (10)\n        change size by (3)\n    end\n    repeat (3)\n        change size by (-3)\n    end\nend\n\nwhen I receive [end \(for now\) 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) %\nbroadcast (love and fav  v)\n\nwhen I receive [menu v]\nswitch costume to (costume2 v)\ngo to [front v] layer\nhide\n\ndefine intro\ngo to [front v] layer\ngo to [front v] layer\nshow\nstart sound [intro song v]\nrepeat until <(costume [number v]) = [16]>\n    next costume\nend\nswitch costume to (costume17 v)\nrepeat until <(costume [number v]) = [32]>\n    wait (.0003) seconds\n    next costume\nend\nswitch costume to (costume33 v)\nrepeat until <(costume [number v]) = [38]>\n    wait (.0003) seconds\n    next costume\nend\nwait (6) seconds\nbroadcast (menu v)\nhide\nstop [other scripts in sprite v]\n\nwhen flag clicked\nswitch costume to (costume2 v)\ngo to x: (0) y: (0)\npoint in direction (90)\nset size to (100) %\nintro\n\nwhen flag clicked\nforever\n    if <key (space v) pressed?> then\n        stop all sounds\n        stop [other scripts in sprite v]\n        broadcast (menu v)\n        hide\n        stop [this script v]\n    end\nend\n\n@loves, favs\n\nwhen I receive [end \(for now\) 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\nwhen I receive [love and fav  v]\nhide\nforever\n    wait (.3) seconds\n    create clone of (_myself_ v)\nend\n\n@Score\n\nwhen I receive [go v]\nshow variable [time v]\nforever\n    wait (1) seconds\n    change [time v] by (1)\nend\n\nwhen I receive [end \(for now\) v]\nshow variable [☁ fastest time v]\nstop [other scripts in sprite v]\nif <(☁ FASTEST TIME) > (TIME)> then\n    set [☁ fastest time v] to (TIME)\nend\n\nwhen flag clicked\nset [time v] to [0]\nhide variable [☁ fastest time v]\nhide variable [time v]\n\n