Snow platformer 

Instructions: 新垢建設→ @-Hinomaru-_SIPPAI\n　　　　↑8/10~8/15にアニメ一斉公開\n\nスイカがあれば、一回のダメージに耐えられます！\nあと矢印キー or タップ(モバイル用)\n\n\nハートと星押してよ\n#ゲーム#プラットフォーマー#スクロール#楽しい#神クオ#Scroll#platformer#high quality#すいか#スターコイン#star#coin#傾向#プラフォ#BLUE WORLD #GREEN WORLD

@Stage\n\n@Robot\n\ndefine Wall\nif <touching (ground v)?> then\n    if <touching (ground v)?> then\n        change y by (1)\n        if <touching (ground v)?> then\n            change y by (1)\n            if <touching (ground v)?> then\n                change y by (1)\n                if <touching (ground v)?> then\n                    change y by (1)\n                    if <touching (ground v)?> then\n                        change x by (() - (xv))\n                        if <(xv) < [0]> then\n                            change x by (1)\n                        else\n                            change x by (-1)\n                        end\n                        change y by (-5)\n                    end\n                    if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > (x position)>>>> then\n                        Bounce\n                    else\n                        set [xv v] to [0]\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine Bounce\nif <(xv) < [0]> then\n    set [xv v] to [5]\nelse\n    set [xv v] to [-5]\nend\nset [yv v] to [10]\n\ndefine Ground\nif <touching (ground v)?> then\n    change y by (() - (yv))\n    set [yv v] to [0]\nend\nchange y by (-1)\nif <touching (ground v)?> then\n    if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > (x position)>>>> then\n        set [yv v] to [12]\n    end\nend\nchange y by (1)\n\nwhen flag clicked\nset [level v] to [1]\nhide\nset [max players v] to [10]\nset [my player # v] to [0]\nbroadcast (Setup - Other players v) and wait\nbroadcast (Connecting v)\nbroadcast (Join Game v) and wait\nif <(My Player #) > [0]> then\n    broadcast (Joined v)\nelse\n    broadcast (Full v)\nend\nwait (0.5) seconds\nbroadcast (Begin v)\n\ndefine Write (val) to encoded\nset [letter # v] to [1]\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) [00])\n\nwhen I receive [begin v]\nforever\n    if <(My Player #) > [0]> then\n        Send Cloud Data\n    end\nend\n\ndefine Set cloud # (player) to (value)\nif <(player) = [1]> then\n    set [☁ p1 v] to (value)\nelse\n    if <(player) = [2]> then\n        set [☁ p2 v] to (value)\n    else\n        if <(player) = [3]> then\n            set [☁ p3 v] to (value)\n        else\n            if <(player) = [4]> then\n                set [☁ p4 v] to (value)\n            else\n                if <(player) = [5]> then\n                    set [☁ p5 v] to (value)\n                else\n                    if <(player) = [6]> then\n                        set [☁ p6 v] to (value)\n                    else\n                        if <(player) = [7]> then\n                            set [☁ p7 v] to (value)\n                        else\n                            if <(player) = [8]> then\n                                set [☁ p8 v] to (value)\n                            else\n                                if <(player) = [9]> then\n                                    set [☁ p9 v] to (value)\n                                else\n                                    set [☁ p10 v] to (value)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [begin v]\ngo to x: (-180) y: (0)\npoint in direction (90)\nshow\nset [yv v] to [0]\nset [xv v] to [0]\nset [level v] to [1]\nforever\n    if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>>> then\n        change [xv v] by (1)\n        point in direction (90)\n    end\n    if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>>> then\n        change [xv v] by (-1)\n        point in direction (-90)\n    end\n    set [xv v] to ((xv) * (0.88))\n    change x by (xv)\n    Wall\n    change [yv v] by (-0.8)\n    change y by (yv)\n    Ground\n    if <<touching (spikes v)?> or <<touching (moving spikes v)?> or <<touching (rotating spikes v)?> or <touching (spinning spikes v)?>>>> then\n        go to x: (-200) y: (-20)\n    end\n    if <<touching (trampoline v)?> or <touching (trampoline 2 v)?>> then\n        if <<(yv) > [-0.2]> and <(yv) < [0.2]>> then\n            set [yv v] to [10]\n        else\n            set [yv v] to ((((yv) * (-1)) * (1.15)) + (1))\n        end\n    end\n    if <(x position) > [242]> then\n        go to x: (-200) y: (-20)\n        change [level v] by (1)\n        broadcast (New Level v)\n    end\nend\n\ndefine Send Cloud Data\nset [encoded v] to []\nWrite (username) to encoded\nWrite (round ((timer) * (10))) to encoded\nWrite (x position) to encoded\nWrite (y position) to encoded\nWrite (direction) to encoded\nWrite (Level) to encoded\nSet cloud # (My Player #) to (Encoded)\n\n@Other Robots\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 Setup Players\nhide\nset [offline v] to [100]\nset [player # v] to [1]\nrepeat ((Max Players) - (1))\n    create clone of (_myself_ v)\n    change [player # v] by (1)\nend\n\nwhen I receive [begin v]\nforever\n    if <(My Player #) = (Player #)> then\n        set [offline v] to [100]\n        hide\n    else\n        Tick\n    end\nend\n\ndefine Value = Cloud # (player)\nif <(player) = [1]> then\n    set [value v] to (☁ P1)\nelse\n    if <(player) = [2]> then\n        set [value v] to (☁ P2)\n    else\n        if <(player) = [3]> then\n            set [value v] to (☁ P3)\n        else\n            if <(player) = [4]> then\n                set [value v] to (☁ P4)\n            else\n                if <(player) = [5]> then\n                    set [value v] to (☁ P5)\n                else\n                    if <(player) = [6]> then\n                        set [value v] to (☁ P6)\n                    else\n                        if <(player) = [7]> then\n                            set [value v] to (☁ P7)\n                        else\n                            if <(player) = [8]> then\n                                set [value v] to (☁ P8)\n                            else\n                                if <(player) = [9]> then\n                                    set [value v] to (☁ P9)\n                                else\n                                    set [value v] to (☁ P10)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [setup - other players v]\nSetup Players\n\ndefine Tick\nif <(join [A] (Value)) = (Last Vaule)> then\n    change [offline v] by (1)\n    if <(Offline) = [100]> then\n        hide\n    end\nelse\n    set [last vaule v] to (join [A] (Value))\n    if <(Offline) > [99]> then\n        show\n    end\n    set [offline v] to [0]\nend\nBegin decode of (Value)\nValue = Read from encoded\nsay (join (Player #) (join [: ] (Value)))\nValue = Read from encoded\nValue = Read from encoded\nset x to (Value)\nValue = Read from encoded\nset y to (Value)\nValue = Read from encoded\npoint in direction (Value)\nValue = Read from encoded\nif <(Value) = (Level)> then\n    set [ghost v] effect to (0)\nelse\n    say []\n    set [ghost v] effect to (100)\nend\nValue = Cloud # (Player #)\n\nwhen I receive [join game v]\nValue = Cloud # (Player #)\nset [last vaule v] to (join [A] (Value))\nwait (3) seconds\nValue = Cloud # (Player #)\nif <(join [A] (Value)) = (Last Vaule)> then\n    set [my player # v] to (Player #)\nend\n\n@Ground\n\nwhen flag clicked\ngo to x: (0) y: (0)\ngo to [back v] layer\nforever\n    switch costume to (Level)\nend\n\n@Spikes\n\nwhen flag clicked\nforever\n    switch costume to (Level)\n    go to x: (0) y: (0)\nend\n\nwhen flag clicked\nwait (0) seconds\ngo to [back v] layer\n\n@Trampoline\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    if <(Level) = [7]> then\n        go to x: (-118) y: (-88)\n        show\n    else\n        if <(Level) = [14]> then\n            go to x: (-80) y: (-88)\n            show\n        else\n            hide\n        end\n    end\nend\n\nwhen I receive [new level v]\nswitch costume to (costume1 v)\n\nwhen flag clicked\nforever\n    if <touching (robot v)?> then\n        switch costume to (costume1 v)\n        repeat (6)\n            next costume\n        end\n        switch costume to (costume1 v)\n        wait until <not <touching (player v)?>>\n    end\nend\n\n@Moving Spikes\n\nwhen flag clicked\ngo to x: (0) y: (-120)\nforever\n    if <(Level) = [3]> then\n        go to x: (0) y: (-120)\n        wait (1) seconds\n        repeat (12)\n            change y by (3)\n        end\n        wait (2) seconds\n        repeat (24)\n            change y by (-1.5)\n        end\n    else\n        if <(Level) = [13]> then\n            go to x: (0) y: (-102)\n            wait (0.8) seconds\n            repeat (12)\n                change y by (3)\n            end\n            wait (2) seconds\n            repeat (24)\n                change y by (-1.5)\n            end\n        end\n    end\nend\n\nwhen flag clicked\nhide\nforever\n    go to [back v] layer\n    if <(Level) = [3]> then\n        show\n    else\n        if <(Level) = [13]> then\n            show\n        else\n            hide\n        end\n    end\nend\n\n@Rotating Spikes\n\nwhen flag clicked\ngo to x: (0) y: (185)\npoint in direction (90)\nforever\n    if <(Level) = [4]> then\n        point in direction ((180) + (([sin v] of ((timer) * (70)) ) * (45)))\n    end\nend\n\nwhen flag clicked\nhide\nforever\n    if <(Level) = [4]> then\n        show\n    else\n        hide\n    end\nend\n\n@Spinning Spikes\n\nwhen flag clicked\ngo to x: (0) y: (-102)\npoint in direction (90)\nforever\n    if <(Level) = [5]> then\n        go to x: (0) y: (-102)\n        turn right (15) degrees\n    else\n        if <(Level) = [6]> then\n            go to x: (135) y: (17)\n            turn right (15) degrees\n        else\n            if <(Level) = [10]> then\n                go to x: (0) y: (-102)\n                turn right (15) degrees\n            else\n                if <(Level) = [12]> then\n                    go to x: (5) y: (-102)\n                    turn right (15) degrees\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nhide\nforever\n    go to [back v] layer\n    if <(Level) = [5]> then\n        show\n    else\n        if <(Level) = [6]> then\n            show\n        else\n            if <(Level) = [10]> then\n                show\n            else\n                if <(Level) = [12]> then\n                    show\n                else\n                    hide\n                end\n            end\n        end\n    end\nend\n\n@Thumbnail\n\nwhen flag clicked\ngo to x: (0) y: (0)\nswitch costume to (connecting v)\ngo to [front v] layer\nset [ghost v] effect to (0)\nshow\n\nwhen I receive [connecting v]\nswitch costume to (connecting v)\n\nwhen I receive [joined v]\nswitch costume to (connected v)\nset [ghost v] effect to (0)\nwait (0.5) seconds\nrepeat (40)\n    change [ghost v] effect by (2.5)\n    wait (0.001) seconds\nend\nswitch costume to (tb v)\n\nwhen I receive [full v]\nswitch costume to (server full v)\nset [ghost v] effect to (0)\nwait (0.5) seconds\nrepeat (40)\n    change [ghost v] effect by (2.5)\n    wait (0.001) seconds\nend\nswitch costume to (tb v)\n\n