Mando: A platformer

Instructions: Arrow keys to control, he's got a jetpack so jumps are high. m to mute the beautiful Mando music (why?) and r to reset the level.\n\n||ALL LEVELS ARE TESTED AND POSSIBLE||\n\nI've wanted to make a star wars game for a long time, so when the new season of The Mandalorian came out, I knew it was time. (no spoilers for the final episode. ALMOST THERE)\n\nAlso I can add levels\n\nLove Fav and Follow maybe?

@Stage\n\nwhen flag clicked\nset [music v] to [0]\nforever\n    if <(Mute) = [0]> then\n        if <(End) = [0]> then\n            if <(Mute) = [0]> then\n                play sound [The Mandalorian Theme P1 v] until done\n            end\n        end\n        if <(End) = [0]> then\n            if <(Mute) = [0]> then\n                play sound [The Mandalorian Theme P2 v] until done\n            end\n        end\n        if <(End) = [0]> then\n            if <(Mute) = [0]> then\n                play sound [The Mandalorian Theme P3 v] until done\n            end\n        end\n        if <(End) = [0]> then\n            if <(Mute) = [0]> then\n                play sound [The Mandalorian Theme P4 v] until done\n            end\n        end\n    end\nend\n\nwhen flag clicked\nswitch backdrop to (tatooine v)\n\nwhen I receive [end v]\nwait (1.1) seconds\nswitch backdrop to (tatooine2 v)\n\n@Player\n\ndefine Touch Ground <up?>\nchange [falling? v] by (1)\nrepeat until <not <touching (ground v)?>>\n    if <up?> then\n        change y by (-0.75)\n    else\n        change y by (0.75)\n        set [falling? v] to [0]\n    end\n    set [speed y v] to [0]\nend\n\ndefine Walk (direction) (speed)\npoint in direction (direction)\nchange x by (speed)\nset [slope v] to [0]\nrepeat until <<(slope) = [8]> or <not <touching (ground v)?>>>\n    change y by (1)\n    change [slope v] by (1)\nend\nif <(slope) = [8]> then\n    change x by ((0) - (speed))\n    change y by ((0) - (slope))\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    if <not <touching (bad things v)?>> then\n        if <<(falling?) > [0]> and <not <key (up arrow v) pressed?>>> then\n            switch costume to (down v)\n        end\n    end\nend\n\nwhen I receive [next level v]\nset size to (75) %\nset rotation style [left-right v]\nwait (0.01) seconds\nif <(level) = [1]> then\n    wait (0.89) seconds\nend\ngo to x: (-185) y: (-115)\nshow\nset [speed y v] to [0]\nset [falling? v] to [10]\nforever\n    if <not <touching (bad things v)?>> then\n        if <not <(End) = [1]>> then\n            if <not <<<key (up arrow v) pressed?> or <key (right arrow v) pressed?>> or <key (left arrow v) pressed?>>> then\n                if <not <<(falling?) > [2]> and <not <key (up arrow v) pressed?>>>> then\n                    switch costume to (normal v)\n                end\n            end\n            change [speed y v] by (-0.75)\n            change y by (speed y)\n            Touch Ground <(speed y) > [0]>\n            if <key (left arrow v) pressed?> then\n                Walk (-90) (-6)\n                switch costume to (look v)\n            end\n            if <key (right arrow v) pressed?> then\n                Walk (90) (6)\n                switch costume to (look v)\n            end\n            if <<key (up arrow v) pressed?> and <(falling?) < [3]>> then\n                set [speed y v] to [12]\n                switch costume to (up v)\n            end\n            if <(y position) < [-180]> then\n                go to x: (-200) y: (-115)\n                set [speed y v] to [0]\n            end\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <<(x position) > [220]> and <not <(baddddd) = [1]>>> then\n        if <(too fast?) > [0]> then\n            broadcast (Next Level v)\n        end\n    end\nend\n\nwhen I receive [next level v]\nforever\n    if <<key (up arrow v) pressed?> and <(falling?) < [3]>> then\n        if <(Mute) = [0]> then\n            play sound [Jump v] until done\n        end\n    end\nend\n\nwhen [timer v] > (0.3)\nhide\n\nwhen flag clicked\nforever\n    if <touching (bad things v)?> then\n        set [baddddd v] to [1]\n        broadcast (zap v)\n        switch costume to (normal2 v)\n        wait (0.3) seconds\n        go to x: (-200) y: (-115)\n        set [speed y v] to [0]\n        wait (0.3) seconds\n        set [baddddd v] to [0]\n    end\nend\n\nwhen I receive [end v]\nhide\nclear graphic effects\n\nwhen flag clicked\nclear graphic effects\n\nswitch costume to (down v)\n\nwhen flag clicked\nset [level v] to [0]\n\nwhen I receive [next level v]\nset [too fast? v] to [0]\n\nwhen flag clicked\nforever\n    wait (0.5) seconds\n    change [too fast? v] by (1)\nend\n\nwhen [r v] key pressed\ngo to x: (-185) y: (-115)\n\nwhen flag clicked\nforever\n    reset timer\nend\n\nwhen flag clicked\nforever\n    if <touching (sarlacc v)?> then\n        hide\n        broadcast (Chomp v)\n        wait (0.3) seconds\n        go to x: (-200) y: (-115)\n        set [speed y v] to [0]\n        show\n    end\nend\n\nwhen flag clicked\nset [baddddd v] to [0]\n\n@Ground\n\nwhen flag clicked\nset [mute v] to [0]\nforever\n    if <<key (m v) pressed?> and <(Mute) = [0]>> then\n        set [mute v] to [1]\n        stop all sounds\n        wait (0.75) seconds\n    end\n    if <<key (m v) pressed?> and <(Mute) = [1]>> then\n        set [mute v] to [0]\n        stop all sounds\n        wait (0.75) seconds\n    end\nend\n\nwhen [timer v] > (0.3)\nhide\n\nwhen flag clicked\nset [level v] to [0]\nset size to (100) %\ngo to x: (0) y: (0)\nswitch costume to (1 v)\nshow\nforever\n    if <(level) = [13]> then\n        switch costume to (13 v)\n        wait (1) seconds\n        switch costume to (l13alt v)\n        wait (1) seconds\n    else\n        switch costume to (level)\n    end\nend\n\nwhen I receive [next level v]\nchange [level v] by (1)\n\nwhen I receive [end v]\nrepeat (20)\n    change [ghost v] effect by (5)\n    wait (0.05) seconds\nend\nhide\nclear graphic effects\n\nwhen flag clicked\nclear graphic effects\n\n@Sprite1\n\nwhen flag clicked\ngo to x: (0) y: (0)\nshow\n\nwhen I receive [next level v]\nhide\n\nwhen [timer v] > (0.3)\nhide\n\nwhen I receive [end v]\nrepeat (20)\n    change [ghost v] effect by (5)\n    wait (0.05) seconds\nend\nhide\nclear graphic effects\n\nwhen flag clicked\nclear graphic effects\n\n@Sprite2\n\nwhen flag clicked\ngo to x: (0) y: (-140)\npoint in direction (90)\nswitch costume to (costume1 v)\nshow\nrepeat until <<touching (mouse-pointer v)?> and <mouse down?>>\n    if <touching (mouse-pointer v)?> then\n        point in direction (90)\n        switch costume to (costume2 v)\n        set size to (120) %\n        change [color v] effect by (10)\n    else\n        switch costume to (costume1 v)\n        set [color v] effect to (0)\n        set size to (100) %\n        repeat (2)\n            turn right (4) degrees\n            wait (0.001) seconds\n        end\n        repeat (2)\n            turn right (-4) degrees\n            wait (0.001) seconds\n        end\n        repeat (2)\n            turn right (-4) degrees\n            wait (0.01) seconds\n        end\n        repeat (2)\n            turn right (4) degrees\n            wait (0.001) seconds\n        end\n    end\nend\nbroadcast (Next Level v)\nhide\n\nwhen [timer v] > (0.3)\nhide\n\nwhen I receive [end v]\nrepeat (20)\n    change [ghost v] effect by (5)\n    wait (0.05) seconds\nend\nhide\nclear graphic effects\n\nwhen flag clicked\nclear graphic effects\n\nswitch costume to (costume1 v)\nset [color v] effect to (0)\nset size to (100) %\nrepeat (2)\n    turn right (4) degrees\n    wait (0.001) seconds\nend\nrepeat (2)\n    turn right (-4) degrees\n    wait (0.001) seconds\nend\nrepeat (2)\n    turn right (-4) degrees\n    wait (0.01) seconds\nend\nrepeat (2)\n    turn right (4) degrees\n    wait (0.001) seconds\nend\n\n@Bad things\n\nwhen I receive [next level v]\ngo to x: (0) y: (0)\nshow\nset [ghost v] effect to (100)\nforever\n    if <(level) = [13]> then\n        switch costume to (13 v)\n        wait (1) seconds\n        switch costume to (12 v)\n        wait (1) seconds\n    else\n        switch costume to (level)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen [timer v] > (0.3)\nhide\n\nwhen I receive [end v]\nrepeat (20)\n    change [ghost v] effect by (5)\n    wait (0.05) seconds\nend\nhide\nclear graphic effects\n\n@Razor Crest\n\nwhen I receive [next level v]\nwait (0.1) seconds\nif <(level) = [1]> then\n    show\n    go to [front v] layer\n    start sound [car vroom v]\n    glide (0.8) secs to x: (-115) y: (-100)\n    wait (0.5) seconds\n    play sound [Clang v] until done\n    wait (0.1) seconds\n    glide (0.2) secs to x: (-450) y: (-70)\n    start sound [car vroom2 v]\n    hide\nend\n\nwhen flag clicked\nhide\ngo to x: (400) y: (50)\n\nwhen I receive [end v]\nrepeat (20)\n    change [ghost v] effect by (5)\n    wait (0.05) seconds\nend\nhide\nclear graphic effects\n\nwhen flag clicked\nclear graphic effects\n\n@Sprite3\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [zap v]\nif <not <(level) = [13]>> then\n    show\n    start sound [Boom Cloud v]\n    go to [front v] layer\n    wait (0.1) seconds\n    hide\nend\n\n@Sprite4\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [chomp v]\nshow\nplay sound [Bite v] until done\nhide\n\nwhen [timer v] > (0.3)\nhide\n\n@Sarlacc\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\nforever\n    if <(level) = [6]> then\n        show\n        set [ghost v] effect to (100)\n    end\n    if <not <(level) = [6]>> then\n        hide\n    end\nend\n\n@Sensor\n\nwhen flag clicked\ngo to x: (200) y: (-105)\nset [ghost v] effect to (100)\nforever\n    if <(level) = [15]> then\n        if <(distance to [player v]) < [50]> then\n            broadcast (End v)\n        end\n    end\nend\n\nwhen [timer v] > (0.3)\nhide\n\nwhen flag clicked\nshow\n\n@Sprite5\n\nwhen I receive [end v]\nwait (1.1) seconds\nset size to (100) %\ngo to x: (80) y: (-13)\nset [v v] to [0]\npoint in direction (100)\nshow\ngo to [front v] layer\nforever\n    if <(direction) < [90]> then\n        change [v v] by (0.5)\n    end\n    if <(direction) > [90]> then\n        change [v v] by (-0.5)\n    end\n    turn right (v) degrees\n    wait (0.0001) seconds\nend\n\nwhen flag clicked\nhide\n\n@Sprite6\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\nwhen [timer v] > (0.3)\nshow\n\n