Disease Of The Earth - Scrolling Platformer
@Stage\n\n@Player\n\nwhen flag clicked\nwait (0) seconds\nshow\ngo to x: (0) y: (-3)\nbroadcast (first start v) and wait\nset [checkpoint x v] to [0]\nset [checkpoint y v] to [-20]\nsetup\nswitch costume to (3 v)\nrepeat (9)\n    wait (costume [name v]) seconds\n    next costume\nend\nforever\n    set [player's speed v] to ((player's speed) * (0.79))\n    gravitation\n    player's x y\n    touching ground\n    if <key (right arrow v) pressed?> then\n        change [player's speed v] by (1.5)\n    end\n    if <key (left arrow v) pressed?> then\n        change [player's speed v] by (-1.5)\n    end\n    if <(player's speed) > [0.5]> then\n        move [90] (player's speed)\n    end\n    if <(player's speed) < [-0.5]> then\n        move [-90] (player's speed)\n    end\n    if <<key (up arrow v) pressed?> and <(LOL) < [3]>> then\n        set [gravitation v] to [13]\n    end\n    game rules\n    change costume\n    player's x y\n    broadcast (start v) and wait\n    set [scrolling x v] to (round ((((scrolling x) * (8)) + (x pos)) / (9)))\n    set [scrolling y v] to (round ((((scrolling y) * (8)) + (y pos)) / (9)))\nend\n\ndefine gravitation\nchange [y pos v] by (gravitation)\nplayer's x y\nchange [gravitation v] by (-1)\n\ndefine touching ground\nchange [lol v] by (1)\nrepeat until <not <touching (ground v)?>>\n    if <(gravitation) > [0]> then\n        change [y pos v] by (-20)\n        player's x y\n    else\n        change [y pos v] by (1)\n        player's x y\n        set [lol v] to [0]\n    end\n    set [gravitation v] to [0]\nend\n\ndefine move (direction) (speed)\npoint in direction (direction)\nchange [x pos v] by (speed)\nplayer's x y\nset [slope v] to [0]\nrepeat until <<(slope) = [10]> or <not <touching (ground v)?>>>\n    change [y pos v] by (1)\n    player's x y\n    change [slope v] by (1)\nend\nif <(slope) = [10]> then\n    change [x pos v] by ((0) - (speed))\n    player's x y\n    change [y pos v] by ((0) - (slope))\n    player's x y\nend\n\ndefine change costume\nif <(LOL) > [3]> then\n    if <key (up arrow v) pressed?> then\n        if <<key (right arrow v) pressed?> or <key (left arrow v) pressed?>> then\n            switch costume to (jump and go v)\n        else\n            switch costume to (jump v)\n        end\n    else\n        if <<key (right arrow v) pressed?> or <key (left arrow v) pressed?>> then\n            switch costume to (go v)\n        else\n            switch costume to (stay v)\n        end\n    end\nelse\n    if <<key (right arrow v) pressed?> or <key (left arrow v) pressed?>> then\n        switch costume to (go v)\n    else\n        switch costume to (stay v)\n    end\nend\n\ndefine player's x y\ngo to x: ((x pos) - (scrolling x)) y: ((y pos) - (scrolling y))\n\nrepeat until <not <touching (ground v)?>>\n\nif <[] = [1]> then\n\ndefine game rules\nif <<touching (disease of the earth v)?> or <(scrolling y) < [-100]>> then\n    setup\nend\nif <touching (_edge_ v)?> then\n    hide\nelse\n    show\nend\n\ndefine setup\ngo to x: (0) y: (-3)\nplayer's x y\nset [gravitation v] to [0]\nset [player's speed v] to [0]\nset [slope v] to [0]\nset [x pos v] to (checkpoint x)\nset [y pos v] to (checkpoint y)\n\n@Ground\n\nwhen flag clicked\ncreate clones\n\nwhen I receive [first start v]\nset x to ((hmm for scrolling x) - (scrolling x))\nset y to ((0) - (scrolling y))\nif <(x position) = ((hmm for scrolling x) - (scrolling x))> then\n    show\nelse\n    hide\nend\n\ndefine create clones\ngo to x: (0) y: (0)\nshow\nswitch costume to (costume1 v)\nset [hmm for scrolling x v] to [0]\nset [scrolling x v] to [0]\nset [scrolling y v] to [0]\nrepeat (8)\n    create clone of (_myself_ v)\n    next costume\n    change [hmm for scrolling x v] by (480)\nend\n\nwhen I receive [start v]\nset x to ((hmm for scrolling x) - (scrolling x))\nset y to ((0) - (scrolling y))\nif <(x position) = ((hmm for scrolling x) - (scrolling x))> then\n    show\nelse\n    hide\nend\n\nset y to ((0) - (scrolling y))\n\nwait (0) seconds\n\nnext costume\n\n@disease of the earth\n\nwhen flag clicked\ncreate clones\n\nwhen I receive [first start v]\nset x to ((hmm for scrolling x) - (scrolling x))\nset y to ((0) - (scrolling y))\nif <(x position) = ((hmm for scrolling x) - (scrolling x))> then\n    show\nelse\n    hide\nend\n\ndefine create clones\ngo to x: (0) y: (0)\nshow\nswitch costume to (costume1 v)\nset [hmm for scrolling x v] to [0]\nset [scrolling x v] to [0]\nrepeat (9)\n    create clone of (_myself_ v)\n    next costume\n    change [hmm for scrolling x v] by (480)\nend\n\nwhen I receive [start v]\nset x to ((hmm for scrolling x) - (scrolling x))\nset y to ((0) - (scrolling y))\nif <(x position) = ((hmm for scrolling x) - (scrolling x))> then\n    show\nelse\n    hide\nend\n\n@Black Screen\n\nwhen flag clicked\nclear graphic effects\ngo to x: (0) y: (0)\nrepeat (100)\n    change [ghost v] effect by (1)\nend\n\n@Checkpoint\n\nwhen I start as a clone\nforever\n    wait (0.5) seconds\n    next costume\nend\n\nwhen flag clicked\nset [for checkpoint scrolling x v] to [3100]\nset [for checkpoint scrolling y v] to [36]\ncreate clone of (_myself_ v)\nset [for checkpoint scrolling x v] to [3980]\nset [for checkpoint scrolling y v] to [-50]\ncreate clone of (_myself_ v)\nset [for checkpoint scrolling x v] to [1440]\nset [for checkpoint scrolling y v] to [20]\n\nwhen flag clicked\nset [for checkpoint v] to [0]\nforever\n    wait (0.5) seconds\n    next costume\nend\n\nwhen I receive [start v]\nset x to ((for checkpoint scrolling x) - (scrolling x))\nset y to ((for checkpoint scrolling y) - (scrolling y))\nif <(x position) = ((for checkpoint scrolling x) - (scrolling x))> then\n    show\nelse\n    hide\nend\n\nwhen I receive [first start v]\nset x to ((for checkpoint scrolling x) - (scrolling x))\nset y to ((for checkpoint scrolling y) - (scrolling y))\nif <(x position) = ((for checkpoint scrolling x) - (scrolling x))> then\n    show\nelse\n    hide\nend\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        set [checkpoint x v] to (for checkpoint scrolling x)\n        set [checkpoint y v] to (for checkpoint scrolling y)\n    end\nend\n\nif <(for checkpoint) = [0]> then\n    set [for checkpoint v] to [1]\n    play sound [Checkpoint-sound v] until done\nend\n\nswitch costume to (checkpoint2 v)\n\nwhen I start as a clone\nforever\n    if <touching (player v)?> then\n        set [checkpoint x v] to (for checkpoint scrolling x)\n        set [checkpoint y v] to (for checkpoint scrolling y)\n    end\nend\n\n@Text & Decorations\n\nwhen flag clicked\nset [ghost v] effect to (100)\nshow\ngo to x: (0) y: (140)\nsmooth transition to costume [2]\nwait (0.5) seconds\nsmooth transition to costume [3]\ncreate clones\n\ndefine smooth transition to costume (num of costume)\nrepeat (50)\n    change [ghost v] effect by (2)\nend\nswitch costume to (num of costume)\nrepeat (50)\n    change [ghost v] effect by (-2)\nend\n\nswitch costume to (costume6 v)\n\nwhen I receive [start v]\nset x to ((hmm for scrolling x) - (scrolling x))\nset y to ((140) - (scrolling y))\nif <(x position) = ((hmm for scrolling x) - (scrolling x))> then\n    show\nelse\n    hide\nend\n\ndefine create clones\nswitch costume to (costume2 v)\nset [hmm for scrolling x v] to [0]\nrepeat (7)\n    create clone of (_myself_ v)\n    next costume\n    change [hmm for scrolling x v] by (700)\nend\n\n@hmm\n\nwhen flag clicked\nset [hmm active? v] to [0]\nwait until <touching (player v)?>\nset [hmm active? v] to [1]\n\nwait until \n\nwhen I receive [start v]\nset x to ((4059) - (scrolling x))\nset y to ((-60) - (scrolling y))\nif <(x position) = ((4059) - (scrolling x))> then\n    if <(hmm active?) = [0]> then\n        show\n    else\n        hide\n    end\nelse\n    hide\nend\n\nwhen I receive [first start v]\nset x to ((4059) - (scrolling x))\nset y to ((-60) - (scrolling y))\nif <(x position) = ((4059) - (scrolling x))> then\n    show\nelse\n    hide\nend\n\nwhen flag clicked\nforever\n    if <<(hmm active?) = [1]> and <<key (space v) pressed?> and <<[2678] < (scrolling x)> and <[3078] > (scrolling x)>>>> then\n        broadcast (Congrats!! v)\n        wait (1) seconds\n    end\n    if <<(hmm active?) = [1]> and <<key (space v) pressed?> and <not <<[2678] > (scrolling x)> and <[3078] < (scrolling x)>>>>> then\n        broadcast (not in this place!! v)\n        wait (1) seconds\n    end\nend\n\n@not in this place!\n\nwhen I receive [not in this place!! v]\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\nrepeat (20)\n    change [ghost v] effect by (5)\nend\n\nwhen flag clicked\nset [ghost v] effect to (100)\n\n@Final animation\n\nwhen flag clicked\nclear graphic effects\nhide\nforever\n\nwhen I receive [congrats!! v]\nshow\nswitch costume to (costume1 v)\nwait (1) seconds\nswitch costume to (costume3 v)\nwait (1) seconds\nswitch costume to (costume2 v)\nwait (1) seconds\nrepeat (50)\n    change [brightness v] effect by (2)\nend\n\nwhen I receive [congrats!! v]\nrepeat (50)\n    go to x: (36) y: (28)\n    wait (0) seconds\n    go to x: (35) y: (29)\n    wait (0) seconds\nend\n\n@Sprite1\n\nwhen flag clicked\nhide\nset [ghost v] effect to (100)\n\nwhen I receive [congrats!! v]\nshow\nwait (7) seconds\nrepeat (50)\n    change [ghost v] effect by (-2)\nend\n\n@Preview\n\nwhen flag clicked\nset [ghost v] effect to (100)\n\n
(Double green flag to play)\nInstructions:\nUse arrow keys to move\n\nSorry it's so short :((