Larry - a platformer
@Stage\n\nwhen I receive [start v]\nforever\n    play sound [Sunshine v] until done\nend\n\n@intro\n\nwhen flag clicked\nrepeat (10)\n    set [移動z v] to [500]\n    set [まくy v] to [250]\nend\nset size to ((1) / ()) %\n準備\nrepeat until <[10] < (timer)>\n    erase all\n    set pen color to (#000000)\n    go to x: (0) y: (0)\n    set pen size to (1000)\n    pen down\n    pen up\n    文字絵画　文字 [katsuo777] x [0] y [0] 大きさ [300] 色 [50] 太さ ((10) * ([abs v] of ((500) / (移動z)) )) 明るさ [70] 透明度 []\n    文字絵画　文字 [katsuo777] x [0] y [0] 大きさ [300] 色 [50] 太さ ((5) * ([abs v] of ((500) / (移動z)) )) 明るさ [100] 透明度 []\n    星たちよ！！！\n    幕\nend\nset pen (transparency v) to (0)\nset pen size to (1000)\nset [星 v] to [0]\nrepeat (50)\n    change [星 v] by (2)\n    erase all\n    go to x: (0) y: (0)\n    set pen color to (#ffffff)\n    set pen (transparency v) to (星)\n    pen down\n    pen up\nend\nerase all\nset pen (transparency v) to (0)\n\ndefine 文字へ (x) (y) (大きさ) (色) (太さ) (明るさ) (透明度) (文字ⓜ️)\n文字 (文字ⓜ️)\nset pen color to (#f90000)\nset [文字x v] to (x)\nset [文字y v] to (y)\nset pen size to (太さ)\nset pen (color v) to (色)\nset pen (brightness v) to (明るさ)\nset pen (transparency v) to (透明度)\nset [文字 v] to [0]\n3Dを書く X ((0) - (((文字x) + (item (1) of [3d文字x v])) * ((大きさ) / (100)))) Y ((2) - (((文字y) + (item (1) of [3d文字y v])) * ((大きさ) / (100)))) Z [0]\npen down\nrepeat (length of [3d文字x v])\n    change [文字 v] by (1)\n    3Dを書く X ((0) - (((文字x) + (item (文字) of [3d文字x v])) * ((大きさ) / (100)))) Y ((0) - (((文字y) + (item (文字) of [3d文字y v])) * ((大きさ) / (100)))) Z [0]\nend\npen up\n\ndefine 文字 (文字)\ndelete all of [3d文字x v]\ndelete all of [3d文字y v]\nchange [変数 v] by (1)\nset [変数 v] to [0]\nset [記憶 v] to []\nrepeat until <(length of (item (文字) of [3dpen文字x v])) = (変数)>\n    change [変数 v] by (1)\n    set [記憶 v] to (join (記憶) (letter (変数) of (item (文字) of [3dpen文字x v])))\n    if <(letter ((変数) + (1)) of (item (文字) of [3dpen文字x v])) = [､]> then\n        change [変数 v] by (1)\n        add (記憶) to [3d文字x v]\n        set [記憶 v] to []\n    end\nend\nadd (記憶) to [3d文字x v]\nset [変数 v] to [0]\nset [記憶 v] to []\nrepeat until <(length of (item (文字) of [3dpen文字y v])) = (変数)>\n    change [変数 v] by (1)\n    set [記憶 v] to (join (記憶) (letter (変数) of (item (文字) of [3dpen文字y v])))\n    if <(letter ((変数) + (1)) of (item (文字) of [3dpen文字y v])) = [､]> then\n        change [変数 v] by (1)\n        add (記憶) to [3d文字y v]\n        set [記憶 v] to []\n    end\nend\nadd (記憶) to [3d文字y v]\n\ndefine 文字加工 (文字) (x) (y) (大きさ) (色) (太さ) (明るさ) (透明度)\nset [雑用2 v] to [0]\nrepeat ((length of (文字)) / (2))\n    change [雑用2 v] by (2)\n    if <not <(join (letter ((雑用2) - (1)) of (文字)) (letter (雑用2) of (文字))) = [48]>> then\n        文字へ ((x) + ((((雑用2) - (1)) * (10)) - (((2) * ((length of (文字)) / (4))) * (10)))) (y) (大きさ) (色) (太さ) (明るさ) (透明度) ((join (letter ((雑用2) - (1)) of (文字)) (letter (雑用2) of (文字))) - (9))\n    end\nend\nset pen size to (12)\n\ndefine 文字絵画　文字 (文字) x (x) y (y) 大きさ (大きさ) 色 (色) 太さ (太さ) 明るさ (明るさ) 透明度 (透明度)\nset [文字数値化 v] to []\nset [変数 v] to [0]\nset [文字数値化 v] to []\nrepeat (length of (文字))\n    change [変数 v] by (1)\n    set [文字数値化 v] to (join (文字数値化) (item # of (letter (変数) of (文字)) in [3dpen文字一覧 v]))\nend\n文字加工 (文字数値化) (x) (y) (大きさ) (色) (太さ) (明るさ) (透明度)\n\ndefine 3Dを書く X (x) Y (y) Z (z)\nset [x v] to (x)\nset [y v] to (y)\nset [z v] to (z)\nset [雑用 v] to (x)\nset [x v] to (((雑用) * ([cos v] of (回転x) )) - ((Z) * ([sin v] of (回転x) )))\nset [z v] to (((雑用) * ([sin v] of (回転x) )) + ((Z) * ([cos v] of (回転x) )))\nset [雑用 v] to (y)\nset [y v] to (((雑用) * ([cos v] of (回転y) )) + ((Z) * ([sin v] of (回転y) )))\nset [z v] to ((((0) - (雑用)) * ([sin v] of (回転y) )) + ((Z) * ([cos v] of (回転y) )))\nset [雑用 v] to (X)\nset [x v] to (((雑用) * ([cos v] of (回転z) )) - ((Y) * ([sin v] of (回転z) )))\nset [y v] to (((雑用) * ([sin v] of (回転z) )) + ((Y) * ([cos v] of (回転z) )))\nchange [z v] by (移動z)\ngo to x: ((300) * ((X) / (Z))) y: ((300) * ((Y) / (Z)))\n\ndefine 星たちよ！！！\nset [星 v] to [0]\nrepeat (100)\n    change [星 v] by (1)\n    set pen size to ((item (星) of [星大きさ v]) * ([abs v] of ((500) / (移動z)) ))\n    3Dを書く X (item (星) of [星x v]) Y (item (星) of [星y v]) Z (item (星) of [星z v])\n    pen down\n    set pen (color v) to (item (星) of [星色 v])\n    3Dを書く X (item (星) of [星x v]) Y (item (星) of [星y v]) Z (item (星) of [星z v])\n    pen up\nend\n\ndefine 準備\ndelete all of [星x v]\ndelete all of [星y v]\ndelete all of [星z v]\ndelete all of [星大きさ v]\nrepeat (100)\n    add (pick random (-1000) to (1000)) to [星x v]\n    add (pick random (-1000) to (1000)) to [星y v]\n    add (pick random (-1000) to (1000)) to [星z v]\n    add (pick random (1) to (10)) to [星大きさ v]\n    add (pick random (1) to (100)) to [星色 v]\nend\n\nwhen flag clicked\nwait until <[0.1] < (timer)>\nrepeat (100)\n    change [まくy v] by (((timer) * (timer)) * ((timer) * (timer)))\nend\n\nwhen flag clicked\nreset timer\nset volume to (100) %\nset [回転x v] to [0]\nset [回転y v] to [0]\nset [回転z v] to [0]\nplay sound [Inferno2 v] until done\n\ndefine 幕\nset pen size to (500)\nset pen color to (#ffffff)\ngo to x: (500) y: (まくy)\npen down\ngo to x: (-500) y: (まくy)\npen up\ngo to x: (500) y: ((0) - (まくy))\npen down\ngo to x: (-500) y: ((0) - (まくy))\npen up\n\nwhen flag clicked\nwait until <[0.8] < (timer)>\nrepeat (50)\n    change [移動z v] by ((0) - ((timer) * (((timer) * (timer)) * ((timer) * (timer)))))\nend\n\nwhen flag clicked\nwait until <[10] < (timer)>\nbroadcast (オンラインへ v)\nrepeat (50)\n    change volume by (-2)\nend\nstop all sounds\nset volume to (100) %\n\nwhen flag clicked\nwait until <[3] < (timer)>\nrepeat (20)\n    change [回転x v] by (((360) - (回転x)) / (4))\nend\nrepeat (20)\n    change [回転y v] by (((360) - (回転y)) / (4))\n    change [移動z v] by (((-1000) - (移動z)) / (4))\nend\nrepeat (40)\n    change [回転x v] by (((0) - (回転x)) / (10))\n    change [回転y v] by (((0) - (回転y)) / (10))\nend\n\nwhen flag clicked\nwait until <[5.5] < (timer)>\nrepeat (40)\n    change [移動z v] by (((500) - (移動z)) / (7))\nend\n\nwhen flag clicked\nwait until <[6] < (timer)>\nrepeat (40)\n    change [回転z v] by (((180) - (回転z)) / (7))\nend\n\nwhen flag clicked\nwait until <[7] < (timer)>\nrepeat (50)\n    change [まくy v] by (((250) - (まくy)) / (5))\nend\n\n@prayer\n\nwhen flag clicked\nset [xx v] to [0]\nset [yy v] to [0]\nhide\n\ndefine prayer\nif <(！) = [0]> then\n    if <not <(username) = []>> then\n        say (username)\n    end\n    if <<<mouse down?> and <[50] < (mouse x)>> or <<key (right arrow v) pressed?> or <key (d v) pressed?>>> then\n        change [x v] by (2)\n    end\n    if <<<mouse down?> and <(mouse x) < [-50]>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> then\n        change [x v] by (-2)\n    end\n    set [x v] to ((x) * (0.77))\n    change x by (round (x))\n    if <touching (stage v)?> then\n        change y by (1)\n        if <touching (stage v)?> then\n            change y by (1)\n            if <touching (stage v)?> then\n                change y by (1)\n                if <touching (stage v)?> then\n                    change y by (1)\n                    if <touching (stage v)?> then\n                        change y by (1)\n                        if <touching (stage v)?> then\n                            change y by (1)\n                        end\n                    end\n                end\n            end\n        end\n    end\n    if <touching (stage v)?> then\n        壁\n    end\n    change [y v] by (-2)\n    change y by (y)\n    if <touching (stage v)?> then\n        床\n    end\n    change y by (-1)\n    if <<touching (stage v)?> and <<<mouse down?> and <[0] < (mouse y)>> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>>> then\n        set [y v] to [20]\n    end\n    change y by (1)\n    change [scroll x v] by (round ((x position) / (10)))\n    change x by ((0) - ((round ((x position) / (10))) * <not <<(scroll x) < [0]> or <[4500] < (scroll x)>>>))\n    if <(scroll x) < [0]> then\n        set [scroll x v] to [0]\n    end\n    if <[4500] < (scroll x)> then\n        set [scroll x v] to [4500]\n    end\n    change [scroll y v] by (round ((y position) / (10)))\n    change y by ((0) - ((round ((y position) / (10))) * <not <(scroll y) < [0]>>))\n    if <(scroll y) < [0]> then\n        set [scroll y v] to [0]\n    end\n    if <<(y position) < [-150]> and <not <(scroll y) = [0]>>> then\n        set y to (-150)\n        change [y v] by (2)\n    end\nend\n\ndefine 初期化\nstart sound [Rip v]\nhide\nrepeat until <<([abs v] of ((scroll y) - (YY)) ) < [3]> and <([abs v] of ((scroll x) - (XX)) ) < [3]>>\n    change [scroll x v] by (round (((XX) - (scroll x)) / (5)))\n    change [scroll y v] by (round (((YY) - (scroll y)) / (5)))\nend\nset [x v] to [0]\nset [y v] to [0]\ngo to x: (0) y: (0)\nbroadcast (monster v)\nshow\n\ndefine 壁\nchange y by (-4)\nset [？ v] to [0]\nrepeat until <<[100] < (？)> or <not <touching (stage v)?>>>\n    change [？ v] by (1)\n    change x by ((-1) * ((x) / ([abs v] of (x) )))\nend\nif <<<mouse down?> and <[0] < (mouse y)>> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n    set [y v] to [20]\n    set [x v] to ((-10) * ((x) / ([abs v] of (x) )))\nelse\n    set [x v] to [0]\nend\n\ndefine 床\nset [？ v] to [0]\nrepeat until <<[100] < (？)> or <not <touching (stage v)?>>>\n    change [？ v] by (1)\n    change y by ((-1) * ((y) / ([abs v] of (y) )))\nend\nset [y v] to [0]\n\nwhen I receive [start v]\nshow\nset [！ v] to [0]\nset [scroll x v] to [0]\nset [scroll y v] to [0]\ngo to x: (0) y: (0)\nset [x v] to [0]\nset [y v] to [0]\nforever\n    prayer\nend\n\nwhen I receive [start v]\nforever\n    switch costume to (コスチューム1 v)\n    if <not <<<mouse down?> and <[0] < (mouse y)>> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>>> then\n        if <<<mouse down?> and <[50] < (mouse x)>> or <<key (right arrow v) pressed?> or <key (d v) pressed?>>> then\n            switch costume to (コスチューム2 v)\n        end\n        if <<<mouse down?> and <(mouse x) < [-50]>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> then\n            switch costume to (コスチューム3 v)\n        end\n    else\n        switch costume to (コスチューム6 v)\n        if <<<mouse down?> and <[50] < (mouse x)>> or <<key (right arrow v) pressed?> or <key (d v) pressed?>>> then\n            switch costume to (コスチューム4 v)\n        end\n        if <<<mouse down?> and <(mouse x) < [-50]>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> then\n            switch costume to (コスチューム5 v)\n        end\n    end\nend\n\nwhen I receive [start v]\nset [！ v] to [0]\nforever\n    if <<(y position) < [-180]> or <touching (stage3 v)?>> then\n        set [！ v] to [1]\n        初期化\n        set [！ v] to [0]\n    end\nend\n\nwhen I receive [初期化 v]\nset [！ v] to [1]\n初期化\nset [！ v] to [0]\n\nwhen I receive [クリア v]\nhide\n\n@Stage\n\ndefine 配置 (x) (y) (コスチューム)\nset [1 v] to (x)\nset [2 v] to (y)\nset [3 v] to (コスチューム)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nforever\n    switch costume to (コスチューム1 v)\n    go to x: ((1) - (scroll x)) y: ((2) - (scroll y))\n    if <<(x position) = ((1) - (scroll x))> and <(y position) = ((2) - (scroll y))>> then\n        show\n    else\n        hide\n    end\n    switch costume to ((1) + (3))\nend\n\nwhen I receive [start v]\nhide\n配置 [0] [0] [1]\n配置 [500] [0] [2]\n配置 [1000] [0] [3]\n配置 [1500] [0] [4]\n配置 [2000] [0] [5]\n配置 [2500] [300] [6]\n配置 [3000] [200] [7]\n配置 [3500] [0] [8]\n配置 [4000] [0] [9]\n配置 [4500] [0] [10]\n\n@Stage2\n\ndefine 配置 (x) (y) (コスチューム)\nset [1 v] to (x)\nset [2 v] to (y)\nset [3 v] to (コスチューム)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nforever\n    switch costume to (コスチューム1 v)\n    go to x: ((1) - (scroll x)) y: ((2) - (scroll y))\n    if <<(x position) = ((1) - (scroll x))> and <(y position) = ((2) - (scroll y))>> then\n        show\n    else\n        hide\n    end\n    switch costume to ((1) + (3))\nend\n\nwhen I receive [start v]\nhide\n配置 [0] [0] [1]\n配置 [500] [0] [2]\n配置 [1000] [0] [3]\n配置 [1500] [0] [4]\n配置 [2000] [0] [5]\n配置 [2500] [300] [6]\n配置 [3000] [200] [7]\n配置 [3500] [0] [8]\n配置 [4000] [0] [9]\n配置 [4500] [0] [10]\n\n@prayer2\n\nwhen I receive [オンライン！ v]\nhide\n配置\n\ndefine 配置\nset [prayer2 v] to [0]\nrepeat (10)\n    change [prayer2 v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nforever\n    show\n    set [ghost v] effect to (0)\n    if <<(1p？) = (prayer2)> or <<(item (prayer2) of [p1〜10 v]) = [0]> or <[1] = (letter (54) of (item (prayer2) of [p1〜10 v]))>>> then\n        hide\n    end\n    switch costume to ((join (letter (49) of (item (prayer2) of [p1〜10 v])) (letter (50) of (item (prayer2) of [p1〜10 v]))) - (10))\n    say (item (prayer2) of [user v])\n    xy (((join (letter (41) of (item (prayer2) of [p1〜10 v])) (join (letter (42) of (item (prayer2) of [p1〜10 v])) (join (letter (43) of (item (prayer2) of [p1〜10 v])) (letter (44) of (item (prayer2) of [p1〜10 v]))))) - (1500)) - (scroll x)) (((join (letter (45) of (item (prayer2) of [p1〜10 v])) (join (letter (46) of (item (prayer2) of [p1〜10 v])) (join (letter (47) of (item (prayer2) of [p1〜10 v])) (letter (48) of (item (prayer2) of [p1〜10 v]))))) - (1500)) - (scroll y))\nend\n\ndefine xy (x) (y)\ngo to x: (x) y: (y)\nif <not <<(x position) = (x)> and <(y position) = (y)>>> then\n    set [ghost v] effect to (100)\nend\n\n@online\n\nwhen I receive [オンライン v]\nset [online v] to [1]\nwait (1) seconds\nset [☁ 1p v] to [0]\nset [☁ 2p v] to [0]\nset [☁ 3p v] to [0]\nset [☁ 4p v] to [0]\nset [☁ 5p v] to [0]\nset [☁ 6p v] to [0]\nset [☁ 7p v] to [0]\nset [☁ 8p v] to [0]\nset [☁ 9p v] to [0]\nset [☁ 10p v] to [0]\nset [1p？ v] to [0]\nwait (1) seconds\nbroadcast (START v)\nbroadcast (オンライン！ v)\nforever\n    if <(☁ 1p) = [0]> then\n        ユーザー名数値化\n        forever\n            set [1p？ v] to [1]\n            set [☁ 1p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n        end\n    else\n        if <(☁ 2p) = [0]> then\n            ユーザー名数値化\n            forever\n                set [1p？ v] to [2]\n                set [☁ 2p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n            end\n        else\n            if <(☁ 3p) = [0]> then\n                ユーザー名数値化\n                forever\n                    set [1p？ v] to [3]\n                    set [☁ 3p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n                end\n            else\n                if <(☁ 4p) = [0]> then\n                    ユーザー名数値化\n                    forever\n                        set [1p？ v] to [4]\n                        set [☁ 4p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n                    end\n                else\n                    if <(☁ 5p) = [0]> then\n                        ユーザー名数値化\n                        forever\n                            set [1p？ v] to [5]\n                            set [☁ 5p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n                        end\n                    else\n                        if <(☁ 6p) = [0]> then\n                            ユーザー名数値化\n                            forever\n                                set [1p？ v] to [6]\n                                set [☁ 6p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n                            end\n                        else\n                            if <(☁ 7p) = [0]> then\n                                ユーザー名数値化\n                                forever\n                                    set [1p？ v] to [7]\n                                    set [☁ 7p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n                                end\n                            else\n                                if <(☁ 8p) = [0]> then\n                                    ユーザー名数値化\n                                    forever\n                                        set [1p？ v] to [8]\n                                        set [☁ 8p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n                                    end\n                                else\n                                    if <(☁ 9p) = [0]> then\n                                        ユーザー名数値化\n                                        forever\n                                            set [1p？ v] to [9]\n                                            set [☁ 9p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n                                        end\n                                    else\n                                        if <(☁ 10p) = [0]> then\n                                            ユーザー名数値化\n                                            forever\n                                                set [1p？ v] to [10]\n                                                set [☁ 10p v] to (join (user2) (join (join ((1500) + ((scroll x) + ([x position v] of [prayer v]))) (((scroll y) + ([y position v] of [prayer v])) + (1500))) (join (([costume # v] of [prayer v]) + (10)) (join ((chat) + (10)) (join (letter (length of ([floor v] of (timer) )) of ([floor v] of (timer) )) (！))))))\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine ユーザー名数値化\nset [user v] to [0]\nset [user2 v] to []\nrepeat (length of (username))\n    change [user v] by (1)\n    switch costume to (letter (user) of (username))\n    set [user2 v] to (join (user2) (costume [number v]))\nend\nrepeat ((40) - (length of (user2)))\n    set [user2 v] to (join (user2) [0])\nend\n\nwhen I receive [オンライン v]\nbroadcast (言う v)\nforever\n    復元1\nend\n\ndefine 復元1\ndelete all of [user v]\nset [% v] to [0]\nrepeat (10)\n    switch costume to ( v)\n    change [% v] by (1)\n    set [〜 v] to [0]\n    set [4 v] to []\n    repeat (20)\n        if <not <(join (letter ((〜) + (1)) of (item (%) of [p1〜10 v])) (letter ((〜) + (2)) of (item (%) of [p1〜10 v]))) = [00]>> then\n            change [〜 v] by (2)\n            switch costume to (join (letter ((〜) - (1)) of (item (%) of [p1〜10 v])) (letter (〜) of (item (%) of [p1〜10 v])))\n            set [4 v] to (join (4) (costume [name v]))\n        end\n    end\n    add (4) to [user v]\nend\n\nwhen flag clicked\nforever\n    delete all of [p1〜10 v]\n    add (☁ 1p) to [p1〜10 v]\n    add (☁ 2p) to [p1〜10 v]\n    add (☁ 3p) to [p1〜10 v]\n    add (☁ 4p) to [p1〜10 v]\n    add (☁ 5p) to [p1〜10 v]\n    add (☁ 6p) to [p1〜10 v]\n    add (☁ 7p) to [p1〜10 v]\n    add (☁ 8p) to [p1〜10 v]\n    add (☁ 9p) to [p1〜10 v]\n    add (☁ 10p) to [p1〜10 v]\nend\n\nwhen I receive [オンライン！ v]\nforever\n    delete all of [1〜10 2 v]\n    add (☁ 1p) to [1〜10 2 v]\n    add (☁ 2p) to [1〜10 2 v]\n    add (☁ 3p) to [1〜10 2 v]\n    add (☁ 4p) to [1〜10 2 v]\n    add (☁ 5p) to [1〜10 2 v]\n    add (☁ 6p) to [1〜10 2 v]\n    add (☁ 7p) to [1〜10 2 v]\n    add (☁ 8p) to [1〜10 2 v]\n    add (☁ 9p) to [1〜10 2 v]\n    add (☁ 10p) to [1〜10 2 v]\n    wait (1.5) seconds\n    if <(letter (53) of (item (1) of [p1〜10 v])) = (letter (53) of (item (1) of [1〜10 2 v]))> then\n        set [☁ 1p v] to [0]\n    end\n    if <(letter (53) of (item (2) of [p1〜10 v])) = (letter (53) of (item (2) of [1〜10 2 v]))> then\n        set [☁ 2p v] to [0]\n    end\n    if <(letter (53) of (item (3) of [p1〜10 v])) = (letter (53) of (item (3) of [1〜10 2 v]))> then\n        set [☁ 3p v] to [0]\n    end\n    if <(letter (53) of (item (4) of [p1〜10 v])) = (letter (53) of (item (4) of [1〜10 2 v]))> then\n        set [☁ 4p v] to [0]\n    end\n    if <(letter (53) of (item (5) of [p1〜10 v])) = (letter (53) of (item (5) of [1〜10 2 v]))> then\n        set [☁ 5p v] to [0]\n    end\n    if <(letter (53) of (item (6) of [p1〜10 v])) = (letter (53) of (item (6) of [1〜10 2 v]))> then\n        set [☁ 6p v] to [0]\n    end\n    if <(letter (53) of (item (7) of [p1〜10 v])) = (letter (53) of (item (7) of [1〜10 2 v]))> then\n        set [☁ 7p v] to [0]\n    end\n    if <(letter (53) of (item (8) of [p1〜10 v])) = (letter (53) of (item (8) of [1〜10 2 v]))> then\n        set [☁ 8p v] to [0]\n    end\n    if <(letter (53) of (item (9) of [p1〜10 v])) = (letter (53) of (item (9) of [1〜10 2 v]))> then\n        set [☁ 9p v] to [0]\n    end\n    if <(letter (53) of (item (10) of [p1〜10 v])) = (letter (53) of (item (10) of [1〜10 2 v]))> then\n        set [☁ 10p v] to [0]\n    end\nend\n\nwhen I receive [オンラインへ v]\nbroadcast (オンライン v)\n\n配置 (monster coin X) ((monster coin Y) + (10)) [1]\n\n@Stage3\n\ndefine 配置 (x) (y) (コスチューム)\nset [1 v] to (x)\nset [2 v] to (y)\nset [3 v] to (コスチューム)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nforever\n    switch costume to (コスチューム1 v)\n    go to x: ((1) - (scroll x)) y: ((2) - (scroll y))\n    if <<(x position) = ((1) - (scroll x))> and <(y position) = ((2) - (scroll y))>> then\n        show\n    else\n        hide\n    end\n    switch costume to ((1) + (3))\nend\n\nwhen I receive [start v]\nhide\n配置 [0] [0] [1]\n配置 [500] [0] [2]\n配置 [1000] [0] [3]\n配置 [1500] [0] [4]\n配置 [2000] [0] [5]\n配置 [2500] [300] [6]\n配置 [3000] [200] [7]\n配置 [3500] [0] [8]\n配置 [4000] [0] [9]\n配置 [4500] [0] [10]\n\n@Stage4\n\ndefine 配置 (x) (y) (コスチューム) (動かす距離)\nset [+ v] to (動かす距離)\nset [1 v] to (x)\nset [2 v] to (y)\nset [3 v] to (コスチューム)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nforever\n    switch costume to (コスチューム1 v)\n    go to x: (((1) + (+X)) - (scroll x)) y: ((2) - (scroll y))\n    if <<(x position) = (((1) + (+X)) - (scroll x))> and <<(OK？) = [0]> and <(y position) = ((2) - (scroll y))>>> then\n        show\n    else\n        hide\n    end\n    switch costume to ((1) + (3))\n    if <[0] < (monster X)> then\n        switch costume to ((3) + (2))\n    else\n        switch costume to ((3) + (3))\n    end\nend\n\nwhen I start as a clone\nset [+x v] to [0]\nset [monster x v] to [0]\nforever\n    repeat (+)\n        change [monster x v] by (1)\n        set [monster x v] to ((monster X) * (0.85))\n        change [+x v] by (monster X)\n    end\n    repeat (+)\n        change [monster x v] by (-1)\n        set [monster x v] to ((monster X) * (0.85))\n        change [+x v] by (monster X)\n    end\nend\n\nwhen I start as a clone\nset [ok？ v] to [0]\nforever\n    if <touching (prayer v)?> then\n        if <(y) < [0]> then\n            set [y v] to [20]\n            set [monster coin x v] to ((1) + (+X))\n            set [monster coin y v] to (2)\n            broadcast (monster coin v)\n            change [ok？ v] by (1)\n        else\n            broadcast (初期化 v)\n        end\n    end\nend\n\nwhen I receive [monster v]\nset [ok？ v] to [0]\n\nwhen I receive [start v]\nhide\n配置 [1330] [-17] [1] [40]\n配置 [3300] [100] [1] [20]\n配置 [3550] [-22] [1] [40]\n\n@Stage5\n\ndefine 配置 (x) (y) (コスチューム)\nset [1 v] to (x)\nset [2 v] to (y)\nset [3 v] to (コスチューム)\ncreate clone of (_myself_ v)\nswitch costume to (コスチューム1 v)\n\nwhen I start as a clone\nforever\n    switch costume to (コスチューム1 v)\n    go to x: ((1) - (scroll x)) y: ((2) - (scroll y))\n    if <<(x position) = ((1) - (scroll x))> and <<(OK？) = [0]> and <(y position) = ((2) - (scroll y))>>> then\n        show\n    else\n        hide\n    end\n    switch costume to ((1) + (3))\nend\n\nwhen I receive [start v]\nhide\nset [monster coin？ v] to [0]\n配置 [130] [-20] [1]\n配置 [180] [-20] [1]\n配置 [290] [-20] [1]\n配置 [410] [-20] [1]\n配置 [460] [-20] [1]\n配置 [680] [170] [1]\n配置 [730] [170] [1]\n配置 [900] [140] [1]\n配置 [1030] [90] [1]\n配置 [1175] [35] [1]\n配置 [1225] [20] [1]\n配置 [1775] [-15] [1]\n配置 [1825] [-15] [1]\n配置 [1875] [-15] [1]\n配置 [1985] [-15] [1]\n配置 [2100] [120] [1]\n配置 [2150] [120] [1]\n配置 [2550] [285] [1]\n配置 [2825] [270] [1]\n配置 [2950] [215] [1]\n配置 [3000] [200] [1]\n配置 [3050] [180] [1]\n配置 [4250] [-15] [1]\n配置 [4300] [-15] [1]\n配置 [4350] [-15] [1]\n配置 [4465] [-15] [1]\n配置 [4600] [-15] [1]\n\nwhen I receive [monster v]\nset [ok？ v] to [0]\n\nwhen I start as a clone\nforever\n    if <touching (prayer v)?> then\n        set [ok？ v] to [1]\n        change [coin v] by (1)\n    end\nend\n\nwhen flag clicked\nset [coin v] to [0]\n\nwhen I receive [monster coin v]\nif <(costume [number v]) = [1]> then\n    wait (0.5) seconds\n    set [monster coin？ v] to [1]\n    配置 (monster coin X) ((monster coin Y) + (10)) [1]\nend\n\nwhen I start as a clone\nif <(monster coin？) = [1]> then\n    wait until <<(！) = [1]> and <(OK？) = [1]>>\n    wait until <(！) = [0]>\n    delete this clone\nend\n\n@Stage6\n\ndefine 配置 (x) (y) (コスチューム)\nset [1 v] to (x)\nset [2 v] to (y)\nset [3 v] to (コスチューム)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nforever\n    switch costume to (コスチューム1 v)\n    go to x: ((1) - (scroll x)) y: ((2) - (scroll y))\n    if <<(x position) = ((1) - (scroll x))> and <(y position) = ((2) - (scroll y))>> then\n        show\n    else\n        hide\n    end\n    switch costume to ((1) + (3))\nend\n\nwhen I receive [start v]\nhide\n配置 [2250] [122] [1]\n\nwhen I start as a clone\nforever\n    if <touching (prayer v)?> then\n        start sound [Collect v]\n        set [xx v] to (1)\n        set [yy v] to (2)\n        change [3 v] by (1)\n        stop [this script v]\n    end\nend\n\n@Stage7\n\ndefine 配置 (x) (y) (コスチューム)\nset [1 v] to (x)\nset [2 v] to (y)\nset [3 v] to (コスチューム)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nforever\n    switch costume to (コスチューム1 v)\n    go to x: ((1) - (scroll x)) y: ((2) - (scroll y))\n    if <<(x position) = ((1) - (scroll x))> and <(y position) = ((2) - (scroll y))>> then\n        show\n    else\n        hide\n    end\n    switch costume to ((1) + (3))\nend\n\nwhen I receive [start v]\nhide\n配置 [4700] [0] [1]\n\nwhen I start as a clone\nforever\n    if <touching (prayer v)?> then\n        set [xx v] to (1)\n        set [yy v] to (2)\n        change [3 v] by (1)\n        set [！ v] to [1]\n        broadcast (クリア v)\n        stop [this script v]\n    end\nend\n\n@スプライト1\n\nwhen flag clicked\ngo to x: (0) y: (0)\nshow\nswitch costume to (コスチューム3 v)\nset [ghost v] effect to (100)\n\nwhen I receive [クリア v]\nstart sound [Rip v]\nswitch costume to (コスチューム2 v)\nset [ghost v] effect to (0)\ngo to x: (0) y: (999)\nrepeat until <(round (y position)) = [0]>\n    change y by (((0) - (y position)) / (5))\nend\nstop [all v]\n\n
New https://scratch.mit.edu/projects/607603367/