Fortnite Platformer. MOBILE & IPAD READY!

Instructions: Ok , it's my third platformer  and an entry to @PrimeGuy_1001's contest\nthanks for 1k + loves and faves I was offline for a lot of days one day i opened and I had 4k+ messages\nthnx to @-Sprout15-  for curating this\n\n___________________________________________\npropose to be featured here - https://scratch.mit.edu/studios/28715018/\nArrow keys to move \nDon't touch lava\n___________________________________________\nintro contest - https://scratch.mit.edu/projects/48216776/\nre-shared to edit the intro\n

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\nwait until <(Level) = [7]>\nswitch backdrop to (backdrop2 v)\n\n@Sprite13\n\nwhen flag clicked\ngo to x: (139) y: (-170)\nhide\nwait until <(Level) = [1]>\nswitch costume to (costume1 v)\nrepeat until <(Level) = [2]>\n    wait (1.5) seconds\n    create clone of (_myself_ v)\nend\nwait until <(Level) = [3]>\nswitch costume to (costume2 v)\nrepeat until <(Level) = [4]>\n    wait (1.5) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\nif <(Level) = [1]> then\n    repeat (150)\n        change y by (2)\n    end\nend\ndelete this clone\n\nrepeat until <touching (_edge_ v)?>\n\nwhen I start as a clone\nforever\n    if <(Level) = [2]> then\n        hide\n    end\n    if <(Level) = [4]> then\n        hide\n    end\nend\n\nif <(Level) = [3]> then\n    repeat (150)\n        change y by (2)\n    end\nend\n\n@Sprite1\n\nwhen flag clicked\nwait (0.001) seconds\nhide\nwait until <(Level) = [4]>\nshow\ngo to x: (87) y: (27)\nrepeat until <(Level) = [5]>\n    repeat (30)\n        change y by (10)\n        if <(Level) = [5]> then\n            hide\n        end\n    end\n    wait (1) seconds\n    repeat (15)\n        change y by (-20)\n        if <(Level) = [5]> then\n            hide\n        end\n    end\n    wait (0.5) seconds\nend\nhide\n\n@p\n\nwhen flag clicked\nhide\nwait until <(Level) = [1]>\nshow\nswitch costume to (costume1 v)\nwait until <(Level) = [2]>\nshow\nswitch costume to (costume2 v)\nwait until <(Level) = [3]>\nswitch costume to (costume3 v)\nwait until <(Level) = [4]>\nswitch costume to (costume4 v)\nwait until <(Level) = [5]>\nswitch costume to (costume5 v)\nwait until <(Level) = [6]>\nswitch costume to (costume7 v)\nwait until <(Level) = [7]>\nswitch costume to (costume6 v)\nwait until <(Level) = [8]>\nhide\n\n@Sprite3\n\nwhen flag clicked\nforever\n    wait until <touching (player v)?>\n    broadcast (1 v)\n    hide\nend\n\nwhen flag clicked\n\nwhen flag clicked\nwait (0.0001) seconds\nhide\nwait until <(Level) = [5]>\nshow\ngo to x: (174) y: (-156)\n\nwhen I receive [ded v]\nif <(Level) = [5]> then\n    show\nend\n\nif <(Level) = [2]> then\n    show\nend\n\nif <(Level) = [3]> then\n    show\nend\n\nwait until <(Level) = [6]>\nshow\ngo to x: (-148) y: (100)\n\n@Player\n\nwhen flag clicked\nset [xvel v] to [0]\nset [yvel v] to [0]\nset [level v] to [1]\ngo to x: (-180) y: (-50)\nforever\n    Run physics [0.9] [0.9] [-1] [15]\nend\n\ndefine Run physics (speed) (friction) (gravity) (jump height)\nchange [yvel v] by (gravity)\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    change [xvel v] by (speed)\nend\nif <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n    change [xvel v] by ((speed) * (-1))\nend\nset [xvel v] to ((Xvel) * (friction))\nchange x by (Xvel)\nif <<touching (ground v)?> or <<touching (sprite13 v)?> or <touching (sprite6 v)?>>> then\n    change y by (1)\nend\nif <<touching (ground v)?> or <<touching (sprite13 v)?> or <touching (sprite6 v)?>>> then\n    change y by (1)\nend\nif <<touching (ground v)?> or <<touching (sprite13 v)?> or <touching (sprite6 v)?>>> then\n    change y by (1)\nend\nif <<touching (ground v)?> or <<touching (sprite13 v)?> or <touching (sprite6 v)?>>> then\n    change y by (1)\nend\nif <<touching (ground v)?> or <<touching (sprite13 v)?> or <touching (sprite6 v)?>>> then\n    change y by (-4)\n    change x by ((Xvel) * (-1))\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n        set [yvel v] to ((jump height) - (3.5))\n        if <[0] < (Xvel)> then\n            set [xvel v] to [-6]\n        else\n            set [xvel v] to [6]\n        end\n    else\n        set [xvel v] to [0]\n    end\nend\nchange y by (Yvel)\nif <<touching (ground v)?> or <<touching (sprite13 v)?> or <touching (sprite6 v)?>>> then\n    change y by ((Yvel) * (-1))\n    set [yvel v] to [0]\nend\nchange y by (-1)\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n    if <<touching (ground v)?> or <<touching (sprite13 v)?> or <touching (sprite6 v)?>>> then\n        set [yvel v] to (jump height)\n    end\nend\nif <touching (sprite9 v)?> then\n    set [yvel v] to [20]\nend\nif <touching (sprite10 v)?> then\n    if <(Level) = [5]> then\n        set [xvel v] to [25]\n    else\n        set [xvel v] to [20]\n    end\nend\nif <touching (sprite11 v)?> then\n    set [xvel v] to [-25]\nend\nchange y by (1)\n\nwhen I receive [ded v]\ngo to x: (-180) y: (-50)\nset [ghost v] effect to (0)\n\nwhen I start as a clone\n\ndelete this clone\n\nrepeat (10)\n    change size by (-5)\n    change [ghost v] effect by (5)\nend\n\nwhen I receive [next level v]\ngo to x: (-180) y: (-50)\nset size to (125) %\nbroadcast (11 v)\n\nwhen flag clicked\nrepeat until <(Level) = [22]>\n    if <[220] < (x position)> then\n        broadcast (Next level v) and wait\n        broadcast (11 v) and wait\n        wait until <not <[220] < (x position)>>\n    end\n    if <<<(y position) < [-170]> or <touching (sprite1 v)?>> or <<touching (p v)?> or <touching (sprite12 v)?>>> then\n        broadcast (Ded v) and wait\n        broadcast (11 v)\n        set size to (125) %\n    end\nend\n\nwhen I receive [respawn v]\nset size to (125) %\ngo to x: (-180) y: (-50)\nset [ghost v] effect to (0)\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    go [backward v] (1) layers\nend\n\nwhen flag clicked\n\nforever\n    create clone of (_myself_ v)\nend\n\nwhen flag clicked\nforever\n    if <[2] = (costume [number v])> then\n        set [xvel v] to [0]\n        wait until <not <[2] = (costume [number v])>>\n    end\nend\n\nwhen flag clicked\nset size to (125) %\nforever\n    if <touching (sprite2 v)?> then\n        set size to (100) %\n        broadcast (12 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (sprite8 v)?> then\n        go to (sprite7 v)\n        wait (2) seconds\n    end\n    if <touching (sprite7 v)?> then\n        go to (sprite8 v)\n        wait (2) seconds\n    end\nend\n\nchange y by (1)\n\n\n\nset [yvel v] to [20]\n\nwhen I receive [ded v]\nstart sound [Roblox Death Sound  OOF Sound Effect v]\ngo to x: (-180) y: (-50)\nset [ghost v] effect to (0)\n\n@Sprite4\n\nwhen flag clicked\nset [a v] to [1]\ngo to [front v] layer\nwait (0.5) seconds\nrepeat (100)\n    change [ghost v] effect by (1)\nend\n\nwhen flag clicked\nif <(a) = [1]> then\n    show\nend\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\n@Sprite9\n\nwhen flag clicked\ngo to [front v] layer\ngo [backward v] (1) layers\nwait (0.0001) seconds\nhide\n\nwait until <(Level) = [4]>\ngo to x: (7) y: (29)\nshow\nwait until <(Level) = [5]>\nhide\n\ngo to x: (248) y: (29)\n\nshow\n\nshow\n\nwait until <(Level) = [3]>\nhide\nwait until <(Level) = [6]>\ngo to x: (33) y: (42)\nshow\nwait until <(Level) = [7]>\nhide\n\n@Sprite8\n\nwhen flag clicked\nwait (0.001) seconds\nhide\nwait until <(Level) = [2]>\nshow\ngo to x: (-220) y: (138)\nwait until <(Level) = [3]>\nhide\n\nshow\nchange x by (10)\nwait until <(Level) = [4]>\n\nshow\ngo to x: (-220) y: (161)\nwait until <(Level) = [7]>\nhide\n\nwhen flag clicked\nwait (0.5) seconds\nset size to (90) %\nforever\n    repeat (20)\n        change size by (1)\n        wait (0.03) seconds\n    end\n    repeat (20)\n        change size by (-1)\n        wait (0.03) seconds\n    end\nend\n\n@Sprite7\n\nwhen flag clicked\nwait (0.001) seconds\nhide\nwait until <(Level) = [2]>\nshow\ngo to x: (-13) y: (-105)\nwait until <(Level) = [3]>\nhide\n\nchange y by (10)\nshow\nwait until <(Level) = [4]>\n\ngo to x: (66) y: (-101)\nshow\nwait until <(Level) = [7]>\nhide\n\ngo to x: (73) y: (73)\n\nwhen flag clicked\nwait (1) seconds\nset size to (90) %\nforever\n    repeat (20)\n        change size by (1)\n        wait (0.03) seconds\n    end\n    repeat (20)\n        change size by (-1)\n        wait (0.03) seconds\n    end\nend\n\n@Sprite6\n\nwhen I receive [1 v]\nhide\n\nwhen flag clicked\nwait (0.0001) seconds\nhide\n\nwhen flag clicked\nwait until <(Level) = [5]>\nswitch costume to (costume1 v)\nshow\n\nwhen I receive [ded v]\nif <(Level) = [5]> then\n    show\nend\n\nwait until <(Level) = [6]>\nshow\nswitch costume to (costume2 v)\n\nif <(Level) = [6]> then\n    show\nend\n\n@Sprite5\n\nwhen flag clicked\nwait (0.0001) seconds\nhide\nset size to (125) %\nforever\n    wait (0.001) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\ngo to (player v)\nrepeat (5)\n    wait (0.001) seconds\n    change size by (-10)\nend\ndelete this clone\n\nwhen I receive [12 v]\nset size to (100) %\n\nwhen I receive [11 v]\nset size to (125) %\n\n@Sprite10\n\nwhen flag clicked\nhide\nhide\nwait until <(Level) = [6]>\npoint in direction (90)\ngo to x: (69) y: (16)\nshow\nwait until <(Level) = [7]>\nhide\n\nwait until <(Level) = [5]>\nshow\ngo to x: (25) y: (-128)\npoint in direction (90)\nwait until <(Level) = [6]>\nhide\n\nwait until <(Level) = [6]>\nhide\n\nwait until <(Level) = [6]>\nhide\n\n@Sprite2\n\nwhen flag clicked\nwait (0.001) seconds\nhide\nwait until <(Level) = [2]>\nshow\ngo to x: (15) y: (-38)\n\nwait until <(Level) = [5]>\nshow\ngo to x: (-125) y: (79)\n\nhide\n\nshow\ngo to x: (-215) y: (68)\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        hide\n    end\nend\n\nwhen I receive [ded v]\nif <(Level) = [2]> then\n    show\nend\n\nif <(Level) = [5]> then\n    show\nend\n\nif <(Level) = [5]> then\n    show\nend\n\nwait until <(Level) = [4]>\nshow\ngo to x: (-212) y: (30)\n\ngo to x: (-212) y: (90)\n\nwait until <(Level) = [3]>\nshow\ngo to x: (199) y: (50)\nwait until <(Level) = [6]>\nshow\ngo to x: (181) y: (30)\n\nwhen flag clicked\nset size to (90) %\nforever\n    repeat (20)\n        change size by (1)\n        wait (0.03) seconds\n    end\n    repeat (20)\n        change size by (-1)\n        wait (0.03) seconds\n    end\nend\n\n@Ground\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    go to [front v] layer\n    go [backward v] (5) layers\n    set [level v] to (costume [number v])\n    go to x: (0) y: (0)\nend\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\nforever\n    play sound [0138 v] until done\nend\n\n