night ~ a mobile platformer

Instructions: --------------------------------NIGHT-----------------------------\n\nHow to play: WASD or arrow keys to move, if you're on the mobile press then drag. Don't touch the red or you lose. Get to the right side of the screen to proceed to the next level. Try not to clip into the moving objects!\n\n ❤️,  ⭐️, and Follow for more games!! \n\n@Thepugmen: scripts, sprites, and decoration\n@ScratchinJoJoMusic: music\n\nMy studio!! https://scratch.mit.edu/studios/5214316/\n-------------------------------------------------------------------------#Games #GAME #fun #Fun #Hard? #cool #Cool #Thepugmen #Fine #play #followme #i'mcool #Desert #platfomer #Mobile #gamewithname\n

@Stage\n\n@player\n\nwhen flag clicked\nhide\n\nwhen I receive [go v]\nforever\n    if <<(x position) = [235]> or <(x position) > [235]>> then\n        start sound [Collect v]\n        go to x: (-225) y: (-40)\n        broadcast (next level v)\n    end\nend\n\nwhen I receive [go v]\nforever\n    set [x move v] to ((x move) * (0.85))\n    change x by (x move)\n    if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n        change y by (-2)\n        if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n            change y by (1)\n            if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n                change y by (1)\n                if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n                    change y by (1)\n                    if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n                        change y by (1)\n                        if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n                            change y by (1)\n                            if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n                                change y by (-5)\n                                change x by ((-1) * (x move))\n                                if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<<mouse down?> and <(mouse x) > (x position)>> or <<mouse down?> and <(mouse x) < (x position)>>>> and <not <(x move) = [0]>>> then\n                                    set [y move v] to [6]\n                                    set [x move v] to (((x move) / ([abs v] of (x move) )) * (-4))\n                                else\n                                    set [x move v] to [0]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n        change y by (2)\n    end\nend\n\nwhen I receive [go v]\nforever\n    clear graphic effects\n    change y by (-3)\n    if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            set [y move v] to [7]\n        end\n    end\n    change y by (3)\n    if <(y move) > [-15]> then\n        change [y move v] by (-0.5)\n    end\n    change y by (-2)\n    if <not <<touching (real platformer  v)?> or <touching (moving platform v)?>>> then\n        change y by (-1)\n        if <not <<touching (real platformer  v)?> or <touching (moving platform v)?>>> then\n            change y by (-1)\n            if <not <<touching (real platformer  v)?> or <touching (moving platform v)?>>> then\n                change y by (-1)\n                if <not <<touching (real platformer  v)?> or <touching (moving platform v)?>>> then\n                    change y by (-1)\n                    if <not <<touching (real platformer  v)?> or <touching (moving platform v)?>>> then\n                        change y by (-1)\n                        if <not <<touching (real platformer  v)?> or <touching (moving platform v)?>>> then\n                            change y by (5)\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (2)\n    change y by (y move)\n    if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n        change y by (-2)\n        if <<touching (real platformer  v)?> or <touching (moving platform v)?>> then\n            change y by ((-1) * (y move))\n            set [y move v] to [-3]\n        end\n        change y by (2)\n    end\nend\n\nwhen I start as a clone\nswitch costume to (clone v)\nset size to (100) %\nset [ghost v] effect to (0)\nrepeat (10)\n    change [ghost v] effect by (10)\n    change size by (-10)\nend\ndelete this clone\n\nwhen I receive [go v]\nforever\n    create clone of (_myself_ v)\n    wait (.025) seconds\nend\n\nwhen I receive [go v]\nset size to (150) %\nswitch costume to (normal v)\nshow\ngo to x: (-225) y: (-40)\nset [x move v] to [0]\nset [y move v] to [0]\nforever\n    go to [front v] layer\n    if <<(y position) < [-175]> or <<touching color (#ff2200)?> or <touching color (#c41a00)?>>> then\n        go to x: (-225) y: (-40)\n        start sound (pick random (1) to (3))\n        set [x move v] to [0]\n        set [y move v] to [0]\n    end\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        change [x move v] by (-.7)\n        point in direction (-90)\n    end\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        change [x move v] by (.7)\n        point in direction (90)\n    end\nend\n\n@real platformer \n\nwhen flag clicked\nset [ghost v] effect to (100)\nswitch costume to (costume1 v)\nset [level v] to [1]\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [next level v]\nchange [level v] by (1)\nnext costume\n\nwhen I receive [go v]\nshow\n\nwhen I receive [go v]\nwait until <(level) = [11]>\nbroadcast (THE END :\) v)\n\n@deco\n\nwhen flag clicked\nset [level v] to [1]\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [go v]\nshow\n\n@moving platform\n\nwhen flag clicked\ngo to x: (0) y: (-35)\nhide\n\nwhen I receive [go v]\nwait until <(level) = [4]>\nshow\nrepeat until <(level) = [5]>\n    go to x: (-20) y: (-35)\n    repeat (63)\n        change x by (3)\n    end\n    repeat (63)\n        change x by (-3)\n    end\nend\nhide\nwait until <(level) = [9]>\nshow\nrepeat until <(level) = [10]>\n    go to x: (-45) y: (77)\n    repeat (57)\n        change x by (3)\n    end\n    repeat (57)\n        change x by (-3)\n    end\nend\nhide\n\nwhen I receive [go v]\nforever\n    if <not <<(level) = [4]> or <(level) = [9]>>> then\n        hide\n    end\nend\n\n@blinking stars\n\nwhen flag clicked\nhide\nset size to (90) %\ngo to [back v] layer\nrepeat (75)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\ngo to (random position v)\nforever\n    repeat (12)\n        change size by (3)\n    end\n    repeat (12)\n        change size by (-3)\n    end\nend\n\n@introduction \n\nwhen flag clicked\ngo to x: (0) y: (0)\npoint in direction (90)\nset size to (100) %\nintro\n\nwhen I receive [go v]\nswitch costume to (costume2 v)\ngo to [front v] layer\nhide\n\ndefine intro\ngo to [front v] layer\ngo to [front v] layer\nshow\nstart sound [intro song v]\nshow\nswitch costume to (costume1 v)\nrepeat (16)\n    next costume\nend\nswitch costume to (costume17 v)\nrepeat (16)\n    wait (.0003) seconds\n    next costume\nend\nswitch costume to (costume33 v)\nrepeat (6)\n    wait (.0003) seconds\n    next costume\nend\nwait (6) seconds\nbroadcast (go v)\nhide\nstop [other scripts in sprite v]\n\nwhen flag clicked\nwait (3) seconds\nforever\n    repeat (10)\n        change size by (3)\n    end\n    repeat (3)\n        change size by (-3)\n    end\nend\n\nwhen I receive [the end :\) v]\ngo to x: (0) y: (100)\nswitch costume to (costume40 v)\npoint in direction (90)\nset size to (4) %\ngo to [front v] layer\nshow\nrepeat (25)\n    change size by (4)\n    turn right (14.4) degrees\nend\nset size to (100) %\n\n@loves, favs\n\nwhen I receive [the end :\) v]\nhide\nforever\n    wait (.3) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\ngo to [front v] layer\nswitch costume to (pick random (1) to (2))\nset size to (0) %\ngo to (random position v)\npoint in direction (pick random (-180) to (180))\nset [ghost v] effect to (50)\nrepeat (20)\n    change size by (2)\nend\nwait (2) seconds\nrepeat (15)\n    change size by (-2)\nend\ndelete this clone\n\nbroadcast (THE END :\) v)\n\n@thumbnail\n\nwhen flag clicked\nhide\n\n