Platformer

Instructions: arrow keys to move \nas you can tell this is a generic platformer. to all you haters who have been hating on me live with it. to all you other scratchers sorry about that :) its because people have been hating on me in my other projects.

@Stage\n\nwhen flag clicked\nforever\n    play sound [Don't Talk About It v] until done\nend\n\n@Player\n\nwhen I receive [next level v]\nbroadcast (Reset v)\n\nwhen flag clicked\npoint in direction (90)\nswitch costume to (player v)\nset [both v] to [0]\nswitch backdrop to (backdrop1 v)\nset [the level v] to [1]\nbroadcast (Next Level v)\nforever\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        change [x velocity v] by (-1.5)\n    end\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        change [x velocity v] by (1.5)\n    end\n    set [x velocity v] to ((X Velocity) * (0.85))\n    change x by (X Velocity)\n    if <touching (ground v)?> then\n        change y by (1)\n    end\n    if <touching (ground v)?> then\n        change y by (1)\n    end\n    if <touching (ground v)?> then\n        change y by (1)\n    end\n    if <touching (ground v)?> then\n        change y by (1)\n    end\n    if <touching (ground v)?> then\n        change y by (-4)\n        change x by ((X Velocity) * (-1))\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <<(mouse y) > (y position)> and <mouse down?>>>> then\n            if <(X Velocity) > [0]> then\n                set [x velocity v] to [-10]\n            else\n                set [x velocity v] to [10]\n            end\n            set [y velocity v] to [15]\n        else\n            set [x velocity v] to [0]\n        end\n    end\n    change [y velocity v] by (-1)\n    change y by (Y Velocity)\n    if <touching (ground v)?> then\n        change y by ((Y Velocity) - ((Y Velocity) * (2)))\n        set [y velocity v] to [0]\n        if <<key (down arrow v) pressed?> or <key (s v) pressed?>> then\n    end\n    change y by (-1)\n    if <<touching (ground v)?> and <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<(mouse y) > (y position)> and <mouse down?>>>>> then\n        set [y velocity v] to [20]\n    end\n    change y by (1)\n    if <<(x position) > [239]> or <<(The Level) = [5]> and <<(x position) > [130]> and <(y position) > [180]>>>> then\n        next backdrop\n        broadcast (Next Level v) and wait\n        change [the level v] by (1)\n    end\n    if <<touching (spikes v)?> or <(y position) < [-180]>> then\n        broadcast (Reset v)\n        create clone of (_myself_ v)\n    else\n        if <touching (lava v)?> then\n            broadcast (Reset v)\n        end\n        if <<touching (spikes v)?> or <(y position) < [-180]>> then\n            broadcast (Reset v)\n        end\n    end\nend\n\nwhen I start as a clone\nclear graphic effects\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (5)\n    turn right (5) degrees\nend\ndelete this clone\n\nwhen I receive [reset v]\nset [x velocity v] to [0]\nset [y velocity v] to [0]\ngo to x: (-216) y: (40)\n\nwhen I receive [love v]\nchange [both v] by (1)\n\nwhen I receive [fav v]\nchange [both v] by (1)\n\nwhen flag clicked\nwait until <(both) = [2]>\nbroadcast (LOVED AND FAVED REWARD v)\n\nwhen I receive [loved and faved reward v]\nswitch costume to (player2 v)\n\nnext backdrop\nbroadcast (Next Level v) and wait\nchange [the level v] by (1)\n\n@Ground\n\nwhen flag clicked\ngo to x: (5) y: (2)\nforever\n    switch costume to (The Level)\nend\n\n@Spikes\n\nwhen flag clicked\nforever\n    switch costume to (The Level)\nend\n\n@Lava\n\nwhen flag clicked\nset [speed v] to [100]\nforever\n    set y to (([sin v] of ((timer) * (Speed)) ) * (10))\n    switch costume to (The Level)\n    go to [back v] layer\nend\n\n\n\nif <(The Level) = [7]> then\n\n@Trail\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nset [ghost v] effect to (30)\ngo to [back v] layer\nshow\ngo to (player v)\nrepeat (7)\n    change [ghost v] effect by (6.5)\n    change size by (-3)\nend\ndelete this clone\n\nwhen I receive [loved and faved reward v]\nswitch costume to (costume2 v)\n\n@love detector\n\nwhen flag clicked\nhide\ncreate clone of (_myself_ v)\nwait (0.2) seconds\ncreate clone of (_myself_ v)\nwait until <(LOVED__) = [1]>\nbroadcast (LOVE v)\n\nwhen I start as a clone\ngo to x: (-15) y: (0)\nset [loved__ v] to [0]\nswitch costume to (love v)\nforever\n    set [love? v] to <touching (mouse-pointer v)?>\n    if <touching (mouse-pointer v)?> then\n        set [loved__ v] to [1]\n    end\nend\n\n@Fav detector\n\nwhen flag clicked\nhide\ncreate clone of (_myself_ v)\nwait (0.2) seconds\ncreate clone of (_myself_ v)\nwait until <(FAVED_) = [1]>\nbroadcast (FAV v)\n\nwhen I start as a clone\ngo to x: (-15) y: (0)\nset [faved_ v] to [0]\nswitch costume to (fave v)\nforever\n    set [fav? v] to <touching (mouse-pointer v)?>\n    if <touching (mouse-pointer v)?> then\n        set [faved_ v] to [1]\n    end\nend\n\n@Love and fave reminder\n\nwhen flag clicked\nwait (2.5) seconds\ngo to [front v] layer\n\nwhen I receive [love v]\nchange [action \(love/fave\) v] by (1)\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nset [action \(love/fave\) v] to [0]\nhide\nwait (1) seconds\nforever\n    if <(Action \(love/fave\)) < [2]> then\n        switch costume to (costume1 v)\n        go to x: (0) y: (150)\n        show\n        go to [front v] layer\n        repeat (11)\n            change y by (-2)\n        end\n        repeat (7)\n            change y by (1)\n        end\n        repeat (6)\n            change y by (-2)\n        end\n        wait (5) seconds\n        repeat (17)\n            change y by (7)\n        end\n        hide\n        wait (pick random (10) to (20)) seconds\n    else\n        stop [this script v]\n    end\nend\n\nwhen I receive [fav v]\nchange [action \(love/fave\) v] by (1)\n\n@Thank YOU\n\nwhen flag clicked\nset [loved__ v] to [0]\nset [faved_ v] to [0]\ngo to x: (0) y: (0)\nhide\nset [pixelate v] effect to (200)\nwait until <<(FAVED_) = [1]> and <(LOVED__) = [1]>>\nshow\nrepeat (20)\n    change [pixelate v] effect by (-10)\nend\nwait (1) seconds\nrepeat (20)\n    change [ghost v] effect by (10)\nend\n\n@Cover\n\nwhen [timer v] > (timer)\ngo to [front v] layer\nset size to (100) %\nshow\nif <(costume [number v]) = [1]> then\n    go to x: (-40) y: (0)\n    set [brightness v] effect to (100)\n    set [xv v] to [35]\n    set [yv v] to [20]\n    repeat (10)\n        change [brightness v] effect by (-10)\n        change size by (((130) - (size)) / (5))\n        set [xv v] to (((xv) * (0.75)) + (((0) - (x position)) / (8.5)))\n        set [yv v] to (((yv) * (0.75)) + (((0) - (y position)) / (7)))\n        change x by (xv)\n        change y by (yv)\n    end\n    repeat (20)\n        change size by (((100) - (size)) / (5))\n        set [xv v] to (((xv) * (0.75)) + (((0) - (x position)) / (8.5)))\n        set [yv v] to (((yv) * (0.75)) + (((0) - (y position)) / (5)))\n        change x by (xv)\n        change y by (yv)\n    end\nend\n\nwhen flag clicked\ngo to x: (0) y: (0)\nforever\n    set [timer v] to ((timer) + (0.001))\n    set [ghost v] effect to (100)\n    go to [front v] layer\nend\n\n