2.5d Platformer

Instructions: Welcome to my first 2.5D platformer!\nUse the arrow keys/WAD/drag to move.\nDon't touch lava or spikes\nLove and favourite!

@Stage\n\nwhen flag clicked\nforever\n    play sound [Delightful D v] until done\nend\n\n@Player\n\nwhen flag clicked\nhide\n\nwhen I receive [die v]\ngo to x: (-217) y: (-20)\n\nwhen I receive [next level v]\nchange [level v] by (1)\nhide\nbroadcast (LOAD LEVEL v) and wait\ngo to x: (-181) y: (117)\nshow\n\nwhen I receive [start v]\nswitch costume to (costume)\nhide\nset [x v] to [0]\nset [y v] to [0]\nbroadcast (LOAD LEVEL v) and wait\nshow\ngo to x: (-181) y: (117)\nforever\n    change [y v] by (-1)\n    if <<<key (a v) pressed?> or <key (left arrow v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n        change [x v] by (-1)\n    end\n    if <<<key (d v) pressed?> or <key (right arrow v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> 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 (#54f200)?> then\n        change y by (1)\n    end\n    if <touching color (#54f200)?> then\n        change y by (1)\n    end\n    if <touching color (#54f200)?> then\n        change y by (1)\n    end\n    if <touching color (#54f200)?> then\n        change y by (1)\n    end\n    if <touching color (#54f200)?> 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 down?> and <(mouse y) > (y position)>>> then\n            set [y v] to [17]\n            if <(x) > [0]> 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 (#54f200)?> 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 down?> and <(mouse y) > (y position)>>> and <touching color (#54f200)?>> then\n        set [y v] to [15]\n    end\n    change y by (1)\n    if <(x position) > [222]> then\n        go to x: (-217) y: (-20)\n        broadcast (NEXT LEVEL v)\n    end\n    if <touching color (#00b0f2)?> then\n        set [y v] to [22]\n    end\n    if <touching color (#c8c8c8)?> then\n        broadcast (Die v)\n    end\n    if <touching color (#f20303)?> then\n        broadcast (Die v)\n    end\nend\n\n@Ground\n\nwhen I receive [load level v]\nswitch costume to (level)\nerase all\nhide\ngo to x: (0) y: (0)\nset [brightness v] effect to (-50)\nrepeat (10)\n    stamp\n    change x by (-2)\n    change y by (-2)\n    change [brightness v] effect by (5)\nend\n\nwhen flag clicked\nset [level v] to [1]\nhide\n\nwhen flag clicked\nswitch costume to (costume1 v)\nerase all\nhide\ngo to x: (0) y: (0)\nset [brightness v] effect to (-50)\nrepeat (10)\n    stamp\n    change x by (-2)\n    change y by (-2)\n    change [brightness v] effect by (5)\nend\n\n@Text\n\nwhen I receive [load level v]\nswitch costume to (level)\nerase all\nhide\ngo to x: (0) y: (0)\nset [brightness v] effect to (-30)\nrepeat (3)\n    stamp\n    change x by (-2)\n    change y by (-2)\n    change [brightness v] effect by (10)\nend\n\nwhen flag clicked\nset [level v] to [1]\nhide\n\n@Thumbnail\n\nwhen flag clicked\nhide\n\n@Dispay\n\nwhen flag clicked\nshow\nforever\n    point in direction ((([sin v] of ((timer) * (150)) ) * (10)) + (90))\nend\n\nwhen I receive [nextcostume v]\nnext costume\nrepeat (10)\n    change size by (1)\nend\nrepeat (10)\n    change size by (-1)\nend\nset size to (100) %\n\nwhen I receive [prevcostume v]\nswitch costume to ((costume [number v]) - (1))\nrepeat (10)\n    change size by (1)\nend\nrepeat (10)\n    change size by (-1)\nend\nset size to (100) %\n\nwhen I receive [start v]\nhide\n\nwhen flag clicked\nforever\n    set [costume v] to (costume [number v])\nend\n\n@Dispay2\n\nwhen flag clicked\nset size to (100) %\nshow\nforever\n    point in direction ((([sin v] of ((timer) * (150)) ) * (10)) + (90))\nend\n\nwhen flag clicked\nforever\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        broadcast (Nextcostume v) and wait\n    end\nend\n\nwhen I receive [start v]\nhide\n\n@Dispay3\n\nwhen flag clicked\nset size to (100) %\nshow\nforever\n    point in direction ((([sin v] of ((timer) * (150)) ) * (10)) + (90))\nend\n\nwhen flag clicked\nforever\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        broadcast (prevcostume v) and wait\n    end\nend\n\nwhen I receive [start v]\nhide\n\n@Start\n\nwhen flag clicked\nshow\nwait (1) seconds\nwait until <<touching (mouse-pointer v)?> and <mouse down?>>\nbroadcast (Start v)\n\nwhen I receive [start v]\nhide\n\n