COVID 19 - Hope - A Mobile Friendly Platformer

Instructions: WARNING: If you skip even only ONE level, then when you reach the end the "☁ World number of times game completed" WILL NOT GO UP! So, if you cheat by skipping a level, then that variable's number won't go up. You have to earn it!!!\n\nUse WSAD, the arrow keys or move your finger around on the screen to move. You'll realise what everything else does eventually :P\n\nThe platformer is dedicated to all those who have lost their lives in the battle against COVID-19.\n\nAll levels are possible!\n\nEnjoy!

@Stage\n\nwhen flag clicked\nset [your deaths v] to [0]\nset [skips v] to [0]\n\nwhen I receive [+ deaths v]\nchange [your deaths v] by (1)\nchange [☁ world number of deaths v] by (1)\n\nwhen I receive [finish v]\nif <(Skips) = [0]> then\n    change [☁ world number of times game completed v] by (1)\nend\n\nwhen flag clicked\nforever\n    play sound [Avicii - Wake Me Up v] until done\nend\n\nwhen I receive [start v]\nswitch backdrop to (backdrop1 v)\nforever\n    set [level number v] to (backdrop [number v])\nend\n\nwhen flag clicked\nswitch backdrop to (backdrop28 v)\n\nwhen I receive [start v]\nshow variable [level number v]\nshow variable [☁ world number of times game completed v]\nshow variable [☁ world number of deaths v]\nshow variable [your deaths v]\n\nwhen flag clicked\nhide variable [level number v]\nhide variable [☁ world number of times game completed v]\nhide variable [☁ world number of deaths v]\nhide variable [your deaths v]\n\nwhen backdrop switches to [backdrop26 v]\nbroadcast (FINISH v)\n\n@Player\n\nwhen flag clicked\nswitch costume to (costume6 v)\nset size to (200) %\ngo to x: (0) y: (-100)\nshow\n\nwhen this sprite clicked\n\nwhen I receive [start v]\nset size to (90) %\nshow\nset rotation style [left-right v]\ngo to x: (-200) y: (0)\nforever\n    if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>>> then\n        point in direction (90)\n        change [x v] by (1)\n    end\n    if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>>> then\n        point in direction (-90)\n        change [x v] by (-1)\n    end\n    set [x v] to ((x) * (.9))\n    change x by (x)\n    if <touching color (#53cf57)?> then\n        change y by (1)\n        if <touching color (#53cf57)?> then\n            change y by (1)\n            if <touching color (#53cf57)?> then\n                change y by (1)\n                if <touching color (#53cf57)?> then\n                    change y by (1)\n                    if <touching color (#53cf57)?> then\n                        change y by (1)\n                        if <touching color (#53cf57)?> then\n                            change x by ((x) * (-1))\n                            change y by (-5)\n                            if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (17))>>>> then\n                                if <(x) > [0]> then\n                                    set [x v] to [-5]\n                                else\n                                    set [x v] to [5]\n                                end\n                                set [y v] to [10]\n                            else\n                                set [x v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [y v] by (-1)\n    change y by (y)\n    if <touching color (#53cf57)?> then\n        change y by ((y) * (-1))\n        set [y v] to [0]\n    end\n    change y by (-1)\n    if <touching color (#53cf57)?> then\n        if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (17))>>>> then\n            change [y v] by (15)\n        end\n    end\n    change y by (1)\n    if <<touching color (#c2c8ff)?> or <<touching color (#93e2ff)?> or <<<touching color (#fff4f4)?> or <touching color (#dcc2ff)?>> or <(y position) < [-170]>>>> then\n        start sound [Crunch v]\n        go to x: (-200) y: (0)\n        broadcast (+ Deaths v)\n    end\n    if <(x position) > [235]> then\n        if <not <[] = [14]>> then\n            next backdrop\n            go to x: (-200) y: (0)\n            wait (.000001) seconds\n        end\n    end\n    if <touching color (#000000)?> then\n        set [y v] to [20]\n    end\nend\n\nwhen this sprite clicked\nif <(backdrop [number v]) = [28]> then\n    next costume\nend\n\n@Sprite1\n\nwhen this sprite clicked\nchange [skips v] by (1)\nnext backdrop\n\nwhen backdrop switches to [backdrop26 v]\nhide\n\nwhen I receive [start v]\nset [skips v] to [0]\ngo to x: (270) y: (-137)\nshow\n\n@Sprite2\n\nwhen flag clicked\nshow\ngo to x: (0) y: (0)\n\nwhen this sprite clicked\nbroadcast (START v)\nhide\n\n