Fail: A platformer
@Stage\n\nwhen flag clicked\nset volume to (100) %\nset [level v] to [0]\nhide variable [level v]\nswitch backdrop to (backdrop10 v)\nplay sound [Sabre Dance - Aram Khachaturian.mp3 v] until done\nswitch backdrop to (backdrop1 v)\nbroadcast (start! v)\nchange [level v] by (1)\nforever\n    play sound (pick random (1) to (5)) until done\n    play sound [static4 v] until done\nend\n\nwhen I receive [message1 v]\nnext backdrop\nchange [level v] by (1)\n\nwhen flag clicked\nbroadcast (yes m v)\nforever\n    if <(backdrop [name v]) = [backdrop11]> then\n        hide variable [level v]\n        broadcast (stop! v)\n        stop [other scripts in sprite v]\n        play sound [Haha v] until done\n        wait (2) seconds\n        stop [all v]\n    end\nend\n\nwhen I receive [yes m v]\nwait (0.4) seconds\nforever\n    set volume to (100) %\n    if <key (m v) pressed?> then\n        broadcast (no m v)\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nwait (3) seconds\nforever\n    if <key (space v) pressed?> then\n        show variable [level v]\n    else\n        hide variable [level v]\n    end\nend\n\nwhen I receive [no m v]\nwait (0.4) seconds\nforever\n    set volume to (0) %\n    if <key (m v) pressed?> then\n        broadcast (yes m v)\n        stop [this script v]\n    end\nend\n\n@Sprite35\n\nwhen flag clicked\nwait (0.3) seconds\nforever\n    if <(backdrop [name v]) = [backdrop4]> then\n        show\n        broadcast (Spin v) and wait\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nwait (0.3) seconds\nforever\n    if <(backdrop [name v]) = [backdrop5]> then\n        show\n        broadcast (sin2 v) and wait\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nwait (0.3) seconds\nforever\n    if <(backdrop [name v]) = [backdrop8]> then\n        show\n        broadcast (Sim4 v) and wait\n    else\n        hide\n    end\nend\n\nwhen I receive [show easter egg v]\nforever\n    if <(backdrop [name v]) = [backdrop9]> then\n        show\n        broadcast (sin4 v) and wait\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nwait (1) seconds\nforever\n    if <(backdrop [name v]) = [backdrop12]> then\n        show\n        broadcast (sim7 v) and wait\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nwait (1) seconds\nforever\n    if <(backdrop [name v]) = [backdrop9]> then\n        show\n        broadcast (sim6 v) and wait\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nwait (0.3) seconds\nforever\n    if <(backdrop [name v]) = [backdrop2]> then\n        show\n        broadcast (move v) and wait\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nwait (0.3) seconds\nforever\n    if <(backdrop [name v]) = [backdrop6]> then\n        show\n        broadcast (sin3 v) and wait\n    else\n        hide\n    end\nend\n\n@Sprite1\n\nwhen I receive [message1 v]\ngo to x: (-221) y: (-126)\n\nwhen flag clicked\nwait (1) seconds\nforever\n    if <touching color (#bbd25d)?> then\n        broadcast (Show easter egg v)\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nwait (1) seconds\nforever\n    if <touching color (#ff7030)?> then\n        broadcast (Get v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [stop! v]\nhide\n\nwhen I receive [start! v]\nshow\ngo to x: (-221) y: (-126)\nset [xv v] to [0]\nset [yv v] to [0]\nrepeat until <(#) = [9]>\n    if <key (right arrow v) pressed?> then\n        change [xv v] by (1)\n    end\n    if <key (left arrow v) pressed?> then\n        change [xv v] by (-1)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <touching color (#000000)?> then\n        change y by (1)\n        if <touching color (#000000)?> then\n            change y by (1)\n            if <touching color (#000000)?> then\n                change y by (1)\n                if <touching color (#000000)?> then\n                    change y by (1)\n                    if <touching color (#000000)?> then\n                        change y by (1)\n                        if <touching color (#000000)?> then\n                            change x by ((Xv) * (-1))\n                            change y by (-5)\n                            if <key (up arrow 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 [10]\n                            else\n                                set [xv v] to [0]\n                            end\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 color (#000000)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <touching color (#000000)?> then\n        if <key (up arrow v) pressed?> then\n            set [yv v] to [11]\n        end\n    end\n    if <touching color (#00cccc)?> then\n        change [yv v] by (15)\n    end\n    if <touching color (#cccc00)?> then\n        go to x: (-221) y: (-126)\n        set [xv v] to [0]\n        broadcast (fail v)\n        wait (0.6) seconds\n    end\n    if <touching (sprite29 v)?> then\n        change [yv v] by (20)\n        change [xv v] by (20)\n    end\n    if <key (r v) pressed?> then\n        go to x: (-221) y: (-126)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        wait (1) seconds\n    end\n    change y by (1)\nend\n\n@Sprite2\n\nwhen flag clicked\nshow\ngo to x: (115) y: (77)\nforever\n    if <(distance to [sprite1 v]) < [35]> then\n        point in direction (90)\n        repeat (10)\n            move (10) steps\n        end\n    else\n        go to x: (115) y: (77)\n    end\nend\n\nwhen flag clicked\nshow\ngo to x: (115) y: (77)\nforever\n    if <touching (sprite1 v)?> then\n        change y by (10)\n    end\n    if <(backdrop [name v]) = [backdrop1]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite3\n\nwhen flag clicked\nhide\ngo to x: (223) y: (-151)\nforever\n    if <touching (sprite1 v)?> then\n        broadcast (message1 v)\n    end\nend\n\nwhen I receive [start! v]\nshow\n\nwhen I receive [stop! v]\nhide\n\n@Sprite4\n\nwhen flag clicked\nshow\ngo to x: (78) y: (-25)\nforever\n    if <(backdrop [name v]) = [backdrop1]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite5\n\nwhen flag clicked\nshow\ngo to x: (199) y: (-4)\nforever\n    if <(backdrop [name v]) = [backdrop1]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite6\n\nwhen flag clicked\ngo to x: (0) y: (32)\nhide\n\nwhen I receive [fail v]\ngo to [front v] layer\nshow\nset size to (100) %\nswitch costume to (pick random (1) to (7))\nrepeat (20)\n    change size by (12)\nend\nrepeat (28)\n    change size by (-12)\nend\nhide\n\n@Sprite7\n\nwhen flag clicked\ngo to x: (-125) y: (-122)\nforever\n    if <(backdrop [name v]) = [backdrop2]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite8\n\nwhen flag clicked\ngo to x: (235) y: (61)\npoint in direction (-90)\nwait (0.3) seconds\nforever\n    if <(backdrop [name v]) = [backdrop2]> then\n        show\n        wait (1.8) seconds\n        create clone of (_myself_ v)\n    else\n        hide\n    end\nend\n\nwhen I start as a clone\npoint in direction (-90)\nrepeat until <touching (_edge_ v)?>\n    move (5) steps\nend\nrepeat (2)\n    move (6) steps\nend\ndelete this clone\n\n@Sprite9\n\nwhen flag clicked\ngo to x: (19) y: (42)\nforever\n    if <(backdrop [name v]) = [backdrop2]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [move v]\nglide (2) secs to x: (172) y: (42)\nglide (2) secs to x: (19) y: (42)\n\n@Sprite10\n\nwhen I receive [move v]\nglide (2) secs to x: (19) y: (-45)\nglide (2) secs to x: (167) y: (-45)\n\nwhen flag clicked\ngo to x: (167) y: (-45)\nforever\n    if <(backdrop [name v]) = [backdrop2]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite11\n\nwhen flag clicked\ngo to x: (79) y: (-128)\nforever\n    if <(backdrop [name v]) = [backdrop2]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite12\n\nwhen flag clicked\ngo to x: (147) y: (112)\nforever\n    if <(backdrop [name v]) = [backdrop3]> then\n        show\n        turn right (10) degrees\n    else\n        hide\n    end\nend\n\n@Sprite13\n\nwhen I receive [spin v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop4]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite14\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop4]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [spin v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite15\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop4]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [spin v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite16\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop4]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [spin v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite17\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop4]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [spin v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite18\n\nwhen I receive [sin2 v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop5]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite19\n\nwhen flag clicked\nset size to (70) %\npoint in direction (180)\nforever\n    if <(backdrop [name v]) = [backdrop5]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [sin2 v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite20\n\nwhen flag clicked\nset size to (70) %\npoint in direction (0)\nforever\n    if <(backdrop [name v]) = [backdrop5]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [sin2 v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite21\n\nwhen flag clicked\nset size to (70) %\npoint in direction (-90)\nforever\n    if <(backdrop [name v]) = [backdrop5]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [sin2 v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite22\n\nwhen flag clicked\ngo to x: (-221) y: (-40)\nforever\n    if <(backdrop [name v]) = [backdrop6]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite24\n\nwhen flag clicked\ngo to x: (107) y: (81)\nforever\n    if <(backdrop [name v]) = [backdrop6]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite23\n\nwhen I receive [sin3 v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop6]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite25\n\nwhen flag clicked\nset size to (50) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop7]> then\n        show\n        turn right (5) degrees\n    else\n        hide\n    end\nend\n\n@Sprite26\n\nwhen I receive [sim4 v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop8]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite27\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop8]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [sim4 v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite28\n\nwhen flag clicked\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop8]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [sim4 v]\nrepeat (37)\n    turn right (5) degrees\nend\nrepeat (37)\n    turn left (5) degrees\nend\n\n@Sprite29\n\nwhen flag clicked\nhide\nwait (1) seconds\nforever\n    if <(backdrop [name v]) = [backdrop9]> then\n        show\n    else\n        hide\n    end\nend\n\npoint in direction (-30)\n\n@Sprite31\n\nwhen flag clicked\ngo to x: (77) y: (-112)\nhide\nwait (1) seconds\nforever\n    if <(backdrop [name v]) = [backdrop9]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite30\n\nwhen I receive [sin4 v]\nrepeat (30)\n    turn right (6) degrees\nend\nrepeat (30)\n    turn left (6) degrees\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [stop! v]\nhide\n\nwhen I receive [show easter egg v]\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop9]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite32\n\nwhen I receive [sin4 v]\nrepeat (30)\n    turn right (6) degrees\nend\nrepeat (30)\n    turn left (6) degrees\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [show easter egg v]\nset size to (70) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop9]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite33\n\nwhen flag clicked\nhide\n\nwhen I receive [sim6 v]\nrepeat (30)\n    turn right (6) degrees\nend\nrepeat (30)\n    turn left (6) degrees\nend\n\nwhen I receive [stop! v]\nhide\n\nwhen flag clicked\nset size to (50) %\npoint in direction (90)\nwait (1) seconds\nforever\n    if <(backdrop [name v]) = [backdrop9]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite34\n\nwhen I receive [sim4 v]\nrepeat (30)\n    turn right (6) degrees\nend\nrepeat (30)\n    turn left (6) degrees\nend\n\nwhen flag clicked\nset size to (50) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop8]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite36\n\nwhen flag clicked\nset size to (100) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop12]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [get v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Sprite37\n\nwhen flag clicked\nset size to (100) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop12]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [get v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Sprite38\n\nwhen flag clicked\nset size to (100) %\npoint in direction (90)\nforever\n    if <(backdrop [name v]) = [backdrop12]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [get v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Sprite39\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nset size to (50) %\npoint in direction (90)\nwait (1) seconds\nforever\n    if <(backdrop [name v]) = [backdrop12]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [sim7 v]\nrepeat (30)\n    turn right (6) degrees\nend\nrepeat (30)\n    turn left (6) degrees\nend\n\n
!!!!WARNING!!!! Do not play this game if you are easily angered, have a weakness for rage, or if you can't stand being mocked. Otherwise, this game is fun. (Yeah, super fun!)\n         Move with the arrow keys to get past 10 extremely difficult levels! Also, get to the red square to reach the next level. Don't touch yellow, unless you want to fail. Blue is bouncy. (Yes, the blue is meant to be that way!) If you get stuck, press R. Challenge all your friends with this game, and watch them fail miserably. Have a great time.