マインクラフトをプログラミング(Day 1 テレポート)
さて、Minecraftのインストールを済ませたら、早速プログラミングをしてみましょう。Day 1はテレポートです。あなたが指定した場所に突然人が移動するというマジックです。コードを書く前に、Pythonのコードで超最低限覚えなければいけないことだけ教えます。
とりあえずこれだけは覚えておこう!Pythonコードの超基本
まず最初に自分の年齢をPythonに読み込ませてみましょう。
my_age = 10
上のコードでやっていることは、「my_age」という箱をあなたが新しく作成し、その中に「10」という数字を放り込んでやったというものです。
この時、「my_age」でもなんでも箱(名前)は良いのですが、注意点としては、、、
1.箱の最初に数字を入れないこと(例:「10my_age」(×))
2.箱の中にはスペースを入れないこと(例:「my age」(×))
次に、コメントの入れ方です。
# Assign my age
my_age = 10 # This is my age
パイソンでは「#」をつけると同じ行の「#」以降がメモ扱いになり、コードとして認識されなくなります。これは自分が書いたコードで何をしているのかをメモするのにとても役に立ちます。
いざ、テレポート
Minecraft APIでは、人の位置をX, Y, Z座標で示しています。次の図をみてください。
座標は、X, Y, Zからなっていて、3次元です。例えば、上の座標上の立体の右奥は、X軸が5、Y軸が4、Z軸が7ですので、座標は(5, 4, 7)になります。この座標を把握することで人の位置を決めていくことができます。
では早速コードを書いてみましょう。コードを書くソフトはPython IDEがベースなのですが、あまり使い勝手がよくないので、私は、Atomというソフトを使っています。Atomについては別途記事を書いているので、そちらをご参照ください。
from mcpi.minecraft import Minecraft # import minecraft API
mc = Minecraft.create() # Create a new world
# Assign x, y, z values
x = 15 # You can define the value
y = 50 # You can define the value
z = 20 # You can define the value
# Teleport a player to (x, y, z) location
mc.player.setTilepos(x, y, z)
これだけです!といってもプログラミングに馴染みのない方にはあまりよくわからないかもしれないので、簡単に説明します。
from mcpi.minecraft import Minecraft # import minecraft API
このコードはすでにインストールしているMinecraft にコネクションするためのものです。Minecraftでプログラミングするときは常にこれを書きます。
mc = Minecraft.create()
このコードは、Mincraft内で新たなアクションを指定するときに書きます。これも一行目のコードと同様にMinecraftでプログラミングするときに書きます。
# Assign x, y, z values
x = 15 # You can define the value
y = 50 # You can define the value
z = 20 # You can define the value
ここでは、自分が指定したい場所のX座標、Y座標、Z座標を指定しています。数字はなんでもよいです。
# Teleport a player to (x, y, z) location
mc.player.setTilepos(x, y, z)
さて、これが最後のコード。「mc.player.setTilepos(x, y, z)」と書いていますが、「mc」は二行目であなたが作成した箱(Variable)。mcを参照して、そのあと「player」とあり、これは「player」に関するアクションを指定しています。そのあと「setTilespos(x, y, z)」とあり、これは「player」の場所を(x, y, z)の場所に指定するという意味です。
さて、コードを書き終わったら、Python IDEを起動し、コードを実行してください(MacではFn+F5、WindowsではCtrl + F5)。こんな感じでどこかに移動したのではないでしょうか?
さて、これでDay1は終了。初めてのPython Minecraftプログラミングはいかがでしたでしょうか?我が家でも初めてのプログラミングエンジョイ中です。
この記事が気に入ったらサポートをしてみませんか?