Infinity Platformer! | #all #games
@Stage\n\nwhen flag clicked\nswitch backdrop to (normal v)\nplay sound [Connect v] until done\nforever\n    play sound [Distant_Lands v] until done\nend\n\nwhen I receive [blue brush collected v]\nswitch backdrop to (blue backdrop v)\n\nwhen I receive [game complete! v]\nswitch backdrop to (game complete v)\n\n@Level\n\nwhen flag clicked\nswitch costume to (1 v)\nforever\n    set size to (90) %\n    switch costume to (Level)\nend\n\n@text\n\nwhen flag clicked\ngo to x: (28) y: (-7)\nforever\n    set size to (100) %\n    switch costume to (Level)\n    if <(Level) = [2]> then\n        go to x: (13) y: (75)\n    end\n    if <(Level) = [3]> then\n        go to x: (13) y: (85)\n    end\n    if <(Level) = [4]> then\n        go to x: (5) y: (140)\n    end\n    if <(Level) = [6]> then\n        go to x: (-100) y: (135)\n    end\n    if <(Level) = [7]> then\n        go to x: (5) y: (75)\n    end\n    if <(Level) = [9]> then\n        go to x: (5) y: (12)\n    end\n    if <(Level) = [10]> then\n        go to x: (5) y: (100)\n    end\nend\n\n@Brush\n\nwhen flag clicked\nforever\n    if <(Level) = [8]> then\n        show\n    else\n        hide\n    end\nend\n\n@spike\n\nwhen flag clicked\nhide\nforever\n    if <(Level) = [13]> then\n        go to x: (-73) y: (-123)\n        show\n    else\n        hide\n    end\nend\n\n@Brush2\n\nwhen flag clicked\ngo to x: (27) y: (-55)\nforever\n    if <(Level) = [12]> then\n        show\n    else\n        hide\n    end\nend\n\n@Lava\n\nwhen flag clicked\nforever\n    if <(Level) = [14]> then\n        show\n    else\n        hide\n    end\nend\n\n@Brush3\n\nwhen flag clicked\nforever\n    go to x: (21) y: (-70)\n    if <(Level) = [15]> then\n        show\n    else\n        hide\n    end\nend\n\n@thumbnail\n\nwhen flag clicked\nshow variable [timer v]\nset size to (100) %\nhide\ngo to x: (0) y: (0)\nforever\n    go to x: (0) y: (0)\n    reset timer\n    go to [front v] layer\nend\n\nwhen [timer v] > (0)\nshow\nhide variable [timer v]\nhide variable [☁ fastest time v]\nset [ghost v] effect to (100)\ngo to [front v] layer\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\n@Player\n\ndefine Restart\nset [x v] to [0]\nset [y v] to [0]\ngo to x: (-200) y: (0)\n\ndefine Physics\nif <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>>> then\n    change [x v] by (2)\nend\nif <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>>> then\n    change [x v] by (-2)\nend\nchange x by (x)\nif <touching (level v)?> then\n    change x by ((x) * (-1))\n    if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>>> then\n        if <(x) > [0]> then\n            set [x v] to [-10]\n            set [y v] to [10]\n        else\n            set [x v] to [10]\n            set [y v] to [10]\n        end\n    end\nelse\n    set [x v] to ((x) * (0.8))\nend\nchange y by (y)\nif <touching (level v)?> then\n    change y by ((y) * (-1))\n    set [y v] to [0]\n    if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>>> then\n        if <(Jumping?) = [y]> then\n            set [y v] to [12]\n            set [jumping? v] to [n]\n        end\n    end\nelse\n    change [y v] by (-1)\n    set [jumping? v] to [y]\nend\nif <<touching (spike v)?> or <touching (lava v)?>> then\n    Restart\n    broadcast (Restart Enemy v)\nend\nif <(x position) > [225]> then\n    change [level v] by (1)\n    Restart\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\nRestart\nshow\nset [level v] to [1]\nforever\n    Physics\n    if <touching (brush v)?> then\n        broadcast (blue brush collected v)\n        change [level v] by (1)\n        switch costume to (costume2 v)\n        Restart\n    end\n    if <touching (brush2 v)?> then\n        change [level v] by (1)\n        Restart\n    end\n    if <touching (brush3 v)?> then\n        broadcast (blue brush collected v)\n        change [level v] by (1)\n        Restart\n    end\n    if <key (s v) pressed?> then\n        wait until <not <key (s v) pressed?>>\n        change [level v] by (1)\n        Restart\n    end\n    if <key (r v) pressed?> then\n        Restart\n    end\nend\n\ndefine Slope Detection\nset [slope v] to [0]\nrepeat until <<(Slope) = [8]> or <not <touching (level v)?>>>\n    change x by (1)\n    change [slope v] by (1)\nend\nif <touching (level v)?> then\n    change y by (-8)\nend\n\nwhen flag clicked\nforever\n    if <(y position) = [-183]> then\n        Restart\n    end\nend\n\nbroadcast (blue brush collected v)\n\nchange [level v] by (1)\n\nwhen flag clicked\nset [timer v] to [0]\nforever\n    wait (0.1) seconds\n    change [timer v] by (0.1)\n    if <(Level) = [16]> then\n        stop [this script v]\n    end\nend\n\nbroadcast (blue brush collected v)\nchange [level v] by (1)\n\n
Wow! This got featured! Thank you so much Scratch Team!!!\n\nSea Floor\nHere's your chance to explore the dark depths of the sea floor! While you've got mysterious creatures to look out for, you also have trash to collect, oil to stop, and creatures to save! \n\nHOW TO PLAY (Please read!):\n- Press the green flag twice! (it won't work otherwise!)\n\n- Hit "play" to start.\n\n- Use the arrow keys to move.\n\n- Down arrow to crawl.\n\n- Don't go out of the border, touch red or black.\n\n- Click trash to pick it up.\n\nFollow the instructions and have fun!\n