提供: Minecraft Modding Wiki
2022年1月14日 (金) 14:07時点におけるVillager (トーク | 投稿記録)による版 (ページの作成:「{{前提MOD|reqmod="Minecraft Forge 1.15-31.0.x~"}} {{チュートリアル難易度|difficulty=0|clear=none}} {{チュートリアルカテゴリー|difficulty=0|type=…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
移動先: 案内検索

この記事は"Minecraft Forge 1.15-31.0.x~"を前提MODとしています。

Wood pickaxe.png
初心者向けのチュートリアルです。
C item.png
Itemに関係のあるチュートリアルです。


ここでは、1.15.xの鉱石の生成方法を解説します。

ソース[編集]

SampleMod.java

/*パッケージ・インポートは省略*/
@Mod(SampleMod.MOD_ID)
public class SampleMod {
    public static final String MOD_ID = "sample";

    public SampleMod() {
        IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus();
        bus.addListener(this::setup);
    }

    public static final Block sample_ore = new Block(Block.Properties.create(Material.ROCK)
        )
        .setRegistryName(new ResourceLocation(SampleMod.MOD_ID, "sample_ore"));

    private void setup(final FMLCommonSetupEvent event) {
        for (Biome biome : ForgeRegistries.BIOMES) {
            biome.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES,
                        Feature.ORE.withConfiguration(
                        new OreFeatureConfig(OreFeatureConfig.FillerBlockType.NATURAL_STONE, SampleMod.sample_ore.getDefaultState(), 10)).withPlacement(
                        Placement.COUNT_RANGE.configure(
                        new CountRangeConfig(10, 0, 0, 30))));
        }
    }

   /*ブロックの登録等省略*/
}

解説[編集]

1.13から、@ModにはMOD_IDだけ記述するようになったので注意です。

ブロックの追加・登録方法は、1.14のブロック追加をご覧ください。

Modメインクラスに引数なしのコンストラクタを追加してあのように書くと、setupメソッドがModロード時に動きます。

そこでBiome一つ一つにaddFeatureをして鉱石を追加します。

OreFeatureConfigのコンストラクタは、(置き換え元ブロック, 置き換え先ブロック状態, 1回に生成される最大の数)です。

CountRangeConfigのコンストラクタは、(1チャンクでの生成回数, 謎(0にする), 謎(0にする), 生成最大高度)です。