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

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

2019年6月29日土曜日

豆腐建築プログラム

マイクラのワールドでプログラムを組んでタートルを動かすという一番とっつきにくいMODだといえますが、四角を積み上げていく豆腐建築プログラムは、初心者でも簡単にでき、達成感があるプログラムなので、導入編としては最適です。

使用したバージョンは1.12.2
縦4x横4x高さ6 の豆腐建築をタートルに作ってもらいます


turtle.select(16)--スロット16を選択
turtle.refuel()--燃料補給

turtle.select(1)--スロット1を選択

turtle.up()--一段上昇

turtle.forward()--前に行く
turtle.placeDown()--下にブロック設置
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()

turtle.turnRight()--右を向く

turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()

turtle.turnRight()

turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()

turtle.turnRight()

turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()
turtle.forward()
turtle.placeDown()

turtle.turnRight()

これは、一段目を作るプルーンなプログラムです、これを高さ6段目まで作るとなると6倍弱の長さになります、それはそれでプログラムといえますが、サイズが大きくしたり、高くしていったらプログラムは、とてつもなく長くなってしまいます。

実際に使用している文字はかなり少ないです。

turtle.select(16)--スロット16を選択
turtle.refuel()--燃料補給

turtle.select(1)--スロット1を選択

turtle.up()--一段上昇

turtle.forward()--前に行く
turtle.placeDown()--下にブロック設置

turtle.turnRight()--右を向く


同じ動きは、繰り返しの動作としてループカウンターを定義して簡略化、応用としてコンフィグを設定して縦、横、高さを変更できるプログラムを作成します。


一段目を作るプログラム

※任意の定義文字は、大文字としています



「前に行く、ブロックを設置」の3回の繰り返しの動作をループカウンターで「HEN」を定義して「1、2、3」のブロックを設置します、これが1辺「A」作るループとなります


for HEN=1,3 do--ループ名「HEN」で、1~3のブロックを設置
    turtle.forward()--前に行く
    turtle.placeDown()--下にブロックを設置
end--ループ「HEN」の終わり


右を向く動作とループ「HEN 」をループカウンター「ISSYU」で定義し、辺「A、B、C、D」を作ります、ループ「HEN」の後に右を向きます、右を向く位置は「3、6、9、12」となります


for ISSYUU=1,4 do--ループ名「ISSYUU」で、1~4までの辺の作成
for HEN=1,3 do
turtle.forward()
turtle.placeDown()
end
turtle.turnRight()--右を向く
end--ループ「ISSYUU」の終わり


一段目を作るプログラムはこうなります

turtle.select(16)--スロット16を選択
turtle.refuel()--燃料の補給

turtle.select(1)--スロット1を選択

turtle.up()--タートル1段上昇

for ISSYUU=1,4 do
for HEN=1,3 do
turtle.forward()
turtle.placeDown()
end
turtle.turnRight()
end


実際に動かしてみます
タートルのスロット1にブロック、16に燃料を入れてます

edit␣プログラム名、エンター

プログラムの編集

Ctrl キーで「Save」「Run」「Exit」の選択が表示されます

Run でプログラム実行

1周(4x4)ブロックを設置します





六段目まで積み上げるプログラム

一段目を作った後は、12の位置でタートルは正面を向いて止まります、高さ六段目までの動作は、一段上昇、「ISSYUU」を6回繰り返しますので、ループカウンターで「UENI」を定義してしてループさせます、順番は一段上昇してループ「ISSYUU」となります、タートルの上昇位置はすべて12となります


turtle.select(16)
turtle.refuel()

turtle.select(1)

for UENI=1,6 do--ループ名「UENI」で1~6段目まで四角を積み上げます
turtle.up()--タートル一段上昇
for ISSYUU=1,4 do
for HEN=1,3 do
turtle.forward()
turtle.placeDown()
end
turtle.turnRight()
end
end--ループ「UENI」の終わり


動かしてみます
 タートルは、4x4の四角を積み上げていきますが、ブロックが足りなくなります

