Spaghetti || Platformer

Instructions: Arrow Keys To Movey Move around the screeeeen.\n'R' to restart the level. (you probably won't need it though).\nGet to the other side of the screen to proceed to the next Level.\nDon't touch spikey things (spikes)\nDefeat the boss, and win nothing! :D\n\nGood luck on you quest for justice!\n\nYeah, this is probably gonna be my second last project I post unless something happens and I come back. (._.)\nI hope you all like it! :D\nBtw: The last project I post will be The COMPLETED BIRDS MAP. yeah I'm still doing that.\n\nAlso, sorry the boss is kinda glitchy. I couldn't figure out how to fix it.\nAt the end you have super speed. :P

@Stage\n\nwhen flag clicked\nforever\n    play sound [Funny Background MusicSilly And Awkward Comedy Music v] until done\n    play sound [NO COPYRIGHT Comedy Music Sneaky Background Music Free Use for Prank Video MUSIC4VIDEO v] until done\nend\n\nwhen I receive [go v]\nplay sound [badum-tss v] until done\n\n@Button\n\nwhen flag clicked\nswitch costume to (costume1 v)\nshow\ngo to x: (0) y: (0)\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by ((120) - ((size) / (3)))\n        set [ghost v] effect to (20)\n        point in direction (89)\n        if <mouse down?> then\n            wait until <not <mouse down?>>\n            Play\n            stop [other scripts in sprite v]\n            stop [this script v]\n        end\n    else\n        point in direction (90)\n        change size by ((100) - ((size) / (3)))\n        set [ghost v] effect to (-10)\n    end\nend\n\ndefine Play\nbroadcast (go v)\nhide\n\nwhen flag clicked\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset size to (1) %\nforever\n    change size by ((3) + ((6) * ([cos v] of (((timer) - (6)) * (290)) )))\nend\n\n@Dude\n\nwhen flag clicked\nhide\n\ndefine Platform Gravity: (gravity) Jump Height (jump height) Side Movement Speed (side movement) Friction (friction) Slope: (slope)\nchange [y velocity v] by (gravity)\nchange y by (Y velocity)\nif <touching (level v)?> then\n    repeat until <not <touching (level v)?>>\n        change y by ((([abs v] of (Y velocity) ) / (Y velocity)) * (-1))\n    end\n    set [y velocity v] to (<<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <(([abs v] of (Y velocity) ) / (Y velocity)) = [-1]>> * (jump height))\nend\nset [x velocity v] to ((friction) * ((X Velocity) + ((<<key (left arrow v) pressed?> or <key (a v) pressed?>> * ((side movement) * (-1))) + (<<key (right arrow v) pressed?> or <key (d v) pressed?>> * (side movement)))))\nchange x by (X Velocity)\nset [slope v] to [0]\nrepeat until <<(Slope) = ((slope) * (-1))> or <not <touching (level v)?>>>\n    change y by (1)\n    change [slope v] by (-1)\nend\nif <touching (level v)?> then\n    change y by (Slope)\n    repeat until <not <touching (level v)?>>\n        change x by ((([abs v] of (X Velocity) ) / (X Velocity)) * (-1))\n    end\nend\n\nwhen I receive [go v]\nshow\ngo to x: (-200) y: (-40)\nset [x velocity v] to [0]\nset [y velocity v] to [0]\nforever\n    Platform Gravity: [-1] Jump Height [15] Side Movement Speed [3] Friction [.7] Slope: [8]\nend\n\nwhen I receive [go v]\nswitch costume to (potato v)\nforever\n    if <key (right arrow v) pressed?> then\n    if <key (left arrow v) pressed?> then\nend\n\nchange x by (10)\n\nwhen flag clicked\nforever\n    if <touching (flag v)?> then\n        broadcast (Next Level v)\n        wait (1) seconds\n    end\nend\n\nset [slope v] to [-1]\n\nwhen I receive [next level v]\nbroadcast (go v)\n\nwhen [r v] key pressed\nbroadcast (go v)\n\nwhen I receive [ataaaaaaack v]\nshow\ngo to x: (-200) y: (-80)\nset [x velocity v] to [0]\nset [y velocity v] to [0]\nforever\n    Platform Gravity: [-1] Jump Height [15] Side Movement Speed [3] Friction [.7] Slope: [8]\nend\n\nwhen I receive [eleveny leven v]\nstop [other scripts in sprite v]\ngo to x: (-200) y: (-80)\nshow\nwait (2) seconds\nnext costume\nwait (2.6) seconds\nnext costume\nwait (2.6) seconds\nnext costume\nwait (2.6) seconds\nnext costume\nbroadcast (cuz v)\n\nwhen flag clicked\nbroadcast (walk v)\n\nwhen I receive [walk v]\nset rotation style [left-right v]\npoint in direction (90)\n\n@Level\n\nwhen flag clicked\nclear graphic effects\nswitch costume to (1 v)\nhide\ngo to x: (0) y: (0)\npoint in direction (90)\ngo to [front v] layer\n\nwhen flag clicked\n\nwhen I receive [go v]\nshow\n\nwhen I receive [next level v]\nnext costume\n\nforever\n    change [whirl v] effect by (1)\nend\n\nwhen I receive [go v]\nif <(costume [number v]) = [1]> then\n    broadcast (1 v)\nend\nif <(costume [number v]) = [2]> then\n    broadcast (2 v)\nend\nif <(costume [number v]) = [3]> then\n    broadcast (3 v)\nend\nif <(costume [number v]) = [4]> then\n    broadcast (4 v)\nend\nif <(costume [number v]) = [5]> then\n    broadcast (5 v)\nend\nif <(costume [number v]) = [6]> then\n    broadcast (6 v)\nend\nif <(costume [number v]) = [7]> then\n    broadcast (7 v)\nend\nif <(costume [number v]) = [8]> then\n    broadcast (8 v)\nend\nif <(costume [number v]) = [9]> then\n    broadcast (9 v)\nend\nif <(costume [number v]) = [10]> then\n    broadcast (10 v)\nend\nif <(costume [number v]) = [12]> then\n    broadcast (eleveny leven v)\nend\nif <(costume [number v]) = [11]> then\n    broadcast (11 v)\nend\nif <(costume [number v]) = [14]> then\n    broadcast (end v)\nend\n\nwhen I receive [11 v]\nstop [other scripts in sprite v]\n\nwhen I receive [you win v]\nswitch costume to (end v)\nwait until <([costume # v] of [square man v]) = [8]>\nswitch costume to (end2 v)\n\nwhen I receive [eleveny leven v]\nwait (0.0000000001) seconds\nswitch costume to (end v)\n\nswitch costume to (spill2 v)\n\n@botum\n\nwhen flag clicked\ngo to x: (0) y: (0)\ngo to [back v] layer\nforever\n    if <touching (dude v)?> then\n        broadcast (go v)\n    end\nend\n\n@end\n\nwhen flag clicked\ngo to x: (202) y: (0)\nforever\n    if <touching (dude v)?> then\n        broadcast (Next Level v)\n        wait (1) seconds\n    end\nend\n\nwhen flag clicked\nset [ghost v] effect to (100)\nshow\npoint in direction (90)\n\nwhen flag clicked\n\nwhen I receive [you win v]\nset [ghost v] effect to (100)\nshow\npoint in direction (90)\nforever\n    if <touching (dude v)?> then\n        broadcast (Next Level v)\n        wait (1) seconds\n    end\nend\n\nwhen I receive [next level v]\n\n\nwhen I receive [eleveny leven v]\nstop [other scripts in sprite v]\n\nwhen I receive [end v]\nhide\nstop [other scripts in sprite v]\n\n@ded\n\nwhen flag clicked\nhide\n\nwhen I receive [go v]\nforever\n    if <touching (dude v)?> then\n        broadcast (go v)\n    end\nend\n\nshow\n\nwhen I receive [1 v]\nhide\n\nwhen I receive [2 v]\nhide\n\nwhen I receive [3 v]\nhide\n\nwhen I receive [4 v]\nhide\n\nwhen I receive [5 v]\nswitch costume to (costume1 v)\nshow\n\nwhen I receive [6 v]\nshow\nswitch costume to (costume2 v)\n\nwhen I receive [7 v]\nhide\n\nwhen I receive [8 v]\nshow\nswitch costume to (costume3 v)\n\nwhen I receive [9 v]\nhide\n\nwhen I receive [10 v]\nshow\nswitch costume to (costume4 v)\n\nwhen I receive [11 v]\nhide\n\n@Thumbnail\n\nwhen flag clicked\nhide\nforever\n    reset timer\nend\n\nwhen [timer v] > (0)\ngo to [front v] layer\nshow\n\n@square man\n\nwhen flag clicked\nhide\n\nwhen I receive [eleveny leven v]\nstop all sounds\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\nshow\n\nwhen I receive [ataaaaaaack v]\nforever\n    if <touching (dude v)?> then\n        broadcast (eleveny leven v)\n    end\nend\n\ngo to x: (0) y: (0)\nshow\n\nwhen I receive [cuz v]\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\nshow\nstop [other scripts in sprite v]\nshow\nwait (1) seconds\nnext costume\nwait (2.6) seconds\nnext costume\nwait (2.6) seconds\nnext costume\nbroadcast (ataaaaaaack v)\nwait (0.78) seconds\nglide (1.12) secs to x: (-330) y: (0)\nstart sound [splat v]\nrepeat (4)\n    next costume\nend\nif <touching (dude v)?> then\n    wait (0.1) seconds\n    broadcast (YOU WIN v)\n    hide\nelse\n    broadcast (YOU WIN v)\nend\n\nwhen I receive [hi v]\n\nbroadcast (eleveny leven v)\n\nwhen I receive [eleveny leven v]\nshow\n\nwhen flag clicked\n\nwhen I receive [end v]\nforever\n    if <([costume # v] of [level v]) = [14]> then\n        hide\n    end\nend\n\n