Rainbow road　A 100% Pen Platformer

Instructions: WASDkey   arrow key\nWASDキーか矢印キー\n\n100%pen\nモバイル対応にしているつもり\nできない機種もあるそうです

@Stage\n\n@pen\n\ndefine 背景描画\nswitch costume to (コスチューム1 v)\nerase all\nset pen color to (#000000)\nset pen size to ((1) / (0))\npen down\npen up\n\ndefine ステージ　ｘ (ｘ) ｙ (ｙ) 縦の長さ (縦長さ) 横長さ (横長さ) 種類 (種類)\nadd (ｘ) to [ステージ情報 v]\nadd (ｙ) to [ステージ情報 v]\nif <[3] < (種類)> then\n    add [50] to [ステージ情報 v]\n    add [50] to [ステージ情報 v]\n    if <(種類) = [7]> then\n        add [20000] to [チェックポイント座標 v]\n        add [0] to [チェックポイント座標 v]\n    else\n        add ((ｘ) + (1000)) to [チェックポイント座標 v]\n        add ((ｙ) + (50)) to [チェックポイント座標 v]\n    end\nelse\n    add (縦長さ) to [ステージ情報 v]\n    add (横長さ) to [ステージ情報 v]\nend\nadd (種類) to [ステージ情報 v]\n\ndefine ステージ描画\nswitch costume to (コスチューム1 v)\nset pen (transparency v) to (0)\nset [i v] to [0]\nrepeat ((length of [描画可能ステージ v]) / (5))\n    if <(item ((i) + (5)) of [描画可能ステージ v]) < [4]> then\n        set pen size to (10)\n        set [塗りつぶし v] to [0]\n        if <(item ((i) + (5)) of [描画可能ステージ v]) = [1]> then\n            set pen color to (#ff3d3d)\n            change pen (color v) by (色)\n        end\n        if <(item ((i) + (5)) of [描画可能ステージ v]) = [2]> then\n            set pen color to (#4e4e4e)\n        end\n        if <(item ((i) + (5)) of [描画可能ステージ v]) = [3]> then\n            set pen color to (#4e4e4e)\n        end\n        if <[3] < (item ((i) + (5)) of [描画可能ステージ v])> then\n            if <(item ((item ((i) + (5)) of [描画可能ステージ v]) + (-3)) of [チェック v]) = [0]> then\n                set pen color to (#ffffff)\n            else\n                set pen color to (#ff0000)\n                change pen (color v) by (色)\n            end\n        end\n        set pen size to (7)\n        pen up\n        repeat (round ((item ((i) + (3)) of [描画可能ステージ v]) / (5)))\n            x (((item ((i) + (1)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) + (5)) ｙ (((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2)))) - (塗りつぶし))\n            pen down\n            x (((item ((i) + (1)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) + (-5)) ｙ (((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2)))) - (塗りつぶし))\n            pen up\n            change [塗りつぶし v] by (5)\n        end\n        if <(item ((i) + (5)) of [描画可能ステージ v]) = [2]> then\n            set pen color to (#ff0000)\n        end\n        if <(item ((i) + (5)) of [描画可能ステージ v]) = [3]> then\n            set pen color to (#eeff00)\n        end\n        set pen size to (10)\n        x ((item ((i) + (1)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) ｙ ((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2))))\n        pen down\n        x ((item ((i) + (1)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) ｙ ((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2))))\n        x ((item ((i) + (1)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) ｙ ((item ((i) + (2)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2))))\n        x ((item ((i) + (1)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) ｙ ((item ((i) + (2)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2))))\n        x ((item ((i) + (1)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) ｙ ((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2))))\n        pen up\n        change [i v] by (5)\n    end\nend\nset [i v] to [0]\nrepeat ((length of [描画可能ステージ v]) / (5))\n    if <(item ((i) + (5)) of [描画可能ステージ v]) = [1]> then\n        set pen size to (12)\n        set pen color to (#ff0000)\n        change pen (color v) by (色)\n        x (((item ((i) + (1)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) + (-1)) ｙ (((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2)))) + (-1))\n        pen down\n        x (((item ((i) + (1)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) + (1)) ｙ (((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2)))) + (-1))\n        pen up\n        set pen size to (10)\n        change pen (brightness v) by (-25)\n        x (((item ((i) + (1)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) + (-2)) ｙ (((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2)))) + (-7.5))\n        pen down\n        x (((item ((i) + (1)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) + (2)) ｙ (((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2)))) + (-7.5))\n        pen up\n        set pen size to (8)\n        change pen (brightness v) by (-25)\n        x (((item ((i) + (1)) of [描画可能ステージ v]) + ((-1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) + (-3)) ｙ (((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2)))) + (-12.5))\n        pen down\n        x (((item ((i) + (1)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (4)) of [描画可能ステージ v]) / (2)))) + (3)) ｙ (((item ((i) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((i) + (3)) of [描画可能ステージ v]) / (2)))) + (-12.5))\n        pen up\n    end\n    change [i v] by (5)\nend\nset [i v] to [0]\nrepeat ((length of [描画可能ステージ v]) / (5))\n    if <[3] < (item ((i) + (5)) of [描画可能ステージ v])> then\n        set pen size to (100)\n        x (item ((i) + (1)) of [描画可能ステージ v]) ｙ (item ((i) + (2)) of [描画可能ステージ v])\n        set pen color to (#ff0000)\n        change pen (color v) by (色)\n        pen down\n        pen up\n        repeat (10)\n            change pen (saturation v) by (-5)\n            change pen size by (-5)\n            pen down\n            pen up\n        end\n    end\n    change [i v] by (5)\nend\n\nwhen flag clicked\nset [自機ｘ v] to [0]\nset [自機ｙ v] to [-25]\nforever\n    if <[18000] < (ステージｘ)> then\n        スクロール✖\n    else\n        動く\n    end\nend\n\ndefine 接触確認\ndelete all of [接触 v]\nset [i v] to [0]\nrepeat ((length of [描画可能ステージ v]) / (5))\n    if <<<(((item ((I) + (1)) of [描画可能ステージ v]) + ((-1) * ((item ((I) + (4)) of [描画可能ステージ v]) / (2)))) + ((-5) + ((-1) * (ステージｘ)))) < ((自機ｘ) + (18))> and <((自機ｘ) + (-18)) < (((item ((I) + (1)) of [描画可能ステージ v]) + ((1) * ((item ((I) + (4)) of [描画可能ステージ v]) / (2)))) + ((5) + ((-1) * (ステージｘ))))>> and <<(((item ((I) + (2)) of [描画可能ステージ v]) + ((-1) * ((item ((I) + (3)) of [描画可能ステージ v]) / (2)))) + ((-5) + ((-1) * (ステージｙ)))) < ((自機ｙ) + (18))> and <((自機ｙ) + (-18)) < (((item ((I) + (2)) of [描画可能ステージ v]) + ((1) * ((item ((I) + (3)) of [描画可能ステージ v]) / (2)))) + ((5) + ((-1) * (ステージｙ))))>>> then\n        add (item ((I) + (5)) of [描画可能ステージ v]) to [接触 v]\n        if <<[3] < (item ((I) + (5)) of [描画可能ステージ v])> and <(item ((item ((I) + (5)) of [描画可能ステージ v]) - (3)) of [チェック v]) = [0]>> then\n            set [チェックポイントｘ v] to (item (((2) * ((item ((I) + (5)) of [描画可能ステージ v]) - (3))) - (1)) of [チェックポイント座標 v])\n            set [チェックポイントｙ v] to (item ((2) * ((item ((I) + (5)) of [描画可能ステージ v]) - (3))) of [チェックポイント座標 v])\n            replace item ((item ((I) + (5)) of [描画可能ステージ v]) - (3)) of [チェック v] with [1]\n            set [ステージｘ v] to (チェックポイントｘ)\n            set [ステージｙ v] to (チェックポイントｙ)\n        end\n    end\n    change [i v] by (5)\nend\n\nwhen flag clicked\nforever\n    描画\nend\n\nwhen flag clicked\nhide\nset [ステージｘ v] to [-80]\nset [ステージｙ v] to [-50]\nset [xv v] to [0]\nset [yv v] to [0]\nset [向き v] to [R]\nset [色 v] to [0]\nset [チェックポイントｘ v] to [-80]\nset [チェックポイントｙ v] to [-50]\ndelete all of [グラデーション情報 v]\ndelete all of [チェック v]\nrepeat (10)\n    add [0] to [チェック v]\nend\n\ndefine 動く\nset [前ｘ v] to (ステージｘ)\nset [前ｙ v] to (ステージｙ)\nif <<<<(mouse x) < (x position)> and <mouse down?>> or <key (a v) pressed?>> or <key (left arrow v) pressed?>> then\n    change [xv v] by (-1)\n    set [向き v] to [L]\nend\nif <<<<(x position) < (mouse x)> and <mouse down?>> or <key (d v) pressed?>> or <key (right arrow v) pressed?>> then\n    change [xv v] by (1)\n    set [向き v] to [R]\nend\nset [xv v] to ((Xv) * (0.88))\nif <(ステージｘ) < [-79]> then\n    if <(自機ｘ) = [0]> then\n        set [自機ｘ v] to [-0.1]\n    end\n    if <(自機ｘ) < [0]> then\n        change [自機ｘ v] by (Xv)\n    else\n        change [ステージｘ v] by (Xv)\n        set [自機ｘ v] to [0]\n    end\nelse\n    change [ステージｘ v] by (Xv)\nend\nif <[接触 v] contains [1]?> then\n    change [ステージｙ v] by (1)\n    if <[接触 v] contains [1]?> then\n        change [ステージｙ v] by (1)\n        if <[接触 v] contains [1]?> then\n            change [ステージｙ v] by (1)\n            if <[接触 v] contains [1]?> then\n                change [ステージｙ v] by (1)\n                if <[接触 v] contains [1]?> then\n                    change [ステージｙ v] by (1)\n                    if <[接触 v] contains [1]?> then\n                        change [ステージｙ v] by (1)\n                        if <[接触 v] contains [1]?> then\n                            change [ステージｙ v] by (1)\n                            if <[接触 v] contains [1]?> then\n                                change [ステージｙ v] by (1)\n                                if <[接触 v] contains [1]?> then\n                                    change [ステージｙ v] by (1)\n                                    if <[接触 v] contains [1]?> then\n                                        change [ステージｙ v] by (1)\n                                        接触確認\n                                        if <[接触 v] contains [1]?> then\n                                            change [ステージｘ v] by ((-1) * (Xv))\n                                            change [ステージｙ v] by (-10)\n                                            if <[0] < (Xv)> then\n                                                set [xv v] to [-10]\n                                            else\n                                                set [xv v] to [10]\n                                            end\n                                            set [yv v] to [15]\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange [ステージｙ v] by (4)\nif <<<<[0] < (mouse y)> and <mouse down?>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> and <(jump) < [1]>> then\n    set [yv v] to [15]\n    change [jump v] by (1)\nend\nif <[接触 v] contains [3]?> then\n    set [yv v] to [22]\nend\nchange [ステージｙ v] by (-5)\nif <<[接触 v] contains [2]?> or <<(ステージｙ) < [-1000]> or <(自機ｙ) < [-240]>>> then\n    set [xv v] to [0]\n    set [yv v] to [0]\n    set [ステージｘ v] to (チェックポイントｘ)\n    set [ステージｙ v] to (チェックポイントｙ)\n    set [自機ｘ v] to [0]\n    delete all of [グラデーション情報 v]\nend\nif <[220] < (自機ｘ)> then\n    set [自機ｘ v] to [220]\nend\nif <(自機ｘ) < [-220]> then\n    set [自機ｘ v] to [-220]\nend\nchange [ステージｙ v] by (Yv)\nchange [yv v] by (-1)\n接触確認\nif <[接触 v] contains [1]?> then\n    change [ステージｙ v] by ((-1) * (Yv))\n    set [yv v] to [0]\n    set [jump v] to [0]\nelse\n    set [jump v] to [1]\nend\n((前ｘ) - (ステージｘ)) ((前ｙ) - (ステージｙ)) ずつ背景移動\n\ndefine x (x座標) ｙ (ｙ座標)\ngo to x: ((x座標) + ((-1) * (ステージｘ))) y: ((ｙ座標) + ((-1) * (ステージｙ)))\n\ndefine 描画可能ステージ\ndelete all of [描画可能ステージ v]\nset [ii v] to [0]\nrepeat ((length of [ステージ情報 v]) / (5))\n    set [可能描画箇所 v] to [0]\n    if <<[-360] < (((-1) * (ステージｘ)) + ((item ((ii) + (1)) of [ステージ情報 v]) + ((-1) * ((item ((ii) + (4)) of [ステージ情報 v]) / (2)))))> and <(((-1) * (ステージｘ)) + ((item ((ii) + (1)) of [ステージ情報 v]) + ((-1) * ((item ((ii) + (4)) of [ステージ情報 v]) / (2))))) < [360]>> then\n        if <<[-270] < (((-1) * (ステージｙ)) + ((item ((ii) + (2)) of [ステージ情報 v]) + ((1) * ((item ((ii) + (3)) of [ステージ情報 v]) / (2)))))> and <(((-1) * (ステージｙ)) + ((item ((ii) + (2)) of [ステージ情報 v]) + ((1) * ((item ((ii) + (3)) of [ステージ情報 v]) / (2))))) < [270]>> then\n            change [可能描画箇所 v] by (1000)\n        end\n    end\n    if <<[-360] < (((-1) * (ステージｘ)) + ((item ((ii) + (1)) of [ステージ情報 v]) + ((1) * ((item ((ii) + (4)) of [ステージ情報 v]) / (2)))))> and <(((-1) * (ステージｘ)) + ((item ((ii) + (1)) of [ステージ情報 v]) + ((1) * ((item ((ii) + (4)) of [ステージ情報 v]) / (2))))) < [360]>> then\n        if <<[-270] < (((-1) * (ステージｙ)) + ((item ((ii) + (2)) of [ステージ情報 v]) + ((1) * ((item ((ii) + (3)) of [ステージ情報 v]) / (2)))))> and <(((-1) * (ステージｙ)) + ((item ((ii) + (2)) of [ステージ情報 v]) + ((1) * ((item ((ii) + (3)) of [ステージ情報 v]) / (2))))) < [270]>> then\n            change [可能描画箇所 v] by (100)\n        end\n    end\n    if <<[-360] < (((-1) * (ステージｘ)) + ((item ((ii) + (1)) of [ステージ情報 v]) + ((1) * ((item ((ii) + (4)) of [ステージ情報 v]) / (2)))))> and <(((-1) * (ステージｘ)) + ((item ((ii) + (1)) of [ステージ情報 v]) + ((1) * ((item ((ii) + (4)) of [ステージ情報 v]) / (2))))) < [360]>> then\n        if <<[-270] < (((-1) * (ステージｙ)) + ((item ((ii) + (2)) of [ステージ情報 v]) + ((-1) * ((item ((ii) + (3)) of [ステージ情報 v]) / (2)))))> and <(((-1) * (ステージｙ)) + ((item ((ii) + (2)) of [ステージ情報 v]) + ((-1) * ((item ((ii) + (3)) of [ステージ情報 v]) / (2))))) < [270]>> then\n            change [可能描画箇所 v] by (10)\n        end\n    end\n    if <<[-360] < (((-1) * (ステージｘ)) + ((item ((ii) + (1)) of [ステージ情報 v]) + ((-1) * ((item ((ii) + (4)) of [ステージ情報 v]) / (2)))))> and <(((-1) * (ステージｘ)) + ((item ((ii) + (1)) of [ステージ情報 v]) + ((-1) * ((item ((ii) + (4)) of [ステージ情報 v]) / (2))))) < [360]>> then\n        if <<[-270] < (((-1) * (ステージｙ)) + ((item ((ii) + (2)) of [ステージ情報 v]) + ((-1) * ((item ((ii) + (3)) of [ステージ情報 v]) / (2)))))> and <(((-1) * (ステージｙ)) + ((item ((ii) + (2)) of [ステージ情報 v]) + ((-1) * ((item ((ii) + (3)) of [ステージ情報 v]) / (2))))) < [270]>> then\n            change [可能描画箇所 v] by (1)\n        end\n    end\n    if <not <(可能描画箇所) = [0]>> then\n        add (item ((ii) + (1)) of [ステージ情報 v]) to [描画可能ステージ v]\n        add (item ((ii) + (2)) of [ステージ情報 v]) to [描画可能ステージ v]\n        add (item ((ii) + (3)) of [ステージ情報 v]) to [描画可能ステージ v]\n        add (item ((ii) + (4)) of [ステージ情報 v]) to [描画可能ステージ v]\n        add (item ((ii) + (5)) of [ステージ情報 v]) to [描画可能ステージ v]\n    end\n    change [ii v] by (5)\nend\n\ndefine You won\nset pen size to ((1) / (0))\nset pen color to (#000000)\npen down\npen up\nset pen color to (#ff0000)\nchange pen (color v) by (色)\nset pen size to (10)\ngo to x: (-220) y: (30)\npen down\ngo to x: (-200) y: (0)\ngo to x: (-180) y: (30)\npen up\ngo to x: (-200) y: (0)\npen down\ngo to x: (-200) y: (-30)\npen up\nwait (0) seconds\nset [θ v] to [0]\nrepeat (360)\n    go to x: ((-130) + ((30) * ([cos v] of (θ) ))) y: ((0) + ((30) * ([sin v] of (θ) )))\n    pen down\n    change [θ v] by (1)\nend\npen up\nwait (0) seconds\nset [θ v] to [0]\nrepeat (180)\n    go to x: ((-50) + ((30) * ([cos v] of (θ) ))) y: ((0) + ((30) * ([sin v] of (θ) )))\n    pen down\n    change [θ v] by (-1)\nend\npen up\ngo to x: (-80) y: (0)\npen down\ngo to x: (-80) y: (30)\npen up\ngo to x: (-20) y: (0)\npen down\ngo to x: (-20) y: (30)\npen up\nwait (0) seconds\ngo to x: (10) y: (30)\npen down\ngo to x: (25) y: (-30)\ngo to x: (40) y: (30)\ngo to x: (55) y: (-30)\ngo to x: (70) y: (30)\npen up\nwait (0) seconds\nset [θ v] to [0]\nrepeat (360)\n    go to x: ((120) + ((30) * ([cos v] of (θ) ))) y: ((0) + ((30) * ([sin v] of (θ) )))\n    pen down\n    change [θ v] by (1)\nend\npen up\nwait (0) seconds\ngo to x: (170) y: (-30)\npen down\ngo to x: (170) y: (30)\ngo to x: (210) y: (-30)\ngo to x: (210) y: (30)\npen up\n\ndefine (x) (y) ずつ背景移動\nset [iii v] to [0]\nrepeat ((length of [グラデーション情報 v]) / (11))\n    if <(item ((iii) + (11)) of [グラデーション情報 v]) = [1]> then\n        replace item ((iii) + (9)) of [グラデーション情報 v] with ((item ((iii) + (9)) of [グラデーション情報 v]) + (x))\n        replace item ((iii) + (10)) of [グラデーション情報 v] with ((item ((iii) + (10)) of [グラデーション情報 v]) + (y))\n    end\n    change [iii v] by (11)\nend\n\nwhen flag clicked\nforever\n    接触確認\nend\n\nwhen flag clicked\nforever\n    描画可能ステージ\nend\n\ndefine 自機描画　明るさ (明るさ) 鮮やかさ (鮮やかさ) 色 (色)\nswitch costume to (コスチューム1 v)\nset pen color to (#ff0000)\nchange pen (brightness v) by ((-1) * ((100) - (明るさ)))\nchange pen (saturation v) by ((-1) * ((100) - (鮮やかさ)))\nchange pen (color v) by (色)\nset pen size to (20)\ngo to x: ((自機ｘ) + (-8)) y: ((自機ｙ) + (8))\npen down\ngo to x: ((自機ｘ) + (8)) y: ((自機ｙ) + (8))\ngo to x: ((自機ｘ) + (8)) y: ((自機ｙ) + (-8))\ngo to x: ((自機ｘ) + (-8)) y: ((自機ｙ) + (-8))\ngo to x: ((自機ｘ) + (-8)) y: ((自機ｙ) + (8))\npen up\nset pen color to (#000000)\nset pen size to (5)\nif <(向き) = [L]> then\n    go to x: ((自機ｘ) + (-10)) y: ((自機ｙ) + (7))\n    pen down\n    go to x: ((自機ｘ) + (-10)) y: ((自機ｙ) + (-2))\n    pen up\nelse\n    go to x: ((自機ｘ) + (10)) y: ((自機ｙ) + (7))\n    pen down\n    go to x: ((自機ｘ) + (10)) y: ((自機ｙ) + (-2))\n    pen up\nend\nif <(向き) = [L]> then\n    go to x: ((自機ｘ) + (-1)) y: ((自機ｙ) + (7))\n    pen down\n    go to x: ((自機ｘ) + (-1)) y: ((自機ｙ) + (-2))\n    pen up\nelse\n    go to x: ((自機ｘ) + (1)) y: ((自機ｙ) + (7))\n    pen down\n    go to x: ((自機ｘ) + (1)) y: ((自機ｙ) + (-2))\n    pen up\nend\nset pen color to (#ffffff)\nif <(向き) = [L]> then\n    go to x: ((自機ｘ) + (-1)) y: ((自機ｙ) + (5))\n    pen down\n    pen up\n    go to x: ((自機ｘ) + (-10)) y: ((自機ｙ) + (5))\n    pen down\n    pen up\nelse\n    go to x: ((自機ｘ) + (1)) y: ((自機ｙ) + (5))\n    pen down\n    pen up\n    go to x: ((自機ｘ) + (10)) y: ((自機ｙ) + (5))\n    pen down\n    pen up\nend\nset pen (saturation v) to (100)\nset pen (brightness v) to (100)\n\ndefine グラデーション描画\nswitch costume to (コスチューム1 v)\nset [i v] to [0]\nrepeat ((length of [グラデーション情報 v]) / (11))\n    set pen color to (#ff0000)\n    set pen size to (item ((i) + (1)) of [グラデーション情報 v])\n    change pen (color v) by (item ((i) + (3)) of [グラデーション情報 v])\n    set pen (transparency v) to ((100) - (item ((i) + (7)) of [グラデーション情報 v]))\n    set pen (brightness v) to (item ((i) + (8)) of [グラデーション情報 v])\n    go to x: ((item ((i) + (9)) of [グラデーション情報 v]) + ((item ((i) + (5)) of [グラデーション情報 v]) * ([cos v] of (item ((i) + (2)) of [グラデーション情報 v]) ))) y: ((item ((i) + (10)) of [グラデーション情報 v]) + ((item ((i) + (5)) of [グラデーション情報 v]) * ([sin v] of (item ((i) + (2)) of [グラデーション情報 v]) )))\n    pen down\n    pen up\n    set pen size to ((item ((i) + (1)) of [グラデーション情報 v]) * ((3) / (4)))\n    pen down\n    pen up\n    set pen size to ((item ((i) + (1)) of [グラデーション情報 v]) * ((1) / (2)))\n    pen down\n    pen up\n    set pen size to ((item ((i) + (1)) of [グラデーション情報 v]) * ((1) / (4)))\n    pen down\n    pen up\n    replace item ((i) + (5)) of [グラデーション情報 v] with ((item ((i) + (5)) of [グラデーション情報 v]) + (item ((i) + (4)) of [グラデーション情報 v]))\n    if <((item ((i) + (5)) of [グラデーション情報 v]) / (item ((i) + (4)) of [グラデーション情報 v])) < (item ((i) + (6)) of [グラデーション情報 v])> then\n        change [i v] by (11)\n    else\n        replace item ((i) + (7)) of [グラデーション情報 v] with ((item ((i) + (7)) of [グラデーション情報 v]) + (-2.5))\n        if <(item ((i) + (7)) of [グラデーション情報 v]) < [1]> then\n            repeat (11)\n                delete ((i) + (1)) of [グラデーション情報 v]\n            end\n        else\n            change [i v] by (11)\n        end\n    end\nend\nset pen (brightness v) to (100)\nset pen (transparency v) to (0)\n\ndefine グラデーション　大きさ (大きさ) 角度 (角度) 色 (色) 速さ (速さ) 描画回数 (回数) 明るさ (明るさ) 初期透明 (透明度) xy (x) (y) 移動 (するか)\nadd (大きさ) to [グラデーション情報 v]\nadd (角度) to [グラデーション情報 v]\nadd (色) to [グラデーション情報 v]\nadd (速さ) to [グラデーション情報 v]\nadd [0] to [グラデーション情報 v]\nadd (回数) to [グラデーション情報 v]\nadd (透明度) to [グラデーション情報 v]\nadd (明るさ) to [グラデーション情報 v]\nadd (x) to [グラデーション情報 v]\nadd (y) to [グラデーション情報 v]\nadd (するか) to [グラデーション情報 v]\n\nwhen flag clicked\nforever\n    if <[18000] < (ステージｘ)> then\n        グラデーション　大きさ (pick random (10.1) to (16.9)) 角度 (pick random (1) to (360)) 色 (pick random ((色) + (-3.1)) to ((色) + (3.1))) 速さ (pick random (2.1) to (3.1)) 描画回数 (pick random (18) to (25)) 明るさ [100] 初期透明 [50] xy (pick random ((自機ｘ) + (-44.9)) to ((自機ｘ) + (44.9))) (pick random ((自機ｙ) + (-44.9)) to ((自機ｙ) + (44.9))) 移動 [0]\n    else\n        グラデーション　大きさ (pick random (10.1) to (16.9)) 角度 (pick random (1) to (360)) 色 (pick random ((色) + (-3.1)) to ((色) + (3.1))) 速さ (pick random (2.1) to (3.1)) 描画回数 (pick random (18) to (25)) 明るさ [100] 初期透明 [50] xy (pick random ((自機ｘ) + (-44.9)) to ((自機ｘ) + (44.9))) (pick random ((自機ｙ) + (-44.9)) to ((自機ｙ) + (44.9))) 移動 [1]\n    end\nend\n\ndefine 描画\nif <[18000] < (ステージｘ)> then\n    You won\nelse\n    背景描画\nend\nグラデーション描画\nステージ描画\n自機描画　明るさ [100] 鮮やかさ [75] 色 (色)\n\nwhen flag clicked\nforever\n    change [色 v] by (0.1)\nend\n\ndefine ステージ\ndelete all of [ステージ情報 v]\ndelete all of [チェックポイント座標 v]\nステージ　ｘ [-210] ｙ [-430] 縦の長さ [380] 横長さ [360] 種類 [1]\nステージ　ｘ [200] ｙ [-260] 縦の長さ [40] 横長さ [150] 種類 [1]\nステージ　ｘ [335] ｙ [-270] 縦の長さ [20] 横長さ [100] 種類 [2]\nステージ　ｘ [475] ｙ [-260] 縦の長さ [40] 横長さ [160] 種類 [1]\nステージ　ｘ [575] ｙ [-155] 縦の長さ [250] 横長さ [40] 種類 [1]\nステージ　ｘ [730] ｙ [-50] 縦の長さ [40] 横長さ [350] 種類 [1]\nステージ　ｘ [880] ｙ [-10] 縦の長さ [20] 横長さ [50] 種類 [3]\nステージ　ｘ [1150] ｙ [180] 縦の長さ [40] 横長さ [350] 種類 [1]\nステージ　ｘ [1350] ｙ [210] 縦の長さ [100] 横長さ [30] 種類 [2]\nステージ　ｘ [1450] ｙ [180] 縦の長さ [40] 横長さ [150] 種類 [1]\nステージ　ｘ [1650] ｙ [470] 縦の長さ [400] 横長さ [50] 種類 [1]\nステージ　ｘ [1900] ｙ [650] 縦の長さ [40] 横長さ [150] 種類 [1]\nステージ　ｘ [1900] ｙ [730] 縦の長さ [100] 横長さ [40] 種類 [4]\nステージ　ｘ [2950] ｙ [580] 縦の長さ [40] 横長さ [200] 種類 [1]\nステージ　ｘ [3085] ｙ [575] 縦の長さ [30] 横長さ [50] 種類 [3]\nステージ　ｘ [3480] ｙ [580] 縦の長さ [40] 横長さ [200] 種類 [1]\nステージ　ｘ [3615] ｙ [575] 縦の長さ [30] 横長さ [50] 種類 [3]\nステージ　ｘ [3800] ｙ [950] 縦の長さ [400] 横長さ [50] 種類 [1]\nステージ　ｘ [3550] ｙ [1000] 縦の長さ [50] 横長さ [200] 種類 [1]\nステージ　ｘ [3420] ｙ [1030] 縦の長さ [110] 横長さ [40] 種類 [2]\nステージ　ｘ [3290] ｙ [1000] 縦の長さ [50] 横長さ [200] 種類 [1]\nステージ　ｘ [3040] ｙ [1300] 縦の長さ [400] 横長さ [50] 種類 [1]\nステージ　ｘ [3375] ｙ [1400] 縦の長さ [50] 横長さ [300] 種類 [1]\nステージ　ｘ [3620] ｙ [1550] 縦の長さ [50] 横長さ [50] 種類 [5]\nステージ　ｘ [4620] ｙ [1420] 縦の長さ [50] 横長さ [200] 種類 [1]\nステージ　ｘ [5000] ｙ [1420] 縦の長さ [50] 横長さ [200] 種類 [1]\nステージ　ｘ [5250] ｙ [1600] 縦の長さ [400] 横長さ [50] 種類 [2]\nステージ　ｘ [5180] ｙ [800] 縦の長さ [50] 横長さ [200] 種類 [1]\nステージ　ｘ [5500] ｙ [800] 縦の長さ [50] 横長さ [100] 種類 [3]\nステージ　ｘ [5800] ｙ [800] 縦の長さ [50] 横長さ [100] 種類 [3]\nステージ　ｘ [6150] ｙ [800] 縦の長さ [50] 横長さ [200] 種類 [1]\nステージ　ｘ [6300] ｙ [790] 縦の長さ [30] 横長さ [80] 種類 [2]\nステージ　ｘ [6400] ｙ [800] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [6500] ｙ [790] 縦の長さ [30] 横長さ [80] 種類 [2]\nステージ　ｘ [6600] ｙ [800] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [6700] ｙ [790] 縦の長さ [30] 横長さ [80] 種類 [2]\nステージ　ｘ [6800] ｙ [800] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [7000] ｙ [900] 縦の長さ [50] 横長さ [100] 種類 [6]\nステージ　ｘ [8000] ｙ [800] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [8200] ｙ [700] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [8500] ｙ [600] 縦の長さ [50] 横長さ [300] 種類 [1]\nステージ　ｘ [8735] ｙ [590] 縦の長さ [30] 横長さ [150] 種類 [2]\nステージ　ｘ [8870] ｙ [600] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [9005] ｙ [590] 縦の長さ [30] 横長さ [150] 種類 [2]\nステージ　ｘ [9140] ｙ [600] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [9350] ｙ [500] 縦の長さ [50] 横長さ [100] 種類 [3]\nステージ　ｘ [9430] ｙ [575] 縦の長さ [200] 横長さ [40] 種類 [2]\nステージ　ｘ [9580] ｙ [250] 縦の長さ [50] 横長さ [200] 種類 [1]\nステージ　ｘ [9300] ｙ [150] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [9480] ｙ [50] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [9650] ｙ [-50] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [9820] ｙ [-100] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [9980] ｙ [0] 縦の長さ [50] 横長さ [100] 種類 [1]\nステージ　ｘ [10150] ｙ [120] 縦の長さ [50] 横長さ [50] 種類 [7]\nステージ　ｘ [20000] ｙ [-180] 縦の長さ [100] 横長さ [480] 種類 [1]\n\nwhen flag clicked\nforever\n    play sound [game_maoudamashii_4_field08 v] until done\nend\n\ndefine スクロール✖\nif <<<<(mouse x) < (x position)> and <mouse down?>> or <key (a v) pressed?>> or <key (left arrow v) pressed?>> then\n    change [xv v] by (-1)\n    set [向き v] to [L]\nend\nif <<<<(x position) < (mouse x)> and <mouse down?>> or <key (d v) pressed?>> or <key (right arrow v) pressed?>> then\n    change [xv v] by (1)\n    set [向き v] to [R]\nend\nset [xv v] to ((Xv) * (0.88))\nchange [自機ｘ v] by (Xv)\nif <[接触 v] contains [1]?> then\n    change [自機ｙ v] by (1)\n    if <[接触 v] contains [1]?> then\n        change [自機ｙ v] by (1)\n        if <[接触 v] contains [1]?> then\n            change [自機ｙ v] by (1)\n            if <[接触 v] contains [1]?> then\n                change [自機ｙ v] by (1)\n                if <[接触 v] contains [1]?> then\n                    change [自機ｙ v] by (1)\n                    if <[接触 v] contains [1]?> then\n                        change [自機ｙ v] by (1)\n                        if <[接触 v] contains [1]?> then\n                            change [自機ｙ v] by (1)\n                            if <[接触 v] contains [1]?> then\n                                change [自機ｙ v] by (1)\n                                if <[接触 v] contains [1]?> then\n                                    change [自機ｙ v] by (1)\n                                    if <[接触 v] contains [1]?> then\n                                        change [自機ｙ v] by (1)\n                                        接触確認\n                                        if <[接触 v] contains [1]?> then\n                                            change [自機ｘ v] by ((-1) * (Xv))\n                                            change [自機ｙ v] by (-10)\n                                            if <[0] < (Xv)> then\n                                                set [xv v] to [-10]\n                                            else\n                                                set [xv v] to [10]\n                                            end\n                                            set [yv v] to [15]\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange [自機ｙ v] by (4)\nif <<<<[0] < (mouse y)> and <mouse down?>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> and <(jump) < [1]>> then\n    set [yv v] to [15]\n    change [jump v] by (1)\nend\nif <[接触 v] contains [3]?> then\n    set [yv v] to [22]\nend\nchange [自機ｙ v] by (-5)\nif <[220] < (自機ｘ)> then\n    set [自機ｘ v] to [220]\nend\nif <(自機ｘ) < [-220]> then\n    set [自機ｘ v] to [-220]\nend\nchange [自機ｙ v] by (Yv)\nchange [yv v] by (-1)\n接触確認\nif <[接触 v] contains [1]?> then\n    change [自機ｙ v] by ((-1) * (Yv))\n    set [yv v] to [0]\n    set [jump v] to [0]\nelse\n    set [jump v] to [1]\nend\n\ndefine 瞬間移動 　何番目のチェックポイント (何番目)\nset [チェックポイントｘ v] to (item (((2) * (何番目)) - (1)) of [チェックポイント座標 v])\nset [チェックポイントｙ v] to (item ((2) * (何番目)) of [チェックポイント座標 v])\nwait (0.01) seconds\nset [ステージｘ v] to (チェックポイントｘ)\nset [ステージｙ v] to (チェックポイントｙ)\n\n@サムネイル\n\nwhen flag clicked\nhide\n\ngo to x: (0) y: (-40)\nset size to (200) %\nshow\n\n