1段目は、3x4=12
6段積み上げると、12x6=72

※1段目の使用ブロック数は、4x4ではなく、3x4辺となります

スロット1のブロックは、1スタック(64個)なので、使用するブロックの72個より少なくなり足りなくなります

スロットを高さ一段ずつで、スロットNOを 1→2→3→4 と変更していくために高さのループ「UENI」をスロット選択の turtle.select() に当てはめ「UENI」のループに入れます、「ISSYUU」のループの前にスロットが切り替わります


高さのループごとにスロットを変更するプログラムです


turtle.select(16)
turtle.refuel()

for UENI=1,6 do
turtle.up()
turtle.select(UENI)--1回のループで、1ずつ増えていきます
for ISSYUU=1,4 do
for HEN=1,3 do
turtle.forward()
turtle.placeDown()
end
turtle.turnRight()
end
end


動かしてみます
64個のブロックを各スロット1~6 に入れます、16に燃料を入れます



1段ごとにスロット変更してブロックを積み上げていきます


このプログラムで正方形の豆腐建築は完成です。ループカウンターの上限値を変更すればサイズと高さを変えることができます。



高さとサイズを変更できるプログラム

サイズ固定の豆腐建築プログラムはとても簡単ですが、応用としてサイズを自由に変更できるプログラムを試してみましょう。
インベントリの関係で最大サイズは
縦16x横16x高さ16 となります(燃料の補給なし)

local 変数名=数値 で変数を定義します、いわゆるコンフィグです、プログラム内ではなく、変数を定義して高さとサイズを簡単に変更することができるようになります


local TAKASA=15--高さの設定
local SIZE=16--大きさの設定

turtle.select(16)
turtle.refuel()

for UENI=1,TAKASA do--ループ「UENI」は、1~「TAKASA」まで実行
turtle.up()
turtle.select(UENI)
for ISSYUU=1,4 do
for HEN=1,SIZE-1 do--ループ「HEN」は、1~「SIZE-1」まで実行
turtle.forward()
turtle.placeDown()
end
turtle.turnRight()
end
end

※「SIZE-1」は、1辺の長さは4ブロック分ですが、実際は3ブロックの設置となるので「-1」が必要となります


動かしてみます
スロット1~15までにブロックを入れます、スロット16に燃料を入れます

コンフィグ設定
local TAKASA=15
local SIZE=16

16x16x15の正方形の筒ができました



縦横高さを変更できるプログラム

ループ「HEN」でブロックを設置する部分を「縦の動き」と「横の動き」の別々に考えて、local 変数名=数値 を当てはめます

local TATE=4--縦の設定
local YOKO=5--横の設定
local TAKASA=6

turtle.select(16)
turtle.refuel()

for UENI=1,TAKASA do
turtle.up()
turtle.select(UENI)
for ISSYUU=1,4 do
for HEN=1,TATE-1 do--ループ「HEN」は、1~「TATE-1」まで実行
turtle.forward()
turtle.placeDown()
end
turtle.turnRight()
for HEN=1,YOKO-1 do--ループ「HEN」は、1~「YOKO-1」まで実行
turtle.forward()
turtle.placeDown()
end
turtle.turnRight()
end
end


動かしてみます
スロット1~15までブロックを入れます、スロット16に燃料を入れます

コンフィグ設定
local TATE=10
local YOKO=20
local TAKASA=15


10x20x15の長方形の筒ができました



燃料について

Fuel limit reached 燃料限界に達した

turtle.select(16)--スロット16を選択
turtle.refuel()--燃料補給

燃料を補給する項目ですが、タートル内に燃料を10000まで貯めることができます。先に燃料を入れておけばプログラムに加えなくてもタートルは動きます。

燃料に関するコマンド
タートル内の燃料を見る:refuel
タートルに燃料を入れる:refuel␣all
タートルに指定数の燃料を入れる:refuel␣数値

関連サイト

0 件のコメント:

コメントを投稿

関連コンテンツ