made the features for the rose quartz geodes, though their rarity will need some tweaking and the buds need a waterlogged property

This commit is contained in:
Pyritie 2025-05-01 21:51:03 +01:00
parent 87b3937768
commit f682c3f561
12 changed files with 213 additions and 0 deletions

View file

@ -0,0 +1,7 @@
{
"type": "tfc:if_then",
"config": {
"if": "tfg:earth/rose_quartz/rose_quartz_geode",
"then": "tfg:earth/rose_quartz/rose_quartz_decoration"
}
}

View file

@ -0,0 +1,11 @@
{
"type": "minecraft:simple_block",
"config": {
"to_place": {
"type": "minecraft:simple_state_provider",
"state": {
"Name": "gtceu:rose_quartz_bud_indicator"
}
}
}
}

View file

@ -0,0 +1,14 @@
{
"type": "minecraft:simple_block",
"config": {
"to_place": {
"type": "minecraft:simple_state_provider",
"state": {
"Name": "gtceu:rose_quartz_bud_indicator",
"Properties": {
"waterlogged": "true"
}
}
}
}
}

View file

@ -0,0 +1,9 @@
{
"type": "tfc:multiple",
"config": {
"features": [
"tfg:earth/rose_quartz/rose_quartz_bud_air",
"tfg:earth/rose_quartz/rose_quartz_bud_water"
]
}
}

View file

@ -0,0 +1,83 @@
{
"type": "minecraft:geode",
"config": {
"blocks": {
"filling_provider": {
"type": "minecraft:simple_state_provider",
"state": {
"Name": "gtceu:raw_rose_quartz_block"
}
},
"inner_layer_provider": {
"type": "minecraft:simple_state_provider",
"state": {
"Name": "gtceu:quartzite_rose_quartz_ore"
}
},
"alternate_inner_layer_provider": {
"type": "minecraft:simple_state_provider",
"state": {
"Name": "gtceu:quartzite_quartzite_ore"
}
},
"middle_layer_provider": {
"type": "minecraft:simple_state_provider",
"state": {
"Name": "minecraft:ice"
}
},
"outer_layer_provider": {
"type": "minecraft:simple_state_provider",
"state": {
"Name": "minecraft:blue_ice"
}
},
"inner_placements": [
{
"Name": "gtceu:quartzite_rose_quartz_ore"
}
],
"cannot_replace": "#minecraft:features_cannot_replace",
"invalid_blocks": "#minecraft:geode_invalid_blocks"
},
"crack": {
"base_crack_size": 0,
"crack_point_offset": 0,
"generate_crack_chance": 0
},
"distribution_points": {
"type": "minecraft:uniform",
"value": {
"max_inclusive": 4,
"min_inclusive": 3
}
},
"invalid_blocks_threshold": 1,
"layers": {
"filling": 0.4,
"inner_layer": 2.1,
"middle_layer": 3.5,
"outer_layer": 4.5
},
"max_gen_offset": 32,
"min_gen_offset": -32,
"noise_multiplier": 0.05,
"outer_wall_distance": {
"type": "minecraft:uniform",
"value": {
"max_inclusive": 6,
"min_inclusive": 4
}
},
"placements_require_layer0_alternate": false,
"point_offset": {
"type": "minecraft:uniform",
"value": {
"max_inclusive": 2,
"min_inclusive": 1
}
},
"use_alternate_layer0_chance": 0.40,
"use_potential_placements_chance": 0.30
}
}

View file

@ -0,0 +1,23 @@
{
"feature": "tfg:earth/rose_quartz/rose_quartz",
"placement": [
{
"type": "tfc:climate",
"config": {
"max_temperature": -10,
"fuzzy": true
}
},
{
"type": "minecraft:rarity_filter",
"chance": 10
},
{
"type": "minecraft:biome"
},
{
"type": "minecraft:heightmap",
"heightmap": "OCEAN_FLOOR"
}
]
}

View file

@ -0,0 +1,14 @@
{
"feature": "tfg:earth/rose_quartz/rose_quartz_bud_air",
"placement": [
{
"type": "minecraft:environment_scan",
"direction_of_search": "up",
"max_steps": 15,
"target_condition": {
"type": "minecraft:matching_blocks",
"blocks": "minecraft:air"
}
}
]
}

View file

@ -0,0 +1,14 @@
{
"feature": "tfg:earth/rose_quartz/rose_quartz_bud_water",
"placement": [
{
"type": "minecraft:environment_scan",
"direction_of_search": "up",
"max_steps": 15,
"target_condition": {
"type": "minecraft:matching_fluids",
"fluids": "tfc:salt_water"
}
}
]
}

View file

@ -0,0 +1,16 @@
{
"feature": "tfg:earth/rose_quartz/rose_quartz_decoration",
"placement": [
{
"type": "minecraft:count",
"count": 30
},
{
"type": "minecraft:in_square"
},
{
"type": "minecraft:heightmap",
"heightmap": "OCEAN_FLOOR"
}
]
}

View file

@ -0,0 +1,4 @@
{
"feature": "tfg:earth/rose_quartz/rose_quartz_geode",
"placement": []
}

View file

@ -297,6 +297,19 @@ const registerTFGBiomeTags = (event) => {
const registerTFGPlacedFeatures = (event) => {
// #region Earth biomes
event.add('tfc:in_biome/surface_decoration/ocean', 'tfg:earth/rose_quartz/rose_quartz')
event.add('tfc:in_biome/surface_decoration/ocean_reef', 'tfg:earth/rose_quartz/rose_quartz')
event.add('tfc:in_biome/surface_decoration/deep_ocean', 'tfg:earth/rose_quartz/rose_quartz')
event.add('tfc:in_biome/surface_decoration/deep_ocean_trench', 'tfg:earth/rose_quartz/rose_quartz')
event.add('tfc:in_biome/surface_decoration/shore', 'tfg:earth/rose_quartz/rose_quartz')
event.add('tfc:in_biome/surface_decoration/tidal_flats', 'tfg:earth/rose_quartz/rose_quartz')
event.add('tfc:in_biome/surface_decoration/lowlands', 'tfg:earth/rose_quartz/rose_quartz')
event.add('tfc:in_biome/surface_decoration/salt_marsh', 'tfg:earth/rose_quartz/rose_quartz')
// #endregion
// #region Nether ores

View file

@ -289,4 +289,9 @@ const registerGTCEuMaterialModification = (event) => {
var property = material.getProperty(PropertyKey.FLUID);
property.getStorage().store($FluidStorageKeys.LIQUID, () => Fluid.of(`tfc:${colorName}_dye`).fluid, null);
});
let rose_quartz = GTCEuAPI.materialManager.getMaterial('greate:rose_quartz');
rose_quartz.setProperty(PropertyKey.ORE, new $ORE_PROPERTY());
rose_quartz.setMaterialIconSet(GTMaterialIconSet.getByName('nether_quartz'))
}