Colorless~ A  mobile platformer

Instructions: Storyline: You have entered the colorless world, you decide to explore the world, but find that lots of dangers are in the world...\n-------------------------------------------------------------------------\nInstructions:\nArrow keys, WASD, or touch screen for mobile\nThere are 15 levels\nYou can wall jump\nPress r to restart a level\nPress s to skip a level\n=======================================

@Stage\n\nwhen flag clicked\nforever\n    play sound [Vexento - Pixel Party.mp3 v] until done\nend\n\n@blank\n\n@Player\n\nwhen flag clicked\nStart\n\ndefine Start\nset [jump v] to [14]\nset [speed v] to [1]\ngo to x: (-212) y: (68)\nshow\nforever\n    if on edge, bounce\n    go to [front v] layer\n    set [y v] to [0]\n    set [x v] to [0]\n    forever\n        switch costume to (cube v)\n        change [y v] by (-1)\n        set [x v] to ((x) * (0.9))\n        if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<(x position) > (mouse x)> and <mouse down?>>>> then\n            change [x v] by (join [-] (speed))\n        end\n        if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<(mouse x) > (x position)> and <mouse down?>>>> then\n            change [x v] by ([abs v] of (speed) )\n        end\n        change x by (x)\n        if  then\n            change y by (1)\n        end\n        if  then\n            change y by (1)\n        end\n        if  then\n            change y by (1)\n        end\n        if  then\n            change y by (1)\n        end\n        if  then\n            change y by (-4)\n            change x by ((x) * (-1))\n            if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<(mouse y) > (y position)> and <mouse down?>>>> then\n                set [y v] to [10]\n                if <([abs v] of (x) ) = (x)> then\n                    set [x v] to [-4]\n                else\n                    set [x v] to [4]\n                end\n            else\n                set [x v] to [0]\n            end\n        end\n        change y by (y)\n        if  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?> or <<key (w v) pressed?> or <<(mouse y) > (y position)> and <mouse down?>>>> and <<touching (level v)?> or <touching (players v)?>>> then\n            set [y v] to ((jump) * (1.1))\n        end\n        change y by (1)\n        if <(x position) > [230]> then\n            broadcast (New Level v)\n            go to x: (-212) y: (68)\n            wait until <not <(x position) > [230]>>\n        end\n        if <<touching (spikes v)?> or <(y position) < [-170]>> then\n            go to x: (-212) y: (68)\n        end\n        change y by (-1)\n        if <<<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<(mouse y) > (y position)> and <mouse down?>>>> and > then\n            set [y v] to [16]\n        end\n        change y by (1)\n        if <touching (water v)?> then\n            set [y v] to [-2]\n        end\n    end\nend\n\nwhen I start as a clone\nnext costume\nclear graphic effects\nset size to (150) %\nrepeat (10)\n    change [brightness v] effect by (3)\n    change [ghost v] effect by (10)\n    change size by (-1)\nend\ndelete this clone\n\nwhen flag clicked\nforever\n    create clone of (_myself_ v)\nend\n\nwhen [s v] key pressed\nbroadcast (Skip v)\n\nwhen I receive [skip v]\nbroadcast (New Level v)\ngo to x: (-212) y: (68)\nwait until <not <(x position) > [230]>>\n\nwhen [r v] key pressed\nbroadcast (Redo v)\n\nwhen I receive [redo v]\ngo to x: (-212) y: (68)\n\n@Level\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    go to [front v] layer\n    go [backward v] (3) layers\nend\n\nwhen I receive [new level v]\nnext costume\nif <(costume [number v]) = [9]> then\n    broadcast (End v)\nend\n\n@Spikes\n\nwhen flag clicked\ngo to [front v] layer\nforever\n    switch costume to ([costume # v] of [level v])\nend\n\n@Sprite1\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\ngo to [front v] layer\n\n