❃ Finding Light - A Mobile Friendly Platformer ❃

Instructions: ❃ - ❃    You live in a repeated world of stress and   ❃ - ❃ \n   loss, but there is one amazing thing, the stars. \n       Oh, the stars. They are beautiful! Though it is too \n                stressful here. Will you be able escape\n                    this stressful world and find light in \n                         the darkest times? If you\n                            do, what is the light? \n \n❃ - ❃                        - Instructions -                            ❃ - ❃  \n        Press the green flag, then press play. There are \n                currently 7 levels to get over with! :)\n                      Don't touch the red or spikes!\n                        Blue makes you jump high!\n\n❃ - ❃                           - Controls -                             ❃ - ❃  Mobile devices: Dragging your finger. (Up, Left & right)\n               Computer, PC or laptop: Arrow keys.\n                   You can even use your mouse!\n\n❃ - ❃                     - Updates or Notes -                     ❃ - ❃\n         ❃ If you really like it and want it FEATURED,\n                      please visit this studio:\n           https://scratch.mit.edu/studios/4228481/\n   ❃ Pressing/clicking the question mark gives you 3 \n           options;  Skipping the stage, turn/off music \n                         & restarting the stage.\n                ❃ You can't turn on turbo mode.\n                      ❃ All levels are possible.\n❃ - ❃\n<3333333333

