タートルが動かないとプログラムを組みやすい
タートルのスロットは1にニンジンを1本
残りはすべて骨粉で埋めます
移動しないので燃料を使用しません
タートルを地面より1ブロック上に設置します
下は草もしくは土ブロック
水源を1マス準備します
(自然に育っても収穫して植えます)
タートルのインベントリは骨粉が減っていき、ニンジンが増えていきます
最終的にはこのようになります、移動がないのでかなり早いです
チェストを横に置いたり、配送用のタートルを含め複数台のタートルでの自動農業も面白いかもしれません
--####1マスの自動植林プログラム
turtle.digDown()--下を耕す
turtle.placeDown()--スロット1のニンジンを植える
while true do--無限ループの始まり
local There,What=turtle.inspectDown()--下のブロックを調べる
if What.metadata==7 then--もし収穫時期なら
turtle.digDown()--収穫
for Slot=1,16 do--スロット1から16までのループ
turtle.select(Slot)--ループをスロット選択
local What=turtle.getItemDetail()--選択スロットのアイテムを調べる
if What then--もし何かああるなら
if What.name=="minecraft:carrot" then--もしニンジンなら
turtle.placeDown()--ニンジンを植える
end--もしニンジンならの終わり
end--もし何かあるならの終わり
end--スロットのループの終わり
else--収穫時期でないなら
for Slot=1,16 do--スロット1から16までのループ
turtle.select(Slot)--骨粉のスロットを選ぶ
local What=turtle.getItemDetail()--選択スロットのアイテムを調べる
if What then--もし何かああるなら
if What.name=="minecraft:dye" then--もし骨粉なら
turtle.placeDown()--骨粉を散布
end--もし骨粉ならの終わり
end--もし何かああるなら
end--スロットのループの終わり
end--もし収穫時期なら
end--無限ループの終わり
--####1マスの自動植林プログラム
赤文字が任意に設定した文字です
local There,What=turtle.inspectDown()--下のブロックを調べる
「There」でブロックがあるかないかの戻り値が入ります
「What」で何のブロックなのかの戻り値が入ります
if What.metadata==7 then--もし収穫時期なら
「What.metadata」でブロックのメタデータが呼び出せます
実際には「7==7」となっています、7が収穫時期なので収穫します
もしメタデータが7でないなら
else--収穫時期でないなら
までプログラムは飛んで骨粉を散布します
for Slot=1,16 do--スロット1から16までのループ
turtle.select(Slot)--ループをスロット選択
「Slot」をturtle.select()に当てはめることでスロットを1~16まで変更します
local What=turtle.getItemDetail()--選択スロットのアイテムを調べる
「What」で何のブロックなのかの戻り値が入ります
if What.name=="minecraft:carrot" then--もしニンジンなら
「What.name」でスロットのアイテム名を呼び出せます
実際には「"minecraft:carrot"=="minecraft:carrot"」となっています
関連サイト
コンピュータークラフトを極める その3
0 件のコメント:
コメントを投稿