Ice Rocks!

This commit is contained in:
Martin Prokoph
2024-09-17 00:34:28 +02:00
parent da7af06774
commit 34ae7e922b
20 changed files with 256 additions and 21 deletions

1
.gitignore vendored
View File

@@ -22,3 +22,4 @@ bin/
# fabric
run/
/src/main/generated/.cache

View File

@@ -1,4 +1,4 @@
// 1.21 2024-09-16T20:01:04.36031781 This Rocks!/rocks
// 1.21 2024-09-17T00:30:20.766025931 This Rocks!/rocks
d71c0556b644dcaf5737175f7336de62ebdbb167 data/rocks/worldgen/configured_feature/mangrove_stick.json
dcc0d9933482f519f2f7e50417b78be0a515918d data/rocks/worldgen/placed_feature/soul_soil_rock.json
fa2f1ffb8e1754f320b7fa507bebaecccdc48390 data/rocks/worldgen/configured_feature/spruce_stick.json
@@ -8,8 +8,8 @@ fa2f1ffb8e1754f320b7fa507bebaecccdc48390 data/rocks/worldgen/configured_feature/
9848f6c90ac79ec1021ce737f502f5f919cddc0b data/rocks/worldgen/placed_feature/acacia_stick.json
3bb5af6803e29079a3757ab026bcdedee9a3f4a3 data/rocks/worldgen/placed_feature/crimson_stick.json
7fbc9d652d5a02582c260b4c76d05566339a68a1 data/rocks/worldgen/configured_feature/granite_rock.json
91cdd883e2f96bd18ff43e0451ede59f64045d04 data/rocks/worldgen/placed_feature/rock.json
9a4bf562fe53bfcff21a39bfe6043a48986ab87d data/rocks/worldgen/placed_feature/sand_rock.json
683bc011a2fa35ca0a457d0eeaab4a900ee6dd55 data/rocks/worldgen/placed_feature/rock.json
c33151e25a50dcc5a826e65933ab9719ad639d6d data/rocks/worldgen/placed_feature/end_stone_rock.json
dbda0b9c6a571f8d5cbe47fda3cda2f8d08ff9f2 data/rocks/worldgen/configured_feature/bamboo_stick.json
3a37c1f098d280104c74d2ddff197ec9d2225f39 data/rocks/worldgen/configured_feature/diorite_rock.json
@@ -19,8 +19,8 @@ ac68decd062ded192b01770ec250d76a55e76177 data/rocks/worldgen/configured_feature/
66039045c4bce89398ae0466b1c14ca3cd68912a data/rocks/worldgen/configured_feature/warped_stick.json
ae1b4c625b9387c5dfc8c1eb53c1eda353ffa712 data/rocks/worldgen/placed_feature/jungle_stick.json
6454db935e810df3ad97aa625308e827b57e115d data/rocks/worldgen/configured_feature/acacia_stick.json
5e1c33acb6043e8e33561f06650d0973382d6054 data/rocks/worldgen/placed_feature/nether_geyser.json
6b1fa178181fd3ec1138da12e220976bf11f831c data/rocks/worldgen/configured_feature/nether_gravel_rock.json
5e1c33acb6043e8e33561f06650d0973382d6054 data/rocks/worldgen/placed_feature/nether_geyser.json
16e9b2f47ac483b8f672c42a5c36194d14e7f7f7 data/rocks/worldgen/placed_feature/nether_gravel_rock.json
a09aa0e744166ba6c07e640a55dcb6570c34936f data/rocks/worldgen/placed_feature/andesite_rock.json
07245b68ad42948f36707d5b83dc995ded4b3038 data/rocks/worldgen/placed_feature/seashell.json
@@ -29,6 +29,7 @@ de8a64d00b10892f62b21dd3e034608836b4215b data/rocks/worldgen/configured_feature/
26574f35fb852a572ad10c2882160b4fc280aad8 data/rocks/worldgen/configured_feature/sand_rock.json
6b1fa178181fd3ec1138da12e220976bf11f831c data/rocks/worldgen/configured_feature/gravel_rock.json
4554733520656e979093beaa05d881213ad81415 data/rocks/worldgen/configured_feature/underwater_seashell.json
63deabd85376d70de53571f72e29690d2781d6b6 data/rocks/worldgen/configured_feature/ice_rock.json
a2553fb89e8382c0e04dcf3ded89ffcad51b111b data/rocks/worldgen/configured_feature/andesite_rock.json
8d525964606767ac06f52fb03e331029444d934f data/rocks/worldgen/placed_feature/snowy_geyser.json
91fa443267b7ba1d67d25466457e35cbc2123a12 data/rocks/worldgen/configured_feature/dark_oak_stick.json
@@ -41,6 +42,7 @@ d0179c57f1a557cd656ebcd902bfbb57fd877e16 data/rocks/worldgen/configured_feature/
5bc6faa179ca69a8a89cc04910f0288621ce89ea data/rocks/worldgen/configured_feature/nether_geyser.json
eb9d7f31f960d8ec61122d75623acb1e2529b4fa data/rocks/worldgen/placed_feature/cherry_stick.json
e36c8db5ef949c547e917e3543da41cfbe378970 data/rocks/worldgen/placed_feature/bamboo_stick.json
9faf9589496f2b0dea0c6597e0bcacbbdd18b194 data/rocks/worldgen/placed_feature/ice_rock.json
5b90945a0ecc164ea8ae165da3d2c03c74b96cc7 data/rocks/worldgen/placed_feature/birch_stick.json
384c6ad8b5505b2b9900c159f9cf9ff7e0ff7a62 data/rocks/worldgen/placed_feature/netherrack_rock.json
3543cb07163388142629427a44900841e9da1869 data/rocks/worldgen/configured_feature/soul_soil_rock.json

