Name seek; a platformer 
@Stage\n\nwhen I receive [start v]\nswitch backdrop to (backdrop1 v)\n\nwhen backdrop switches to [backdrop3 v]\nbroadcast (endd v) and wait\nclear graphic effects\n\nforever\n    repeat (10)\n        change [mosaic v] effect by (10)\n        wait (0.1) seconds\n    end\n    repeat (10)\n        change [mosaic v] effect by (-10)\n        wait (0.1) seconds\n    end\nend\n\nclear graphic effects\n\nwhen flag clicked\nbroadcast (start v)\n\n@Player\n\nwhen flag clicked\nset [chosen costume v] to [1]\nswitch costume to (costume1 v)\nbroadcast (green flag v)\nbroadcast (play game v)\nhide\n\ndefine handle ground <moving up>\nrepeat until <not <<touching (ground v)?> or <touching (draw ground v)?>>>\n    if <moving up> then\n        change y by (-1)\n    else\n        change y by (1)\n        set [in air v] to [0]\n    end\n    set [y velocity v] to [0]\nend\n\ndefine walk (steps)\nchange x by (steps)\nset [ground lift v] to [0]\nrepeat until <<not <<touching (ground v)?> or <touching (draw ground v)?>>> or <(ground lift) = [8]>>\n    change y by (1)\n    change [ground lift v] by (1)\nend\nif <(ground lift) = [8]> then\n    change x by ((-1) * (steps))\n    change y by (-8)\nend\n\nwhen I receive [start1 v]\nbroadcast (set up v)\nwait (0.5) seconds\nshow\nset size to (100) %\nset rotation style [left-right v]\ngo to x: (-205) y: (-51)\nset [y velocity v] to [0]\nforever\n    change [y velocity v] by (-2)\n    change y by (y velocity)\n    change [in air v] by (1)\n    handle ground <(y velocity) > [0]>\n    if <key (left arrow v) pressed?> then\n        point in direction (-90)\n        walk [-6]\n    end\n    if <key (right arrow v) pressed?> then\n        point in direction (90)\n        walk [6]\n    end\n    if <<key (up arrow v) pressed?> and <(in air) < [8]>> then\n        set [y velocity v] to [12]\n    end\n    if <<not <key (left arrow v) pressed?>> and <not <key (right arrow v) pressed?>>> then\n    if <[239] < (x position)> then\n        go to x: (-205) y: (-51)\n        broadcast (next level v)\n    end\n    if <(y position) < [-170]> then\n        go to x: (-205) y: (-51)\n    end\n    if <touching (moving danger v)?> then\n        play sound [Rip v] until done\n        switch costume to (costume10 v)\n        wait (0.5) seconds\n        go to x: (-205) y: (-51)\n        switch costume to (chosen costume)\n    end\n    if <touching (danger v)?> then\n        switch costume to (costume10 v)\n        play sound [Rip v] until done\n        wait (0.5) seconds\n        go to x: (-205) y: (-51)\n        switch costume to (chosen costume)\n    end\n    if <touching (water v)?> then\n        change [in air v] by (3)\n        change [y velocity v] by (2.5)\n        if <key (down arrow v) pressed?> then\n            change [y velocity v] by (-1)\n        end\n    end\n    if <key (r v) pressed?> then\n        go to x: (-205) y: (-51)\n    end\nend\n\nwhen I receive [next costume player v]\nchange [chosen costume v] by (1)\nnext costume\nif <(costume [number v]) = [9]> then\n    switch costume to (costume1 v)\nend\n\nwhen I receive [next level v]\ngo to x: (-205) y: (-51)\n\nwhen I receive [endd v]\nhide\n\nwhen I receive [start1 v]\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nswitch costume to (costume9 v)\nrepeat (10)\n    change [color v] effect by (10)\n    change [ghost v] effect by (10)\n    change size by (-5)\nend\ndelete this clone\n\nrepeat (2)\nend\n\n@Ground\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\nforever\n    if <(costume [number v]) = [4]> then\n        broadcast (checkpoint 1 v) and wait\n    end\n    if <(costume [number v]) = [8]> then\n        broadcast (checkpoint 2 v) and wait\n    end\n    if <(costume [number v]) = [16]> then\n        broadcast (snow v) and wait\n    end\nend\n\nwhen I receive [start1 v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\ndefine Position (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [set up v]\nset [x v] to [0]\nset [y v] to [0]\nif <(level) = [1]> then\n    switch costume to (costume1 v)\nend\n\nwhen I receive [endd v]\nhide\n\n@draw ground\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop2 v]\nshow\nforever\n    go to (mouse-pointer v)\nend\n\nwhen I receive [snow v]\nhide\n\nwhen I receive [endd v]\nhide\n\n@moving danger\n\nwhen flag clicked\nswitch costume to (costume1 v)\nset [ghost v] effect to (30)\n\nwhen I receive [next level v]\nnext costume\nforever\n    if <(costume [number v]) = [2]> then\n        go to x: (139) y: (-140)\n        forever\n            glide (1) secs to x: (32) y: (-140)\n            wait (0.5) seconds\n            glide (1) secs to x: (139) y: (-140)\n            wait (0.5) seconds\n        end\n    end\n    if <(costume [number v]) = [7]> then\n        go to x: (-128) y: (-2)\n        forever\n            glide (1) secs to x: (-36) y: (-2)\n            wait (0.5) seconds\n            glide (1) secs to x: (-128) y: (-2)\n            wait (0.5) seconds\n        end\n    end\n    if <(costume [number v]) = [8]> then\n        create clone of (_myself_ v)\n        go to x: (139) y: (-140)\n        forever\n            glide (1) secs to x: (32) y: (-140)\n            wait (0.5) seconds\n            glide (1) secs to x: (139) y: (-140)\n            wait (0.5) seconds\n        end\n    end\n    delete this clone\nend\n\nwhen I start as a clone\ngo to x: (-139) y: (-140)\nforever\n    glide (1) secs to x: (-4) y: (-140)\n    wait (0.5) seconds\n    glide (1) secs to x: (-139) y: (-140)\n    wait (0.5) seconds\nend\n\nwhen I receive [next level v]\nshow\nforever\n    if <(costume [number v]) = [9]> then\n        go to x: (-75) y: (-140)\n        forever\n            glide (1.5) secs to x: (200) y: (-140)\n            wait (0.5) seconds\n            glide (1.5) secs to x: (-75) y: (-140)\n            wait (0.5) seconds\n        end\n    end\n    if <(costume [number v]) = [15]> then\n        go to x: (-75) y: (-140)\n        forever\n            glide (1.5) secs to x: (200) y: (-140)\n            wait (0.5) seconds\n            glide (1.5) secs to x: (-75) y: (-140)\n            wait (0.5) seconds\n        end\n    end\nend\n\nwhen I receive [endd v]\nhide\n\n@name seek\n\nwhen I receive [start v]\nswitch costume to (costume1 v)\nset size to (100) %\ngo to x: (0) y: (40)\nshow\n\nwhen I receive [start1 v]\nhide\n\nwhen flag clicked\nhide\n\nwhen flag clicked\npoint in direction (90)\n\nforever\n    set [spiin v] to [-4]\n    repeat (15)\n        turn right (spiin) degrees\n        change [spiin v] by (0.5)\n    end\n    set [spiin v] to [4]\n    repeat (15)\n        turn right (spiin) degrees\n        change [spiin v] by (-0.5)\n    end\nend\n\n@danger\n\nwhen flag clicked\nswitch costume to (costume1 v)\nset [ghost v] effect to (10)\n\nwhen I receive [next level v]\nshow\nnext costume\n\nwhen I receive [endd v]\nhide\n\n@Player costume\n\nwhen I receive [next costume player v]\nnext costume\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop2 v]\nhide\n\nwhen I receive [start v]\nset size to (120) %\ngo to x: (0) y: (-79)\nshow\nswitch costume to (costume1 v)\n\nwhen I receive [start1 v]\nhide\n\n@Checkpoint\n\nwhen flag clicked\nhide\nforever\n    if <<touching (player v)?> and <(costume [number v]) = [5]>> then\n        broadcast (N v)\n    end\n    if <<touching (player v)?> and <(costume [number v]) = [8]>> then\n        broadcast (A v)\n    end\n    if <<touching (player v)?> and <(costume [number v]) = [11]>> then\n        broadcast (A v)\n    end\n    if <<touching (player v)?> and <(costume [number v]) = [15]>> then\n        broadcast (M v)\n    end\n    if <<touching (player v)?> and <(costume [number v]) = [19]>> then\n        broadcast (E v)\n    end\nend\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [set up v]\nshow\nswitch costume to (costume1 v)\n\nwhen I receive [endd v]\nhide\n\n@background\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [set up v]\nshow\nswitch costume to (costume1 v)\nset [ghost v] effect to (40)\n\nwhen I receive [endd v]\nhide\n\n@Text\n\nwhen I receive [next level v]\nset [ghost v] effect to (100)\nnext costume\nforever\n    change [ghost v] effect by (-10)\n    wait (0.1) seconds\nend\n\nwhen I receive [set up v]\nshow\nswitch costume to (costume1 v)\nforever\n    if <<(costume [number v]) = [20]> and <(backdrop [number v]) = [2]>> then\n        ask [What's your name?] and wait\n        if <(answer) = [NAAME]> then\n            switch backdrop to (backdrop3 v)\n        else\n            switch backdrop to (backdrop2 v)\n            ask [What's your name?] and wait\n        end\n        hide\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [endd v]\nhide\n\n@Letters\n\nwhen flag clicked\nhide\n\nwhen I receive [n v]\nswitch costume to (costume1 v)\nshow\nwait (0.1) seconds\nhide\n\nwhen I receive [a v]\nswitch costume to (costume2 v)\nshow\nwait (0.1) seconds\nhide\n\nwhen I receive [m v]\nswitch costume to (costume4 v)\nshow\nwait (0.1) seconds\nhide\n\nwhen I receive [endd v]\nhide\n\nwhen I receive [e v]\nswitch costume to (costume3 v)\nshow\nwait (0.1) seconds\nhide\n\n@Water\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [set up v]\nshow\nswitch costume to (costume1 v)\nset [ghost v] effect to (0)\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen I receive [endd v]\nhide\n\n@sound\n\nwhen flag clicked\nhide\ngo to [front v] layer\n\nwhen I receive [set up v]\n\nwhen this sprite clicked\nnext costume\nforever\n    if <(costume [number v]) = [2]> then\n        set volume to (0) %\n    else\n        set volume to (100) %\n    end\nend\n\nwhen I receive [endd v]\nhide\n\nwhen I receive [start v]\nshow\nswitch costume to (costume1 v)\ngo to x: (204) y: (153)\nplay sound [Vexento - Spark v] until done\nset volume to (100) %\n\n@skip\n\nwhen flag clicked\nhide\ngo to [front v] layer\n\nwhen I receive [set up v]\nshow\ngo to x: (159) y: (153)\n\nwhen this sprite clicked\nbroadcast (next level v) and wait\n\nwhen I receive [endd v]\nhide\n\n@Sprite1\n\nwhen flag clicked\ngo to [front v] layer\nshow\nset [ghost v] effect to (100)\ngo to x: (0) y: (0)\n\n@snow\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\npoint in direction (-175)\nset size to (pick random (75) to (125)) %\ngo to x: (pick random (-240) to (240)) y: (180)\nrepeat until <touching (ground v)?>\n    move ((size) / (50)) steps\nend\ndelete this clone\n\nwhen I receive [snow v]\nshow\nset [ghost v] effect to (20)\nforever\n    create clone of (_myself_ v)\n    wait (0.1) seconds\nend\n\nwhen backdrop switches to [backdrop3 v]\nhide\n\n@play\n\nwhen this sprite clicked\nswitch backdrop to (backdrop2 v)\nbroadcast (start1 v)\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nswitch costume to (costume1 v)\nset size to (100) %\ngo to x: (0) y: (-20)\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        switch costume to (costume2 v)\n    else\n        switch costume to (costume1 v)\n    end\nend\n\nwhen I receive [start1 v]\nhide\n\n@Sprite3\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop3 v]\nshow\ngo to x: (0) y: (0)\npoint in direction (90)\nforever\n    set [spiin v] to [-4]\n    repeat (15)\n        turn right (spiin) degrees\n        change [spiin v] by (0.5)\n    end\n    set [spiin v] to [4]\n    repeat (15)\n        turn right (spiin) degrees\n        change [spiin v] by (-0.5)\n    end\nend\n\n@Sprite4\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nswitch costume to (costume1 v)\nset size to (100) %\ngo to x: (0) y: (-79)\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        switch costume to (costume2 v)\n    else\n        switch costume to (costume1 v)\n    end\nend\n\nwhen this sprite clicked\nbroadcast (next costume player v)\nwait (1) seconds\n\nwhen I receive [start1 v]\nhide\n\n@Sprite5\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\nset [ghost v] effect to (70)\ngo to [back v] layer\n\nwhen I receive [start1 v]\nhide\n\n@Sprite6\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop2 v]\nhide\n\nwhen I receive [start v]\nset [ghost v] effect to (60)\nshow\nforever\n    go to x: (-240) y: (-112)\n    glide (2.5) secs to x: (56) y: (-112)\n    repeat (13)\n        change x by (5)\n        change y by (4.5)\n    end\n    repeat (4)\n        change x by (3)\n    end\n    repeat (13)\n        change y by (-4.5)\n        change x by (5)\n    end\n    glide (0.3) secs to x: (240) y: (-112)\nend\n\nwhen I receive [start1 v]\nhide\n\n@Sprite2\n\nhide\n\nwhen flag clicked\nhide\ngo to [front v] layer\n\nwhen I receive [endd v]\nhide\n\nwhen I receive [start1 v]\n\nshow\nswitch costume to (costume1 v)\ngo to x: (210) y: (110)\n\n
So this is my best platformer, I spent soooo long on it ;) wait t'ill the end...\n\n\n-Controls-\n*arrow keys to move\n*r to restart a level\n*you can jump on the mouse pointer and lift yourself up\n*20 levels\nIMPORTANT: at the end, when they ask you for the name you've found, you have to write it in CAPITALS!\nAll levels 100% possible!\n\n\n\n\n\n