Pusheen's Adventure- Platformer

Instructions: Press the green flag to play a platformer game based on 'Pusheen!'\nArrow keys move Pusheen, spikes hurt you and mud is slippery. \nIf you are finding some of the levels hard you can skip them.\nAll levels are possible.\nHave fun and let me know if there are any glitches or recommendations :)\n(By the way, there is a little extra part at the end of the Happy Birthday song)

@Stage\n\nwhen I receive [start game v]\nswitch backdrop to (1 v)\nplay sound [Platoformer music v] until done\n\nwhen flag clicked\nswitch backdrop to (backdrop2 v)\nwait (2) seconds\nrepeat (5)\n    start sound [pop v]\n    wait (2.5) seconds\nend\n\nwhen I receive [next level v]\nnext backdrop\n\nwhen I receive [end v]\nstop all sounds\nswitch backdrop to (pic v)\nplay sound [happy birthday to you \(mouth organ\) \(1\).mp3 v] until done\nswitch backdrop to (thanks.fw v)\nbroadcast (Buttons v)\nplay sound [WII SPORTS theme v] until done\n\n@Pusheen's Adventure.fw\n\nwhen flag clicked\ngo to x: (0) y: (0)\ngo to [front v] layer\nrepeat (10)\n    change [ghost v] effect by (25)\n    wait (0.25) seconds\nend\n\nchange [ghost v] effect by (100)\n\n@1comic.fw\n\nwhen flag clicked\nwait (2) seconds\nset [ghost v] effect to (0)\nswitch costume to (1comic.fw v)\nwait (2.5) seconds\nrepeat (4)\n    next costume\n    wait (2.5) seconds\nend\nrepeat (10)\n    change [ghost v] effect by (25)\nend\nset [ghost v] effect to (0)\nswitch costume to (costume1 v)\nbroadcast (Start Game v)\n\n@Ground\n\nwhen flag clicked\ngo [backward v] (1) layers\nhide\n\nshow\n\nwhen I receive [start game v]\n\n@platform pusheen2\n\nwhen I receive [end v]\nhide\n\nwhen I receive [start game v]\ngo to x: (-188) y: (-105)\nshow\nset [x v] to [0]\nset [y v] to [0]\nforever\n    change [y v] by (-1)\n    if <key (left arrow v) pressed?> then\n        switch costume to (costume2 v)\n        change [x v] by (-1)\n    end\n    if <key (right arrow v) pressed?> then\n        switch costume to (costume3 v)\n        change [x v] by (1)\n    end\n    set [x v] to ((x) * (0.9))\n    change x by (x)\n    if <<touching color (#80ff46)?> or <touching color (#553812)?>> then\n        change y by (1)\n    end\n    if <<touching color (#80ff46)?> or <touching color (#553812)?>> then\n        change y by (1)\n    end\n    if <<touching color (#80ff46)?> or <touching color (#553812)?>> then\n        change y by (1)\n    end\n    if <<touching color (#80ff46)?> or <touching color (#553812)?>> then\n        change y by (1)\n    end\n    if <<touching color (#80ff46)?> or <touching color (#553812)?>> then\n        change y by (-4)\n        change x by ((x) * (-1))\n        if <key (up arrow v) pressed?> then\n            set [y v] to [15]\n            if <([abs v] of (x) ) = (x)> then\n                set [x v] to [-10]\n            else\n                set [x v] to [10]\n            end\n        else\n            set [x v] to [0]\n        end\n    end\n    change y by (y)\n    if <<touching color (#80ff46)?> or <touching color (#553812)?>> then\n        change y by ((y) - ((y) * (2)))\n        set [y v] to [0]\n    end\n    change y by (-1)\n    if <<key (up arrow v) pressed?> and <<touching color (#80ff46)?> or <touching color (#553812)?>>> then\n        set [y v] to [15]\n    end\n    change y by (1)\n    if <touching color (#b2b2b2)?> then\n        repeat (10)\n            change [ghost v] effect by (10)\n            wait (0) seconds\n        end\n        go to x: (-188) y: (-105)\n        repeat (10)\n            change [ghost v] effect by (-10)\n            wait (0) seconds\n        end\n    end\n    if <<(x position) = [251]> or <(x position) > [251]>> then\n        broadcast (next level v)\n        go to x: (-188) y: (-105)\n    end\n    if <touching color (#a25c17)?> then\n        if <key (right arrow v) pressed?> then\n            change [x v] by (3)\n        end\n        if <key (left arrow v) pressed?> then\n            change [x v] by (-3)\n        end\n    end\n    if <touching color (#ffff00)?> then\n        broadcast (end v)\n    end\nend\n\ngo to x: (-192) y: (-102)\n\nwhen flag clicked\nhide\n\nwhen [r v] key pressed\ngo to x: (-188) y: (-105)\n\nchange [ghost v] effect by (0)\n\nchange y by (y)\n\n@StormyTheCat\n\nwhen flag clicked\nhide\n\n@Sprite1\n\nwhen flag clicked\nhide\nforever\n    if <key (1 v) pressed?> then\n        switch backdrop to (thanks.fw v)\n        show\n    end\nend\n\nwhen I receive [buttons v]\nshow\n\nwhen this sprite clicked\nhide\nbroadcast (h v)\nswitch backdrop to (stormy profile v)\n\nwhen I receive [i v]\nhide\n\n@Sprite2\n\nwhen flag clicked\nhide\nforever\n    if <key (1 v) pressed?> then\n        switch backdrop to (thanks.fw v)\n        show\n    end\nend\n\nwhen I receive [buttons v]\nshow\n\nwhen this sprite clicked\nhide\nbroadcast (i v)\nswitch backdrop to (pusheen info v)\n\nwhen I receive [h v]\nhide\n\n@Sprite3\n\nwhen flag clicked\nhide\n\nwhen this sprite clicked\nnext backdrop\n\nwhen I receive [end v]\nhide\n\nwhen I receive [start game v]\ngo to x: (185) y: (154)\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        switch costume to (costume2 v)\n    else\n        switch costume to (costume1 v)\n    end\nend\n\n