View File

@@ -1 +1 @@
// 1.21 2024-09-16T20:01:04.361596285 This Rocks!/Tags for minecraft:block
// 1.21 2024-09-17T00:30:20.768022552 This Rocks!/Tags for minecraft:block

View File

@@ -1,26 +1,26 @@
// 1.21 2024-09-16T20:01:04.361779283 This Rocks!/Block Loot Tables
// 1.21 2024-09-17T00:30:20.768248467 This Rocks!/Block Loot Tables
847f71960b56bcc92eaebfb2f98818477868e56b data/rocks/loot_table/blocks/soul_soil_rock.json
f0908425c618a5483354eba1ead6a611f1fa51fb data/rocks/loot_table/blocks/birch_stick.json
cf62804400411aabc548c741280abde43a3d0d59 data/rocks/loot_table/blocks/mangrove_stick.json
e9d103438e87429bf353ae9f8c72b986cfb03982 data/rocks/loot_table/blocks/oak_stick.json
0b5f09e47b168ea1605353b441cf84423e998781 data/rocks/loot_table/blocks/red_sand_rock.json
1ed5083da79cd8c0e4629b4906efcdfa7fa13f7b data/rocks/loot_table/blocks/starfish.json
a943852527aa61b311a21312312cb67b0e941593 data/rocks/loot_table/blocks/crimson_stick.json
706890e011d7e0f74f575790ea9e50b55085f256 data/rocks/loot_table/blocks/spruce_stick.json
a4daf8fc7c400e7c9a16f4f1392e29d35dcddc5a data/rocks/loot_table/blocks/ice_rock.json
f34d9890e8353b13952972d71085eeff4bcab1eb data/rocks/loot_table/blocks/cherry_stick.json
6628d84cd87044ac74c6170bf1adb4a0ba3e1451 data/rocks/loot_table/blocks/netherrack_rock.json
95e50bb507ce330ceff8c04eca287457193015bb data/rocks/loot_table/blocks/acacia_stick.json
aa89fb0888b5a8abaef4c713c292ec8076298170 data/rocks/loot_table/blocks/gravel_rock.json
57039ec5e50322cbfde63394dd304315fb670dd7 data/rocks/loot_table/blocks/andesite_rock.json
8cbee37f5a070e21308dc7c0aa9b0beea416b84a data/rocks/loot_table/blocks/sand_rock.json
8224883d1a2ed01334a64216168b1f56c4ed2a90 data/rocks/loot_table/blocks/pinecone.json
c37079a8ac71c003bdda9d8e6a9c4b770c8a8bbc data/rocks/loot_table/blocks/rock.json
f0908425c618a5483354eba1ead6a611f1fa51fb data/rocks/loot_table/blocks/birch_stick.json
cf62804400411aabc548c741280abde43a3d0d59 data/rocks/loot_table/blocks/mangrove_stick.json
71181493ade8079fbb528115025e4a4d345e29e3 data/rocks/loot_table/blocks/end_stone_rock.json
7c6403bd90213358a18381e79395d986daf21a88 data/rocks/loot_table/blocks/diorite_rock.json
f34d9890e8353b13952972d71085eeff4bcab1eb data/rocks/loot_table/blocks/cherry_stick.json
6628d84cd87044ac74c6170bf1adb4a0ba3e1451 data/rocks/loot_table/blocks/netherrack_rock.json
2793e53c85ec8bad852f656856298d6e00bfdf85 data/rocks/loot_table/blocks/seashell.json
95e50bb507ce330ceff8c04eca287457193015bb data/rocks/loot_table/blocks/acacia_stick.json
852ccbedaeaa82a525f8dc435fb7a30a495f842f data/rocks/loot_table/blocks/bamboo_stick.json
aa89fb0888b5a8abaef4c713c292ec8076298170 data/rocks/loot_table/blocks/gravel_rock.json
57039ec5e50322cbfde63394dd304315fb670dd7 data/rocks/loot_table/blocks/andesite_rock.json
fb92bcdad8ef685be9a0604c0dec357992389bbf data/rocks/loot_table/blocks/dark_oak_stick.json
67d948f5d9305509d2a23e13137a14b26eccf6d7 data/rocks/loot_table/blocks/warped_stick.json
31015a9cbb6ab6790056eb16ecb9aff0ad0a03b1 data/rocks/loot_table/blocks/jungle_stick.json
8cbee37f5a070e21308dc7c0aa9b0beea416b84a data/rocks/loot_table/blocks/sand_rock.json
8224883d1a2ed01334a64216168b1f56c4ed2a90 data/rocks/loot_table/blocks/pinecone.json
283f96ab013b53fe1569127810bdc838f7746c09 data/rocks/loot_table/blocks/granite_rock.json
c37079a8ac71c003bdda9d8e6a9c4b770c8a8bbc data/rocks/loot_table/blocks/rock.json

