☁️ EXPLORER // a platformer #trending #all #games #multiplayer #platformer

Instructions: If you enjoy follow me at @speedrider_G \nNow it is also a multiplayer :DD\n▶️ Use W,A,S,D or Arrow Keys to Move. Collect All \nthe  Coins, there are 10\n▶️ press T to see the chat. Press N to see names. \n❤️ + ⭐+ Follow if you enjoy! \n\n⚡Try to collect all 10 Coins ⚡   \n\n⭐1000 views\n\nmy other multiplayer game: https://scratch.mit.edu/projects/943116355\n\ntags:\n #games #all #multiplayer #trending

@Stage\n\nwhen flag clicked\nset [ghost v] effect to (30)\nforever\n    play sound [COOL Sunshine v] until done\nend\n\n@blank\n\n@Player\n\nwhen flag clicked\nset [username v] to (username)\nwrite (username) to encoded\nbroadcast (cloud - setup v) and wait\nset [color v] effect to (0)\nswitch costume to (costume1 v)\nset rotation style [left-right v]\ngo to x: (-180) y: (-50)\nset [coins v] to [0]\nset [level v] to [1]\nset [x v] to [0]\nset [y v] to [0]\npoint in direction (90)\nforever\n    change [y v] by (-1)\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n        point in direction (-90)\n        change [x v] by (-0.8)\n    end\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        point in direction (90)\n        change [x v] by (0.8)\n    end\n    set [x v] to ((x) * (0.9))\n    change x by (x)\n    if <touching (ground v)?> then\n        change y by (1)\n    end\n    if <touching (ground v)?> then\n        change y by (1)\n    end\n    if <touching (ground v)?> then\n        change y by (1)\n    end\n    if <touching (ground v)?> then\n        change y by (1)\n    end\n    if <touching (ground v)?> then\n        change y by (-4)\n        change x by ((x) * (-1))\n        if <<<key (space v) pressed?> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            set [y v] to [10]\n            if <([abs v] of (x) ) = (x)> then\n                set [x v] to [-5]\n            else\n                set [x v] to [5]\n            end\n        else\n            set [x v] to [0]\n        end\n    end\n    change y by (y)\n    if <touching (ground v)?> then\n        change y by ((0) - (y))\n        set [y v] to [0]\n    end\n    change y by (-1)\n    if <<<<key (space v) pressed?> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> or <<mouse down?> and <(mouse y) > (y position)>>> and <touching (ground v)?>> then\n        set [y v] to [15]\n    end\n    change y by (1)\n    if <(y position) > [180]> then\n        set [y v] to [0]\n    end\n    if <(x position) > [205]> then\n        change [level v] by (1)\n        broadcast (next level v)\n        go to x: (-180) y: (-50)\n        set [y v] to [0]\n    end\n    if <<touching (spikes v)?> or <touching (saw v)?>> then\n        go to x: (-180) y: (-50)\n        set [y v] to [0]\n        broadcast (trys v)\n    end\n    if <touching (trampoline v)?> then\n        broadcast (trampolin v)\n        set [y v] to [17]\n    end\n    if <touching (coins v)?> then\n        broadcast (coins get up!!! v)\n    end\n    add (round (x position)) to [my values to send v]\n    add (round (y position)) to [my values to send v]\n    add (encoded) to [my values to send v]\n    add (costume [number v]) to [my values to send v]\n    add (Level) to [my values to send v]\n    add (round (direction)) to [my values to send v]\n    add (chat item) to [my values to send v]\n    broadcast (cloud - tick v)\n    if <touching (mouse-pointer v)?> then\n        say (username)\n    else\n        say []\n    end\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nset size to (80) %\nrepeat (10)\n    change size by (-8)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\ndefine write (val) to encoded\nset [letter # v] to [1]\nset [encoded v] to []\nrepeat (length of (val))\n    set [encoded v] to (join (encoded) (item # of (letter (letter #) of (val)) in [code v]))\n    change [letter # v] by (1)\nend\nset [encoded v] to (join (encoded) [0])\n\nwhen flag clicked\nforever\n    chat\nend\n\ndefine chat\nif <key (1 v) pressed?> then\n    set [chat item v] to [1]\nelse\n    if <key (2 v) pressed?> then\n        set [chat item v] to [2]\n    else\n        if <key (3 v) pressed?> then\n            set [chat item v] to [3]\n        else\n            if <key (4 v) pressed?> then\n                set [chat item v] to [4]\n            else\n                if <key (5 v) pressed?> then\n                    set [chat item v] to [5]\n                else\n                    if <key (6 v) pressed?> then\n                        set [chat item v] to [6]\n                    else\n                        if <key (7 v) pressed?> then\n                            set [chat item v] to [7]\n                        else\n                            if <key (8 v) pressed?> then\n                                set [chat item v] to [8]\n                            else\n                                if <key (9 v) pressed?> then\n                                    set [chat item v] to [9]\n                                else\n                                    if <key (0 v) pressed?> then\n                                        set [chat item v] to [10]\n                                    else\n                                        if <key (v v) pressed?> then\n                                            set [chat item v] to [11]\n                                        else\n                                            if <key (x v) pressed?> then\n                                                set [chat item v] to [12]\n                                            else\n                                                if <key (y v) pressed?> then\n                                                    set [chat item v] to [13]\n                                                else\n                                                    if <key (z v) pressed?> then\n                                                        set [chat item v] to [14]\n                                                    else\n                                                        set [chat item v] to [15]\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nif <not <(chat item) = [15]>> then\n    repeat (60)\n        say (join (username) (join [: ] (item (chat item) of [chat v])))\n    end\nend\n\n@Ground\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [next level v]\nnext costume\n\n@Text\n\nwhen flag clicked\ngo to x: (0) y: (119)\ngo to [front v] layer\nswitch costume to (costume1 v)\n\nwhen I receive [next level v]\nnext costume\n\n@Spikes\n\nwhen flag clicked\ngo to x: (36) y: (38)\nswitch costume to (costume1 v)\ngo to [back v] layer\n\nwhen I receive [next level v]\nnext costume\n\n@Trampoline\n\nwhen flag clicked\ngo to x: (-80) y: (-68)\nswitch costume to (1 v)\nforever\n    if <(Level) = [10]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [trampolin v]\nset [fr v] to [0]\nswitch costume to (1 v)\nrepeat (10)\n    change [fr v] by (0.6)\n    switch costume to ((1) + (([floor v] of (fr) ) mod (6)))\nend\n\n@Follow Thingy\n\nwhen flag clicked\nhide\ngo to x: (-6) y: (105)\n\nwhen flag clicked\nhide\ngo to [front v] layer\nforever\n    wait (pick random (15) to (20)) seconds\n    switch costume to (reminder v)\n    go to x: (0) y: (105)\n    show\n    go to [front v] layer\n    repeat (9)\n        change y by (-6)\n    end\n    repeat (5)\n        change y by (3)\n    end\n    repeat (5)\n        change y by (-1)\n    end\n    wait (2) seconds\n    repeat (15)\n        change y by (7)\n    end\n    hide\nend\n\n@Thumb\n\nwhen flag clicked\nshow\nshow variable [active players v]\ngo to x: (0) y: (0)\nset [ge v] to [100]\nforever\n    go to [front v] layer\n    set [ghost v] effect to (ge)\nend\n\n@saw\n\nwhen flag clicked\ngo to x: (84) y: (-65)\nswitch costume to (costume1 v)\nforever\n    if <(Level) = [4]> then\n        go to x: (41) y: (-65)\n        set x to (([sin v] of ((timer) * (110)) ) * (50))\n        turn right (([sin v] of ((timer) * (110)) ) * (5)) degrees\n    else\n        if <(Level) = [5]> then\n            go to x: (41) y: (50)\n            point in direction (([sin v] of ((timer) * (100)) ) * (100))\n        end\n    end\nend\n\nwhen I receive [next level v]\nnext costume\n\n@unvisible\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    if <<(Level) = [8]> or <<(Level) = [9]> or <(Level) = [10]>>> then\n        if <<touching (player v)?> or <touching (cloud player v)?>> then\n            set [ghost v] effect to (30)\n        else\n            set [ghost v] effect to (0)\n        end\n    else\n        set [ghost v] effect to (20)\n    end\nend\n\nwhen I receive [next level v]\nnext costume\n\n@coins\n\nwhen I receive [next level v]\nset [c v] to [0]\ngo to x: (0) y: (0)\ngo to [back v] layer\nset [ghost v] effect to (0)\nnext costume\n\nwhen flag clicked\nset [c v] to [0]\ngo to x: (0) y: (0)\nswitch costume to (coins v)\n\nwhen I receive [coins get up!!! v]\nif <(c) < [1]> then\n    change [coins v] by (1)\n    change [c v] by (1)\n    start sound [coin sound v]\nend\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (2)\nend\n\n@get up coins\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [max coins v] to [10]\nshow variable [coins total v]\nforever\n    set [coins total v] to (join (coins) (join [/] (max coins)))\nend\n\n@arrow\n\nwhen flag clicked\nset [trys v] to [0]\ngo to x: (0) y: (0)\ngo to [front v] layer\nswitch costume to (costume1 v)\nforever\n    if <(trys) > [2]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [next level v]\nnext costume\nset [trys v] to [0]\n\nwhen I receive [trys v]\nchange [trys v] by (1)\n\n@cloud player\n\ndefine write number (val) to ''encoded string''\nset [val v] to (val)\nif <(val) < [0]> then\n    set [val v] to (join [0] ([abs v] of (val) ))\nend\nset [encoded string v] to (join (encoded string) (join (join (length of (length of (val))) (length of (val))) (val)))\n\ndefine val = READ NUMBER from encoded string\nset [val v] to []\nif <(letter (Encoded idx) of (encoded string)) > [1]> then\n    change [encoded idx v] by (2)\n    repeat (join (letter ((Encoded idx) - (1)) of (encoded string)) (letter (Encoded idx) of (encoded string)))\n        change [encoded idx v] by (1)\n        set [val v] to (join (val) (letter (Encoded idx) of (encoded string)))\n    end\nelse\n    change [encoded idx v] by (1)\n    repeat (letter (Encoded idx) of (encoded string))\n        change [encoded idx v] by (1)\n        set [val v] to (join (val) (letter (Encoded idx) of (encoded string)))\n    end\nend\nchange [encoded idx v] by (1)\nif <(letter (1) of (val)) = [0]> then\n    set [val v] to ((0) - (val))\nend\n\nwhen I receive [cloud - setup v]\nhide\nset [cloud tick v] to [0]\ndelete all of [my values to send v]\ndelete all of [cloud values v]\ndelete all of [player uids v]\ndelete all of [player data v]\nadd (join [c] (☁ CLOUD 1)) to [cloud values v]\nadd (join [c] (☁ CLOUD 2)) to [cloud values v]\nadd (join [c] (☁ CLOUD 3)) to [cloud values v]\nadd (join [c] (☁ CLOUD 4)) to [cloud values v]\nadd (join [c] (☁ CLOUD 5)) to [cloud values v]\nadd (join [c] (☁ CLOUD 6)) to [cloud values v]\nadd (join [c] (☁ CLOUD 7)) to [cloud values v]\nadd (join [c] (☁ CLOUD 8)) to [cloud values v]\nset [my player uid v] to (pick random (1) to (9999999))\nset [player # v] to []\n\nwhen I receive [cloud - tick v]\nif <(player #) > []> then\n    player clone tick\n    stop [this script v]\nend\nchange [cloud tick v] by (1)\nprocess cloud item [1] value (join [c] (☁ CLOUD 1))\nprocess cloud item [2] value (join [c] (☁ CLOUD 2))\nprocess cloud item [3] value (join [c] (☁ CLOUD 3))\nprocess cloud item [4] value (join [c] (☁ CLOUD 4))\nprocess cloud item [5] value (join [c] (☁ CLOUD 5))\nprocess cloud item [6] value (join [c] (☁ CLOUD 6))\nprocess cloud item [7] value (join [c] (☁ CLOUD 7))\nprocess cloud item [8] value (join [c] (☁ CLOUD 8))\nsend my cloud data after [4] ticks\n\ndefine send my cloud data after (count) ticks\nif <((cloud tick) mod (count)) > [0]> then\n    stop [this script v]\nend\nset [encoded string v] to []\nwrite number (MY PLAYER UID) to ''encoded string''\nrepeat (length of [my values to send v])\n    write number (item (1) of [my values to send v]) to ''encoded string''\n    delete (1) of [my values to send v]\nend\nset [my channel v] to (pick random (1) to (length of [cloud values v]))\nif <(MY CHANNEL) < [5]> then\n    if <(MY CHANNEL) < [3]> then\n        if <(MY CHANNEL) < [2]> then\n            set [☁ cloud 1 v] to (encoded string)\n        else\n            set [☁ cloud 2 v] to (encoded string)\n        end\n    else\n        if <(MY CHANNEL) < [4]> then\n            set [☁ cloud 3 v] to (encoded string)\n        else\n            set [☁ cloud 4 v] to (encoded string)\n        end\n    end\nelse\n    if <(MY CHANNEL) < [7]> then\n        if <(MY CHANNEL) < [6]> then\n            set [☁ cloud 5 v] to (encoded string)\n        else\n            set [☁ cloud 6 v] to (encoded string)\n        end\n    else\n        if <(MY CHANNEL) < [8]> then\n            set [☁ cloud 7 v] to (encoded string)\n        else\n            set [☁ cloud 8 v] to (encoded string)\n        end\n    end\nend\n\ndefine process cloud item (which) value (new value)\nif <(new value) = (item (which) of [cloud values v])> then\n    stop [this script v]\nend\nreplace item (which) of [cloud values v] with (new value)\nset [encoded string v] to (new value)\nset [encoded idx v] to [2]\nval = READ NUMBER from encoded string\nif <<(val) < [1]> or <(val) = (MY PLAYER UID)>> then\n    stop [this script v]\nend\nset [player # v] to (item # of (val) in [player uids v])\nif <(player #) = [0]> then\n    set [player # v] to (item # of [] in [player uids v])\n    if <(player #) = [0]> then\n        add (val) to [player uids v]\n        add [] to [player data v]\n        set [player # v] to (length of [player data v])\n        create clone of (_myself_ v)\n    else\n        replace item (player #) of [player uids v] with (val)\n    end\nend\nreplace item (player #) of [player data v] with (new value)\nset [player # v] to []\n\ndefine player clone tick\nif <(Encoded idx) > (length of (encoded string))> then\n    get next data packet\n    if <(encoded string) = []> then\n        change [inactive v] by (1)\n        if <(inactive) > [150]> then\n            replace item (player #) of [player uids v] with []\n            hide\n        end\n        stop [this script v]\n    end\nend\nset [inactive v] to [0]\nval = READ NUMBER from encoded string\nset x to (val)\nval = READ NUMBER from encoded string\nset y to (val)\nval = READ NUMBER from encoded string\nbegin decode of (val)\nvalue = read from encoded\nset [username v] to (value)\nval = READ NUMBER from encoded string\nswitch costume to (val)\nval = READ NUMBER from encoded string\nif <(val) = (Level)> then\n    show\nelse\n    hide\nend\nval = READ NUMBER from encoded string\npoint in direction (val)\nval = READ NUMBER from encoded string\nif <(val) = [15]> then\n    if <(names) = [1]> then\n        say (username)\n    else\n        say []\n    end\nelse\n    say (join (username) (join [: ] (item (val) of [chat v])))\nend\n\ndefine get next data packet\nset [encoded string v] to (item (player #) of [player data v])\nreplace item (player #) of [player data v] with []\nset [encoded idx v] to [2]\nval = READ NUMBER from encoded string\n\ndefine begin decode of (encoded)\nset [encoded v] to (encoded)\nset [letter # v] to [1]\n\ndefine value = read from encoded\nset [value v] to []\nforever\n    set [idx v] to (join (letter (letter #) of (encoded)) (letter ((letter #) + (1)) of (encoded)))\n    change [letter # v] by (2)\n    if <(idx) < [1]> then\n        stop [this script v]\n    end\n    set [value v] to (join (value) (item (idx) of [code v]))\nend\n\ndefine player zählen\nif <((cloud tick) mod (4)) > [0]> then\n    stop [this script v]\nend\nset [active players v] to ((length of [player uids v]) + (1))\nset [player counter v] to [1]\nrepeat (length of [player uids v])\n    if <(item (player counter) of [player uids v]) = []> then\n        change [active players v] by (-1)\n    end\n    change [player counter v] by (1)\nend\n\nwhen I receive [cloud - tick v]\nplayer zählen\n\nwhen flag clicked\nset [color v] effect to (7)\n\n@chat\n\nwhen flag clicked\ngo to x: (-173) y: (54)\nset [ghost v] effect to (30)\nforever\n    if <(show chat) > [0]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen [t v] key pressed\nset [show chat v] to ((1) - (show chat))\n\nwhen [n v] key pressed\nset [names v] to ((1) - (names))\n\n