Traps || A Platformer

Instructions: New game: https://scratch.mit.edu/projects/404131077/\n\nArrow keys or WASD. S to skip, R to reset, sound button to mute/unmute.\nThere are traps everywhere; nothing is as it seems...\nCONFUSION WARNING! Players may be very confused after the first few levels. The creator of this platformer does not accept liability for excessive confusion.\nAnd yes, I know, some of them aren't really traps. But whatever. It's not meant to be all traps.\n\nComment if:\n-Some of the levels are too hard\n-You would like me to add something\n-You want more platformers\n-You have anything to say about the project\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nWhy are you down here? Go play the game!\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nBwahahaha (I'm quoting Bowser)! I made you scroll all the way down here for nothing! Just check out my other platformers, I guess. 

@Stage\n\nwhen I receive [start v]\nshow variable [level v]\nswitch backdrop to (lvl1 v)\nforever\n    if <(backdrop [name v]) = [End]> then\n        hide variable [level v]\n    end\nend\n\nwhen flag clicked\nhide variable [level v]\nswitch backdrop to (start screen v)\n\nwhen I receive [level up v]\nnext backdrop\n\n@Intro\n\nwhen flag clicked\ngo to [front v] layer\nclear graphic effects\npoint in direction (90)\nhide\nswitch costume to (jetpack guy v)\ncreate clone of (_myself_ v)\nswitch costume to (square root v)\ncreate clone of (_myself_ v)\nswitch costume to (username v)\ncreate clone of (_myself_ v)\nswitch costume to (bg v)\nshow\ngo to x: (0) y: (0)\n\nwhen I start as a clone\ngo to [front v] layer\nif <(costume [number v]) = [1]> then\n    set [introjetpackguyglide v] to [0]\n    show\n    go to x: (-150) y: (-250)\n    repeat (36)\n        change [introjetpackguyglide v] by (5)\n        change y by ((10) * ([sin v] of (IntroJetpackGuyGlide) ))\n    end\n    set [introjetpackguyglide v] to [0]\n    wait (0.5) seconds\n    repeat (216)\n        change [introjetpackguyglide v] by (5)\n        change y by ([sin v] of (IntroJetpackGuyGlide) )\n    end\n    set [introjetpackguyglide v] to [180]\n    repeat (36)\n        change [introjetpackguyglide v] by (-5)\n        change y by ((12) * ([sin v] of (IntroJetpackGuyGlide) ))\n        change [ghost v] effect by (3)\n    end\n    delete this clone\nend\nif <(costume [number v]) = [2]> then\n    go to x: (256) y: (0)\n    wait (1.5) seconds\n    set [introsquarerootglide v] to [0]\n    show\n    repeat (36)\n        change [introsquarerootglide v] by (5)\n        change x by ((-10) * ([sin v] of (IntroSquareRootGlide) ))\n    end\n    set [introsquarerootrotation v] to [0]\n    repeat (216)\n        change [introsquarerootrotation v] by (10)\n        turn right ([cos v] of (IntroSquareRootRotation) ) degrees\n    end\n    delete this clone\nend\nif <(costume [number v]) = [3]> then\n    go to x: (0) y: (-182)\n    wait (5) seconds\n    set [introusernameglide v] to [0]\n    show\n    repeat (36)\n        change [introusernameglide v] by (5)\n        change y by ((2.5) * ([sin v] of (IntroUsernameGlide) ))\n    end\n    set [introusernamerotation v] to [0]\n    repeat (108)\n        change [introusernamerotation v] by (10)\n        turn right ((0.7) * ([cos v] of (IntroUsernameRotation) )) degrees\n    end\n    delete this clone\nend\n\nwhen flag clicked\nplay sound [Starship Mario, Launch! - Super Mario Galaxy 2 v] until done\nbroadcast (Intro Done v)\nhide\n\n@Player\n\nwhen I receive [start v]\nshow\nset [level v] to [1]\nbroadcast (Reset v)\nset rotation style [left-right v]\nforever\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        point in direction (90)\n        change [xv v] by (2)\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        point in direction (-90)\n        change [xv v] by (-2)\n    end\n    set [xv v] to ((Xv) * (0.8))\n    change x by (Xv)\n    if <touching (ground v)?> then\n        change y by (1)\n        if <touching (ground v)?> then\n            change y by (1)\n            if <touching (ground v)?> then\n                change y by (1)\n                if <touching (ground v)?> then\n                    change y by (1)\n                    if <touching (ground v)?> then\n                        change y by (1)\n                        if <touching (ground v)?> then\n                            change x by ((Xv) * (-1))\n                            change y by (-5)\n                            set [xv v] to [0]\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [yv v] by (-1)\n    change y by (Yv)\n    if <touching (ground v)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <(x position) > [235]> then\n        broadcast (Level Up v)\n    end\n    if <<touching (ground v)?> and <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n        set [yv v] to [15]\n    end\n    if <<<(y position) < [-175]> or <touching (dangerous stuff v)?>> or <key (r v) pressed?>> then\n        broadcast (Reset v)\n    end\n    if <touching (bouncy stuff v)?> then\n        set [yv v] to [20]\n    end\n    change y by (1)\nend\n\nwhen I receive [start v]\nforever\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> then\n        if <(Yv) > [0]> then\n            switch costume to (move and jump v)\n        end\n        if <(Yv) < [0]> then\n            switch costume to (fall and move v)\n        end\n        if <(Yv) = [0]> then\n            switch costume to (moving v)\n        end\n    else\n        if <(Yv) > [0]> then\n            switch costume to (jump v)\n        end\n        if <(Yv) < [0]> then\n            switch costume to (fall v)\n        end\n        if <(Yv) = [0]> then\n            switch costume to (idle v)\n        end\n    end\nend\n\nwhen I receive [reset v]\ngo to x: (-200) y: (-75)\nset [xv v] to [0]\nset [yv v] to [0]\npoint in direction (90)\n\nwhen I receive [level up v]\nchange [level v] by (1)\nbroadcast (Reset v)\n\nwhen flag clicked\nset [level v] to [0]\nhide\n\nwhen [s v] key pressed\nif <<(Level) > [0]> and <[21] > (Level)>> then\n    broadcast (Level Up v)\nend\n\n@Trail\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\ngo to (player v)\nshow\ngo to [back v] layer\nrepeat (20)\n    change size by (-5)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\nwhen I receive [start v]\nwait (0.1) seconds\nforever\n    create clone of (_myself_ v)\nend\n\n@Ground\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nswitch costume to (lvl1 v)\nshow\n\nwhen I receive [level up v]\nnext costume\n\n@Dangerous stuff\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nforever\n    hide\n    Show in lvl [3] with costume # [1]\n    Show in lvl [4] with costume # [2]\n    Show in lvl [5] with costume # [3]\n    Show in lvl [6] with costume # [4]\n    Show in lvl [8] with costume # [5]\n    Show in lvl [9] with costume # [6]\n    Show in lvl [10] with costume # [7]\nend\n\ndefine Show in lvl (lvl) with costume # (costume)\nif <(Level) = (lvl)> then\n    show\n    switch costume to (costume)\nend\n\n@Bouncy stuff\n\ndefine Show in lvl (lvl) with costume # (costume)\nif <(Level) = (lvl)> then\n    show\n    switch costume to (costume)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nforever\n    hide\n    Show in lvl [3] with costume # [1]\n    Show in lvl [4] with costume # [2]\n    Show in lvl [6] with costume # [3]\n    Show in lvl [8] with costume # [4]\n    Show in lvl [10] with costume # [5]\nend\n\n@Thumbnail\n\nwhen flag clicked\nset [ghost v] effect to (100)\n\ngo to x: (0) y: (0)\ngo to [front v] layer\nclear graphic effects\n\n@Start Button\n\nwhen this sprite clicked\nbroadcast (Start v)\nhide\nforever\n    play sound [Bowser's Galaxy Generator v] until done\nend\n\nwhen flag clicked\nshow\n\nwhen I receive [mute v]\nset volume to (0) %\n\nwhen I receive [unmute v]\nset volume to (100) %\n\n@Mute button\n\nwhen flag clicked\nshow\n\nwhen this sprite clicked\nif <(costume [number v]) = [1]> then\n    broadcast (mute v)\n    switch costume to (sound off v)\nelse\n    broadcast (unmute v)\n    switch costume to (sound on v)\nend\n\nwhen I receive [intro done v]\nbroadcast (unmute v)\nswitch costume to (sound on v)\n\n