View File

@@ -1,4 +1,4 @@
// 1.21 2024-09-16T20:01:04.362147985 This Rocks!/Recipes
// 1.21 2024-09-17T00:30:20.768641104 This Rocks!/Recipes
b6c911282f64d7f0e0b3f6108bad4dbb3df515a6 data/rocks/advancement/recipes/building_blocks/stone_from_splitter.json
54e83b6dcb86d6449ac69700336bac9f7b308931 data/rocks/recipe/andesite_from_splitter.json
667857ccb79ec82999a28a0ac364ef3abfb1e940 data/rocks/recipe/ice_from_splitter.json
@@ -11,11 +11,11 @@ a7c075826da6d91e9a8dd4c45a62e2584252d35a data/rocks/recipe/granite_from_splitter
09e9680aafaaa8e6ef2c08063ecdf88f94d1fea1 data/rocks/recipe/stone_from_splitter.json
1c7de94400d03b90df1468e12bf793c073d2063c data/rocks/recipe/netherrack_from_splitter.json
ec73556fd65c48863750db345532e88ba051a7af data/rocks/advancement/recipes/building_blocks/netherrack_from_splitter.json
2979c1cbad1e33cf3eddee36831abab780f11fe4 data/rocks/advancement/recipes/building_blocks/end_stone_from_splitter.json
5ca53887c2cc9e9b22aedfe362821e29ad0d1bdf data/rocks/advancement/recipes/building_blocks/red_sandstone_from_splitter.json
2979c1cbad1e33cf3eddee36831abab780f11fe4 data/rocks/advancement/recipes/building_blocks/end_stone_from_splitter.json
81d37fc236c6c2aa9b53219d4d2be41e9686f0f4 data/rocks/advancement/recipes/building_blocks/sandstone_from_splitter.json
424226dbb76410282b0abf7cab1123a760cf36fe data/rocks/advancement/recipes/building_blocks/granite_from_splitter.json
e6b4864bd839293dcdf078ebdbb1284a378d0862 data/rocks/recipe/diorite_from_splitter.json
ee5e78fedb2ca204462d67398a668f01cba976b3 data/rocks/recipe/red_sandstone_from_splitter.json
d190015248ae4c1bc3fd274e6fbd4cb262300507 data/rocks/recipe/end_stone_from_splitter.json
12d6109625cde783570f8337c4e5ace2804731e6 data/rocks/recipe/sandstone_from_splitter.json
d190015248ae4c1bc3fd274e6fbd4cb262300507 data/rocks/recipe/end_stone_from_splitter.json

