Purple- Scrolling Platformer

Instructions: FINALLY! Someone made a good scrolling engine other than @griffpatch !! (no offense if you did, if you comment your version I'll give it a love to make up!)\n∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫\nArrows to move!\nLove and Favorite!\n∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫∫\nI aim to have 25 levels. If this gets on trending or front paged, tell me in the comments and I will release 5-10 more.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nAdvertise your platformers here! Only ONE ad per user!

@Stage\n\nwhen flag clicked\nbroadcast (Platformer-tick v)\n\nwhen I receive [refresh v]\nbroadcast (Platformer-tick v)\n\n@Sprite1\n\nwhen I receive [run platformer v]\nPlatformer\nbroadcast (Refresh v)\n\ndefine Platformer\nchange x by (Speed)\nif <touching color (#8050c7)?> then\n    change y by (1)\n    if <touching color (#8050c7)?> then\n        change y by (1)\n        if <touching color (#8050c7)?> then\n            change y by (1)\n            if <touching color (#8050c7)?> then\n                change y by (1)\n                if <touching color (#8050c7)?> then\n                    change y by (1)\n                    if <touching color (#8050c7)?> then\n                        change y by (1)\n                        if <touching color (#8050c7)?> then\n                            change y by (1)\n                            if <touching color (#8050c7)?> then\n                                change y by (1)\n                                if <touching color (#8050c7)?> then\n                                    change y by (1)\n                                    if <touching color (#8050c7)?> then\n                                        change y by (1)\n                                        if <touching color (#8050c7)?> then\n                                            change y by (1)\n                                            if <touching color (#8050c7)?> then\n                                                change y by (1)\n                                                if <touching color (#8050c7)?> then\n                                                    change y by (-12)\n                                                    repeat ([abs v] of (Speed) )\n                                                        if <touching color (#8050c7)?> then\n                                                            change x by ((0) - ((Speed) / ([abs v] of (Speed) )))\n                                                        end\n                                                    end\n                                                    set [speed v] to [0]\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange y by (Jump)\nif <touching color (#8050c7)?> then\n    if <(Jump) > [0]> then\n        repeat until <not <touching color (#8050c7)?>>\n            change y by (-1)\n        end\n    else\n        repeat until <not <touching color (#8050c7)?>>\n            change y by (1)\n        end\n    end\n    set [jump v] to [0]\nend\nchange y by (-3)\nif <<key (up arrow v) pressed?> and <touching color (#8050c7)?>> then\n    set [jump v] to [12]\nelse\n    change [jump v] by (-1)\nend\nchange y by (3)\nif <key (right arrow v) pressed?> then\n    if <(Speed) < [11]> then\n        change [speed v] by (1)\n    end\nelse\n    if <key (left arrow v) pressed?> then\n        if <(Speed) > [-11]> then\n            change [speed v] by (-1)\n        end\n    else\n        if <(Speed) > [0]> then\n            change [speed v] by (-1)\n        else\n            if <(Speed) < [0]> then\n                change [speed v] by (1)\n            end\n        end\n    end\nend\nif <<<touching color (#ff0000)?> or <touching color (#ff7f7f)?>> or <(ScreenY) < [-550]>> then\n    set [jump v] to [0]\n    set [speed v] to [0]\n    set [screenx v] to [-200]\n    set [screeny v] to [0]\nend\nif <touching color (#c7509f)?> then\n    set [jump v] to [0]\n    set [speed v] to [0]\n    set [screenx v] to [-200]\n    set [screeny v] to [0]\n    broadcast (Complete v)\nend\nchange [screenx v] by (x position)\nchange [screeny v] by (y position)\ngo to x: (0) y: (0)\n\nwhen flag clicked\nset [speed v] to [0]\nset [jump v] to [0]\nset [screenx v] to [-200]\nset [screeny v] to [0]\nshow\ngo to x: (0) y: (0)\nset size to (50) %\ngo to [front v] layer\n\nset size to (200) %\n\n@Level\n\nwhen I receive [platformer-tick v]\ngo to x: ((0) - (ScreenX)) y: ((0) - (ScreenY))\nbroadcast (Run platformer v)\n\nwhen flag clicked\nshow\nset size to (100) %\nswitch costume to (costume1 v)\n\nwhen I receive [complete v]\nnext costume\n\nset size to (200) %\n\n@Bubbles\n\nwhen flag clicked\nhide\nforever\n    create clone of (_myself_ v)\nend\n\nwait (pick random (0.1) to (0.6)) seconds\n\nwhen I start as a clone\nshow\nset [ghost v] to (pick random (10) to (50))\nset size to (pick random (50) to (120)) %\nset [ghost v] effect to (100)\ngo to [back v] layer\ngo to (random position v)\npoint in direction (pick random (-180) to (-150))\nrepeat (10)\n    change [ghost v] effect by ((0) - ((ghost) / (10)))\nend\nrepeat (pick random (10) to (30))\n    move (2) steps\n    turn right (pick random (0) to (5)) degrees\nend\nrepeat (10)\n    move (2) steps\n    turn right (pick random (0) to (20)) degrees\n    change [ghost v] effect by (10)\n    delete this clone\nend\n\n@Words\n\nwhen flag clicked\nhide\n\n