Infinite Ink drop! -platformer

Instructions: JoZaB138 made the original project.\narrows OR wasd to move\npoint with your mouse and press space to drop ink \n\nUse your ink to find your way through all the levels! some levels have hints as to where you should drop ink next!

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\n\n@title screen1\n\nwhen flag clicked\npen up\nerase all\ngo to x: (234) y: (0)\nwait (1) seconds\nshow\nset pen size to (100)\nset pen color to (#bd5abc)\npen down\nrepeat until <touching (_edge_ v)?>\n    move (-10) steps\n    change pen size by (4)\nend\nhide\n\nforever\n\nrepeat (10)\n\nwait (1) seconds\n\nwhen I receive [!gamestart v]\nerase all\nhide\n\n@title screen2\n\nwhen I receive [!gamestart v]\nhide\n\nwhen flag clicked\nshow\n\n@start button\n\nwhen flag clicked\nhide\ngo to [back v] layer\nwait (3) seconds\nshow\n\nwhen this sprite clicked\nhide\nbroadcast (!Gamestart v)\n\n@levels\n\nwhen flag clicked\nswitch costume to (costume2 v)\nhide\n\nwhen I receive [!gamestart v]\nshow\n\nwhen I receive [next v]\nnext costume\n\n@player\n\nwhen flag clicked\nhide\n\nwhen I receive [!gamestart v]\nshow\nbroadcast (controls v)\n\ngo to x: (160) y: (-40)\n\nwhen I receive [controls v]\nswitch costume to (costume1 v)\ngo to [front v] layer\npoint in direction (-90)\ngo to x: (-180) y: (-20)\nrepeat (10)\n    set size to (110) %\n    change size by (-1)\n    change [ghost v] effect by (-10)\nend\nforever\n    change [y v] by (-1)\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        point in direction (-90)\n        change [x v] by (-1)\n    end\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        point in direction (90)\n        change [x v] by (1)\n    end\n    set [x v] to ((x) * (0.9))\n    change x by (x)\n    if <touching (levels v)?> then\n        change y by (1)\n        if <touching (levels v)?> then\n            change y by (1)\n            if <touching (levels v)?> then\n                change y by (2)\n                if <touching (levels v)?> then\n                    change y by (2)\n                    if <touching (levels v)?> then\n                        change y by (-4)\n                        change x by ((x) * (-1.1))\n                        if <<key (up arrow v) pressed?> or <key (w 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                end\n            end\n        end\n    end\n    change y by (y)\n    if <touching (levels v)?> 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?>> and <touching (levels v)?>> then\n        set [y v] to [15]\n    end\n    change y by (1)\n    if <touching color (#ff0000)?> then\n    if <key (r v) pressed?> then\n        broadcast (reset v)\n    end\n    if <touching color (#9966ff)?> then\n        broadcast (next v)\n        wait until <not <touching color (#9966ff)?>>\n    end\nend\n\nwhen I receive [next v]\ngo to x: (-180) y: (-40)\n\nwhen flag clicked\nhide variable [time v]\nset [time v] to [0]\n\nwhen I receive [!gamestart v]\nforever\n    wait (1) seconds\n    change [time v] by (1)\nend\n\nwhen [t v] key pressed\nhide variable [time v]\n\nwhen [y v] key pressed\nshow variable [time v]\n\nwhen I receive [!gamestart v]\nshow variable [time v]\n\n@ink\n\nwhen flag clicked\nset [ink on screen: v] to [0]\ngo to [back v] layer\nhide\ndelete this clone\n\nwhen I receive [!gamestart v]\nset [ink on screen: v] to [0]\nhide\ndelete this clone\n\nwhen I receive [next v]\nset [ink on screen: v] to [0]\nhide\ndelete this clone\n\nwhen [space v] key pressed\n\nif <(ink on screen:) < [3]> then\nend\n\nwhen I start as a clone\npoint in direction (pick random (1) to (360))\ngo to (mouse-pointer v)\nshow\n\nwait (1) seconds\n\nwhen flag clicked\nforever\n    if <key (space v) pressed?> then\n        change [ink on screen: v] by (1)\n        create clone of (_myself_ v)\n        wait (.5) seconds\n    end\nend\n\n@goal\n\nwhen flag clicked\nset [level v] to [1]\nhide\nforever\n    if <(level) = [1]> then\n        go to x: (196) y: (-80)\n    end\n    if <(level) = [2]> then\n        go to x: (205) y: (157)\n    end\n    if <(level) = [4]> then\n        go to x: (-205) y: (140)\n    end\n    if <(level) = [5]> then\n        go to x: (-225) y: (140)\n    end\n    if <(level) = [6]> then\n        go to x: (-100) y: (25)\n    end\n    if <(level) = [7]> then\n        hide\n    end\nend\n\nwhen I receive [next v]\nchange [level v] by (1)\n\nwhen I receive [!gamestart v]\nshow\n\n