@Stage\n\nwhen flag clicked\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nswitch backdrop to (da play screen v) and wait\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nbroadcast (DOURTHANG v)\n\nwhen I receive [goboomer v]\nswitch backdrop to (backdrop1 v)\n\nwhen flag clicked\nforever\n    set [my variable v] to ((timer) + (.1))\nend\n\nwhen [timer v] > (my variable)\nbroadcast (STOP v)\nswitch backdrop to (da thumbnail v)\n\nwhen I receive [resultsssssssssss v]\nswitch backdrop to (da play screen2 v)\n\n@Sprite1\n\nwhen flag clicked\nhide\nswitch costume to (costume1 v)\n\nwhen I receive [goboomer v]\nshow\n\nwhen I receive [newlevel,person v]\nnext costume\n\nwhen I receive [stop v]\nhide\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [8]> then\n        broadcast (resultsssssssssss v)\n        switch costume to (costume9 v)\n    end\nend\n\n@Sprite2\n\nwhen flag clicked\nhide\n\nwhen I receive [message1 v]\ngo to x: (-170) y: (126)\nplay sound [Disconnect v] until done\n\nwhen I receive [goboomer v]\ngo to x: (-170) y: (126)\nforever\n    show\n    if <<<mouse down?> and <(x position) > (mouse x)>> or <key (left arrow v) pressed?>> then\n        change [xv v] by (-1)\n    end\n    if <<<mouse down?> and <(x position) < (mouse x)>> or <key (right arrow v) pressed?>> then\n        change [xv v] by (1)\n        switch costume to (costume3 v)\n    else\n        switch costume to (costume1 v)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <<touching (sprite1 v)?> or <<touching (averygoodleve; v)?> or <<touching (averygoodleve;2 v)?> or <touching (averygoodleve;3 v)?>>>> then\n        change y by (1)\n        if <<touching (sprite1 v)?> or <<touching (averygoodleve; v)?> or <<touching (averygoodleve;2 v)?> or <touching (averygoodleve;3 v)?>>>> then\n            change y by (1)\n            if <<touching (sprite1 v)?> or <<touching (averygoodleve; v)?> or <<touching (averygoodleve;2 v)?> or <touching (averygoodleve;3 v)?>>>> then\n                change y by (1)\n                if <<touching (sprite1 v)?> or <<touching (averygoodleve; v)?> or <<touching (averygoodleve;2 v)?> or <touching (averygoodleve;3 v)?>>>> then\n                    change y by (1)\n                    if <<touching (sprite1 v)?> or <<touching (averygoodleve; v)?> or <<touching (averygoodleve;2 v)?> or <touching (averygoodleve;3 v)?>>>> then\n                        change y by (1)\n                        if <<touching (sprite1 v)?> or <<touching (averygoodleve; v)?> or <<touching (averygoodleve;2 v)?> or <touching (averygoodleve;3 v)?>>>> then\n                            change x by ((Xv) * (-1))\n                            change y by (-5)\n                            if <<<mouse down?> and <(y position) < (mouse y)>> or <key (up arrow v) pressed?>> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-7]\n                                else\n                                    set [xv v] to [7]\n                                end\n                                set [yv v] to [10]\n                            else\n                                set [xv v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (-1)\n    if <<touching (sprite1 v)?> or <<touching (averygoodleve; v)?> or <<touching (averygoodleve;2 v)?> or <touching (averygoodleve;3 v)?>>>> then\n        if <<<mouse down?> and <(y position) < (mouse y)>> or <key (up arrow v) pressed?>> then\n            set [yv v] to [12]\n        end\n    end\n    change y by (1)\n    change [yv v] by (-1)\n    set [yv v] to ((Yv) * (0.99))\n    change y by (Yv)\n    if <<touching (sprite1 v)?> or <<touching (averygoodleve; v)?> or <<touching (averygoodleve;2 v)?> or <touching (averygoodleve;3 v)?>>>> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    hide variable [xv v]\nend\n\nwhen I receive [newlevel,person v]\ngo to x: (-170) y: (126)\n\nwhen I receive [jumphigh v]\nchange [yv v] by (12)\n\nwhen I receive [stop v]\nhide\n\nwhen I receive [skipdestageee v]\ngo to x: (-170) y: (126)\n\nwhen I receive [resultsssssssssss v]\n\n    switch costume to (costume4 v)\nend\n\n@Baddie\n\nwhen flag clicked\nforever\n    if <touching (sprite2 v)?> then\n        broadcast (message1 v)\n    end\nend\n\nshow\n\nhide\n\nwhen I receive [goboomer v]\nswitch costume to (costume1 v)\nshow\n\nwhen flag clicked\nhide\n\nwhen I receive [newlevel,person v]\nnext costume\n\nplay sound [Disconnect v] until done\n\nwhen I receive [stop v]\nhide\n\nwhen I receive [resultsssssssssss v]\nhide\n\n@Sprite4\n\nwhen I receive [dourthang v]\nset [brightness v] effect to (0)\nshow\ngo to x: (36) y: (28)\npoint in direction (90)\nforever\n    point in direction ((([sin v] of ((timer) * (200)) ) * (10)) + (90))\nend\n\nwhen I receive [goboomer v]\nhide\n\nwhen I receive [stop v]\nhide\n\n@Button3\n\nwhen flag clicked\nhide\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        switch costume to (button3-b2 v)\n    else\n        switch costume to (button3-b v)\n    end\nend\n\nwhen I receive [dourthang v]\nshow\nwait (0.5) seconds\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen this sprite clicked\nbroadcast (goboomer v)\n\nwhen I receive [goboomer v]\nhide\n\nwhen I receive [stop v]\nhide\n\n@Sprite5\n\nwhen flag clicked\nhide\nforever\n    glide (1) secs to x: (58) y: (40)\n    glide (1) secs to x: (58) y: (20)\nend\n\nwhen I receive [goboomer v]\nshow\nforever\n    if <touching (sprite2 v)?> then\n        broadcast (newlevel,person v)\n        play sound [Coin v] until done\n    end\nend\n\nwhen I receive [stop v]\nhide\n\nwhen I receive [resultsssssssssss v]\nhide\n\n@LETSJUMPPPPP\n\nshow\n\nhide\n\nwhen I receive [goboomer v]\nswitch costume to (costume1 v)\nshow\n\nwhen flag clicked\nhide\nforever\n    if <touching (sprite2 v)?> then\n        broadcast (JUMPHIGH v)\n    end\nend\n\nwhen I receive [newlevel,person v]\nnext costume\n\nwhen I receive [stop v]\nhide\n\nwhen I receive [stop v]\nhide\n\nwhen I receive [resultsssssssssss v]\nhide\n\n@Averygoodleve;\n\nshow\n\nhide\n\nwhen I receive [goboomer v]\nswitch costume to (costume1 v)\nshow\n\nwhen flag clicked\nhide\ngo to x: (-2) y: (12)\nforever\n    glide (2) secs to x: (-2) y: (12)\n    glide (2) secs to x: (195) y: (14)\nend\n\nwhen I receive [newlevel,person v]\nnext costume\n\nwhen I receive [stop v]\nhide\n\n@Averygoodleve;2\n\nshow\n\nhide\n\nwhen I receive [goboomer v]\nswitch costume to (costume1 v)\nshow\n\nwhen flag clicked\ngo to x: (195) y: (44)\nhide\nwait (2) seconds\nforever\n    glide (2) secs to x: (-2) y: (44)\n    glide (2) secs to x: (195) y: (44)\nend\n\nwhen I receive [newlevel,person v]\nnext costume\n\nwhen I receive [stop v]\nhide\n\nwhen I receive [resultsssssssssss v]\nhide\n\n@Averygoodleve;3\n\nshow\n\nhide\n\nwhen I receive [goboomer v]\nswitch costume to (costume1 v)\nshow\n\nwhen flag clicked\nhide\ngo to x: (-2) y: (12)\nforever\n    glide (2) secs to x: (-2) y: (56)\n    glide (2) secs to x: (195) y: (56)\nend\n\nwhen I receive [newlevel,person v]\nnext costume\n\nwhen I receive [stop v]\nhide\n\nwhen I receive [resultsssssssssss v]\nhide\n\n@Sprite3\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [goboomer v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        switch costume to (costume3 v)\n    else\n        switch costume to (costume1 v)\n    end\nend\n\nwhen this sprite clicked\nswitch costume to (costume2 v)\nbroadcast (questionthingy v)\n\nwhen I receive [hidethequestion:\)pls v]\nswitch costume to (costume1 v)\n\nwhen I receive [stop v]\nhide\n\nwhen I receive [resultsssssssssss v]\nhide\n\n@Sprite6\n\nwhen flag clicked\ngo to [front v] layer\nhide\n\nwhen I receive [questionthingy v]\nshow\n\nwhen this sprite clicked\nhide\nbroadcast (newlevel,person v)\nbroadcast (hidethequestion:\)pls v)\n\nwhen I receive [hidethequestion:\)pls v]\nhide\n\nwhen I receive [stop v]\nhide\n\n@Sprite7\n\nwhen flag clicked\nhide\nforever\n    play sound [Tobu - Candyland \[NCS Release\].mp3 v] until done\n    play sound [Different Heaven - Nekozilla \[NCS Release\].mp3 v] until done\nend\n\nwhen I receive [questionthingy v]\nshow\n\nwhen this sprite clicked\nnext costume\nbroadcast (hidethequestion:\)pls v)\nhide\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [1]> then\n        set volume to (100) %\n    else\n        set volume to (0) %\n    end\nend\n\nwhen I receive [hidethequestion:\)pls v]\nhide\n\nwhen I receive [stop v]\nhide\n\n@Sprite8\n\nwhen flag clicked\nhide\n\nwhen I receive [questionthingy v]\nshow\n\nwhen this sprite clicked\nbroadcast (Skipdestageee v)\nbroadcast (hidethequestion:\)pls v)\nhide\n\nwhen flag clicked\n\nwhen I receive [hidethequestion:\)pls v]\nhide\n\nwhen I receive [stop v]\nhide\n\n@Sprite9\n\nwhen flag clicked\nforever\n    change [turbotrap v] by (99)\nend\n\nwhen flag clicked\nforever\n    set [turbotrap v] to [0]\n    wait (0.0001) seconds\n    say []\n    if <(turbotrap) > [100]> then\n        forever\n            go to [front v] layer\n            show\n        end\n    else\n        hide\n    end\nend\n\n