Broken City (A platformer)

Instructions: GAME - Broken City (A platformer)\n\nART - @RainFreeze\n\nCODE - @RainFreeze\n\nSTORY - Once Upon a Time a computer was in a shop, and only wanted to be bought, but everyone only took the other computers, and that computer was left alone. Eventually, all the other computers sold out, and no one needed a computer anymore. And that computer was never needed again. When one day, that computer wanted revenge. He took everything into his software, people, buildings, life, cars, everything. After that the city was in ruins. Only one thing stood in its way to destroy everything, YOU.\n\nHOW TO PLAY - \nUse arrow keys to move, Touch for mobile.\nPress R to Restart\nType SKIP to skip story\nRemember the numbers\nLike, Star, and Follow!\n\nVOTE FOR ME HERE!!!\nhttps://scratch.mit.edu/studios/30691113\n\nFAMOUS ACTIVITY -\n\n@prodannau - "cool"\nLOVED, STARED, FOLLOWED\n\nOTHER NOTES - \nTHANKS!!! IM AT 1000 VEIWS!!! YES!!! 12/7/21

@Stage\n\nwhen flag clicked\nswitch backdrop to (black v)\nforever\n    play sound [ninja music 1 v] until done\nend\n\nwhen I receive [start v]\nswitch backdrop to (white v)\n\n@Cover\n\nwhen flag clicked\nwait (0.2) seconds\nhide\n\n@Story\n\nwhen flag clicked\nshow\nswitch costume to (costume1 v)\nset [pixelate v] effect to (100)\nset [ghost v] effect to (0)\nrepeat (50)\n    change [pixelate v] effect by (-2)\nend\nwait until <<mouse down?> or <<key (right arrow v) pressed?> or <key (space v) pressed?>>>\nrepeat (50)\n    change [pixelate v] effect by (2)\nend\nswitch costume to (costume2 v)\nrepeat (50)\n    change [pixelate v] effect by (-2)\nend\nwait until <<mouse down?> or <<key (right arrow v) pressed?> or <key (space v) pressed?>>>\nrepeat (50)\n    change [pixelate v] effect by (2)\nend\nswitch costume to (costume3 v)\nrepeat (50)\n    change [pixelate v] effect by (-2)\nend\nwait until <<mouse down?> or <<key (right arrow v) pressed?> or <key (space v) pressed?>>>\nrepeat (50)\n    change [pixelate v] effect by (2)\nend\nswitch costume to (costume4 v)\nrepeat (50)\n    change [pixelate v] effect by (-2)\nend\nwait until <<mouse down?> or <<key (right arrow v) pressed?> or <key (space v) pressed?>>>\nrepeat (50)\n    change [pixelate v] effect by (2)\nend\nswitch costume to (costume5 v)\nrepeat (50)\n    change [pixelate v] effect by (-2)\nend\nwait until <<mouse down?> or <<key (right arrow v) pressed?> or <key (space v) pressed?>>>\nrepeat (50)\n    change [pixelate v] effect by (2)\nend\nswitch costume to (costume6 v)\nrepeat (50)\n    change [pixelate v] effect by (-2)\nend\nwait until <<mouse down?> or <<key (right arrow v) pressed?> or <key (space v) pressed?>>>\nrepeat (50)\n    change [pixelate v] effect by (2)\nend\nswitch costume to (costume7 v)\nrepeat (50)\n    change [pixelate v] effect by (-2)\nend\nwait until <<mouse down?> or <<key (right arrow v) pressed?> or <key (space v) pressed?>>>\nrepeat (50)\n    change [ghost v] effect by (5)\nend\nbroadcast (start v)\n\nwhen flag clicked\nwait until <key (s v) pressed?>\nwait until <key (k v) pressed?>\nwait until <key (i v) pressed?>\nwait until <key (p v) pressed?>\nrepeat (50)\n    change [ghost v] effect by (5)\nend\nbroadcast (start v)\n\n@Player\n\ndefine Tick\nif <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    change [xv v] by (1)\n    switch costume to (left v)\nend\nif <<key (left arrow v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>> then\n    change [xv v] by (-1)\n    switch costume to (right v)\nend\nset [xv v] to ((Xv) * (0.9))\nchange x by (Xv)\nif <touching color (#000000)?> then\n    change y by (1)\n    if <touching color (#000000)?> then\n        change y by (1)\n        if <touching color (#000000)?> then\n            change y by (1)\n            if <touching color (#000000)?> then\n                change y by (1)\n                if <touching color (#000000)?> then\n                    change y by (1)\n                    if <touching color (#000000)?> then\n                        change x by ((Xv) * (-1))\n                        change y by (-5)\n                        if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n                            if <(Xv) > [0]> then\n                                set [xv v] to [-10]\n                            else\n                                set [xv v] to [10]\n                            end\n                            set [yv v] to [15]\n                        else\n                            set [xv v] to [0]\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange [yv v] by (-1)\nchange y by (Yv)\nif <touching color (#000000)?> then\n    change y by ((Yv) * (-1))\n    set [yv v] to [0]\nend\nchange y by (-1)\nif <touching color (#000000)?> then\n    if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n        set [yv v] to [15]\n    end\nend\nchange y by (1)\nif <<([y position v] of [level v]) > [700]> or <touching color (#ff0000)?>> then\n    set [scrollx v] to [810]\n    set [scrolly v] to [400]\nend\nchange [scrollx v] by ((x position) * (-1))\nchange [scrolly v] by ((y position) * (-1))\ngo to x: (0) y: (0)\nif <touching color (#2affff)?> then\n    broadcast (Next Level v) and wait\nend\nif <touching color (#ffe300)?> then\n    set [yv v] to [16]\nend\nif <touching color (#24ff00)?> then\n    set [yv v] to [30]\nend\n\nwhen I receive [tick v]\nTick\n\nwhen I receive [restart v]\nset [scrollx v] to [810]\nset [scrolly v] to [400]\n\nwhen I receive [start v]\nshow\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    broadcast (tick v)\nend\n\nwhen flag clicked\nset size to (130) %\nhide\ngo to [front v] layer\n\nwhen I receive [start v]\nforever\n    wait until <key (r v) pressed?>\n    broadcast (Restart v)\nend\n\nwhen I receive [end v]\nhide\n\n@Level\n\nwhen I receive [next level v]\nset [scrollx v] to [810]\nset [scrolly v] to [400]\nwait (1) seconds\nnext costume\n\nwhen I receive [start v]\nshow\nswitch costume to (blank v)\nset size to (400) %\nswitch costume to (level 1 v)\nset [scrollx v] to [810]\nset [scrolly v] to [400]\nforever\n    go to x: (ScrollX) y: (ScrollY)\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    if <(costume [name v]) = [costume2]> then\n        ask [What is the code?] and wait\n        if <(answer) = [529]> then\n            switch backdrop to (end v)\n            broadcast (end v)\n            hide\n            switch costume to (level 1 v)\n        end\n    end\nend\n\n@rain\n\nwhen I start as a clone\nhide\nswitch costume to (costume1 v)\nwait (pick random (0.2) to (1)) seconds\nset x to (pick random (-240) to (240))\nrepeat (6)\n    next costume\nend\ndelete this clone\n\nwhen I receive [start v]\nshow\nswitch costume to (costume1 v)\nset y to (15)\nforever\n    set x to (pick random (-240) to (240))\n    repeat (6)\n        next costume\n    end\n    create clone of (_myself_ v)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [end v]\nhide\n\n