MINECRAFTっぽい！？PLATFORMER！！

Instructions: スクラッチっぽい！？プラットフォマー2！\nhttps://scratch.mit.edu/projects/733636874/\n\nEnglish more down↓\n<日本語>\n世代遅れかな？みんな作ってるのに今更出す人←\nはい、マインクラフトっぽいプラットフォーマーです。\n結構簡単めになっていますので、気軽にやってください\nたまに、数字の標識がおかしくなるので、そのときは再度、旗を押してください。ゴール見つけられた人はすごいです！！\n補足　ゴールは一つしかないです。\nやり方\nWASD操作、矢印操作どっちか以上！\n\n<English>\nYes, it's a platformer like Minecraft.\nIt's very easy, so feel free to try it\nOccasionally, the number recognition may become strange, so please press the flag again in that case.\n\nmanners\nEither WASD or arrow operation!

@Stage\n\nwhen flag clicked\nset volume to (100) %\nswitch backdrop to (blue sky 2  v)\nforever\n    play sound [SUMMER_TRIANGLE_2 \(1\) v] until done\nend\n\n@プレイヤー\n\nwhen flag clicked\nswitch costume to (コスチューム1 \(45\) v)\nset size to (50) %\ngo to [back v] layer\ngo [forward v] (1) layers\npoint in direction (1)\nset [hfeg v] to [0]\nset [y v] to [0]\nset [x v] to [0]\nset [視点y v] to [0]\nset [視点x v] to [0]\nset [復活x v] to [0]\nset [復活y v] to [0]\ngo to x: (-7) y: (-25)\nset rotation style [left-right v]\nset volume to (100) %\nforever\n    動き\nend\n\ndefine 動き\nif <(動き) = [0]> then\n    if <touching (コスチューム1 \(2\)2 v)?> then\n        set [hfeg v] to [50]\n    end\n    if <<<(mouse x) > [0]> and <mouse down?>> or <<key (d v) pressed?> or <key (right arrow v) pressed?>>> then\n        point in direction (1)\n        change [x v] by (1)\n    end\n    if <<<[0] > (mouse x)> and <mouse down?>> or <<key (a v) pressed?> or <key (left arrow v) pressed?>>> then\n        point in direction (-1)\n        change [x v] by (-1)\n    end\n    set [加速速度 v] to [0.9]\n    set [x v] to ((x) * (加速速度))\n    change x by (x)\n    repeat (15)\n        if <<touching (地面 v)?> or <touching (スプライト4 v)?>> then\n            change y by (1)\n        end\n    end\nend\nif <<touching (地面 v)?> or <touching (スプライト4 v)?>> then\n    壁\nend\nset [重力 v] to [-1]\nchange [y v] by (重力)\nchange y by (y)\nif <<touching (地面 v)?> or <touching (スプライト4 v)?>> then\n    床\nend\nchange y by (重力)\nif <<touching (地面 v)?> or <touching (スプライト4 v)?>> then\n    if <<<mouse down?> and <[0] < (mouse y)>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> then\n        start sound [Jump v]\n        set [y v] to [15]\n    end\nend\nchange y by (() - (重力))\nif <<touching (障害物 v)?> or <(視点y) < [-300]>> then\n    start sound [ちゃんちゃん♪2 v]\n    broadcast (もう一回 v)\nend\nif <<touching (コスチューム1 \(6\) v)?> or <touching (コスチューム1 \(4\) v)?>> then\n    start sound [ちゃんちゃん♪2 v]\n    broadcast (もう一回 v)\nend\nif <touching (コスチューム1 \(7\) v)?> then\n    if <<<mouse down?> and <[0] < (mouse y)>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> then\n        broadcast (4 v)\n        set [y v] to [0]\n        set [y v] to [19]\n    end\nend\nif <touching (コスチューム1 \(2\) v)?> then\n    switch costume to (コスチューム1 \(1\) v)\n    broadcast (1 v)\nend\n\nset [y v] to [20]\n\ndefine 床\nrepeat until <not <<touching (スプライト4 v)?> or <touching (地面 v)?>>>\n    change y by ((((0) - (y)) / ([abs v] of (y) )) * ([abs v] of (重力) ))\nend\nset [y v] to [0]\n\ndefine 壁\nchange y by (-15)\nrepeat until <not <<touching (地面 v)?> or <touching (スプライト4 v)?>>>\n    change x by (([floor v] of (((0) - (x)) / ([abs v] of (x) )) ) * ([abs v] of (加速速度) ))\nend\nif <<<mouse down?> and <[0] < (mouse y)>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> then\n    start sound [Jump v]\n    set [y v] to [15]\n    set [x v] to ((((0) - (x)) / ([abs v] of (x) )) * (7))\nelse\n    set [x v] to [0]\nend\n\nwhen flag clicked\nforever\n    if <[0] < (x)> then\n        change [視点x v] by ([ceiling v] of ((x position) / (10)) )\n    else\n        change [視点x v] by ([floor v] of ((x position) / (10)) )\n    end\n    change [視点y v] by ([floor v] of ((y position) / (5)) )\n    set [視点y v] to ((視点y) + (5))\n    if <[0] < (x)> then\n        change x by ([floor v] of (((0) - (x position)) / (10)) )\n    else\n        change x by ([ceiling v] of (((0) - (x position)) / (10)) )\n    end\n    change y by ([ceiling v] of (((0) - (y position)) / (5)) )\n    set y to ((y position) - (5))\nend\n\nwhen I receive [もう一回 v]\npoint in direction (1)\nset [y v] to [0]\nset [x v] to [0]\nset [視点y v] to (復活y)\nset [視点x v] to (復活x)\ngo to x: (-7) y: (-25)\nset rotation style [left-right v]\nstop [this script v]\n\nswitch costume to (コスチューム1 \(45\) v)\n\nwhen flag clicked\nforever\n    if <touching (コスチューム2 \(2\) v)?> then\n        start sound [Car Vroom v]\n        if <<<(mouse x) > [0]> and <mouse down?>> or <<key (d v) pressed?> or <key (right arrow v) pressed?>>> then\n            point in direction (1)\n            change [x v] by (2)\n        end\n        if <<<[0] > (mouse x)> and <mouse down?>> or <<key (a v) pressed?> or <key (left arrow v) pressed?>>> then\n            point in direction (-1)\n            change [x v] by (-2)\n        end\n    end\nend\n\nwhen flag clicked\n\nchange [y v] by (1)\n\n\n\nswitch costume to (cat-a \(1\) v)\n\nbroadcast (3 v)\n\nset [↓ v] to [0]\n\nwhen I receive [4 v]\nrepeat (1)\n    start sound [Coin v]\nend\n\nwhen I receive [なんでやねん v]\nswitch costume to (a1 v)\n\n@地面\n\ndefine 動き (x) (y) (コスチューム)\nswitch costume to (消去しないで下さい。 v)\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nswitch costume to (コスチューム)\nif <<([abs v] of ((y) - (視点y)) ) > ([abs v] of (y position) )> or <([abs v] of ((x) - (視点x)) ) > ([abs v] of (x position) )>> then\n    hide\nelse\n    show\nend\n\nwhen flag clicked\ndelete all of [地面x v]\ndelete all of [地面y v]\ndelete all of [コスチューム v]\nswitch costume to (コスチューム1 v)\n配置 [0] [0] [1]\n配置 [500] [0] [2]\n配置 [1000] [100] [3]\n配置 [1500] [100] [4]\n配置 [2000] [200] [5]\n配置 [2500] [300] [6]\n配置 [3000] [400] [7]\n配置 [3500] [500] [8]\n配置 [4000] [600] [9]\n配置 [4500] [700] [10]\n配置 [5000] [800] [11]\n配置 [6000] [900] [12]\n配置 [7000] [1000] [13]\n配置 [8000] [1100] [14]\n配置 [9000] [1200] [15]\n配置 [8000] [1300] [16]\n配置 [8000] [1000] [17]\n配置 [9000] [1300] [18]\nhide\n\nhide\n\nwhen I start as a clone\n動き (item (a) of [地面x v]) (item (a) of [地面y v]) (item (a) of [コスチューム v])\nbroadcast (a v)\n\ndefine 配置 (x) (y) (コスチューム)\nswitch costume to ((コスチューム) + (1))\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nadd (x) to [地面x v]\nadd (y) to [地面y v]\nadd ((コスチューム) + (1)) to [コスチューム v]\n\ndefine ブロック名\nset [a v] to [0]\nrepeat (length of [コスチューム v])\n    change [a v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen flag clicked\nforever\n    ブロック名\nend\n\nwhen I receive [a v]\nwait (0) seconds\ndelete this clone\n\ncreate clone of (_myself_ v)\n\n配置 [7000] [] []\n\n@コスチューム1 (2)\n\ndefine ブロック名\nset [a v] to [0]\nrepeat (length of [コスチューム v])\n    change [a v] by (1)\n    create clone of (_myself_ v)\nend\n\ndefine 動き (x) (y) (コスチューム)\nswitch costume to (消去しないで下さい。 v)\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nswitch costume to (コスチューム)\nif <<([abs v] of ((y) - (視点y)) ) > ([abs v] of (y position) )> or <([abs v] of ((x) - (視点x)) ) > ([abs v] of (x position) )>> then\n    hide\nelse\n    show\nend\n\nwhen I start as a clone\n動き (item (a) of [地面x v]) (item (a) of [地面y v]) (item (a) of [コスチューム v])\nbroadcast (a v)\n\nwhen flag clicked\ndelete all of [地面x v]\ndelete all of [地面y v]\ndelete all of [コスチューム v]\nswitch costume to (コスチューム1 v)\n配置 [0] [0] [2]\nhide\n\ndefine 配置 (x) (y) (コスチューム)\nswitch costume to ((コスチューム) + (1))\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nadd (x) to [地面x v]\nadd (y) to [地面y v]\nadd ((コスチューム) + (1)) to [コスチューム v]\n\nwhen I receive [a v]\nwait (0) seconds\ndelete this clone\n\nwhen flag clicked\nforever\n    ブロック名\nend\n\nwhen flag clicked\n\nforever\n    if <touching (プレイヤー v)?> then\nend\n\nhide\n\nwhen I receive [1 v]\n\n@チェックポイント\n\ndefine 動き (x) (y) (コスチューム)\nswitch costume to (消去しないで下さい。 v)\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nif <<([abs v] of ((y) - (視点y)) ) > ([abs v] of (y position) )> or <([abs v] of ((x) - (視点x)) ) > ([abs v] of (x position) )>> then\n    hide\nelse\n    show\nend\nif <(item (a) of [到達 v]) = [1]> then\n    switch costume to (コスチューム)\nelse\n    switch costume to ((コスチューム) + (-1))\nend\n\nwhen flag clicked\ngo to [back v] layer\ndelete all of [チェックポイントx v]\ndelete all of [チェックポイントy v]\ndelete all of [コスチューム v]\ndelete all of [到達 v]\nswitch costume to (コスチューム1 v)\n配置 [5700] [800] [1]\nhide\n\nwhen I start as a clone\nforever\n    動き (item (a) of [チェックポイントx v]) (item (a) of [チェックポイントy v]) (item (a) of [コスチューム v])\nend\n\ndefine 配置 (x) (y) (コスチューム)\nswitch costume to (コスチューム)\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nrepeat (2)\n    add (x) to [チェックポイントx v]\n    add (y) to [チェックポイントy v]\n    add [0] to [到達 v]\nend\nadd ((コスチューム) + (1)) to [コスチューム v]\nadd ((コスチューム) + (2)) to [コスチューム v]\n\nwhen I start as a clone\nforever\n    if <touching (プレイヤー v)?> then\n        if <(item (a) of [到達 v]) = [0]> then\n            start sound [Collect v]\n            set [復活x v] to (item (a) of [チェックポイントx v])\n            set [復活y v] to (item (a) of [チェックポイントy v])\n            replace item (a) of [到達 v] with [1]\n        end\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nforever\n    ブロック名\nend\n\nwhen I receive [a v]\nwait (0) seconds\ndelete this clone\n\ndefine ブロック名\nset [a v] to [0]\nrepeat ((length of [コスチューム v]) / (2))\n    change [a v] by (2)\n    create clone of (_myself_ v)\nend\n\n@スプライト1\n\nwhen I receive [a v]\nwait (0) seconds\ndelete this clone\n\nwhen flag clicked\n\ndelete all of [地面x v]\ndelete all of [地面y v]\ndelete all of [コスチューム v]\nswitch costume to (コスチューム1 v)\n配置 [4600] [1000] [1]\nhide\n\ndefine ブロック名\nset [a v] to [0]\nrepeat (length of [コスチューム v])\n    change [a v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\n動き (item (a) of [地面x v]) (item (a) of [地面y v]) (item (a) of [コスチューム v])\nbroadcast (a v)\n\ndefine 配置 (x) (y) (コスチューム)\nswitch costume to ((コスチューム) + (1))\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nadd (x) to [地面x v]\nadd (y) to [地面y v]\nadd ((コスチューム) + (1)) to [コスチューム v]\n\nwhen flag clicked\n\nforever\n    ブロック名\nend\n\ndefine 動き (x) (y) (コスチューム)\nswitch costume to (消去しないで下さい。 v)\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nswitch costume to (コスチューム)\nif <<([abs v] of ((y) - (視点y)) ) > ([abs v] of (y position) )> or <([abs v] of ((x) - (視点x)) ) > ([abs v] of (x position) )>> then\n    hide\nelse\n    show\nend\n\n@スプライト3\n\nwhen flag clicked\nforever\n    go to x: (0) y: (0)\n    go to [front v] layer\n    set [ghost v] effect to (100)\n    show\nend\n\n@数字表示システム2\n\nforever\n\nwhen flag clicked\nset [ナンバー v] to [0]\nset [クローン数 v] to [5]\nセット\nforever\n    wait until <(クローン数) < (length of (↓))>\n    change [ナンバー v] by (1)\n    change [クローン数 v] by (1)\n    create clone of (_myself_ v)\n    change x by (-10)\nend\n\nwhen I start as a clone\nset [ナンバー保存用 v] to (ナンバー)\nshow\nforever\n    if <(ナンバー保存用) > (length of (↓))> then\n        hide\n    else\n        show\n        switch costume to (letter ((length of (↓)) - ((ナンバー保存用) - (1))) of (↓))\n    end\nend\n\ndefine セット\nset size to (100) %\nset [ナンバー v] to [0]\ngo to x: (125) y: (150)\nrepeat (5)\n    change [ナンバー v] by (1)\n    create clone of (_myself_ v)\n    change x by (-30)\nend\n\nwhen flag clicked\nhide\nset [↓ v] to [0]\nforever\n    if <(xx) = [99]> then\n        change [↓ v] by (1)\n    end\nend\n\nwait (1) seconds\n\n@数字表示システム3\n\nwhen I receive [3 v]\n\nforever\nend\n\nset [hfeg v] to [50]\n\nforever\n\nwhen flag clicked\nset [yy v] to [0]\nset [wxy v] to [5]\nセット\nforever\n    wait until <(wxy) < (length of (xx))>\n    change [yy v] by (1)\n    change [クローン数 v] by (1)\n    create clone of (_myself_ v)\n    change x by (-10)\nend\n\nwhen I start as a clone\nset [ナンバー保存用 v] to (yy)\nshow\nforever\n    if <(ナンバー保存用) > (length of (xx))> then\n        hide\n    else\n        show\n        switch costume to (letter ((length of (xx)) - ((ナンバー保存用) - (1))) of (xx))\n    end\nend\n\ndefine セット\nset size to (100) %\nset [yy v] to [0]\ngo to x: (200) y: (150)\nrepeat (5)\n    change [yy v] by (1)\n    create clone of (_myself_ v)\n    change x by (-30)\nend\nforever\n    if <(xx) = [99]> then\n        set [xx v] to [0]\n    end\nend\n\nwhen flag clicked\nhide\nset [xx v] to [0]\nforever\n    change [xx v] by (1)\n    change [xx v] by (2)\n    if <(hfeg) = [50]> then\n        stop [this script v]\n    end\nend\n\n@スプライト5\n\nwhen flag clicked\ngo to [front v] layer\nshow\n\n@コスチューム1 (2)2\n\ndefine ブロック名\nset [a v] to [0]\nrepeat (length of [コスチューム v])\n    change [a v] by (1)\n    create clone of (_myself_ v)\nend\n\ndefine 動き (x) (y) (コスチューム)\nswitch costume to (消去しないで下さい。 v)\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nif <<([abs v] of ((y) - (視点y)) ) > ([abs v] of (y position) )> or <([abs v] of ((x) - (視点x)) ) > ([abs v] of (x position) )>> then\n    hide\nelse\n    show\nend\n\nswitch costume to (コスチューム)\n\nwhen I start as a clone\n動き (item (a) of [地面x v]) (item (a) of [地面y v]) (item (a) of [コスチューム v])\nbroadcast (a v)\n\nwhen flag clicked\ndelete all of [地面x v]\ndelete all of [地面y v]\ndelete all of [コスチューム v]\nswitch costume to (コスチューム1 v)\n配置 [9000] [910] [1]\nhide\n\ndefine 配置 (x) (y) (コスチューム)\nswitch costume to ((コスチューム) + (1))\ngo to x: ((x) - (視点x)) y: ((y) - (視点y))\nadd (x) to [地面x v]\nadd (y) to [地面y v]\nadd ((コスチューム) + (1)) to [コスチューム v]\n\nwhen I receive [a v]\nwait (0) seconds\ndelete this clone\n\nwhen flag clicked\nforever\n    ブロック名\nend\n\nwhen flag clicked\n\nhide\n\nwhen I receive [1 v]\n\nwhen I start as a clone\nforever\n    if <touching (プレイヤー v)?> then\n    end\nend\n\nforever\n    switch costume to (コスチューム1 v)\nend\n\n@♡と☆判定\n\nwhen I start as a clone\nif <(costume [number v]) = [1]> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            wait (0.5) seconds\n            set [♡ v] to [1]\n            if <(☆) = [0]> then\n                broadcast (止める v)\n            end\n            stop [this script v]\n        end\n    end\nelse\n    forever\n        if <touching (mouse-pointer v)?> then\n            wait (0.5) seconds\n            set [☆ v] to [1]\n            if <(♡) = [0]> then\n                broadcast (止める v)\n            end\n            stop [this script v]\n        end\n    end\nend\n\nwhen flag clicked\nswitch costume to (♡ v)\ncreate clone of (_myself_ v)\nswitch costume to (☆ v)\ncreate clone of (_myself_ v)\nswitch costume to (透明 v)\n\nwhen flag clicked\n\nwhen I receive [押した v]\nbroadcast (なんでやねん v)\n\nwhen flag clicked\nset [☆ v] to [0]\nset [♡ v] to [0]\n\nwhen I receive [止める v]\nstop [other scripts in sprite v]\nbroadcast (判定 v)\n\nwhen I receive [判定 v]\nif <(costume [number v]) = [1]> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            wait (0.5) seconds\n            set [♡ v] to [1]\n            if <<(☆) = [0]> and <(♡) = [0]>> then\n                broadcast (止める v)\n            end\n            stop [this script v]\n        end\n    end\nelse\n    forever\n        if <touching (mouse-pointer v)?> then\n            wait (0.5) seconds\n            set [☆ v] to [1]\n            if <<(♡) = [0]> and <(☆) = [0]>> then\n                broadcast (止める v)\n            end\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [判定 v]\nif <(costume [number v]) = [3]> then\n    wait until <<(☆) = [1]> and <(♡) = [1]>>\n    broadcast (押した v)\nend\n\n