The Glitch~Platformer (GHouL GamES) V3

Instructions: Featured 6-12-2016 (Aus style) or 12-6-2016 (US style)\nThis "platformer" is the story of a video game character that went wrong and glitched. Help the GLITCH get to the end of the game\nThe Glitch will randomly disappear and reappear.\n___________________________________________________\nINSTRUCTIONS:\nArrow keys to move.\nAvoid lava (red).\nThe rubber (yellow) is bouncy.\n________________________________________________________\nThere are 15 levels. All are possible. (I tested them out.)

@Stage\n\nwhen I receive [next lvl v]\nnext backdrop\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\n\nwhen flag clicked\nforever\n    if <(backdrop [number v]) = [18]> then\n        broadcast (The end v)\n    end\nend\n\nwhen flag clicked\nplay sound [Mission Impossible Theme\(full theme\).mp3 v] until done\nset volume to (50) %\n\n@play button\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\nwait (8.5) seconds\nshow\ngo to [front v] layer\ngo to x: (2) y: (110)\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        change [color v] effect by (10)\n    end\nend\n\nwhen this sprite clicked\nbroadcast (message1 v)\nhide\nwait (1) seconds\n\nwhen flag clicked\nforever\n    if <<mouse down?> and <touching (mouse-pointer v)?>> then\n        broadcast (message1 v)\n    end\nend\n\n@Page\n\nwhen flag clicked\nshow\n\nwhen I receive [message1 v]\nhide\n\n@Glitch\n\nwhen I receive [next lvl v]\ngo to x: (-204) y: (-16)\n\nwhen flag clicked\nhide\n\nwhen I receive [message1 v]\nhide\nwait (0.4) seconds\ngo to x: (-196) y: (-17)\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        change [x v] by (-1)\n    end\n    if <key (right arrow v) pressed?> then\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 (#000000)?> then\n        change y by (1)\n    end\n    if <touching color (#000000)?> then\n        change y by (1)\n    end\n    if <touching color (#000000)?> then\n        change y by (1)\n    end\n    if <touching color (#000000)?> then\n        change y by (1)\n    end\n    if <touching color (#000000)?> 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 (#000000)?> 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 (#000000)?>> then\n        set [y v] to [15]\n    end\n    change y by (1)\n    if <touching color (#ff0000)?> then\n        go to x: (-196) y: (22)\n    end\n    if <<(x position) = [240]> or <(x position) > [240]>> then\n        broadcast (next lvl v)\n    end\n    if <touching color (#ffff00)?> then\n        set [y v] to [20]\n    end\n    if <touching color (#000000)?> then\n        if <key (up arrow v) pressed?> then\n            set [y v] to [10]\n        else\n            set [y v] to [-1]\n        end\n        if <key (down arrow v) pressed?> then\n            set [y v] to [-5]\n        end\n    end\nend\n\nwhen I receive [the end v]\nhide\n\nwhen I receive [g;itch v]\nforever\n    wait (pick random (3) to (10)) seconds\n    repeat (100)\n        change [ghost v] effect by (1)\n        change [pixelate v] effect by (1)\n    end\n    wait (2) seconds\n    change [pixelate v] effect by (25)\n    show\n    clear graphic effects\nend\n\nwhen flag clicked\nwait (4) seconds\nbroadcast (g;itch v)\n\n@Sprite5\n\nwhen flag clicked\ngo to x: (120) y: (-51)\ngo to [front v] layer\ngo to [front v] layer\nset size to (100) %\nclear graphic effects\nshow\nchange [ghost v] effect by (25)\nwait (1) seconds\nchange [ghost v] effect by (25)\nwait (1) seconds\nchange [ghost v] effect by (25)\nwait (1) seconds\nchange [ghost v] effect by (25)\nwait (1) seconds\nchange [ghost v] effect by (-25)\nwait (1) seconds\nchange [ghost v] effect by (-25)\nwait (1) seconds\nchange [ghost v] effect by (-25)\nwait (1) seconds\nchange [ghost v] effect by (-25)\nwait (1) seconds\nhide\n\nwhen flag clicked\nwait (7) seconds\n\nchange size by (10)\n\nwhen I receive [logo v]\n\nforever\nend\n\n@Sprite6\n\nwhen flag clicked\nshow\nwait (8.5) seconds\nhide\n\n@Sprite1\n\nwhen flag clicked\ngo to x: (-6) y: (-6)\nhide\n\n