zh_cn:tutorial:ores
no way to compare when less than two revisions
Differences
This shows you the differences between two versions of the page.
Previous revisionNext revision | |||
— | zh_cn:tutorial:ores [2021/09/23 00:12] – [在世界中添加矿石] solidblock | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== 在世界中添加矿石 ====== | ||
+ | 许多模组会添加自己的矿石,您需要找到一种方法以将其放置在现有生物群系中让玩家寻找。在本教程中,我们将研究将矿石添加到现有生物群系以及其他模组添加的生物群系。将矿石添加到生物群系需要2个步骤。 | ||
+ | * 制作一个 ConfiguredFeature,定义你的矿石方块如何生成。 | ||
+ | * 使用 [[https:// | ||
+ | |||
+ | 注意 Biome Modification API 仍是实验性的。如果 API 不起作用,考虑 [[? | ||
+ | |||
+ | 我们假设您此时已经创建了自己的矿石。本教程中,我们使用羊毛方块进行替换。你可以适时将羊毛改成你自己的矿石。 | ||
+ | ==== 在群系中添加矿石 ==== | ||
+ | |||
+ | 首先,我们需要创建一种方法来处理生物群系,检查其是否为有效的生物群系,然后添加矿石。 | ||
+ | <code java [enable_line_numbers=" | ||
+ | private void handleBiome(Biome biome) { | ||
+ | if(biome.getCategory() != Biome.Category.NETHER && biome.getCategory() != Biome.Category.THEEND) { | ||
+ | biome.addFeature( | ||
+ | GenerationStep.Feature.UNDERGROUND_ORES, | ||
+ | Biome.configureFeature( | ||
+ | Feature.ORE, | ||
+ | new OreFeatureConfig( | ||
+ | OreFeatureConfig.Target.NATURAL_STONE, | ||
+ | Blocks.NETHER_QUARTZ_ORE.getDefaultState(), | ||
+ | 8 //Ore vein size | ||
+ | ), | ||
+ | Decorator.COUNT_RANGE, | ||
+ | new RangeDecoratorConfig( | ||
+ | 8, //Number of veins per chunk | ||
+ | 0, //Bottom Offset | ||
+ | 0, //Min y level | ||
+ | 64 //Max y level | ||
+ | ))); | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | 此方法通过提供的生成设置将您的矿石添加到整个世界。 随意更改值以适合您的mod。 | ||
+ | |||
+ | ==== 迭代生物群系注册表 ==== | ||
+ | |||
+ | 接下来,我们需要处理已注册的所有生物群系以及将来将要注册的所有生物群落(由其他模块添加)。 我们首先遍历当前注册表,然后注册一个侦听器,以供将来添加。 | ||
+ | |||
+ | <code java [enable_line_numbers=" | ||
+ | @Override | ||
+ | public void onInitialize() { | ||
+ | //Loop over existing biomes | ||
+ | Registry.BIOME.forEach(this:: | ||
+ | |||
+ | //Listen for other biomes being registered | ||
+ | RegistryEntryAddedCallback.event(Registry.BIOME).register((i, | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ==== 结论 ==== | ||
+ | 您应该会在整个世界中看到石英矿石的生成: | ||
+ | |||
+ | {{https:// | ||
+ | |||
zh_cn/tutorial/ores.txt · Last modified: 2023/12/18 01:03 by solidblock