初心者の方でも楽しくゲームの作り方やプログラミングを学べる情報を発信中!

Minecraft

マインクラフトで遊びながらプログラミングにチャレンジ #3

前回、Turtleを動かす簡易的なプログラムを作りました。

今回は少し長いプログラムコードを書いてみたいと思います。

 

前回の記事

 

地面を掘りながら前進するプログラム

前回、以下の命令を書いて、空中に1ブロック分移動するプログラムを作りました。

「turtle.up()」

これは、日本語で書き表すと、「タートルさん、上に一歩動いて下さい」という意味になります。

 

他にも様々な命令があり、Turtleを前進後退させたり、左右に動かしたり、アイテムを設置したり、地面を掘ったりすることが出来ます。

今回、地面を掘りながらTurtleを前進させるというプログラムに挑戦したいと思います。

プログラムは以下の順番で動くように作ります。

  1. 地面を掘る -> turtle.digDown()
  2. 前進する -> turtle.forward()

上のような動きを3歩分、実行させたい場合、プログラムは以下のように書きます。

turtle.digDown()
turtle.forward()
turtle.digDown()
turtle.forward()
turtle.digDown()
turtle.forward()

 

では、早速プログラムを書いてみよう・・・と行きたいところですが、一つポイントがあります。

それは、前回のプログラムは命令が「turtle.up()」しか書かなかったのですが、今回のプログラムは命令を計6つ書く必要があります。

複数の命令を連続して実行させる為には命令文をまとめておく必要があります。

 

まずは、命令文をまとめて書くための手順について説明します。

以下の画面のように「edit forward_dig」と入力して下さい。

この命令は、「forward_digというテキストファイルを編集します」という意味です。

 

上記の命令を入力すると、forward_digというテキストの編集モードになります。

このテキストに6行分の命令を書いていきます。

以下のように書けばOKです!

 

命令を書き終えたら、書いたテキストを保存します。

保存をするには、Ctrlキーを押し、「Save」と「Exit」という2つのメニューを表示させます。

「Save」を選択した状態でエンターキーを押すと保存できます。

少し分かりづらいのですが、[]で囲まれている方が選択されているという意味ですので、以下の場合、「Save」が選択されている状態です。

「Save」できると以下のように表示されます。

Saveが完了したら、編集モードは終了させてOKですので、再度Ctrlキーを押し、次は「Exit」を選択しましょう。

 

Exitを押して、編集モードを閉じたら、次は先ほど作成したテキストが出来ていることを確認します。

以下のように「list」と入力して、エンターキーを押して下さい。

 

すると、以下のように表示されるかと思います。

listの下に「forward_dig」と表示されると、先ほど作成した命令が書き込まれたテキストが作られたことになります。

 

最後に、作成したプログラムを実行してみます。

以下のように作成したテキスト名「forward_dig」と入力し、エンターキーを押します。

 

すると、どうでしょう。

掘って歩いてという動きを3歩分、タートルが実行したことが確認出来ます!

 

これで、複数の命令も処理できるようになりました。

・・・が、この書き方ですと、例えば100歩分繰り返すとなると、同じ文章を97歩分追加する必要があり、打ち込むのがすごく大変になります。

そこで、次回は同じような命令を繰り返し自動実行できるような書き方に挑戦してみたいと思います!

スポンサーリンク
シェアする

関連記事

マインクラフトで遊びながらプログラミングにチャレンジ #2

前回はマインクラフトのインストールとマインクラフトでプログラミングをするために必要なModのインストールまでを完了させました。   前回の記事   今回、マインクラフトでのプログラ …

マインクラフトで遊びながらプログラミングにチャレンジ #1

Minecraft(マインクラフト)とは、ブロックを壊したり配置したりすることで、様々なものを作ることが出来るものづくりゲームです。 土や木などあらゆるものがブロックで出来ています。 マインクラフトで …

マインクラフトで遊びながらプログラミングにチャレンジ #4

前回、地面を掘りながらTurtleを前進させるというプログラムを作成しました。   前回の記事   プログラムの内容は以下の内容でした。 turtle.digDown() turt …