underground|| a platformer

Instructions: thanks for 50 loves!

@Stage\n\n@player\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    play sound [_Geometry Dash_ level 16 - Hexagon Force \(100%\).mp3 v] until done\nend\n\nwhen I start as a clone\nswitch costume to (costume3 v)\nset [ghost v] effect to (50)\nset size to (100) %\nrepeat (30)\n    change size by (-4)\n    change [ghost v] effect by (3)\n    change [brightness v] effect by (-0.7)\nend\ndelete this clone\n\nwhen flag clicked\nforever\n    create clone of (_myself_ v)\nend\n\ndefine platform (jump height) (gravity) (friction) (running speed)\nif <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <(mouse x) > (playerx)>>>> then\n    change [xvelocity v] by ((running speed) * (1))\n    switch costume to (costume1 v)\nend\nif <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < (playerx)>>>> then\n    change [xvelocity v] by ((running speed) * (-1))\n    switch costume to (costume2 v)\nend\nset [xvelocity v] to ((xvelocity) * (friction))\nchange x by (xvelocity)\nif <touching (level v)?> then\n    set [slope v] to [0]\n    repeat until <<(slope) = [8]> or <not <touching (level v)?>>>\n        change [slope v] by (1)\n        change y by (1)\n    end\n    if <touching (level v)?> then\n        change y by ((slope) * (-1))\n        repeat ([ceiling v] of ([abs v] of (xvelocity) ) )\n            if <touching (level v)?> then\n                change x by ((([abs v] of (xvelocity) ) / (xvelocity)) * (-1))\n            end\n        end\n        set [xvelocity v] to [0]\n    end\nend\nchange y by (yvelocity)\nif <touching (level v)?> then\n    repeat ([ceiling v] of ([abs v] of (yvelocity) ) )\n        if <touching (level v)?> then\n            change y by ((([abs v] of (yvelocity) ) / (yvelocity)) * (-1))\n        end\n    end\n    if <<(([abs v] of (yvelocity) ) / (yvelocity)) = [-1]> and <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<touching (jump pad v)?> or <<mouse down?> and <(mouse y) > (playery)>>>>>> then\n        set [yvelocity v] to (jump height)\n    else\n        set [yvelocity v] to [0]\n    end\nelse\n    change [yvelocity v] by (-1)\nend\n\nwhen flag clicked\ngo to x: (-202) y: (-40)\nset [xvelocity v] to [0]\nset [yvelocity v] to [0]\nforever\n    if <touching (jump pad v)?> then\n        platform [20] [-1] [0.7] [2.3]\n    else\n        platform [12] [-1] [0.7] [2.3]\n    end\nend\n\nwhen flag clicked\nset [ghost v] effect to (0)\nforever\n    if <<touching (evil stuff v)?> or <touching (saw v)?>> then\n        broadcast (respawn muahaha  v)\n        broadcast (red stuff v)\n    end\nend\n\nwhen I receive [respawn muahaha  v]\ngo to x: (-202) y: (-60)\n\nwhen flag clicked\nforever\n    if <touching (goal v)?> then\n        broadcast (respawn muahaha  v)\n        broadcast (next level v)\n    end\nend\n\ndefine out\n\nwhen flag clicked\nforever\n    if <(xvelocity) > [0]> then\n        repeat until <not <touching color (#3bb700)?>>\n            change x by (-1)\n        end\n    else\n        if <(xvelocity) < [0]> then\n            repeat until <not <touching color (#3bb700)?>>\n                change x by (1)\n            end\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (jump pad v)?> then\n        change y by (1)\n        if <touching (jump pad v)?> then\n            change y by (1)\n            if <touching (jump pad v)?> then\n                change y by (1)\n                if <touching (jump pad v)?> then\n                    change y by (1)\n                    if <touching (jump pad v)?> then\n                        change y by (1)\n                        if <touching (jump pad v)?> then\n                            change y by (1)\n                            if <touching (jump pad v)?> then\n                                change y by (1)\n                                if <touching (jump pad v)?> then\n                                    change y by (1)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (water v)?> then\n        change y by (2)\n        if <touching (water v)?> then\n            change y by (2)\n            if <touching (water v)?> then\n                change y by (2)\n                if <touching (water v)?> then\n                    change y by (2)\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    set [playerx v] to (x position)\n    set [playery v] to (y position)\nend\n\nwhen flag clicked\nforever\n    if <touching (water... imma noob v)?> then\n        broadcast (water v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (level v)?> then\n        broadcast (no water v)\n    end\nend\n\nwhen flag clicked\nforever\n    \nend\n\nwhen flag clicked\ngo [backward v] (1000) layers\n\n@level\n\nwhen flag clicked\nforever\n    go to x: (0) y: (0)\n    switch costume to (level #)\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen flag clicked\nforever\n    set [level # v] to (costume [number v])\nend\n\nwhen I receive [next level v]\nchange [level # v] by (1)\n\nwhen flag clicked\ngo to [front v] layer\n\n@goal\n\nwhen flag clicked\nshow\nset size to (100) %\nset size to (75) %\nset [ghost v] effect to (25)\npoint in direction (75)\nforever\n    repeat (30)\n        turn right (1) degrees\n    end\n    repeat (30)\n        turn left (1) degrees\n    end\nend\n\nwhen flag clicked\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\npoint in direction (90)\nset [ghost v] effect to (0)\nforever\n    if <(level #) = [14]> then\n        hide\n    end\nend\n\nwhen flag clicked\nshow\ngo to x: (212) y: (-57)\nforever\n    if <(level #) = [14]> then\n        hide\n    end\nend\n\n@evil stuff\n\nwhen flag clicked\nforever\n    switch costume to (level #)\nend\n\nwhen flag clicked\npoint in direction (90)\ngo to x: (0) y: (0)\nforever\n    repeat (20)\n        change y by (0.5)\n    end\n    repeat (20)\n        change y by (-0.5)\n    end\nend\n\nwhen flag clicked\ngo [backward v] (1) layers\n\n@jump pad\n\nwhen flag clicked\nforever\n    switch costume to (level #)\nend\n\nwhen flag clicked\ngo to [front v] layer\n\n@sign\n\nwhen flag clicked\nforever\n    switch costume to (level #)\nend\n\nwhen this sprite clicked\nif <(level #) = [1]> then\n    say [welcome to underground: A Platformer!] for (2.5) seconds\nend\nif <(level #) = [8]> then\n    say [look out for the saw..] for (1.5) seconds\nend\n\n@Sprite1\n\nwhen flag clicked\nforever\n    go to [back v] layer\nend\n\nwhen flag clicked\nforever\n    go to x: ((playerx) / (5)) y: ((playery) / (5))\nend\n\n@water\n\nwhen flag clicked\ngo to x: (0) y: (0)\ngo [backward v] (3) layers\nset [ghost v] effect to (35)\nset [brightness v] effect to (0)\nrepeat (10)\n    change y by (2)\nend\nrepeat (3)\n    create clone of (_myself_ v)\n    wait (1) seconds\nend\n\nwhen flag clicked\nforever\n    repeat (10)\n        change y by (-2)\n    end\n    repeat (10)\n        change y by (2)\n    end\nend\n\nwhen flag clicked\nforever\n    switch costume to (level #)\nend\n\nwhen flag clicked\ngo [forward v] (1) layers\n\nwhen I start as a clone\nforever\n    repeat (10)\n        change y by (2)\n    end\n    repeat (10)\n        change y by (-2)\n    end\nend\n\n@saw\n\nwhen flag clicked\ngo [backward v] (5) layers\nforever\n    switch costume to (level #)\nend\n\nwhen flag clicked\nforever\n    if <(level #) = [8]> then\n        go to x: (14) y: (-100)\n    end\nend\n\nwhen flag clicked\nforever\n    turn right (5) degrees\nend\n\n@cooltext-357216073271542\n\nwhen flag clicked\nforever\n    hide\n    if <(level #) = [14]> then\n        show\n    end\nend\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\n@Cool Text - UNDERGROUND -357215528865609\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    show\n    go to [front v] layer\nend\n\n@Sprite4\n\nwhen flag clicked\nset [ghost v] effect to (100)\n\nwhen I receive [red stuff v]\ngo to x: (2) y: (0)\nswitch costume to (costume1 v)\nrepeat (5)\n    change [ghost v] effect by (-20)\nend\nrepeat (5)\n    change [ghost v] effect by (20)\nend\n\nwhen I receive [next level v]\nset [ghost v] effect to (0)\nswitch costume to (costume2 v)\ngo to x: (2) y: (0)\nrepeat (20)\n    change y by (17.3)\nend\nset [ghost v] effect to (100)\n\nrepeat (20)\n    change y by (-17.3)\nend\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\n@cooltext-357179999502882\n\nwhen flag clicked\npoint in direction (90)\nset size to (100) %\nforever\n    repeat (10)\n        change size by (0.5)\n    end\n    repeat (10)\n        change size by (-0.5)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (-5)\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen this sprite clicked\nbroadcast (respawn muahaha  v)\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\n@Sprite3\n\nwhen flag clicked\nforever\n    go [backward v] (10000) layers\n    go to (player v)\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\nset size to (90) %\nforever\n    repeat (40)\n        change size by (0.5)\n    end\n    repeat (40)\n        change size by (-0.5)\n    end\nend\n\nwhen flag clicked\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nset size to (105) %\nswitch costume to (costume2 v)\nforever\n    repeat (40)\n        change size by (-0.5)\n    end\n    repeat (40)\n        change size by (0.5)\n    end\nend\n\nwhen I start as a clone\nforever\n    go to (player v)\nend\n\n