1.16.5日本語化リソースパック配布

302個のMODの翻訳が完了したので YouTube にて配布いたします 。翻訳の内容など不備はありますが、無いよりはましだと思って使ってください。翻訳したMODの詳細については、まとめるのが面倒くさいので止めておきます。このリソースパックを導入することがマイクラMOD攻略の近道...

2020年1月25日土曜日

右回り左回りに列を移動する

タートルは、一列目を掘り進んだあと右回りに列を移動して掘り戻って左回りに列を移動します。これで二列を掘る動作として考えていきます。

タートルの右回りの移動

タートルのAPIはこちらで確認できます


一段下にタートルが下がるプログラム

まずタートルは「1」のブロックを壊し一段下に行きます。露天掘りの場合は、下方向に一段ずつ下がりますので、一面を掘りぬく最初のタートルの動作は、必ずこの動きになります。

--1.のプログラム
turtle.digDown()--下を掘る
turtle.down()--下に行く
--1.のプログラムの終わり


A列からB列に右回りに列を移動するプログラム

「2」から「8」までブロックを壊しながら進み「8」の位置で右を向いて「9」のブロックを壊し「9」に進み、右を向き「10」の方向を向きます。

--2.のプログラム
for TATE=2,8 do--前を壊す、前に行くを7回繰り返すループTATE
    turtle.dig()--前を壊す
    turtle.forward()--前に行く
end--ループTATEの終わり
turtle.turnRight()--9の方向を向く
turtle.dig()--9のブロックを壊す
turtle.forward()--9に行く
turtle.turnRight()--10の方向を向く
--2.のプログラムの終わり



B列からC列に左回りに列を移動するプログラム

「10」から「16」までブロックを壊しながら進み「16」の位置で右を向いて「17」のブロックを壊し「17」に進み、右を向き「18」の方向を向きます。

--3.のプログラム
for TATE=2,8 do--前を壊す、前に行くを7回繰り返すループTATE
    turtle.dig()--前を壊す
    turtle.forward()--前に行く
end--ループTATEの終わり
turtle.turnLeft()--17の方向を向く
turtle.dig()--17のブロックを壊す
turtle.forward()--17に行く
turtle.turnLeft()--18の方向を向く
--3.のプログラムの終わり




作成したプログラムをつなげます

--今回のプログラム
--1.のプログラム
turtle.digDown()--下を掘る
turtle.down()--下に行く
--1.のプログラムの終わり
--2.のプログラム
for TATE=2,8 do--前を壊す、前に行くを7回繰り返すループTATE
    turtle.dig()--前を壊す
    turtle.forward()--前に行く
end--ループTATEの終わり
turtle.turnRight()--9の方向を向く
turtle.dig()--9のブロックを壊す
turtle.forward()--9に行く
turtle.turnRight()--10の方向を向く
--2.のプログラムの終わり
--3.のプログラム
for TATE=2,8 do--前を壊す、前に行くを7回繰り返すループTATE
    turtle.dig()--前を壊す
    turtle.forward()--前に行く
end--ループTATEの終わり
turtle.turnLeft()--17の方向を向く
turtle.dig()--17のブロックを壊す
turtle.forward()--17に行く
turtle.turnLeft()--18の方向を向く
--3.のプログラムの終わり
--今回のプログラムの終わり



タートルは、Bの列を掘ったあとCの列に移動して「17」の位置で停止


1.のプログラム以外を4回繰り返したら一面を掘りく形に近づきます。実際にタートルを動かしてみると「 8x8=64+1」のサイズを掘りぬきました。1ブロック分を余分に掘ってしまいました。
3.のプログラムの最後左回りに列を移動する以下の部分が不要となります。

turtle.turnLeft()--17の方向を向く
turtle.dig()--17のブロックを壊す
turtle.forward()--17に行く

0 件のコメント:

コメントを投稿

関連コンテンツ