diff --git a/src/generated/resources/.cache/103d9f3f36b01595f1aa5172191e60eff02e6924 b/src/generated/resources/.cache/103d9f3f36b01595f1aa5172191e60eff02e6924 index 55b30470b..7418476f0 100644 --- a/src/generated/resources/.cache/103d9f3f36b01595f1aa5172191e60eff02e6924 +++ b/src/generated/resources/.cache/103d9f3f36b01595f1aa5172191e60eff02e6924 @@ -1,6 +1,7 @@ -// 1.20.2 2023-11-24T19:04:00.2074554 Registries +// 1.20.2 2023-11-24T20:54:44.7840083 Registries a09ddf53150a7fcf8767a311dd5cf040fa2e9221 data/biomesoplenty/damage_type/bramble.json 2d0eab2cc85c4c6397fdc41dd0cedefbc4a7a150 data/biomesoplenty/damage_type/fumarole.json +ea437a6e9543930a3c829c5bf99eb270d94a6201 data/biomesoplenty/worldgen/biome/aspen_forest.json 42e40aad7b302a8852edbfd224ed40d346601171 data/biomesoplenty/worldgen/biome/auroral_garden.json 2f83184d9ae2b17e8fbf9cf587de7c26a92b2a0e data/biomesoplenty/worldgen/biome/bayou.json db0c1c6cd86c593a9d97a250a93f78eb31cb964e data/biomesoplenty/worldgen/biome/bog.json @@ -22,9 +23,9 @@ d9000040ce4407e603b2089bb386181a6f4c4427 data/biomesoplenty/worldgen/biome/glowi 7a1c57597ceed578a6a9ad29bb5475d766eeb4ed data/biomesoplenty/worldgen/biome/grassland.json c60852465ebacbddccba4c8a3ecc7fc7c958ece2 data/biomesoplenty/worldgen/biome/highland.json 95bfe311c5f232012863d1047022f609d6c26cee data/biomesoplenty/worldgen/biome/hot_springs.json +4154a4e77331837da4b3db36a98c5c017d279853 data/biomesoplenty/worldgen/biome/jacaranda_forest.json db467c12d72e4d7c68e40849a87a19d4f07a7547 data/biomesoplenty/worldgen/biome/jade_cliffs.json dbd2116f54e13f7637b0b6ea569506f7d9a66f14 data/biomesoplenty/worldgen/biome/lavender_field.json -d6c5a3066a2863b326b2869c9a7840b016f73bff data/biomesoplenty/worldgen/biome/lavender_forest.json 87d65c53fd5cff3ce46df5ae1f969b93187efcc9 data/biomesoplenty/worldgen/biome/lush_desert.json 4289356071e43ee09b8e3f04a7f01c06205b1e16 data/biomesoplenty/worldgen/biome/lush_savanna.json 80f2cf3912e5f67fc0a480a9c482ed98ad9b849e data/biomesoplenty/worldgen/biome/maple_woods.json @@ -47,7 +48,6 @@ c4d43a9ad7026212331af4f806ca0609c9cd60e0 data/biomesoplenty/worldgen/biome/pumpk 7d21568158ce2c30daf4205345f0c0826c264551 data/biomesoplenty/worldgen/biome/rocky_shrubland.json 3285061bd512a79cabe9f63087aadc35a58ec4d9 data/biomesoplenty/worldgen/biome/scrubland.json bb2d81e974fdfe261ae8e3aab8767aa32b2b664d data/biomesoplenty/worldgen/biome/seasonal_forest.json -44838c97a178eba09129d2b84073ef0eb9dcf7c9 data/biomesoplenty/worldgen/biome/seasonal_orchard.json 915f6c670c2e93c0139193b39ea6520077170567 data/biomesoplenty/worldgen/biome/shrubland.json c8fa4838e950832b19ba66266866ea61b005223f data/biomesoplenty/worldgen/biome/snowblossom_grove.json da1e2ca3e9713a52d9ed243d551fd3d7c40c7ab1 data/biomesoplenty/worldgen/biome/snowy_coniferous_forest.json @@ -257,6 +257,7 @@ b48440fe4a0cf0efdf35cd32d746772b45afda08 data/biomesoplenty/worldgen/configured_ deef5c2930855fd7e0ed024f0ac8aed966ff7dcb data/biomesoplenty/worldgen/configured_feature/tall_umbran_tree.json d3a2bce6cff46fd0c26097cd1f904a6fd5b001d1 data/biomesoplenty/worldgen/configured_feature/thin_bamboo.json af8cdae336ba410701a356288fdd72fd03a80586 data/biomesoplenty/worldgen/configured_feature/toadstool_normal.json +cf39ea65f0f723b4ef342e35c9eab27fc8a87c8d data/biomesoplenty/worldgen/configured_feature/trees_aspen_forest.json 108ac76fc3eed1b443be22c0535de13304e77e41 data/biomesoplenty/worldgen/configured_feature/trees_auroral_garden.json bbfbf1d8fcc810292695b0f78c6e916b6c5cc577 data/biomesoplenty/worldgen/configured_feature/trees_bayou.json ecd542d1235a3656049a475f51ded6a17787ec32 data/biomesoplenty/worldgen/configured_feature/trees_bog.json @@ -268,9 +269,9 @@ f65947e9697a2ce1d73ea2fe2879c7f19c92fb2a data/biomesoplenty/worldgen/configured_ c5a22c26fd099d67a30e64a2956cc4b5c265f431 data/biomesoplenty/worldgen/configured_feature/trees_field_forest.json 2a34a8affa673f46a2dc57a01266026fc0ba35bd data/biomesoplenty/worldgen/configured_feature/trees_fungal_jungle.json 9b483676fa0c0499e99775417eea14fecdaeb9b9 data/biomesoplenty/worldgen/configured_feature/trees_hot_springs.json +da92b358ef1cd592d3cf980abe497a8d49791562 data/biomesoplenty/worldgen/configured_feature/trees_jacaranda_forest.json d6dd1c0f2df75191098f1c740f68a15eb30ea75e data/biomesoplenty/worldgen/configured_feature/trees_jade_cliffs.json 47557e3af86dd7d440314f0b782a83ae2b095416 data/biomesoplenty/worldgen/configured_feature/trees_lavender_field.json -da92b358ef1cd592d3cf980abe497a8d49791562 data/biomesoplenty/worldgen/configured_feature/trees_lavender_forest.json 5889f8d18aa98f2749e21a9b1989d48f1216f350 data/biomesoplenty/worldgen/configured_feature/trees_lush_desert.json 73bc4d46f326c6189d391ecf8fda48a1af980bfb data/biomesoplenty/worldgen/configured_feature/trees_maple_forest.json 4454b47782000d92e8ac72bae03ca931cf4aa72e data/biomesoplenty/worldgen/configured_feature/trees_muskeg.json @@ -286,7 +287,6 @@ d4fae18de258c757c164eb84fe2030accbf94b2c data/biomesoplenty/worldgen/configured_ bf541c17022068e4679cb496b24e8e0cc0c437e8 data/biomesoplenty/worldgen/configured_feature/trees_redwood_forest.json a4fd2cddf6d33adc3b3ee36c61d8abc60eeaf22b data/biomesoplenty/worldgen/configured_feature/trees_scrubland.json 550e4350d5d189145ed852f894f789405bb0f22b data/biomesoplenty/worldgen/configured_feature/trees_seasonal_forest.json -cf39ea65f0f723b4ef342e35c9eab27fc8a87c8d data/biomesoplenty/worldgen/configured_feature/trees_seasonal_orchard.json 8b971a958d2ca8bb6d881e7e7950c8b3bcf60954 data/biomesoplenty/worldgen/configured_feature/trees_seasonal_pumpkin_patch.json 5b7de709e8e8433bf6c352e7ecdab52ce58910db data/biomesoplenty/worldgen/configured_feature/trees_snowblossom_grove.json a163b4897c68b965e8c8fdcd2f28daa563684085 data/biomesoplenty/worldgen/configured_feature/trees_snowy_coniferous_forest.json @@ -373,8 +373,8 @@ b8974c150e3f6ec95a353ce0f476fb28f90d5fdc data/biomesoplenty/worldgen/placed_feat ec6c880fe45a5421db544aa9cbc0279d1cae3a97 data/biomesoplenty/worldgen/placed_feature/flower_field_1.json 977af58b49ff46669661d5d15581a36f997ccc35 data/biomesoplenty/worldgen/placed_feature/flower_field_2.json 38a9eb5981ba35d7969497dd649a159b62727500 data/biomesoplenty/worldgen/placed_feature/flower_grassland.json +a4a9cd4878aca00842f94b3dde08e75024a60055 data/biomesoplenty/worldgen/placed_feature/flower_jacaranda_forest.json 5841cb63baca82268d21b60ad615e979991693bc data/biomesoplenty/worldgen/placed_feature/flower_lavender.json -a4a9cd4878aca00842f94b3dde08e75024a60055 data/biomesoplenty/worldgen/placed_feature/flower_lavender_forest.json 83a50c7343493e08ecd4550c2cabf1e2540f010b data/biomesoplenty/worldgen/placed_feature/flower_lush_desert.json 8b708c3304f0d1972b4fea59c23fca59f5c5889a data/biomesoplenty/worldgen/placed_feature/flower_moor.json 0626b77eb83fcb44916b5c2a2b7a7fd76cb9a700 data/biomesoplenty/worldgen/placed_feature/flower_mystic_grove.json @@ -536,6 +536,7 @@ cbbf9e96d9aa6fb26b2ecb60fc9dc049084f7ec4 data/biomesoplenty/worldgen/placed_feat c2f17ae7a59995ac9634e9a1667804ca7cd1e4bc data/biomesoplenty/worldgen/placed_feature/thin_bamboo.json 279b9fc1b35dee55e995a1efbc309545b4019e52 data/biomesoplenty/worldgen/placed_feature/toadstool_extra.json b3ff9c2274cb98160253e8661d4b04de56b6e6a4 data/biomesoplenty/worldgen/placed_feature/toadstool_normal.json +ef862a92acb7c874a03caa9201fa069e8dff7235 data/biomesoplenty/worldgen/placed_feature/trees_aspen_forest.json e54d937f5f0efc535b9c3c890c5ab5a03c160d9c data/biomesoplenty/worldgen/placed_feature/trees_auroral_garden.json 31a4908b14719be0519f84b278bceab7f722b5cb data/biomesoplenty/worldgen/placed_feature/trees_bayou.json 8044c3fbdeba631f13c6d7167e431bb1e7514dc5 data/biomesoplenty/worldgen/placed_feature/trees_bog.json @@ -548,9 +549,9 @@ addefe9727278378c9ff4343d1c06f3e896c5637 data/biomesoplenty/worldgen/placed_feat 5f464874f713cc05db22d853b7460ad0646d6370 data/biomesoplenty/worldgen/placed_feature/trees_fir_clearing.json b59fd06e1c240962408eec93e18073f73bbe357c data/biomesoplenty/worldgen/placed_feature/trees_fungal_jungle.json 84cd37279d0bc38ce00f25f158fb2ea81bcf4649 data/biomesoplenty/worldgen/placed_feature/trees_hot_springs.json +dd9344dccb4fe8c0950e172e1e2a03150e4fc334 data/biomesoplenty/worldgen/placed_feature/trees_jacaranda_forest.json 8a6840044f92e01a6bb78e8d6904fae7fc3703e7 data/biomesoplenty/worldgen/placed_feature/trees_jade_cliffs.json d3d805c5107b32626b8f3d658fdeb671512db581 data/biomesoplenty/worldgen/placed_feature/trees_lavender_field.json -426c77e6e222a957c87cd870429a13ee5219864d data/biomesoplenty/worldgen/placed_feature/trees_lavender_forest.json b4fe6b6e47c2a605e7a3ac56544f53b7b01be919 data/biomesoplenty/worldgen/placed_feature/trees_lush_desert.json 980e47b6844316bb0fb170d687f12b3ef6924702 data/biomesoplenty/worldgen/placed_feature/trees_maple_forest.json 4a9a91dcdc955306b05a70f504b7326bd10e5581 data/biomesoplenty/worldgen/placed_feature/trees_mediterranean_forest.json @@ -568,7 +569,6 @@ b55f4ccdcdb6fa79dcda41bc10e49af9e03560ef data/biomesoplenty/worldgen/placed_feat c1c5f0c4197dbec3e987a1326b7d15bef9a4f1b5 data/biomesoplenty/worldgen/placed_feature/trees_rocky_shrubland.json de63632a2699e1198b2bdbc5ad22b2cfabf66ca5 data/biomesoplenty/worldgen/placed_feature/trees_scrubland.json e471ed08d8839279e5b8b8a73e2cb5a7364aea5a data/biomesoplenty/worldgen/placed_feature/trees_seasonal_forest.json -8ee5adb40aef638964d884e2163837c6b8cd0377 data/biomesoplenty/worldgen/placed_feature/trees_seasonal_orchard.json ac7a47820f1078b060c64d829c385d0b22f36f63 data/biomesoplenty/worldgen/placed_feature/trees_seasonal_pumpkin_patch.json bc02201bb19bfe926fddf3e7b708d0de970325d6 data/biomesoplenty/worldgen/placed_feature/trees_shrubland.json af1b4603a980d2cb58a6c24682f3a0766d143929 data/biomesoplenty/worldgen/placed_feature/trees_snowblossom_grove.json diff --git a/src/generated/resources/data/biomesoplenty/worldgen/biome/seasonal_orchard.json b/src/generated/resources/data/biomesoplenty/worldgen/biome/aspen_forest.json similarity index 99% rename from src/generated/resources/data/biomesoplenty/worldgen/biome/seasonal_orchard.json rename to src/generated/resources/data/biomesoplenty/worldgen/biome/aspen_forest.json index e9ce25fa1..540ef17f1 100644 --- a/src/generated/resources/data/biomesoplenty/worldgen/biome/seasonal_orchard.json +++ b/src/generated/resources/data/biomesoplenty/worldgen/biome/aspen_forest.json @@ -84,7 +84,7 @@ "minecraft:brown_mushroom_normal", "minecraft:red_mushroom_normal", "minecraft:patch_pumpkin", - "biomesoplenty:trees_seasonal_orchard", + "biomesoplenty:trees_aspen_forest", "biomesoplenty:patch_barley_sparse", "biomesoplenty:patch_fern_4", "biomesoplenty:patch_large_fern_normal", diff --git a/src/generated/resources/data/biomesoplenty/worldgen/biome/lavender_forest.json b/src/generated/resources/data/biomesoplenty/worldgen/biome/jacaranda_forest.json similarity index 97% rename from src/generated/resources/data/biomesoplenty/worldgen/biome/lavender_forest.json rename to src/generated/resources/data/biomesoplenty/worldgen/biome/jacaranda_forest.json index 229529522..fb22f9987 100644 --- a/src/generated/resources/data/biomesoplenty/worldgen/biome/lavender_forest.json +++ b/src/generated/resources/data/biomesoplenty/worldgen/biome/jacaranda_forest.json @@ -80,9 +80,9 @@ "minecraft:patch_sugar_cane", "biomesoplenty:patch_grass_24", "biomesoplenty:patch_tall_grass_64", - "biomesoplenty:flower_lavender_forest", + "biomesoplenty:flower_jacaranda_forest", "biomesoplenty:patch_tall_lavender_forest", - "biomesoplenty:trees_lavender_forest" + "biomesoplenty:trees_jacaranda_forest" ], [ "minecraft:freeze_top_layer" diff --git a/src/generated/resources/data/biomesoplenty/worldgen/configured_feature/trees_seasonal_orchard.json b/src/generated/resources/data/biomesoplenty/worldgen/configured_feature/trees_aspen_forest.json similarity index 100% rename from src/generated/resources/data/biomesoplenty/worldgen/configured_feature/trees_seasonal_orchard.json rename to src/generated/resources/data/biomesoplenty/worldgen/configured_feature/trees_aspen_forest.json diff --git a/src/generated/resources/data/biomesoplenty/worldgen/configured_feature/trees_lavender_forest.json b/src/generated/resources/data/biomesoplenty/worldgen/configured_feature/trees_jacaranda_forest.json similarity index 100% rename from src/generated/resources/data/biomesoplenty/worldgen/configured_feature/trees_lavender_forest.json rename to src/generated/resources/data/biomesoplenty/worldgen/configured_feature/trees_jacaranda_forest.json diff --git a/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/flower_lavender_forest.json b/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/flower_jacaranda_forest.json similarity index 100% rename from src/generated/resources/data/biomesoplenty/worldgen/placed_feature/flower_lavender_forest.json rename to src/generated/resources/data/biomesoplenty/worldgen/placed_feature/flower_jacaranda_forest.json diff --git a/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_seasonal_orchard.json b/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_aspen_forest.json similarity index 91% rename from src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_seasonal_orchard.json rename to src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_aspen_forest.json index 8580cdd49..e9e830584 100644 --- a/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_seasonal_orchard.json +++ b/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_aspen_forest.json @@ -1,5 +1,5 @@ { - "feature": "biomesoplenty:trees_seasonal_orchard", + "feature": "biomesoplenty:trees_aspen_forest", "placement": [ { "type": "minecraft:count", diff --git a/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_lavender_forest.json b/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_jacaranda_forest.json similarity index 91% rename from src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_lavender_forest.json rename to src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_jacaranda_forest.json index b070f25a6..5479b8ab3 100644 --- a/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_lavender_forest.json +++ b/src/generated/resources/data/biomesoplenty/worldgen/placed_feature/trees_jacaranda_forest.json @@ -1,5 +1,5 @@ { - "feature": "biomesoplenty:trees_lavender_forest", + "feature": "biomesoplenty:trees_jacaranda_forest", "placement": [ { "type": "minecraft:count", diff --git a/src/main/java/biomesoplenty/api/biome/BOPBiomes.java b/src/main/java/biomesoplenty/api/biome/BOPBiomes.java index 0e2da45be..1c08510c6 100644 --- a/src/main/java/biomesoplenty/api/biome/BOPBiomes.java +++ b/src/main/java/biomesoplenty/api/biome/BOPBiomes.java @@ -19,6 +19,7 @@ public class BOPBiomes private static List> overworldBiomes = Lists.newArrayList(); private static List> allBiomes = Lists.newArrayList(); + public static final ResourceKey ASPEN_FOREST = registerOverworld("aspen_forest"); public static final ResourceKey AURORAL_GARDEN = registerOverworld("auroral_garden"); public static final ResourceKey BAYOU = registerOverworld("bayou"); public static final ResourceKey BOG = registerOverworld("bog"); @@ -40,9 +41,9 @@ public class BOPBiomes public static final ResourceKey GRASSLAND = registerOverworld("grassland"); public static final ResourceKey HIGHLAND = registerOverworld("highland"); public static final ResourceKey HOT_SPRINGS = registerOverworld("hot_springs"); + public static final ResourceKey JACARANDA_FOREST = registerOverworld("jacaranda_forest"); public static final ResourceKey JADE_CLIFFS = registerOverworld("jade_cliffs"); public static final ResourceKey LAVENDER_FIELD = registerOverworld("lavender_field"); - public static final ResourceKey LAVENDER_FOREST = registerOverworld("lavender_forest"); public static final ResourceKey LUSH_DESERT = registerOverworld("lush_desert"); public static final ResourceKey LUSH_SAVANNA = registerOverworld("lush_savanna"); public static final ResourceKey MAPLE_WOODS = registerOverworld("maple_woods"); @@ -65,7 +66,6 @@ public class BOPBiomes public static final ResourceKey ROCKY_SHRUBLAND = registerOverworld("rocky_shrubland"); public static final ResourceKey SCRUBLAND = registerOverworld("scrubland"); public static final ResourceKey SEASONAL_FOREST = registerOverworld("seasonal_forest"); - public static final ResourceKey SEASONAL_ORCHARD = registerOverworld("seasonal_orchard"); public static final ResourceKey SHRUBLAND = registerOverworld("shrubland"); public static final ResourceKey SNOWBLOSSOM_GROVE = registerOverworld("snowblossom_grove"); public static final ResourceKey SNOWY_CONIFEROUS_FOREST = registerOverworld("snowy_coniferous_forest"); diff --git a/src/main/java/biomesoplenty/common/biome/BOPOverworldBiomes.java b/src/main/java/biomesoplenty/common/biome/BOPOverworldBiomes.java index e0beb014e..c21b3e772 100644 --- a/src/main/java/biomesoplenty/common/biome/BOPOverworldBiomes.java +++ b/src/main/java/biomesoplenty/common/biome/BOPOverworldBiomes.java @@ -115,6 +115,34 @@ private static void globalOverworldGenerationNoLavaLakes(BiomeGenerationSettings BiomeDefaultFeatures.addSurfaceFreezing(builder); } + public static Biome aspenForest(HolderGetter placedFeatureGetter, HolderGetter> carverGetter) + { + // Mob spawns + MobSpawnSettings.Builder spawnBuilder = new MobSpawnSettings.Builder(); + BiomeDefaultFeatures.commonSpawns(spawnBuilder); + BiomeDefaultFeatures.farmAnimals(spawnBuilder); + spawnBuilder.addSpawn(MobCategory.CREATURE, new MobSpawnSettings.SpawnerData(EntityType.WOLF, 5, 4, 4)); + spawnBuilder.addSpawn(MobCategory.CREATURE, new MobSpawnSettings.SpawnerData(EntityType.FOX, 8, 2, 4)); + + // Biome features + BiomeGenerationSettings.Builder biomeBuilder = new BiomeGenerationSettings.Builder(placedFeatureGetter, carverGetter); + globalOverworldGeneration(biomeBuilder); + BiomeDefaultFeatures.addDefaultOres(biomeBuilder); + BiomeDefaultFeatures.addDefaultSoftDisks(biomeBuilder); + BiomeDefaultFeatures.addDefaultFlowers(biomeBuilder); + BiomeDefaultFeatures.addDefaultMushrooms(biomeBuilder); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, VegetationPlacements.PATCH_PUMPKIN); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.TREES_ASPEN_FOREST); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_BARLEY_SPARSE); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_FERN_4); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_LARGE_FERN_NORMAL); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.TOADSTOOL_NORMAL); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_REED_10); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_GRASS_6); + + return biomeWithColorOverrides(true, 0.4F, 0.8F, 0xDDAB4A, 0xD1C24A, spawnBuilder, biomeBuilder, FOREST_MUSIC); + } + public static Biome auroralGarden(HolderGetter placedFeatureGetter, HolderGetter> carverGetter) { // Mob spawns MobSpawnSettings.Builder spawnBuilder = new MobSpawnSettings.Builder(); @@ -571,6 +599,27 @@ public static Biome hotSprings(HolderGetter placedFeatureGetter, return biomeWithColorOverrides(true, 0.17F, 0.5F, 4445678, 270131, 0x80B497, 0x60A17B, spawnBuilder, biomeBuilder, NORMAL_MUSIC); } + public static Biome jacarandaForest(HolderGetter placedFeatureGetter, HolderGetter> carverGetter) + { + // Mob spawns + MobSpawnSettings.Builder spawnBuilder = new MobSpawnSettings.Builder(); + BiomeDefaultFeatures.commonSpawns(spawnBuilder); + BiomeDefaultFeatures.farmAnimals(spawnBuilder); + + // Biome features + BiomeGenerationSettings.Builder biomeBuilder = new BiomeGenerationSettings.Builder(placedFeatureGetter, carverGetter); + globalOverworldGeneration(biomeBuilder); + BiomeDefaultFeatures.addDefaultOres(biomeBuilder); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, VegetationPlacements.PATCH_SUGAR_CANE); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_GRASS_24); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_TALL_GRASS_64); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.FLOWER_JACARANDA_FOREST); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_TALL_LAVENDER_FOREST); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.TREES_JACARANDA_FOREST); + + return biomeWithColorOverrides(true, 0.8F, 0.7F, 0xA1C36D, 0xA1C36D, spawnBuilder, biomeBuilder, MAGICAL_MUSIC); + } + public static Biome jadeCliffs(HolderGetter placedFeatureGetter, HolderGetter> carverGetter) { // Mob spawns @@ -594,7 +643,7 @@ public static Biome jadeCliffs(HolderGetter placedFeatureGetter, return biomeWithColorOverrides(true, 0.8F, 0.85F, 4159204, 329011, 0xBBD1D5, 0x7CA568, 0x8BB76E, 0xB7CCAD, spawnBuilder, biomeBuilder, MOUNTAIN_MUSIC); } - public static Biome lavenderField(HolderGetter placedFeatureGetter, HolderGetter> carverGetter, boolean forest) + public static Biome lavenderField(HolderGetter placedFeatureGetter, HolderGetter> carverGetter) { // Mob spawns MobSpawnSettings.Builder spawnBuilder = new MobSpawnSettings.Builder(); @@ -608,19 +657,9 @@ public static Biome lavenderField(HolderGetter placedFeatureGette addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, VegetationPlacements.PATCH_SUGAR_CANE); addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_GRASS_24); addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_TALL_GRASS_64); - - if (forest) - { - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.FLOWER_LAVENDER_FOREST); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_TALL_LAVENDER_FOREST); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.TREES_LAVENDER_FOREST); - } - else - { - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.FLOWER_LAVENDER); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_TALL_LAVENDER); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.TREES_LAVENDER_FIELD); - } + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.FLOWER_LAVENDER); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_TALL_LAVENDER); + addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.TREES_LAVENDER_FIELD); return biomeWithColorOverrides(true, 0.8F, 0.7F, 0xA1C36D, 0xA1C36D, spawnBuilder, biomeBuilder, MAGICAL_MUSIC); } @@ -1175,34 +1214,6 @@ public static Biome seasonalForest(HolderGetter placedFeatureGett return biomeWithColorOverrides(true, 0.4F, 0.8F, 0xDD9A4A, 0xD1B24A, spawnBuilder, biomeBuilder, FOREST_MUSIC); } - public static Biome seasonalOrchard(HolderGetter placedFeatureGetter, HolderGetter> carverGetter) - { - // Mob spawns - MobSpawnSettings.Builder spawnBuilder = new MobSpawnSettings.Builder(); - BiomeDefaultFeatures.commonSpawns(spawnBuilder); - BiomeDefaultFeatures.farmAnimals(spawnBuilder); - spawnBuilder.addSpawn(MobCategory.CREATURE, new MobSpawnSettings.SpawnerData(EntityType.WOLF, 5, 4, 4)); - spawnBuilder.addSpawn(MobCategory.CREATURE, new MobSpawnSettings.SpawnerData(EntityType.FOX, 8, 2, 4)); - - // Biome features - BiomeGenerationSettings.Builder biomeBuilder = new BiomeGenerationSettings.Builder(placedFeatureGetter, carverGetter); - globalOverworldGeneration(biomeBuilder); - BiomeDefaultFeatures.addDefaultOres(biomeBuilder); - BiomeDefaultFeatures.addDefaultSoftDisks(biomeBuilder); - BiomeDefaultFeatures.addDefaultFlowers(biomeBuilder); - BiomeDefaultFeatures.addDefaultMushrooms(biomeBuilder); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, VegetationPlacements.PATCH_PUMPKIN); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.TREES_SEASONAL_ORCHARD); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_BARLEY_SPARSE); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_FERN_4); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_LARGE_FERN_NORMAL); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.TOADSTOOL_NORMAL); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_REED_10); - addFeature(biomeBuilder, GenerationStep.Decoration.VEGETAL_DECORATION, BOPVegetationPlacements.PATCH_GRASS_6); - - return biomeWithColorOverrides(true, 0.4F, 0.8F, 0xDDAB4A, 0xD1C24A, spawnBuilder, biomeBuilder, FOREST_MUSIC); - } - public static Biome snowblossomGrove(HolderGetter placedFeatureGetter, HolderGetter> carverGetter) { // Mob spawns diff --git a/src/main/java/biomesoplenty/common/biome/BOPSecondaryOverworldBiomeBuilder.java b/src/main/java/biomesoplenty/common/biome/BOPSecondaryOverworldBiomeBuilder.java index 2d07d5c8d..92ff4b826 100644 --- a/src/main/java/biomesoplenty/common/biome/BOPSecondaryOverworldBiomeBuilder.java +++ b/src/main/java/biomesoplenty/common/biome/BOPSecondaryOverworldBiomeBuilder.java @@ -23,26 +23,26 @@ public class BOPSecondaryOverworldBiomeBuilder extends BOPOverworldBiomeBuilder private final ResourceKey[][] MIDDLE_BIOMES_VARIANT_BOP = new ResourceKey[][]{ {null, null, null, BOPBiomes.SNOWBLOSSOM_GROVE, BOPBiomes.OLD_GROWTH_DEAD_FOREST}, - {null, BOPBiomes.SEASONAL_ORCHARD, BOPBiomes.PUMPKIN_PATCH, null, null}, - {null, BOPBiomes.LAVENDER_FOREST, BOPBiomes.ORCHARD, null, null}, + {null, BOPBiomes.ASPEN_FOREST, BOPBiomes.PUMPKIN_PATCH, null, null}, + {null, BOPBiomes.JACARANDA_FOREST, BOPBiomes.ORCHARD, null, null}, {null, null, BOPBiomes.OLD_GROWTH_WOODLAND, BOPBiomes.VOLCANIC_PLAINS, null}, {null, null, null, null, null} }; private final ResourceKey[][] PLATEAU_BIOMES_BOP = new ResourceKey[][]{ {BOPBiomes.TUNDRA, BOPBiomes.TUNDRA, BOPBiomes.SNOWBLOSSOM_GROVE, BOPBiomes.SNOWY_MAPLE_WOODS, BOPBiomes.DEAD_FOREST}, - {BOPBiomes.SEASONAL_FOREST, BOPBiomes.SEASONAL_ORCHARD, BOPBiomes.HIGHLAND, BOPBiomes.HIGHLAND, BOPBiomes.HIGHLAND}, + {BOPBiomes.SEASONAL_FOREST, BOPBiomes.ASPEN_FOREST, BOPBiomes.HIGHLAND, BOPBiomes.HIGHLAND, BOPBiomes.HIGHLAND}, {BOPBiomes.LAVENDER_FIELD, BOPBiomes.LAVENDER_FIELD, BOPBiomes.HIGHLAND, BOPBiomes.HIGHLAND, BOPBiomes.HIGHLAND}, {BOPBiomes.MEDITERRANEAN_FOREST, BOPBiomes.MEDITERRANEAN_FOREST, BOPBiomes.WOODLAND, BOPBiomes.ROCKY_RAINFOREST, BOPBiomes.VOLCANO}, {BOPBiomes.WASTELAND_STEPPE, BOPBiomes.WASTELAND_STEPPE, BOPBiomes.WASTELAND_STEPPE, BOPBiomes.WASTELAND_STEPPE, BOPBiomes.WASTELAND_STEPPE} }; private final ResourceKey[][] PLATEAU_BIOMES_VARIANT_BOP = new ResourceKey[][]{ - {null, null, null, BOPBiomes.SNOWBLOSSOM_GROVE, BOPBiomes.OLD_GROWTH_DEAD_FOREST}, - {null, null, null, BOPBiomes.MAPLE_WOODS, null}, - {null, BOPBiomes.LAVENDER_FOREST, null, null, BOPBiomes.MOOR}, - {null, null, BOPBiomes.OLD_GROWTH_WOODLAND, BOPBiomes.VOLCANO, null}, - {null, null, null, null, null} + {null, null, null, BOPBiomes.SNOWBLOSSOM_GROVE, BOPBiomes.OLD_GROWTH_DEAD_FOREST}, + {null, null, null, BOPBiomes.MAPLE_WOODS, null}, + {null, BOPBiomes.JACARANDA_FOREST, null, null, BOPBiomes.MOOR}, + {null, null, BOPBiomes.OLD_GROWTH_WOODLAND, BOPBiomes.VOLCANO, null}, + {null, null, null, null, null} }; @Override diff --git a/src/main/java/biomesoplenty/common/handler/MissingMappingsHandler.java b/src/main/java/biomesoplenty/common/handler/MissingMappingsHandler.java index e34b7449f..555bf32fb 100644 --- a/src/main/java/biomesoplenty/common/handler/MissingMappingsHandler.java +++ b/src/main/java/biomesoplenty/common/handler/MissingMappingsHandler.java @@ -94,7 +94,7 @@ public static void onMissingMapping(MissingMappingsEvent event) .remap("bamboo_grove", Biomes.CHERRY_GROVE) .remap("bamboo_blossom_grove", Biomes.CHERRY_GROVE) .remap("bayou_mangrove", BOPBiomes.BAYOU) - .remap("boreal_forest", BOPBiomes.SEASONAL_ORCHARD) + .remap("boreal_forest", BOPBiomes.ASPEN_FOREST) .remap("brushland", BOPBiomes.DRYLAND) .remap("burnt_forest", BOPBiomes.OLD_GROWTH_DEAD_FOREST) .remap("chaparral", BOPBiomes.ROCKY_SHRUBLAND) @@ -118,6 +118,7 @@ public static void onMissingMapping(MissingMappingsEvent event) .remap("grove_lakes", BOPBiomes.MEDITERRANEAN_FOREST) .remap("highland_crag", BOPBiomes.CRAG) .remap("highland_moor", BOPBiomes.MOOR) + .remap("lavender_forest", BOPBiomes.JACARANDA_FOREST) .remap("lush_grassland", BOPBiomes.GRASSLAND) .remap("lush_swamp", Biomes.SWAMP) .remap("mangrove", Biomes.MANGROVE_SWAMP) @@ -138,6 +139,7 @@ public static void onMissingMapping(MissingMappingsEvent event) .remap("rainforest_floodplain", BOPBiomes.FLOODPLAIN) .remap("redwood_forest_edge", BOPBiomes.REDWOOD_FOREST) .remap("redwood_hills", BOPBiomes.REDWOOD_FOREST) + .remap("seasonal_orchard", BOPBiomes.ASPEN_FOREST) .remap("seasonal_pumpkin_patch", BOPBiomes.PUMPKIN_PATCH) .remap("shield", BOPBiomes.CONIFEROUS_FOREST) .remap("shroomy_wetland", BOPBiomes.WETLAND) diff --git a/src/main/java/biomesoplenty/common/worldgen/feature/BOPVegetationFeatures.java b/src/main/java/biomesoplenty/common/worldgen/feature/BOPVegetationFeatures.java index d17bb8112..196c762bf 100644 --- a/src/main/java/biomesoplenty/common/worldgen/feature/BOPVegetationFeatures.java +++ b/src/main/java/biomesoplenty/common/worldgen/feature/BOPVegetationFeatures.java @@ -111,6 +111,7 @@ public class BOPVegetationFeatures public static final ResourceKey> FLOWER_WASTELAND = createKey("flower_wasteland"); public static final ResourceKey> FLOWER_WETLAND = createKey("flower_wetland"); public static final ResourceKey> FLOWER_WILDFLOWER = createKey("flower_wildflower"); + public static final ResourceKey> TREES_ASPEN_FOREST = createKey("trees_aspen_forest"); public static final ResourceKey> TREES_AURORAL_GARDEN = createKey("trees_auroral_garden"); public static final ResourceKey> TREES_BAYOU = createKey("trees_bayou"); public static final ResourceKey> TREES_BOG = createKey("trees_bog"); @@ -124,7 +125,7 @@ public class BOPVegetationFeatures public static final ResourceKey> TREES_HOT_SPRINGS = createKey("trees_hot_springs"); public static final ResourceKey> TREES_JADE_CLIFFS = createKey("trees_jade_cliffs"); public static final ResourceKey> TREES_LAVENDER_FIELD = createKey("trees_lavender_field"); - public static final ResourceKey> TREES_LAVENDER_FOREST = createKey("trees_lavender_forest"); + public static final ResourceKey> TREES_JACARANDA_FOREST = createKey("trees_jacaranda_forest"); public static final ResourceKey> TREES_LUSH_DESERT = createKey("trees_lush_desert"); public static final ResourceKey> TREES_MAPLE_FOREST = createKey("trees_maple_forest"); public static final ResourceKey> TREES_MEDITERRANEAN_FOREST = createKey("tress_mediterranean_forest"); @@ -141,7 +142,6 @@ public class BOPVegetationFeatures public static final ResourceKey> TREES_REDWOOD_FOREST = createKey("trees_redwood_forest"); public static final ResourceKey> TREES_SCRUBLAND = createKey("trees_scrubland"); public static final ResourceKey> TREES_SEASONAL_FOREST = createKey("trees_seasonal_forest"); - public static final ResourceKey> TREES_SEASONAL_ORCHARD = createKey("trees_seasonal_orchard"); public static final ResourceKey> TREES_SEASONAL_PUMPKIN_PATCH = createKey("trees_seasonal_pumpkin_patch"); public static final ResourceKey> TREES_SNOWBLOSSOM_GROVE = createKey("trees_snowblossom_grove"); public static final ResourceKey> TREES_SNOWY_CONIFEROUS_FOREST = createKey("trees_snowy_coniferous_forest"); @@ -310,6 +310,7 @@ public static void bootstrap(BootstapContext> context) register(context, BOPVegetationFeatures.FLOWER_WASTELAND, Feature.FLOWER, FeatureUtils.simplePatchConfiguration(Feature.SIMPLE_BLOCK, new SimpleBlockConfiguration(BlockStateProvider.simple(BOPBlocks.WILTED_LILY.get())))); register(context, BOPVegetationFeatures.FLOWER_WETLAND, Feature.FLOWER, grassPatch(new WeightedStateProvider(SimpleWeightedRandomList.builder().add(Blocks.BLUE_ORCHID.defaultBlockState(), 1).add(Blocks.POPPY.defaultBlockState(), 1).add(Blocks.DANDELION.defaultBlockState(), 1)), 64)); register(context, BOPVegetationFeatures.FLOWER_WILDFLOWER, Feature.FLOWER, FeatureUtils.simplePatchConfiguration(Feature.SIMPLE_BLOCK, new SimpleBlockConfiguration(BlockStateProvider.simple(BOPBlocks.WILDFLOWER.get())))); + register(context, BOPVegetationFeatures.TREES_ASPEN_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(BIG_YELLOW_MAPLE_TREE_CHECKED, 0.05F)), ASPEN_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_AURORAL_GARDEN, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(OAK_BUSH_CHECKED, 0.1F), new WeightedPlacedFeature(FIR_TREE_SMALL_CHECKED, 0.1F), new WeightedPlacedFeature(FIR_TREE_CHECKED, 0.025F), new WeightedPlacedFeature(BIG_RAINBOW_BIRCH_TREE_CHECKED, 0.4F)), RAINBOW_BIRCH_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_BAYOU, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(CYPRESS_TREE_MEDIUM_CHECKED, 0.3F)), CYPRESS_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_BOG, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(SPRUCE_TWIGLET_TREE_CHECKED, 0.4F), new WeightedPlacedFeature(MAPLE_TWIGLET_TREE_CHECKED, 0.6F)), MANGROVE_TWIGLET_TREE_CHECKED)); @@ -321,9 +322,9 @@ public static void bootstrap(BootstapContext> context) register(context, BOPVegetationFeatures.TREES_FIELD_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(OAK_BUSH_CHECKED, 0.25F)), TALL_SPRUCE_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_FUNGAL_JUNGLE, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(OAK_CHECKED, 0.1F), new WeightedPlacedFeature(BIG_OAK_TREE_CHECKED, 0.05F)), JUNGLE_BUSH_CHECKED)); register(context, BOPVegetationFeatures.TREES_HOT_SPRINGS, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(DARK_OAK_CHECKED, 0.05F)), PINE_TREE_CHECKED)); + register(context, BOPVegetationFeatures.TREES_JACARANDA_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(BIG_FLOWERING_TREE_CHECKED, 0.25F)), BIG_JACARANDA_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_JADE_CLIFFS, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(PINE_TREE_CHECKED, 0.075F)), SPRUCE_BUSH_CHECKED)); register(context, BOPVegetationFeatures.TREES_LAVENDER_FIELD, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(FLOWERING_OAK_TREE_BEES_CHECKED, 0.2F), new WeightedPlacedFeature(BIG_FLOWERING_TREE_CHECKED, 0.1F), new WeightedPlacedFeature(BIG_JACARANDA_TREE_CHECKED, 0.1F)), JACARANDA_TREE_BEES_CHECKED)); - register(context, BOPVegetationFeatures.TREES_LAVENDER_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(BIG_FLOWERING_TREE_CHECKED, 0.25F)), BIG_JACARANDA_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_LUSH_DESERT, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(PALM_TREE_CHECKED, 0.1F), new WeightedPlacedFeature(ACACIA_BUSH_TREE_CHECKED, 0.4F), new WeightedPlacedFeature(SPARSE_ACACIA_TREE_CHECKED, 0.2F)), ACACIA_TWIGLET_CHECKED)); register(context, BOPVegetationFeatures.TREES_MAPLE_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(TALL_SPRUCE_TREE_CHECKED, 0.1F), new WeightedPlacedFeature(BIG_RED_MAPLE_TREE_CHECKED, 0.3F)), RED_MAPLE_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_MEDITERRANEAN_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(SPARSE_OAK_TREE_CHECKED, 0.05F), new WeightedPlacedFeature(DARK_OAK_POPLAR_TREE_CHECKED, 0.2F), new WeightedPlacedFeature(SPRUCE_POPLAR_TREE_CHECKED, 0.4F), new WeightedPlacedFeature(FLOWERING_OAK_BUSH_CHECKED, 0.1F)), OAK_BUSH_CHECKED)); @@ -340,7 +341,6 @@ public static void bootstrap(BootstapContext> context) register(context, BOPVegetationFeatures.TREES_REDWOOD_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(REDWOOD_TREE_CHECKED, 0.3f), new WeightedPlacedFeature(REDWOOD_TREE_LARGE_CHECKED, 0.5f)), REDWOOD_TREE_MEDIUM_CHECKED)); register(context, BOPVegetationFeatures.TREES_SCRUBLAND, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(SPRUCE_TWIGLET_TREE_CHECKED, 0.3F), new WeightedPlacedFeature(TALL_TWIGLET_TREE_CHECKED, 0.1F)), ACACIA_TWIGLET_CHECKED)); register(context, BOPVegetationFeatures.TREES_SEASONAL_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(OAK_CHECKED, 0.05F), new WeightedPlacedFeature(FANCY_OAK_CHECKED, 0.025F), new WeightedPlacedFeature(RED_MAPLE_TREE_CHECKED, 0.2F), new WeightedPlacedFeature(YELLOW_MAPLE_TREE_CHECKED, 0.3F), new WeightedPlacedFeature(BIG_RED_MAPLE_TREE_CHECKED, 0.1F), new WeightedPlacedFeature(BIG_YELLOW_MAPLE_TREE_CHECKED, 0.1F), new WeightedPlacedFeature(BIG_ORANGE_MAPLE_TREE_CHECKED, 0.1F)), ORANGE_MAPLE_TREE_CHECKED)); - register(context, BOPVegetationFeatures.TREES_SEASONAL_ORCHARD, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(BIG_YELLOW_MAPLE_TREE_CHECKED, 0.05F)), ASPEN_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_SEASONAL_PUMPKIN_PATCH, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(OAK_BUSH_CHECKED, 0.2F), new WeightedPlacedFeature(ORANGE_MAPLE_TREE_CHECKED, 0.1F), new WeightedPlacedFeature(BIG_ORANGE_MAPLE_TREE_CHECKED, 0.05F)), TWIGLET_TREE_CHECKED)); register(context, BOPVegetationFeatures.TREES_SNOWBLOSSOM_GROVE, Feature.TREE, snowblossom().build()); register(context, BOPVegetationFeatures.TREES_SNOWY_CONIFEROUS_FOREST, Feature.RANDOM_SELECTOR, new RandomFeatureConfiguration(ImmutableList.of(new WeightedPlacedFeature(FIR_TREE_CHECKED, 0.4F)), FIR_TREE_LARGE_CHECKED)); diff --git a/src/main/java/biomesoplenty/common/worldgen/placement/BOPVegetationPlacements.java b/src/main/java/biomesoplenty/common/worldgen/placement/BOPVegetationPlacements.java index 96e41c5ac..1122ab787 100644 --- a/src/main/java/biomesoplenty/common/worldgen/placement/BOPVegetationPlacements.java +++ b/src/main/java/biomesoplenty/common/worldgen/placement/BOPVegetationPlacements.java @@ -94,7 +94,7 @@ public class BOPVegetationPlacements public static final ResourceKey PATCH_WATERGRASS_50 = createKey("patch_watergrass_50"); public static final ResourceKey PATCH_WATERGRASS_250 = createKey("patch_watergrass_250"); public static final ResourceKey FLOWER_LAVENDER = createKey("flower_lavender"); - public static final ResourceKey FLOWER_LAVENDER_FOREST = createKey("flower_lavender_forest"); + public static final ResourceKey FLOWER_JACARANDA_FOREST = createKey("flower_jacaranda_forest"); public static final ResourceKey FLOWER_LUSH_DESERT = createKey("flower_lush_desert"); public static final ResourceKey FLOWER_CLOVER_PATCH = createKey("flower_clover_patch"); public static final ResourceKey FLOWER_CONIFEROUS_FOREST = createKey("flower_coniferous_forest"); @@ -124,6 +124,7 @@ public class BOPVegetationPlacements public static final ResourceKey ROSE_BUSH_NORMAL = createKey("rose_bush_normal"); public static final ResourceKey ROSE_BUSH_EXTRA = createKey("rose_bush_extra"); public static final ResourceKey SUNFLOWER = createKey("sunflower"); + public static final ResourceKey TREES_ASPEN_FOREST = createKey("trees_aspen_forest"); public static final ResourceKey TREES_AURORAL_GARDEN = createKey("trees_auroral_garden"); public static final ResourceKey TREES_BAYOU = createKey("trees_bayou"); public static final ResourceKey TREES_BOG = createKey("trees_bog"); @@ -135,10 +136,10 @@ public class BOPVegetationPlacements public static final ResourceKey TREES_FIELD_FOREST = createKey("trees_field_forest"); public static final ResourceKey TREES_FUNGAL_JUNGLE = createKey("trees_fungal_jungle"); public static final ResourceKey TREES_FIR_CLEARING = createKey("trees_fir_clearing"); + public static final ResourceKey TREES_JACARANDA_FOREST = createKey("trees_jacaranda_forest"); public static final ResourceKey TREES_JADE_CLIFFS = createKey("trees_jade_cliffs"); public static final ResourceKey TREES_HOT_SPRINGS = createKey("trees_hot_springs"); public static final ResourceKey TREES_LAVENDER_FIELD = createKey("trees_lavender_field"); - public static final ResourceKey TREES_LAVENDER_FOREST = createKey("trees_lavender_forest"); public static final ResourceKey TREES_LUSH_DESERT = createKey("trees_lush_desert"); public static final ResourceKey TREES_MAPLE_FOREST = createKey("trees_maple_forest"); public static final ResourceKey TREES_MEDITERRANEAN_FOREST = createKey("trees_mediterranean_forest"); @@ -160,7 +161,6 @@ public class BOPVegetationPlacements public static final ResourceKey TREES_ROCKY_SHRUBLAND = createKey("trees_rocky_shrubland"); public static final ResourceKey TREES_SHRUBLAND = createKey("trees_shrubland"); public static final ResourceKey TREES_SEASONAL_FOREST = createKey("trees_seasonal_forest"); - public static final ResourceKey TREES_SEASONAL_ORCHARD = createKey("trees_seasonal_orchard"); public static final ResourceKey TREES_SEASONAL_PUMPKIN_PATCH = createKey("trees_seasonal_pumpkin_patch"); public static final ResourceKey TREES_SNOWBLOSSOM_GROVE = createKey("trees_snowblossom_grove"); public static final ResourceKey TREES_SNOWY_CONIFEROUS_FOREST = createKey("trees_snowy_coniferous_forest"); @@ -249,6 +249,7 @@ public static void bootstrap(BootstapContext context) final Holder> PATCH_PEONY = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.PATCH_PEONY); final Holder> ROSE_BUSH = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.ROSE_BUSH); final Holder> SUNFLOWER = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.SUNFLOWER); + final Holder> TREES_ASPEN_FOREST = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_ASPEN_FOREST); final Holder> TREES_AURORAL_GARDEN = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_AURORAL_GARDEN); final Holder> TREES_BAYOU = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_BAYOU); final Holder> TREES_BOG = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_BOG); @@ -261,9 +262,9 @@ public static void bootstrap(BootstapContext context) final Holder> TREES_FUNGAL_JUNGLE = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_FUNGAL_JUNGLE); final Holder> FIR_TREE_SMALL = configuredFeatureGetter.getOrThrow(BOPTreeFeatures.FIR_TREE_SMALL); final Holder> TREES_HOT_SPRINGS = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_HOT_SPRINGS); + final Holder> TREES_JACARANDA_FOREST = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_JACARANDA_FOREST); final Holder> TREES_JADE_CLIFFS = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_JADE_CLIFFS); final Holder> TREES_LAVENDER_FIELD = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_LAVENDER_FIELD); - final Holder> TREES_LAVENDER_FOREST = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_LAVENDER_FOREST); final Holder> TREES_LUSH_DESERT = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_LUSH_DESERT); final Holder> TREES_MAPLE_FOREST = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_MAPLE_FOREST); final Holder> TREES_MEDITERRANEAN_FOREST = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_MEDITERRANEAN_FOREST); @@ -284,7 +285,6 @@ public static void bootstrap(BootstapContext context) final Holder> OAK_BUSH = configuredFeatureGetter.getOrThrow(BOPTreeFeatures.OAK_BUSH); final Holder> TREES_SCRUBLAND = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_SCRUBLAND); final Holder> TREES_SEASONAL_FOREST = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_SEASONAL_FOREST); - final Holder> TREES_SEASONAL_ORCHARD = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_SEASONAL_ORCHARD); final Holder> TREES_SEASONAL_PUMPKIN_PATCH = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_SEASONAL_PUMPKIN_PATCH); final Holder> TREES_SNOWBLOSSOM_GROVE = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_SNOWBLOSSOM_GROVE); final Holder> TREES_SNOWY_CONIFEROUS_FOREST = configuredFeatureGetter.getOrThrow(BOPVegetationFeatures.TREES_SNOWY_CONIFEROUS_FOREST); @@ -375,7 +375,7 @@ public static void bootstrap(BootstapContext context) register(context, BOPVegetationPlacements.PATCH_WATERGRASS_50, PATCH_WATERGRASS, seagrassPlacement(10)); register(context, BOPVegetationPlacements.PATCH_WATERGRASS_250, PATCH_WATERGRASS, seagrassPlacement(100)); register(context, BOPVegetationPlacements.FLOWER_LAVENDER, FLOWER_LAVENDER, VegetationPlacements.worldSurfaceSquaredWithCount(15)); - register(context, BOPVegetationPlacements.FLOWER_LAVENDER_FOREST, FLOWER_LAVENDER, VegetationPlacements.worldSurfaceSquaredWithCount(1)); + register(context, BOPVegetationPlacements.FLOWER_JACARANDA_FOREST, FLOWER_LAVENDER, VegetationPlacements.worldSurfaceSquaredWithCount(1)); register(context, BOPVegetationPlacements.FLOWER_LUSH_DESERT, FLOWER_WILDFLOWER, List.of(RarityFilter.onAverageOnceEvery(4), InSquarePlacement.spread(), PlacementUtils.HEIGHTMAP, BiomeFilter.biome())); register(context, BOPVegetationPlacements.FLOWER_CLOVER_PATCH, FLOWER_CLOVER_PATCH, List.of(RarityFilter.onAverageOnceEvery(4), InSquarePlacement.spread(), PlacementUtils.HEIGHTMAP, BiomeFilter.biome())); register(context, BOPVegetationPlacements.FLOWER_CONIFEROUS_FOREST, FLOWER_CONIFEROUS_FOREST, List.of(RarityFilter.onAverageOnceEvery(4), InSquarePlacement.spread(), PlacementUtils.HEIGHTMAP, BiomeFilter.biome())); @@ -405,6 +405,7 @@ public static void bootstrap(BootstapContext context) register(context, BOPVegetationPlacements.ROSE_BUSH_NORMAL, ROSE_BUSH, List.of(RarityFilter.onAverageOnceEvery(5), InSquarePlacement.spread(), PlacementUtils.HEIGHTMAP, BiomeFilter.biome())); register(context, BOPVegetationPlacements.ROSE_BUSH_EXTRA, ROSE_BUSH, List.of(RarityFilter.onAverageOnceEvery(1), InSquarePlacement.spread(), PlacementUtils.HEIGHTMAP, BiomeFilter.biome())); register(context, BOPVegetationPlacements.SUNFLOWER, SUNFLOWER, List.of(RarityFilter.onAverageOnceEvery(5), InSquarePlacement.spread(), PlacementUtils.HEIGHTMAP, BiomeFilter.biome())); + register(context, BOPVegetationPlacements.TREES_ASPEN_FOREST, TREES_ASPEN_FOREST, treePlacement(PlacementUtils.countExtra(3, 0.2F, 1))); register(context, BOPVegetationPlacements.TREES_AURORAL_GARDEN, TREES_AURORAL_GARDEN, treePlacement(PlacementUtils.countExtra(10, 0.2F, 1))); register(context, BOPVegetationPlacements.TREES_BAYOU, TREES_BAYOU, waterTreePlacement(PlacementUtils.countExtra(2, 0.2F, 1))); register(context, BOPVegetationPlacements.TREES_BOG, TREES_BOG, treePlacement(PlacementUtils.countExtra(10, 0.2F, 1))); @@ -417,9 +418,9 @@ public static void bootstrap(BootstapContext context) register(context, BOPVegetationPlacements.TREES_FUNGAL_JUNGLE, TREES_FUNGAL_JUNGLE, treePlacement(PlacementUtils.countExtra(5, 0.1F, 1))); register(context, BOPVegetationPlacements.TREES_FIR_CLEARING, FIR_TREE_SMALL, treePlacement(PlacementUtils.countExtra(1, 0.1F, 1), BOPBlocks.FIR_SAPLING.get())); register(context, BOPVegetationPlacements.TREES_HOT_SPRINGS, TREES_HOT_SPRINGS, treePlacement(PlacementUtils.countExtra(2, 0.2F, 1))); + register(context, BOPVegetationPlacements.TREES_JACARANDA_FOREST, TREES_JACARANDA_FOREST, treePlacement(PlacementUtils.countExtra(7, 0.2F, 10))); register(context, BOPVegetationPlacements.TREES_JADE_CLIFFS, TREES_JADE_CLIFFS, treePlacement(PlacementUtils.countExtra(25, 0.1F, 1))); register(context, BOPVegetationPlacements.TREES_LAVENDER_FIELD, TREES_LAVENDER_FIELD, treePlacement(PlacementUtils.countExtra(1, 0.1F, 25))); - register(context, BOPVegetationPlacements.TREES_LAVENDER_FOREST, TREES_LAVENDER_FOREST, treePlacement(PlacementUtils.countExtra(7, 0.2F, 10))); register(context, BOPVegetationPlacements.TREES_LUSH_DESERT, TREES_LUSH_DESERT, treePlacement(PlacementUtils.countExtra(0, 0.2F, 8))); register(context, BOPVegetationPlacements.TREES_MAPLE_FOREST, TREES_MAPLE_FOREST, treePlacement(PlacementUtils.countExtra(10, 0.1F, 1))); register(context, BOPVegetationPlacements.TREES_MEDITERRANEAN_FOREST, TREES_MEDITERRANEAN_FOREST, treePlacement(PlacementUtils.countExtra(3, 0.1F, 1))); @@ -441,7 +442,6 @@ public static void bootstrap(BootstapContext context) register(context, BOPVegetationPlacements.TREES_SHRUBLAND, OAK_BUSH, treePlacement(PlacementUtils.countExtra(6, 0.1F, 1), Blocks.OAK_SAPLING)); register(context, BOPVegetationPlacements.TREES_SCRUBLAND, TREES_SCRUBLAND, treePlacement(PlacementUtils.countExtra(0, 0.2F, 6))); register(context, BOPVegetationPlacements.TREES_SEASONAL_FOREST, TREES_SEASONAL_FOREST, treePlacement(PlacementUtils.countExtra(10, 0.1F, 1))); - register(context, BOPVegetationPlacements.TREES_SEASONAL_ORCHARD, TREES_SEASONAL_ORCHARD, treePlacement(PlacementUtils.countExtra(3, 0.2F, 1))); register(context, BOPVegetationPlacements.TREES_SEASONAL_PUMPKIN_PATCH, TREES_SEASONAL_PUMPKIN_PATCH, treePlacement(PlacementUtils.countExtra(6, 0.1F, 1))); register(context, BOPVegetationPlacements.TREES_SNOWBLOSSOM_GROVE, TREES_SNOWBLOSSOM_GROVE, treePlacement(PlacementUtils.countExtra(7, 0.1F, 1), BOPBlocks.SNOWBLOSSOM_SAPLING.get())); register(context, BOPVegetationPlacements.TREES_SNOWY_CONIFEROUS_FOREST, TREES_SNOWY_CONIFEROUS_FOREST, treePlacement(PlacementUtils.countExtra(6, 0.1F, 1))); diff --git a/src/main/java/biomesoplenty/init/ModBiomes.java b/src/main/java/biomesoplenty/init/ModBiomes.java index 36102bc74..d6dc18c56 100644 --- a/src/main/java/biomesoplenty/init/ModBiomes.java +++ b/src/main/java/biomesoplenty/init/ModBiomes.java @@ -47,6 +47,7 @@ public static void bootstrapBiomes(BootstapContext context) HolderGetter> carverGetter = context.lookup(Registries.CONFIGURED_CARVER); HolderGetter placedFeatureGetter = context.lookup(Registries.PLACED_FEATURE); + register(context, BOPBiomes.ASPEN_FOREST, BOPOverworldBiomes.aspenForest(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.AURORAL_GARDEN, BOPOverworldBiomes.auroralGarden(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.BAYOU, BOPOverworldBiomes.bayou(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.BOG, BOPOverworldBiomes.bog(placedFeatureGetter, carverGetter)); @@ -65,9 +66,9 @@ public static void bootstrapBiomes(BootstapContext context) register(context, BOPBiomes.GRASSLAND, BOPOverworldBiomes.grassland(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.HIGHLAND, BOPOverworldBiomes.highland(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.HOT_SPRINGS, BOPOverworldBiomes.hotSprings(placedFeatureGetter, carverGetter)); + register(context, BOPBiomes.JACARANDA_FOREST, BOPOverworldBiomes.jacarandaForest(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.JADE_CLIFFS, BOPOverworldBiomes.jadeCliffs(placedFeatureGetter, carverGetter)); - register(context, BOPBiomes.LAVENDER_FIELD, BOPOverworldBiomes.lavenderField(placedFeatureGetter, carverGetter, false)); - register(context, BOPBiomes.LAVENDER_FOREST, BOPOverworldBiomes.lavenderField(placedFeatureGetter, carverGetter, true)); + register(context, BOPBiomes.LAVENDER_FIELD, BOPOverworldBiomes.lavenderField(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.LUSH_DESERT, BOPOverworldBiomes.lushDesert(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.LUSH_SAVANNA, BOPOverworldBiomes.lushSavanna(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.MAPLE_WOODS, BOPOverworldBiomes.mapleWoods(placedFeatureGetter, carverGetter, false)); @@ -90,7 +91,6 @@ public static void bootstrapBiomes(BootstapContext context) register(context, BOPBiomes.ROCKY_SHRUBLAND, BOPOverworldBiomes.rockyShrubland(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.SCRUBLAND, BOPOverworldBiomes.scrubland(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.SEASONAL_FOREST, BOPOverworldBiomes.seasonalForest(placedFeatureGetter, carverGetter)); - register(context, BOPBiomes.SEASONAL_ORCHARD, BOPOverworldBiomes.seasonalOrchard(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.SHRUBLAND, BOPOverworldBiomes.shrubland(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.SNOWBLOSSOM_GROVE, BOPOverworldBiomes.snowblossomGrove(placedFeatureGetter, carverGetter)); register(context, BOPBiomes.SNOWY_CONIFEROUS_FOREST, BOPOverworldBiomes.coniferousForest(placedFeatureGetter, carverGetter, true)); @@ -119,6 +119,7 @@ public static void bootstrapBiomes(BootstapContext context) private static void registerVillagerTypes() { + registerVillagerType(BOPBiomes.ASPEN_FOREST, VillagerType.PLAINS); registerVillagerType(BOPBiomes.AURORAL_GARDEN, VillagerType.SNOW); registerVillagerType(BOPBiomes.BAYOU, VillagerType.SWAMP); registerVillagerType(BOPBiomes.BOG, VillagerType.SWAMP); @@ -137,9 +138,9 @@ private static void registerVillagerTypes() registerVillagerType(BOPBiomes.GRASSLAND, VillagerType.PLAINS); registerVillagerType(BOPBiomes.HIGHLAND, VillagerType.PLAINS); registerVillagerType(BOPBiomes.HOT_SPRINGS, VillagerType.TAIGA); + registerVillagerType(BOPBiomes.JACARANDA_FOREST, VillagerType.PLAINS); registerVillagerType(BOPBiomes.JADE_CLIFFS, VillagerType.PLAINS); registerVillagerType(BOPBiomes.LAVENDER_FIELD, VillagerType.PLAINS); - registerVillagerType(BOPBiomes.LAVENDER_FOREST, VillagerType.PLAINS); registerVillagerType(BOPBiomes.LUSH_DESERT, VillagerType.SAVANNA); registerVillagerType(BOPBiomes.LUSH_SAVANNA, VillagerType.SAVANNA); registerVillagerType(BOPBiomes.MAPLE_WOODS, VillagerType.TAIGA); @@ -162,7 +163,6 @@ private static void registerVillagerTypes() registerVillagerType(BOPBiomes.ROCKY_SHRUBLAND, VillagerType.PLAINS); registerVillagerType(BOPBiomes.SCRUBLAND, VillagerType.SAVANNA); registerVillagerType(BOPBiomes.SEASONAL_FOREST, VillagerType.PLAINS); - registerVillagerType(BOPBiomes.SEASONAL_ORCHARD, VillagerType.PLAINS); registerVillagerType(BOPBiomes.SHRUBLAND, VillagerType.PLAINS); registerVillagerType(BOPBiomes.SNOWBLOSSOM_GROVE, VillagerType.SNOW); registerVillagerType(BOPBiomes.SNOWY_CONIFEROUS_FOREST, VillagerType.TAIGA); diff --git a/src/main/resources/assets/biomesoplenty/lang/en_us.json b/src/main/resources/assets/biomesoplenty/lang/en_us.json index 4ac340109..8da02072f 100644 --- a/src/main/resources/assets/biomesoplenty/lang/en_us.json +++ b/src/main/resources/assets/biomesoplenty/lang/en_us.json @@ -8,6 +8,7 @@ "generator.minecraft.biomesoplenty": "Biomes O' Plenty", "itemGroup.biomesoplenty": "Biomes O' Plenty", + "biome.biomesoplenty.aspen_forest": "Aspen Forest", "biome.biomesoplenty.auroral_garden": "Auroral Garden", "biome.biomesoplenty.bayou": "Bayou", "biome.biomesoplenty.bog": "Bog", @@ -29,9 +30,9 @@ "biome.biomesoplenty.grassland": "Grassland", "biome.biomesoplenty.highland": "Highland", "biome.biomesoplenty.hot_springs": "Hot Springs", + "biome.biomesoplenty.jacaranda_forest": "Jacaranda Forest", "biome.biomesoplenty.jade_cliffs": "Jade Cliffs", "biome.biomesoplenty.lavender_field": "Lavender Field", - "biome.biomesoplenty.lavender_forest": "Lavender Forest", "biome.biomesoplenty.lush_desert": "Lush Desert", "biome.biomesoplenty.lush_savanna": "Lush Savanna", "biome.biomesoplenty.maple_woods": "Maple Woods", @@ -54,7 +55,6 @@ "biome.biomesoplenty.rocky_shrubland": "Rocky Shrubland", "biome.biomesoplenty.scrubland": "Scrubland", "biome.biomesoplenty.seasonal_forest": "Seasonal Forest", - "biome.biomesoplenty.seasonal_orchard": "Seasonal Orchard", "biome.biomesoplenty.shrubland": "Shrubland", "biome.biomesoplenty.snowblossom_grove": "Snowblossom Grove", "biome.biomesoplenty.snowy_coniferous_forest": "Snowy Coniferous Forest", diff --git a/src/main/resources/data/biomesoplenty/advancements/biomesoplenty/all_biomes.json b/src/main/resources/data/biomesoplenty/advancements/biomesoplenty/all_biomes.json index 5e743a8a8..131a495f9 100644 --- a/src/main/resources/data/biomesoplenty/advancements/biomesoplenty/all_biomes.json +++ b/src/main/resources/data/biomesoplenty/advancements/biomesoplenty/all_biomes.json @@ -15,6 +15,22 @@ }, "parent": "biomesoplenty:biomesoplenty/root", "criteria": { + "aspen_forest": { + "trigger": "minecraft:location", + "conditions": { + "player": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "location": { + "biome": "biomesoplenty:aspen_forest" + } + } + } + ] + } + }, "auroral_garden": { "trigger": "minecraft:location", "conditions": { @@ -351,6 +367,22 @@ ] } }, + "jacaranda_forest": { + "trigger": "minecraft:location", + "conditions": { + "player": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "location": { + "biome": "biomesoplenty:jacaranda_forest" + } + } + } + ] + } + }, "jade_cliffs": { "trigger": "minecraft:location", "conditions": { @@ -382,22 +414,6 @@ } ] } - }, - "lavender_forest": { - "trigger": "minecraft:location", - "conditions": { - "player": [ - { - "condition": "minecraft:entity_properties", - "entity": "this", - "predicate": { - "location": { - "biome": "biomesoplenty:lavender_forest" - } - } - } - ] - } }, "lush_desert": { "trigger": "minecraft:location", @@ -751,22 +767,6 @@ ] } }, - "seasonal_orchard": { - "trigger": "minecraft:location", - "conditions": { - "player": [ - { - "condition": "minecraft:entity_properties", - "entity": "this", - "predicate": { - "location": { - "biome": "biomesoplenty:seasonal_orchard" - } - } - } - ] - } - }, "shrubland": { "trigger": "minecraft:location", "conditions": { @@ -1041,6 +1041,9 @@ } }, "requirements": [ + [ + "aspen_forest" + ], [ "auroral_garden" ], @@ -1105,13 +1108,13 @@ "hot_springs" ], [ - "jade_cliffs" + "jacaranda_forest" ], [ - "lavender_field" + "jade_cliffs" ], [ - "lavender_forest" + "lavender_field" ], [ "lush_desert" @@ -1180,9 +1183,6 @@ "seasonal_forest" ], [ - "seasonal_orchard" - ], - [ "shrubland" ], [ diff --git a/src/main/resources/data/biomesoplenty/advancements/biomesoplenty/root.json b/src/main/resources/data/biomesoplenty/advancements/biomesoplenty/root.json index b4186028b..a0afe7d11 100644 --- a/src/main/resources/data/biomesoplenty/advancements/biomesoplenty/root.json +++ b/src/main/resources/data/biomesoplenty/advancements/biomesoplenty/root.json @@ -14,6 +14,22 @@ "announce_to_chat": false }, "criteria": { + "aspen_forest": { + "trigger": "minecraft:location", + "conditions": { + "player": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "location": { + "biome": "biomesoplenty:aspen_forest" + } + } + } + ] + } + }, "auroral_garden": { "trigger": "minecraft:location", "conditions": { @@ -350,6 +366,22 @@ ] } }, + "jacaranda_forest": { + "trigger": "minecraft:location", + "conditions": { + "player": [ + { + "condition": "minecraft:entity_properties", + "entity": "this", + "predicate": { + "location": { + "biome": "biomesoplenty:jacaranda_forest" + } + } + } + ] + } + }, "jade_cliffs": { "trigger": "minecraft:location", "conditions": { @@ -381,22 +413,6 @@ } ] } - }, - "lavender_forest": { - "trigger": "minecraft:location", - "conditions": { - "player": [ - { - "condition": "minecraft:entity_properties", - "entity": "this", - "predicate": { - "location": { - "biome": "biomesoplenty:lavender_forest" - } - } - } - ] - } }, "lush_desert": { "trigger": "minecraft:location", @@ -750,22 +766,6 @@ ] } }, - "seasonal_orchard": { - "trigger": "minecraft:location", - "conditions": { - "player": [ - { - "condition": "minecraft:entity_properties", - "entity": "this", - "predicate": { - "location": { - "biome": "biomesoplenty:seasonal_orchard" - } - } - } - ] - } - }, "shrubland": { "trigger": "minecraft:location", "conditions": { @@ -1041,6 +1041,7 @@ }, "requirements": [ [ + "aspen_forest", "auroral_garden", "bayou", "bog", @@ -1062,9 +1063,9 @@ "grassland", "highland", "hot_springs", + "jacaranda_forest", "jade_cliffs", "lavender_field", - "lavender_forest", "lush_desert", "lush_savanna", "maple_woods", @@ -1087,7 +1088,6 @@ "rocky_shrubland", "scrubland", "seasonal_forest", - "seasonal_orchard", "shrubland", "snowblossom_grove", "snowy_coniferous_forest", diff --git a/src/main/resources/data/forge/tags/worldgen/biome/is_dense/overworld.json b/src/main/resources/data/forge/tags/worldgen/biome/is_dense/overworld.json index 73f7c2f19..4cd340606 100644 --- a/src/main/resources/data/forge/tags/worldgen/biome/is_dense/overworld.json +++ b/src/main/resources/data/forge/tags/worldgen/biome/is_dense/overworld.json @@ -10,7 +10,7 @@ "required": false }, { - "id": "biomesoplenty:lavender_forest", + "id": "biomesoplenty:jacaranda_forest", "required": false }, { diff --git a/src/main/resources/data/forge/tags/worldgen/biome/is_lush.json b/src/main/resources/data/forge/tags/worldgen/biome/is_lush.json index 72f3cd22b..aac804b80 100644 --- a/src/main/resources/data/forge/tags/worldgen/biome/is_lush.json +++ b/src/main/resources/data/forge/tags/worldgen/biome/is_lush.json @@ -18,11 +18,11 @@ "required": false }, { - "id": "biomesoplenty:lavender_field", + "id": "biomesoplenty:jacaranda_forest", "required": false }, { - "id": "biomesoplenty:lavender_forest", + "id": "biomesoplenty:lavender_field", "required": false }, { diff --git a/src/main/resources/data/minecraft/tags/worldgen/biome/is_forest.json b/src/main/resources/data/minecraft/tags/worldgen/biome/is_forest.json index b494e8d32..c74ee388d 100644 --- a/src/main/resources/data/minecraft/tags/worldgen/biome/is_forest.json +++ b/src/main/resources/data/minecraft/tags/worldgen/biome/is_forest.json @@ -1,6 +1,10 @@ { "replace": false, "values": [ + { + "id": "biomesoplenty:aspen_forest", + "required": false + }, { "id": "biomesoplenty:mediterranean_forest", "required": false @@ -25,10 +29,6 @@ "id": "biomesoplenty:seasonal_forest", "required": false }, - { - "id": "biomesoplenty:seasonal_orchard", - "required": false - }, { "id": "biomesoplenty:woodland", "required": false diff --git a/src/main/resources/data/minecraft/tags/worldgen/biome/is_overworld.json b/src/main/resources/data/minecraft/tags/worldgen/biome/is_overworld.json index eb6e6f948..bf69b8de7 100644 --- a/src/main/resources/data/minecraft/tags/worldgen/biome/is_overworld.json +++ b/src/main/resources/data/minecraft/tags/worldgen/biome/is_overworld.json @@ -1,5 +1,9 @@ { "values": [ + { + "id": "biomesoplenty:aspen_forest", + "required": false + }, { "id": "biomesoplenty:auroral_garden", "required": false @@ -77,15 +81,15 @@ "required": false }, { - "id": "biomesoplenty:jade_cliffs", + "id": "biomesoplenty:jacaranda_forest", "required": false }, { - "id": "biomesoplenty:lavender_field", + "id": "biomesoplenty:jade_cliffs", "required": false }, { - "id": "biomesoplenty:lavender_forest", + "id": "biomesoplenty:lavender_field", "required": false }, { @@ -176,10 +180,6 @@ "id": "biomesoplenty:seasonal_forest", "required": false }, - { - "id": "biomesoplenty:seasonal_orchard", - "required": false - }, { "id": "biomesoplenty:shrubland", "required": false diff --git a/src/main/resources/data/minecraft/tags/worldgen/biome/stronghold_biased_to.json b/src/main/resources/data/minecraft/tags/worldgen/biome/stronghold_biased_to.json index 12c0422e8..ec8626a8c 100644 --- a/src/main/resources/data/minecraft/tags/worldgen/biome/stronghold_biased_to.json +++ b/src/main/resources/data/minecraft/tags/worldgen/biome/stronghold_biased_to.json @@ -1,5 +1,9 @@ { "values": [ + { + "id": "biomesoplenty:aspen_forest", + "required": false + }, { "id": "biomesoplenty:auroral_garden", "required": false @@ -77,15 +81,15 @@ "required": false }, { - "id": "biomesoplenty:jade_cliffs", + "id": "biomesoplenty:jacaranda_forest", "required": false }, { - "id": "biomesoplenty:lavender_field", + "id": "biomesoplenty:jade_cliffs", "required": false }, { - "id": "biomesoplenty:lavender_forest", + "id": "biomesoplenty:lavender_field", "required": false }, { @@ -172,10 +176,6 @@ "id": "biomesoplenty:seasonal_forest", "required": false }, - { - "id": "biomesoplenty:seasonal_orchard", - "required": false - }, { "id": "biomesoplenty:shrubland", "required": false