マインクラフト make code 関数ブロックと引数の使い方!

make code 関数ブロックと引数を使ってみよう。

例えばロボットを作るためには、様々なプログラムの処理が必要になります。大ききく分けて、手のプログラム、足のプログラム、脳のプログラムがあるとしましょう。それぞれの関数(処理をまとめたもの)を「関数オブジェクト」と言います。

こうして、様々な役割が分業して、ある目的を達成するためのプログラムの考え方オブジェクト指向と言います。

関数における引数ってなに?

関数(かんすう)とは、あるプログラムの処理も一連をまとめた箱になります。
ロボットのような複雑なプログラムは、同じ処理を何度も使うため、まとめて処理をしたいときに関数を利用します。

この関数を実行するためのルール(引数をつけることができます。関数を実行する際、要求された値を受け取らないと実行できないというルールを持つ関数があります。

例えば、宅配便のように送り先の住所がないと家に届かないですよね。
関数における引数も、要求された値(住所)がないと実行されません。

テレポートコマンドのプログラムで考えてみましょう。
関数荷物に、引数xyzの住所を要求します。
荷物を指定した場所へおくるために、引数(住所)xyz(0,0,0)の場所へ届けるというプログラムの図になります。

関数ブロックの作り方

関数タブを開きます。

パラメータとは、引数(ひきすう)になります。
パラメータに指定できる要素は、文字列、真偽、数値、ポジションはマインクラフトの位置になります。

ゲームプレイ中に使う実行コマンドを見てみましょう。

/give は、アイテムを受け取るコマンド名、つまり関数名になります。
プロパティには、ターゲット引数、アイテム引数、個数引数、データー値引数 json(フォーマット形式)を指定できます。(統合版とjava版では引数が異なります)

アイテムを受け取りたいとき、誰が、どのアイテムを、何個というように、要求する値が引数になります。

関数を実行する

関数あいさつを実行します。
実行すると、「こんにちわ」と表示されます。

文字列の引数を使った関数を実行する

関数あいさつを実行します。
引数にストリング名前を要求しているので、「こんにちわ + スティーブン」と実行されます。

真偽値の引数を使った関数を実行する

関数ブロックの数を実行します。
引数は、比較演算の結果を要求しているので、真(true)であれば、処理が実行されます。

数値の引数を使った関数を実行する

関数召喚を実行します。
引数は、パンダの召喚数を要求しているので、パンダが3匹召喚するプログラムを実行します。

positionの引数を使った関数を実行する

関数テレポートを実行します。
引数は、ワールドの位置を要求しているので、以下の座標にテレポートするプログラムが実行されます。

関数と引数のブロック一覧

関数ブロック 名前
関数ブロック
数値引数
文字列の引数
真偽の引数
positionの引数

関数を使ってテレポートコマンドを作ってみよう!

マイクラの実行コマンドにあるテレポートコマンドの中身を作ってみましょう。
基本の変数を定義します。(用意してもしなくても動きます)

テレポートする関数を作ります。
関数 「テレポート」には、引数(関数に渡す「変数」や「値」)座標のxyzを用意します。
関数の中には、テレポートするブロックを入れます。

取引したい値は、xyzの位置なので、位置の中にxyzと挿入します。
これで、テレポート関数ができました。

次にチャットコマンドブロックを使って、「tp」と入力した際に、引数xyzの位置を受け取ることで、関数が実行されるプログラムを作成します。

実行コマンドのようにスラッシュ(/)を外して、コマンドを使ってみましょう。

実行すると、指定したワールドの位置へテレポートすることができます。

make code で関数を使った演習問題

make codeを使って関数の演習問題をやってみよう。

関数だよ演習問題①

チャットコマンドを使って豚を召喚するコマンドを作成しなさい。
※チャットコマンドの引数は3つまでしか指定できないので、3つの引数で作成しなさい。

<相対座標>
~(チルダ)は、座標を基準にコマンドを実行します。
~~~は、現在いる位置と同じ場所を示します。

 

関数だよ演習問題②

チャットコマンドを使ってゲームモードを変更するコマンドを作成しなさい。
0 クリエイティブモード
1 サバイバルモード

演習問題の答え合わせ

演習問題の答え合わせはプログラミングの家庭教師に聞いてみよう!
まずは会員登録して、聞いてみてくださいね。

[ulttemember form_id=”9″]