View File

@@ -0,0 +1,46 @@
{
"type": "minecraft:simple_block",
"config": {
"to_place": {
"type": "minecraft:weighted_state_provider",
"entries": [
{
"data": {
"Name": "rocks:ice_rock",
"Properties": {
"variation": "tiny"
}
},
"weight": 10
},
{
"data": {
"Name": "rocks:ice_rock",
"Properties": {
"variation": "small"
}
},
"weight": 7
},
{
"data": {
"Name": "rocks:ice_rock",
"Properties": {
"variation": "medium"
}
},
"weight": 5
},
{
"data": {
"Name": "rocks:ice_rock",
"Properties": {
"variation": "large"
}
},
"weight": 1
}
]
}
}
}

View File

@@ -0,0 +1,93 @@
{
"feature": {
"type": "minecraft:simple_block",
"config": {
"to_place": {
"type": "minecraft:weighted_state_provider",
"entries": [
{
"data": {
"Name": "rocks:ice_rock",
"Properties": {
"variation": "tiny"
}
},
"weight": 10
},
{
"data": {
"Name": "rocks:ice_rock",
"Properties": {
"variation": "small"
}
},
"weight": 7
},
{
"data": {
"Name": "rocks:ice_rock",
"Properties": {
"variation": "medium"
}
},
"weight": 5
},
{
"data": {
"Name": "rocks:ice_rock",
"Properties": {
"variation": "large"
}
},
"weight": 1
}
]
}
}
},
"placement": [
{
"type": "minecraft:count",
"count": 3
},
{
"type": "minecraft:rarity_filter",
"chance": 5
},
{
"type": "minecraft:in_square"
},
{
"type": "minecraft:heightmap",
"heightmap": "WORLD_SURFACE_WG"
},
{
"type": "minecraft:biome"
},
{
"type": "minecraft:block_predicate_filter",
"predicate": {
"type": "minecraft:all_of",
"predicates": [
{
"type": "minecraft:matching_blocks",
"blocks": "minecraft:air"
},
{
"type": "minecraft:matching_blocks",
"blocks": [
"minecraft:ice",
"minecraft:packed_ice",
"minecraft:blue_ice"
],
"offset": [
0,
-1,
0
]
}
]
}
}
]
}

View File

