_=Purple Platformer=_

Instructions: Arrow keys to move and jump\nPlease leave a love and fave\ndouble click flag to prevent lag (glitches might occur on slower computers if you dont!!!)\nThe end was kinda rushed and you can tell\nREAD THE TEXT FOR THE STORY!!\n(the really cheesy one btw)\n___________________________________________\nWhats up guys. I haven't made any new content in a few years, but it would be cool if you are seeing this to visit my most recent project here: https://scratch.mit.edu/projects/283681639/ 

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\n\nwhen flag clicked\nforever\n    if <(backdrop [number v]) = [7]> then\n        broadcast (oh no! v)\n    end\nend\n\nwhen I receive [yes v]\nbroadcast (message1 v)\n\nwhen I receive [message1 v]\n\nwhen I receive [message1 v]\nnext backdrop\n\nif <(backdrop [number v]) = [8]> then\n    broadcast (to be continued v)\nend\n\nif <not <(backdrop [number v]) = [9]>> then\n\nwhen flag clicked\nforever\n    play sound [Alan Walker - Faded.mp3 v] until done\nend\n\n@Sprite1\n\ndefine Move (direction) (speed)\nswitch costume to (direction)\nchange x by (speed)\nset [slope v] to [0]\nrepeat until <<(slope) = [8]> or <not <touching color (#b2b2b2)?>>>\n    change y by (1)\n    change [slope v] by (1)\nend\nif <(slope) = [8]> then\n    change x by ((0) - (speed))\n    change y by ((0) - (slope))\nend\n\ndefine Touch ground\nchange [fallin' v] by (1)\nrepeat until <not <touching color (#b2b2b2)?>>\n    change y by (1)\n    set [fallin' v] to [0]\n    set [gravity v] to [0]\nend\n\ndefine Touch Ground <up?>\nchange [fallin' v] by (1)\nrepeat until <not <touching color (#b2b2b2)?>>\n    if <up?> then\n        change y by (-1)\n    else\n        change y by (1)\n        set [fallin' v] to [0]\n    end\n    set [gravity v] to [0]\nend\n\nwhen flag clicked\nset [walljump v] to [0]\nforever\n    if <key (up arrow v) pressed?> then\n        if <(costume [number v]) = [2]> then\n            if <key (left arrow v) pressed?> then\n                if <<(slope) = [8]> and <(gravity) > [-100]>> then\n                    repeat (3)\n                        change [walljump v] by (6)\n                        change x by (walljump)\n                    end\n                    change y by (5)\n                    set [gravity v] to [0]\n                    change [gravity v] by (6)\n                    set [walljump v] to [0]\n                end\n            end\n        else\n            if <(costume [number v]) = [1]> then\n                if <key (right arrow v) pressed?> then\n                    if <<(slope) = [8]> and <(gravity) > [-100]>> then\n                        repeat (3)\n                            change [walljump v] by (-6)\n                            change x by (walljump)\n                        end\n                        change y by (5)\n                        set [gravity v] to [0]\n                        change [gravity v] by (6)\n                        set [walljump v] to [0]\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset rotation style [left-right v]\ngo to x: (-215) y: (-25)\nshow\nset [gravity v] to [0]\nset [fallin' v] to [10]\nforever\n    change [gravity v] by (-1)\n    change y by (gravity)\n    Touch Ground <(gravity) > [0]>\n    if <key (left arrow v) pressed?> then\n        Move (2) (-5.5)\n    end\n    if <key (right arrow v) pressed?> then\n        Move (1) (5.5)\n    end\n    if <<key (up arrow v) pressed?> and <[3] > (fallin')>> then\n        set [gravity v] to [9]\n    end\nend\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    if <touching color (#ff0000)?> then\n        go to x: (-215) y: (-25)\n        broadcast (yuh v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(x position) > [220]> then\n        broadcast (message1 v)\n        go to x: (-215) y: (-25)\n    end\nend\n\nwhen I receive [yes v]\ngo to x: (-215) y: (-25)\n\nwhen flag clicked\nforever\n    if <touching (sprite8 v)?> then\n        broadcast (key v)\n    end\nend\n\nhide\n\n@Sprite2\n\nwhen flag clicked\nswitch costume to (costume1 v)\nshow\nset size to (100) %\nforever\n    go to (sprite1 v)\nend\n\nwhen flag clicked\nforever\n    wait (0.001) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nset size to (100) %\nset [ghost v] effect to (0)\nrepeat (10)\n    change [ghost v] effect by (9)\n    change size by (-5)\nend\ndelete this clone\n\nwhen I receive [oh no! v]\nset [ghost v] effect to (100)\nshow\nset size to (100) %\nforever\n    go to (sprite1 v)\nend\n\nwhen I receive [yes v]\nshow\nset size to (100) %\nset [ghost v] effect to (0)\n\nwhen I receive [key v]\nswitch costume to (costume2 v)\n\nwhen flag clicked\nforever\n    set [costume v] to (costume [number v])\nend\n\n@Sprite3\n\nwhen flag clicked\nhide\n\nwhen I receive [oh no! v]\ngo to x: (120) y: (-17)\nshow\n\nwhen this sprite clicked\nbroadcast (no v)\nhide\n\nwhen I receive [yes v]\nhide\n\nwhen I receive [no v]\nhide\n\n@Sprite4\n\nwhen I receive [oh no! v]\ngo to x: (-120) y: (-17)\nshow\n\nwhen this sprite clicked\nwait (0.1) seconds\nbroadcast (yes v)\n\nwhen I receive [no v]\nhide\n\nwhen flag clicked\nhide\nforever\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        hide\n    end\nend\n\nwhen I receive [yes v]\nhide\n\n@Sprite5\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    go to x: (0) y: (0)\nend\n\nwhen I receive [saved v]\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\n@Sprite6\n\nwhen flag clicked\nforever\n    set [ghost v] effect to (100)\n    go to x: (0) y: (0)\nend\n\nshow\n\n@Sprite7\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [no v]\nshow\n\n@Sprite8\n\nwhen flag clicked\ngo to x: (-11) y: (-127)\nhide\nwait until <(backdrop [number v]) = [10]>\nbroadcast (now v)\nshow\nforever\n    if <touching (sprite1 v)?> then\n        hide\n    end\nend\n\nwhen I receive [key v]\n\n@Sprite9\n\nwhen flag clicked\ngo to x: (190) y: (-107)\nhide\ngo [backward v] (1111111101101010000) layers\n\nwhen I receive [now v]\nshow\nforever\n    if <<(costume) = [2]> and <touching (sprite1 v)?>> then\n        hide\n        broadcast (saved v)\n    end\nend\n\n