3D platformer

Instructions: New project: https://scratch.mit.edu/projects/493687843/\n\nWelcome to my very first colorful, artful, and mobile-friendly platformer\n\nUse arrows to move/mobile\n\nThere is a glitch where you die even when not touching spikes, double click the green flag and It'll dissapear...\n\nThank you all soooo much!!! My first project goes on Trending, you are all showing me so much kindness...\n\n3rd on All Trending\n16th on Trending Games\n1st What the community is Loving

@Stage\n\nwhen flag clicked\nswitch backdrop to (1 v)\n\nwhen I receive [game start v]\nswitch backdrop to (2 v)\n\nwhen backdrop switches to [13 v]\nforever\n    switch backdrop to (13 v)\nend\n\n@Player\n\ndefine engine\nswitch costume to (hitbox v)\nif <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n    set [costumes v] to [2]\n    point in direction (90)\n    change [xv v] by (1)\nend\nif <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n    set [costumes v] to [3]\n    point in direction (-90)\n    change [xv v] by (-1)\nend\nif <touching (rock v)?> then\n    set [xv v] to [0]\n    set [yv v] to [1.1]\n    change [xv v] by (-0.1)\nend\nset [xv v] to ((XV) * (0.9))\nchange x by (XV)\nif <touching (level v)?> then\n    change y by (1)\n    if <touching (level v)?> then\n        change y by (1)\n        if <touching (level v)?> then\n            change y by (1)\n            if <touching (level v)?> then\n                change y by (1)\n            end\n        end\n    end\nend\nif <touching (level v)?> then\n    change x by ((XV) * (-1))\n    change y by (-4)\n    if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n        if <(XV) > [0]> then\n            set [xv v] to [-5]\n        else\n            set [xv v] to [5]\n        end\n        set [yv v] to [15]\n    else\n        set [yv v] to [0]\n    end\nend\nchange [yv v] by (-1)\nchange y by (YV)\nif <touching (level v)?> then\n    change y by ((YV) * (-1))\n    set [yv v] to [0]\nend\nchange y by (-1)\nif <touching (level v)?> then\n    if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n        set [yv v] to [15]\n    end\nend\nchange y by (1)\nswitch costume to (costumes)\n\nwhen flag clicked\nforever\n    if <<touching (saw  v)?> or <touching (poison v)?>> then\n        go to x: (-201) y: (-106)\n    end\nend\n\nwhen flag clicked\nbroadcast (Main Menu v)\n\nwhen I receive [main menu v]\nhide\n\nwhen I receive [game start v]\nforever\n    if <touching (exit v)?> then\n        next backdrop\n        go to x: (-201) y: (-106)\n    end\nend\n\nwhen I receive [game start v]\nforever\n    if <touching (spikes v)?> then\n        go to x: (-201) y: (-106)\n    end\nend\n\nwhen I receive [game start v]\nplay sound [Connect v] until done\nswitch backdrop to (backdrop1 \(1\) v)\nswitch costume to (normal v)\nshow\ngo to x: (-150) y: (0)\nset size to (50) %\nset [level v] to [1]\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    engine\nend\n\nwhen I receive [game start v]\nforever\n    play sound [Unlimited v] until done\nend\n\nwhen I receive [game start v]\nforever\n    if <touching (lava v)?> then\n        go to x: (-201) y: (-106)\n    end\nend\n\nwhen I receive [game start v]\nforever\n    if <touching (enemy v)?> then\n        go to x: (-201) y: (-106)\n    end\nend\n\nwhen I receive [game start v]\nforever\n    if <touching (trampoline v)?> then\n        set [yv v] to [20]\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (exit v)?> then\n        next backdrop\n        go to x: (-201) y: (0)\n    end\nend\n\nwhen I receive [game start v]\ngo to x: (-150) y: (0)\nforever\n    if <touching (coin v)?> then\n        play sound [Coin v] until done\n    end\nend\n\nwhen I receive [game start v]\nforever\n    if <key (5 v) pressed?> then\n        wait (0.1) seconds\n        next backdrop\n        go to x: (-150) y: (0)\n    end\nend\n\n@Level\n\nwhen flag clicked\ngo to x: (7) y: (-25)\nswitch costume to (1 v)\n\nwhen I receive [main menu v]\nhide\n\nwhen I receive [game start v]\nshow\n\nwhen backdrop switches to [2 v]\nswitch costume to (1 v)\n\nwhen backdrop switches to [3 v]\nswitch costume to (2 v)\n\nwhen backdrop switches to [4 v]\nswitch costume to (3 v)\n\nwhen backdrop switches to [5 v]\nswitch costume to (4 v)\n\nwhen backdrop switches to [6 v]\nswitch costume to (5 v)\n\nwhen backdrop switches to [7 v]\nswitch costume to (6 v)\n\nwhen backdrop switches to [8 v]\nswitch costume to (7 v)\n\nwhen backdrop switches to [9 v]\nswitch costume to (8 v)\n\nwhen backdrop switches to [10 v]\nswitch costume to (9 v)\n\nwhen backdrop switches to [11 v]\nswitch costume to (10 v)\n\nwhen backdrop switches to [12 v]\nswitch costume to (11 v)\n\nwhen backdrop switches to [13 v]\nswitch costume to (12 v)\n\nwhen backdrop switches to [blue sky v]\nswitch costume to (12 v)\n\n@Spikes\n\nwhen flag clicked\nhide\n\nwhen I receive [game start v]\nhide\n\nwhen I receive [instructions v]\nhide\n\nwhen I receive [main menu v]\nhide\n\nwhen backdrop switches to [2 v]\nhide\n\nwhen backdrop switches to [3 v]\nshow\nswitch costume to (1 v)\n\nwhen backdrop switches to [4 v]\nshow\nswitch costume to (2 v)\n\nwhen backdrop switches to [5 v]\nhide\n\nwhen backdrop switches to [6 v]\nshow\nswitch costume to (3 v)\n\nwhen backdrop switches to [7 v]\nswitch costume to (4 v)\n\nwhen backdrop switches to [8 v]\nhide\n\nwhen backdrop switches to [9 v]\nhide\n\nwhen backdrop switches to [10 v]\nshow\nswitch costume to (5 v)\n\nwhen backdrop switches to [11 v]\nshow\nswitch costume to (6 v)\n\nwhen backdrop switches to [12 v]\nhide\n\n@Enemy\n\nwhen flag clicked\npoint in direction (90)\nset size to (50) %\nhide\nforever\n    if <touching (crystal v)?> then\n        hide\n    end\nend\n\nwhen backdrop switches to [2 v]\nhide\n\nwhen I receive [game start v]\nhide\n\nwhen I receive [instructions v]\nhide\n\nwhen I receive [main menu v]\nhide\n\nwhen backdrop switches to [5 v]\nshow\ngo to x: (208) y: (80)\nforever\n    repeat (10)\n        change x by (-10)\n    end\n    wait (0.25) seconds\n    repeat (10)\n        change x by (10)\n    end\n    wait (0.25) seconds\nend\n\nwhen backdrop switches to [6 v]\nhide\n\nwhen backdrop switches to [8 v]\nstop [other scripts in sprite v]\nshow\ncreate clone of (_myself_ v)\npoint in direction (-90)\ngo to x: (60) y: (140)\n\nwhen I start as a clone\nif <(backdrop [number v]) = [11]> then\n    stop [other scripts in sprite v]\n    hide\nelse\n    if <not <(backdrop [number v]) = [9]>> then\n        go to x: (-32) y: (-93)\n    end\nend\npoint in direction (90)\nforever\n    repeat (6)\n        change x by (-10)\n    end\n    wait (0.25) seconds\n    repeat (6)\n        change x by (10)\n    end\n    wait (0.25) seconds\nend\n\nwhen backdrop switches to [9 v]\npoint in direction (90)\nshow\ngo to x: (0) y: (0)\ncreate clone of (_myself_ v)\ngo to x: (100) y: (60)\ncreate clone of (_myself_ v)\ngo to x: (200) y: (120)\nhide\nforever\n    repeat (6)\n        change x by (-10)\n    end\n    wait (0.25) seconds\n    repeat (6)\n        change x by (10)\n    end\n    wait (0.25) seconds\nend\n\nwhen backdrop switches to [11 v]\nhide\n\nwhen backdrop switches to [12 v]\nhide\n\nwhen backdrop switches to [12 v]\nhide\ndelete this clone\n\nwhen I start as a clone\nforever\n    if <touching (crystal v)?> then\n        delete this clone\n    end\nend\n\nwhen backdrop switches to [10 v]\npoint in direction (90)\nhide\ndelete this clone\n\n@Saw \n\nwhen flag clicked\ngo to [back v] layer\nhide\n\nwhen backdrop switches to [2 v]\nhide\n\nwhen I receive [game start v]\nhide\n\nwhen I receive [instructions v]\nhide\n\nwhen I receive [main menu v]\nhide\n\nwhen backdrop switches to [4 v]\nshow\nswitch costume to (1 v)\ngo to x: (0) y: (0)\n\nwhen backdrop switches to [5 v]\nhide\n\nwhen backdrop switches to [8 v]\nhide\n\nwhen backdrop switches to [11 v]\nshow\nswitch costume to (2 v)\n\nwhen backdrop switches to [12 v]\nhide\n\n@Trampoline\n\nwhen flag clicked\nshow\n\nwhen flag clicked\nswitch costume to (1 v)\nforever\n    if <touching (player v)?> then\n        play sound [Big Boing v] until done\n    end\nend\n\nwhen I receive [game start v]\nhide\n\nwhen backdrop switches to [2 v]\nhide\n\nwhen I receive [main menu v]\nhide\n\nwhen I receive [instructions v]\nhide\n\nwhen backdrop switches to [5 v]\nhide\n\nwhen backdrop switches to [6 v]\nshow\ngo to x: (0) y: (-128)\n\nwhen backdrop switches to [7 v]\nshow\ngo to x: (170) y: (50)\n\nwhen backdrop switches to [8 v]\nhide\n\nwhen backdrop switches to [11 v]\nhide\n\nwhen backdrop switches to [12 v]\nhide\n\n@Lava\n\nwhen flag clicked\nhide\n\nwhen I receive [game start v]\nhide\n\nwhen I receive [instructions v]\nhide\n\nwhen backdrop switches to [2 v]\nhide\n\nwhen I receive [main menu v]\nhide\n\nwhen backdrop switches to [4 v]\nshow\nswitch costume to (1 v)\n\nwhen backdrop switches to [5 v]\nhide\n\nwhen backdrop switches to [7 v]\nshow\nswitch costume to (2 v)\n\nwhen backdrop switches to [8 v]\nhide\n\nwhen backdrop switches to [11 v]\nshow\nswitch costume to (3 v)\n\n@Main Menu\n\nwhen I receive [main menu v]\nswitch costume to (1 v)\nshow\n\nwhen flag clicked\nhide\n\nwhen I receive [game start v]\nhide\n\nwhen I receive [instructions v]\nswitch costume to (2 v)\n\n@Play Button\n\nwhen flag clicked\nshow\ngo to [front v] layer\n\nwhen I receive [game start v]\nhide\ngo to x: (999) y: (999)\n\nwhen I receive [instructions v]\nhide\n\nwhen I receive [main menu v]\nshow\n\nwhen flag clicked\nshow\ngo to [front v] layer\ngo to x: (37) y: (22)\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (Game Start v)\n        end\n    else\n        clear graphic effects\n    end\nend\n\n@Instructions Button\n\nwhen flag clicked\ngo to x: (38) y: (-61)\nshow\ngo to [front v] layer\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n    else\n        clear graphic effects\n    end\n    if <<mouse down?> and <touching (mouse-pointer v)?>> then\n        broadcast (Instructions v)\n    end\nend\n\nwhen I receive [game start v]\nhide\ngo to x: (999) y: (999)\n\nwhen I receive [instructions v]\nhide\n\nwhen I receive [main menu v]\nshow\n\n@Back\n\nwhen flag clicked\ngo to x: (23) y: (-150)\nhide\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n    else\n        clear graphic effects\n    end\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        broadcast (Main Menu v)\n    end\nend\n\nwhen I receive [instructions v]\nshow\ngo to [front v] layer\n\nwhen I receive [game start v]\nhide\n\nwhen I receive [main menu v]\nhide\n\n@Exit\n\nwhen flag clicked\nshow\n\nwhen backdrop switches to [blue sky v]\nhide\n\n@Coin\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [2 v]\ngo to x: (-8) y: (-146)\nshow\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        hide\n    end\nend\n\nwhen backdrop switches to [3 v]\nshow\ngo to x: (168) y: (-142)\n\nwhen backdrop switches to [4 v]\nshow\ngo to x: (0) y: (0)\n\nwhen backdrop switches to [5 v]\nshow\ngo to x: (-57) y: (28)\n\nwhen backdrop switches to [6 v]\nshow\ngo to x: (216) y: (29)\n\nwhen backdrop switches to [7 v]\nshow\ngo to x: (0) y: (26)\n\nwhen backdrop switches to [8 v]\nshow\ngo to x: (65) y: (-143)\n\nwhen backdrop switches to [11 v]\nshow\ngo to x: (195) y: (61)\n\nwhen backdrop switches to [12 v]\nshow\ngo to x: (131) y: (-112)\n\nwhen backdrop switches to [13 v]\nhide\n\nwhen backdrop switches to [9 v]\nshow\ngo to x: (250) y: (100)\n\nwhen backdrop switches to [10 v]\nshow\ngo to x: (0) y: (-90)\n\n@TB\n\nwhen flag clicked\ngo to [front v] layer\nhide\n\n@poison\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [8 v]\ngo to x: (96) y: (28)\nswitch costume to (costume1 v)\nshow\nrepeat until <(backdrop [number v]) = [9]>\n    repeat until <<touching (player v)?> or <touching (level v)?>>\n        show\n        switch costume to (costume1 v)\n        change y by (-15)\n    end\n    switch costume to (costume2 v)\n    wait (1) seconds\n    hide\n    go to x: (96) y: (28)\n    wait (2) seconds\nend\n\nwhen backdrop switches to [9 v]\nstop [other scripts in sprite v]\nhide\n\n@pick\n\nwhen flag clicked\nhide\nforever\n    go to (player v)\n    point in direction ([direction v] of [player v])\nend\n\nwhen I receive [game start v]\nwait (1) seconds\nshow\n\nwhen [space v] key pressed\nswitch costume to (pickaxe7 v)\nwait (0.2) seconds\nswitch costume to (pickaxe2 v)\nwait (0.2) seconds\nswitch costume to (pickaxe7 v)\n\n@rock\n\nwhen flag clicked\ngo to [back v] layer\nhide\n\nwhen backdrop switches to [4 v]\nswitch costume to (costume1 v)\nshow\nforever\n    if <<key (space v) pressed?> and <touching (pick v)?>> then\n        wait (3) seconds\n        hide\n    end\nend\n\nwhen backdrop switches to [8 v]\nswitch costume to (costume4 v)\nshow\nforever\n    if <<key (space v) pressed?> and <touching (pick v)?>> then\n        wait (3) seconds\n        hide\n    end\nend\n\nwhen backdrop switches to [6 v]\nswitch costume to (costume2 v)\nshow\nforever\n    if <<key (space v) pressed?> and <touching (pick v)?>> then\n        wait (3) seconds\n        hide\n    end\nend\n\nwhen backdrop switches to [7 v]\nswitch costume to (costume3 v)\nshow\nforever\n    if <<key (space v) pressed?> and <touching (pick v)?>> then\n        wait (3) seconds\n        hide\n    end\nend\n\nwhen backdrop switches to [10 v]\nswitch costume to (costume4 v)\nshow\nforever\n    if <<key (space v) pressed?> and <touching (pick v)?>> then\n        wait (3) seconds\n        hide\n    end\nend\n\n@Crystal\n\nwhen flag clicked\ngo to [front v] layer\nhide\n\nwhen I receive [game start v]\nforever\n    go to (player v)\n    point in direction ([direction v] of [player v])\nend\n\nwhen I receive [game start v]\nwait (1) seconds\nset [ready v] to [1]\nforever\n    show\n    if <<key (s v) pressed?> or <key (down arrow v) pressed?>> then\n        if <(ready) = [1]> then\n            hide\n            create clone of (_myself_ v)\n            set [ready v] to [1]\n            wait (1) seconds\n        end\n    end\nend\n\nwhen I start as a clone\nshow\nrepeat until <<<touching (enemy v)?> or <touching (_edge_ v)?>> or <touching (level v)?>>\n    move (10) steps\n    if <(direction) = [90]> then\n        turn right (4) degrees\n    else\n        turn right (-1) degrees\n    end\nend\nset [ready v] to [1]\nwait (0.1) seconds\ndelete this clone\n\n@spike_mineable\n\nwhen flag clicked\ngo to [back v] layer\nhide\n\nwhen backdrop switches to [10 v]\nswitch costume to (costume4 v)\nshow\nforever\n    if <<key (space v) pressed?> and <touching (pick v)?>> then\n        wait (1.7) seconds\n        hide\n    end\nend\n\nwhen backdrop switches to [11 v]\nhide\n\n