この記事ではMCreator2025.3/neoforge1.21.1の情報を執筆しています。
こんにちは、もえやです。5年ほど前からMCreatorの制作動画をYoutubeにアップしています。
今回は、投げて地面に当たると、周辺のブロックが5秒間だけ消えるアイテムを作ってみました!
テクスチャを作成
リソース、新規テクスチャを作成から、テクスチャを作成します。


今回はテンプレートを使います。左上のテンプレートから生成を選び、Gem、ランダム化で気に入った画像ができたら作成してマージしておきます。

テクスチャをアイテムとして保存します。

同様にして、エンティティのテクスチャも作成します。見えなくするのでどんなテクスチャでもOKです。

マーカー用のエンティティを作成
Mod要素に移動し、プラスからモブを作成します。

名前を入れて、新しいモブを作成します。

テクスチャ、境界ボックスを設定し、スポーンエッグはいらないのでチェックを外しておきます。振る舞いに移動します。

飛ぶことができる、のチェックを入れ、耐性にはすべてチェックを入れておきます。AIとゴールに移動します。

AIを有効にする、のチェックを外しておきます。トリガーに移動します。

エンティティがスポーンした時、のプラスからプロシージャを作成します。

マーカーエンティティのスポーン時のプロシージャを作成
エンティティプロシージャのアクションから、NBTタグをセットするプロシージャを持ってきます。

ブロックプロシージャのデータから、ブロックを設置するプロシージャを持ってきます。

ブロックプロシージャのデータから、レジストリ名を取得するプロシージャを持ってきます。

フロー制御から、もし~実行を持ってきます。

ロジックから、数値の比較を持ってきます。

数式から、これらのプロシージャを持ってきます。

ワールドプロシージャのアクションから、パーティクルを発生するプロシージャを持ってきます。

フロー制御から、指定時間後に実行する処理を持ってきます。

ブロックプロシージャのアクションから、ブロックを設置するプロシージャを持ってきます。

ブロックプロシージャのデータから、レジストリ名からブロックに変換するプロシージャを持ってきます。

エンティティプロシージャのデータから、NBTタグを取得するプロシージャを持ってきます。

ワールドプロシージャのアクションから、音を再生するプロシージャを持ってきます。

エンティティプロシージャのアクションから、エンティティをデスポーンさせるプロシージャを持ってきます。

このように設定し、エンティティにブロック情報を渡し、5秒後に元のブロックに戻すようにします。

保存します。
飛び道具を作成
プラスから、飛び道具を作成します。

名前を入れて、新しい飛び道具を作成します。

アイテムを設定します。ここでは適当なアイテムを指定しておいて、後程作成したアイテムに変更してください。
トリガーに移動します。

発射物がブロックにヒットした時、のプラスからプロシージャを作成します。

ブロックに当たった時のプロシージャを作成
ローカル変数をナンバーで7つ作成します。

カスタム変数から、これらのプロシージャを持ってきます。

数式から、これらのプロシージャを持ってきます。

変数の初期値をこのように設定します。

フロー制御から、回数指定の繰り返し処理を持ってきます。

ワールドプロシージャのアクションから、エンティティをスポーンするプロシージャを持ってきます。

このように繰り返しを設定し、範囲内の1ブロックに1体のマーカーエンティティをスポーンする様にします。

保存します。
アイテムを作成
プラスから、アイテムを作成します。

名前を入れて、新しいアイテムを作成します。

テクスチャを設定し、プロパティに移動します。

クリエイティブタブを設定し、トリガーに移動します。

右クリックした時、のプラスからプロシージャを作成します。

右クリックした時にアイテムを発射するプロシージャを作成
エンティティプロシージャのアクションから、利き手を振るプロシージャを持ってきます。

飛び道具プロシージャーから、これらのプロシージャを持ってきます。

アイテムプロシージャのアクションから、アイテムスタックを減らすプロシージャを持ってきます。

このように設定し、先ほど作った飛び道具を右クリックで投げられるようにします。

保存して完成です。
ブロックにぶつかるとこのように穴が開きますが、5秒後に戻ります。