@@ -79,6 +79,7 @@
"type": "minecraft:matching_blocks",
"blocks": [
"minecraft:ice",
"minecraft:packed_ice",
"minecraft:sand",
"minecraft:red_sand",
"minecraft:end_stone"

View File

@@ -13,6 +13,7 @@ public class RocksConfig extends MidnightConfig {
@Entry(category = rocks, name = "block.rocks.sand_rock") public static boolean sandRock = true;
@Entry(category = rocks, name = "block.rocks.red_sand_rock") public static boolean redSandRock = true;
@Entry(category = rocks, name = "block.rocks.gravel_rock") public static boolean gravelRock = true;
@Entry(category = rocks, name = "block.rocks.ice_rock") public static boolean iceRock = true;
@Entry(category = rocks, name = "block.rocks.end_stone_rock") public static boolean endStoneRock = true;
@Entry(category = rocks, name = "block.rocks.netherrack_rock") public static boolean netherrackRock = true;
@Entry(category = rocks, name = "block.rocks.soul_soil_rock") public static boolean soulSoilRock = true;

View File

@@ -8,8 +8,11 @@ import net.minecraft.registry.RegistryKey;
import net.minecraft.registry.RegistryKeys;
import net.minecraft.registry.tag.BiomeTags;
import net.minecraft.util.Identifier;
import net.minecraft.world.biome.Biome;
import net.minecraft.world.biome.BiomeKeys;
import net.minecraft.world.gen.GenerationStep;
import net.minecraft.world.gen.feature.PlacedFeature;
import net.minecraft.world.gen.structure.OceanRuinStructure;
import java.util.function.Predicate;
@@ -32,6 +35,9 @@ public class FeatureInjector {
if (RocksConfig.redSandRock) BiomeModifications.addFeature(red_sand_rocks, GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("red_sand_rock"));
Predicate<BiomeSelectionContext> ice_rocks = (ctx -> ctx.hasTag(BiomeTags.IGLOO_HAS_STRUCTURE) || ctx.getBiome().getTemperature() < 0.15F);
if (RocksConfig.iceRock) BiomeModifications.addFeature(ice_rocks, GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("ice_rock"));
if (RocksConfig.endStoneRock) BiomeModifications.addFeature(ctx -> ctx.getBiomeKey().getValue().toString().contains("the_end"), GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("end_stone_rock"));
// Sticks
@@ -79,7 +85,7 @@ public class FeatureInjector {
if (RocksConfig.seashell) BiomeModifications.addFeature(beach, GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("seashell"));
if (RocksConfig.starfish) BiomeModifications.addFeature(beach, GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("starfish"));
if (RocksConfig.underwaterStarfish) BiomeModifications.addFeature(ctx -> ctx.hasTag(BiomeTags.IS_OCEAN), GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("underwater_starfish"));
if (RocksConfig.underwaterStarfish) BiomeModifications.addFeature(ctx -> ctx.hasTag(BiomeTags.IS_OCEAN) && !ctx.getBiomeKey().toString().contains("cold"), GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("underwater_starfish"));
if (RocksConfig.underwaterSeashell) BiomeModifications.addFeature(ctx -> ctx.hasTag(BiomeTags.IS_OCEAN), GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("underwater_seashell"));
if (RocksConfig.netherrackRock) BiomeModifications.addFeature(ctx -> ctx.hasTag(BiomeTags.IS_NETHER), GenerationStep.Feature.TOP_LAYER_MODIFICATION, getKey("netherrack_rock"));

View File

@@ -77,8 +77,15 @@ public class RockFeatures {
.add(rocksByType.get(RockType.GRAVEL).getDefaultState().with(RocksMain.ROCK_VARIATION,RockVariation.MEDIUM), 5)
.add(rocksByType.get(RockType.GRAVEL).getDefaultState().with(RocksMain.ROCK_VARIATION,RockVariation.LARGE), 1).build()))
);
public static ConfiguredFeature<?, ?> ICE_ROCK_FEATURE = new ConfiguredFeature<>(Feature.SIMPLE_BLOCK, new SimpleBlockFeatureConfig(
new WeightedBlockStateProvider(DataPool.<BlockState>builder()
.add(rocksByType.get(RockType.ICE).getDefaultState().with(RocksMain.ROCK_VARIATION,RockVariation.TINY), 10)
.add(rocksByType.get(RockType.ICE).getDefaultState().with(RocksMain.ROCK_VARIATION,RockVariation.SMALL), 7)
.add(rocksByType.get(RockType.ICE).getDefaultState().with(RocksMain.ROCK_VARIATION,RockVariation.MEDIUM), 5)
.add(rocksByType.get(RockType.ICE).getDefaultState().with(RocksMain.ROCK_VARIATION,RockVariation.LARGE), 1).build()))
);
public static PlacedFeature ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(ROCK_FEATURE), List.of(CountPlacementModifier.of(3), RarityFilterPlacementModifier.of(1), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.not(BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.ICE,Blocks.SAND,Blocks.RED_SAND,Blocks.END_STONE)))))));
public static PlacedFeature ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(ROCK_FEATURE), List.of(CountPlacementModifier.of(3), RarityFilterPlacementModifier.of(1), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.not(BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.ICE, Blocks.PACKED_ICE, Blocks.SAND, Blocks.RED_SAND, Blocks.END_STONE)))))));
public static PlacedFeature GRANITE_ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(GRANITE_ROCK_FEATURE), List.of(CountPlacementModifier.of(3), RarityFilterPlacementModifier.of(1), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.GRANITE))))));
public static PlacedFeature DIORITE_ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(DIORITE_ROCK_FEATURE), List.of(CountPlacementModifier.of(3), RarityFilterPlacementModifier.of(1), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.DIORITE))))));
public static PlacedFeature ANDESITE_ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(ANDESITE_ROCK_FEATURE), List.of(CountPlacementModifier.of(3), RarityFilterPlacementModifier.of(1), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.ANDESITE))))));
@@ -86,6 +93,7 @@ public class RockFeatures {
public static PlacedFeature RED_SAND_ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(RED_SAND_ROCK_FEATURE), List.of(CountPlacementModifier.of(7), RarityFilterPlacementModifier.of(1), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.RED_SAND, Blocks.RED_SANDSTONE))))));
public static PlacedFeature END_STONE_ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(END_STONE_ROCK_FEATURE), List.of(CountPlacementModifier.of(3), RarityFilterPlacementModifier.of(1), SquarePlacementModifier.of(), PlacedFeatures.MOTION_BLOCKING_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.END_STONE))))));
public static PlacedFeature GRAVEL_ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(GRAVEL_ROCK_FEATURE), List.of(CountPlacementModifier.of(3), RarityFilterPlacementModifier.of(1), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.GRAVEL))))));
public static PlacedFeature ICE_ROCK_PLACED_FEATURE = new PlacedFeature(RegistryEntry.of(ICE_ROCK_FEATURE), List.of(CountPlacementModifier.of(3), RarityFilterPlacementModifier.of(5), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of(), BlockFilterPlacementModifier.of(BlockPredicate.bothOf(BlockPredicate.IS_AIR, BlockPredicate.matchingBlocks(new Vec3i(0, -1, 0), ImmutableList.of(Blocks.ICE, Blocks.PACKED_ICE, Blocks.BLUE_ICE))))));
public static void initConfigured(Registerable<ConfiguredFeature<?, ?>> context) {
register(context, "rock", ROCK_FEATURE);
@@ -96,6 +104,7 @@ public class RockFeatures {
register(context, "red_sand_rock", RED_SAND_ROCK_FEATURE);
register(context, "end_stone_rock", END_STONE_ROCK_FEATURE);
register(context, "gravel_rock", GRAVEL_ROCK_FEATURE);
register(context, "ice_rock", ICE_ROCK_FEATURE);
}
public static void initPlaced(Registerable<PlacedFeature> context) {
register(context, "rock", ROCK_PLACED_FEATURE);
@@ -106,5 +115,6 @@ public class RockFeatures {
register(context, "red_sand_rock", RED_SAND_ROCK_PLACED_FEATURE);
register(context, "end_stone_rock", END_STONE_ROCK_PLACED_FEATURE);
register(context, "gravel_rock", GRAVEL_ROCK_PLACED_FEATURE);
register(context, "ice_rock", ICE_ROCK_PLACED_FEATURE);
}
}

View File

@@ -0,0 +1,28 @@
{
"variants": {
"variation=tiny": [
{"model": "rocks:block/tiny_ice_rock"},
{"model": "rocks:block/tiny_ice_rock", "y": 90},
{"model": "rocks:block/tiny_ice_rock", "y": 180},
{"model": "rocks:block/tiny_ice_rock", "y": 270}
],
"variation=small": [
{"model": "rocks:block/small_ice_rock"},
{"model": "rocks:block/small_ice_rock", "y": 90},
{"model": "rocks:block/small_ice_rock", "y": 180},
{"model": "rocks:block/small_ice_rock", "y": 270}
],
"variation=medium": [
{"model": "rocks:block/medium_ice_rock"},
{"model": "rocks:block/medium_ice_rock", "y": 90},
{"model": "rocks:block/medium_ice_rock", "y": 180},
{"model": "rocks:block/medium_ice_rock", "y": 270}
],
"variation=large": [
{"model": "rocks:block/large_ice_rock"},
{"model": "rocks:block/large_ice_rock", "y": 90},
{"model": "rocks:block/large_ice_rock", "y": 180},
{"model": "rocks:block/large_ice_rock", "y": 270}
]
}
}

View File

@@ -11,6 +11,7 @@
"block.rocks.end_stone_rock":"Endsteinbrocken",
"block.rocks.netherrack_rock":"Netherrackbrocken",
"block.rocks.soul_soil_rock":"Seelenerdebrocken",
"block.rocks.ice_rock":"Eisbrocken",
"block.rocks.oak_stick":"Eichenholzstock",
"block.rocks.birch_stick":"Birkenholzstock",
@@ -18,6 +19,9 @@
"block.rocks.jungle_stick":"Tropenholzstock",
"block.rocks.acacia_stick":"Akazienholzstock",
"block.rocks.dark_oak_stick":"Schwarzeichenholzstock",
"block.rocks.mangrove_stick":"Mangrovenholzstock",
"block.rocks.cherry_stick":"Kirschholzstock",
"block.rocks.bamboo_stick":"Bambusstock",
"block.rocks.crimson_stick":"Karmesinstock",
"block.rocks.warped_stick":"Wirrstock",

View File

@@ -11,6 +11,7 @@
"block.rocks.end_stone_rock":"End Stone Rock",
"block.rocks.netherrack_rock":"Netherrack Rock",
"block.rocks.soul_soil_rock":"Soul Soil Rock",
"block.rocks.ice_rock":"Ice Rock",
"block.rocks.oak_stick":"Oak Stick",
"block.rocks.birch_stick":"Birch Stick",
@@ -40,6 +41,7 @@
"item.rocks.end_stone_splitter":"End Stone Splitter",
"item.rocks.netherrack_splitter":"Netherrack Splitter",
"item.rocks.soul_soil_splitter":"Soul Soil Splitter",
"item.rocks.ice_splitter":"Ice Splitter",
"rocks.midnightconfig.title":"This Rocks! Config",
"rocks.midnightconfig.category.rocks":"Rocks",
@@ -55,5 +57,8 @@
"rocks.midnightconfig.underwaterSeashell":"Underwater Seashell",
"rocks.midnightconfig.underwaterStarfish":"Underwater Starfish",
"rocks.midnightconfig.geyserLevitation":"Geyser Levitation",
"rocks.midnightconfig.netherGeyserDamage":"Nether Geyser Damage"
"rocks.midnightconfig.netherGeyserDamage":"Nether Geyser Damage",
"rocks.midnightconfig.enablePolymerMode":"Enable Polymer Mode",
"rocks.midnightconfig.enablePolymerMode.tooltip":"Allows the mod to work fully server-sided when used in combination with Polymer and FactoryTools",
"rocks.midnightconfig.polymerViewDistance":"Polymer View Distance"
}

View File

@@ -0,0 +1,7 @@
{
"parent": "rocks:block/large_rock",
"textures": {
"0": "block/packed_ice",
"particle": "block/packed_ice"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "rocks:block/medium_rock",
"textures": {
"0": "block/packed_ice",
"particle": "block/packed_ice"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "rocks:block/small_rock",
"textures": {
"0": "block/packed_ice",
"particle": "block/packed_ice"
}
}

View File

@@ -0,0 +1,7 @@
{
"parent": "rocks:block/tiny_rock",
"textures": {
"0": "block/packed_ice",
"particle": "block/packed_ice"
}
}

View File

@@ -0,0 +1,3 @@
{
"parent": "rocks:block/large_ice_rock"
}

View File

@@ -0,0 +1,7 @@
{
"parent": "rocks:item/cobblestone_splitter",
"textures": {
"0": "block/packed_ice",
"particle": "block/packed_ice"
}
}