function コマンドに挑戦

コマンド

コマンドを使ったり、コマンドブロックを使うと、マインクラフトの中でいろいろなことができるようになります。
ただ、複雑なことをやろうとするといくつものコマンドブロックを並べる必要があり、わかりにくくなってしまいます。

function コマンドを使うと、テキストファイルに書いた複数のコマンドを実行できるようになり、視認性や操作性が良くなります。
ただfunction コマンドを使うには、マインクラフトのデータ領域内に特定のファイルなどを作成して準備する必要があります。
そのあたりは、bridge というマインクラフトのアドオン開発環境をインストールすると、簡単に始めることができます。

bridge のインストール

bridge. のサイトにいき、ダウンロードします。

ダウンロードしたファイルを実行すると、bridge がインストールされます。

新規プロジェクトを作る

bridge がインストールされると、bridgeが立ち上がります。
日本語表示になっていると思います。

function コマンドを使えるようにするために、新規プロジェクトを作ります。

プロジェクトの作成画面が開きます。
デフォルトだ、と新しいゲームの仕組みを作る「ビヘイビアパック」と、外観やサウンドを変更する「リソースパック」が有効化されています。
そのままでも良いですし、リソースパックを使わないならリソースパックは無効化して置いても良いでしょう。

個別ファイルの最初のプロジェクト名は、bridge で表示されるプロジェクト名です。
適当な名前を入れておきます。

下段のプロジェクト名は、マインクラフトのデータ領域に作られるフォルダ名になります。
半角英数字で名前をつけます。
プロジェクトの作者は自分のプレイヤー名など、プロジェクトの対象バージョンは現在使っているものに合わせると良いでしょう。

新規プロジェクトを作ると、プロジェクトの中に複数のファイルやフォルダが出てきます。
多くのファイルやフォルダがありますが、function コマンドで必要なのは、manifest.jsonファイルと functions フォルダーだけです。

この状態で、マインクラフトのデータ領域

C:\user\(ユーザ名)\AppData\Local\Packages\Microsoft.MinecraftUWP_8wekyb3d8bbwe\LocalState\games\com.mojang

を開いて、development_behavior_packs フォルダを開くと、先ほど bridge で表示されていたファイルやフォルダーがあります。
bridge で新規プロジェクトを作ると、そのまま function を使える環境ができあがります。

function ファイルを作ってみる

function コマンドが使える環境ができたので、試しにコマンドを書き込んだ fanction ファイルを作ってみます。

bridge のファイル > 新規ファイル を押すと、新規ファイル作成画面がでます。
シンプルファイルをクリックして、Function を選択して、File Name 欄に適当なファイル名(ここでは tpf5 と入れてみます)を入れ、右下の「+ CREATE」を押します。

すると、functions フォルダの中に、tpf5.mcfunction というファイルが作成されます。
そのファイルを開いて

tp @s ^ ^5 ^

と入力して保存しておきます。

ワールドでアドオンを有効化する

function ファイルを作っても、そのままですとワールドで使うことができません。
使いたいワールドで、その functionファイルがあるアドオンを有効化する必要があります。

マインクラフトを立ち上げて、ワールド選択に進みます。
アドオンを適応したいワールドの鉛筆アイコンをクリックします。

左カラムの「アドオン」 > 「ビヘイビアパック」を選択すると、マイパックの中に bridge で作成したプロジェクト名 + BP というアドオンが表示されていると思います。
それをクリックして「有効化」します。

function コマンドを使ってみる

そのワールドに入って、チャットで

/function

と入力して、先ほど作った「tpf5」が予測変換で出てきたら、function コマンドの諸々がOKです。

/function tpf5

として、「テレポートしました」という表示が出て、テレポートできていたら大丈夫です。


function コマンドを使おうとすると、下準備が少し大変です。
でもいろいろなコマンドを使う場合、コマンドブロックを使うより function ファイルを使うほうが、視認性や操作性が良くなります。

コマンドブロックを複数つなげる必要があるようになったら、function コマンドを使える環境にしておくと、いろいろ楽ができそうです。

コメント

タイトルとURLをコピーしました