Skip to content

Commit 46a397b

Browse files
buffed underground bastion and fixed icy ruins
1 parent 50755ac commit 46a397b

File tree

16 files changed

+72
-44
lines changed

16 files changed

+72
-44
lines changed

CHANGELOG.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,14 @@
22

33
#### Villages:
44
Ocean Village now added! Spawns only in deep ocean biomes. Explore the bottom of the sea to see this village's tragic ending!
5-
Can be located with Dolphins
5+
Can be located with Dolphins
6+
7+
#### Bastions:
8+
Underground Bastion are now a bit more common
9+
10+
#### Ruins:
11+
Land Ruins chests now has an increased chance of having a map to an Underground Bastion
12+
13+
Fixed all 4 Land Ruins types having difficulty spawning
14+
15+
Fixed Icy Land Ruins placing snow layers on top of invalid blocks. Powder Snow may sometimes be two blocks deep now.

src/main/java/com/telepathicgrunt/repurposedstructures/world/features/StructurePowderSnow.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import com.telepathicgrunt.repurposedstructures.world.features.configs.StructureRangeConfig;
77
import net.minecraft.core.BlockPos;
88
import net.minecraft.core.Direction;
9+
import net.minecraft.tags.BlockTags;
910
import net.minecraft.world.level.block.Blocks;
1011
import net.minecraft.world.level.block.SnowLayerBlock;
1112
import net.minecraft.world.level.block.state.BlockState;
@@ -79,18 +80,26 @@ else if (stage == 8) {
7980
chosenBlock = Blocks.SNOW.defaultBlockState().setValue(SnowLayerBlock.LAYERS, (int) Doubles.constrainToRange(stage, 1, 8));
8081
}
8182

82-
if (!isSnowLayer && !chosenBlock.canSurvive(context.level(), mutable)) {
83+
if (currentState.is(Blocks.SNOW) && !chosenBlock.canSurvive(context.level(), mutable)) {
8384
mutable.move(Direction.DOWN);
8485
BlockState belowState = context.level().getBlockState(mutable);
85-
if (belowState.is(Blocks.DIRT_PATH) || belowState.is(Blocks.ICE) || (belowState.is(Blocks.POWDER_SNOW))) {
86+
if (belowState.is(Blocks.DIRT_PATH) || belowState.is(BlockTags.DIRT) || belowState.is(BlockTags.ICE) || (belowState.is(Blocks.POWDER_SNOW))) {
8687
context.level().setBlock(mutable, Blocks.SNOW_BLOCK.defaultBlockState(), 3);
8788
}
8889
mutable.move(Direction.UP);
8990
}
9091

91-
if (isSnowLayer || Blocks.SNOW.canSurvive(Blocks.SNOW.defaultBlockState(), context.level(), mutable)) {
92+
if (Blocks.SNOW.canSurvive(Blocks.SNOW.defaultBlockState(), context.level(), mutable)) {
9293
context.level().setBlock(mutable, chosenBlock, 3);
9394
}
95+
96+
if (currentState.is(Blocks.SNOW_BLOCK) || currentState.is(Blocks.POWDER_SNOW)) {
97+
mutable.move(Direction.DOWN);
98+
BlockState belowState = context.level().getBlockState(mutable);
99+
if (belowState.is(Blocks.DIRT_PATH) || belowState.is(BlockTags.DIRT) || belowState.is(BlockTags.ICE)) {
100+
context.level().setBlock(mutable, Blocks.POWDER_SNOW.defaultBlockState(), 3);
101+
}
102+
}
94103
}
95104
}
96105
}

src/main/resources/data/repurposed_structures/loot_tables/chests/ruins/land_cold/large.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@
105105
]
106106
},
107107
{
108-
"rolls": 2,
108+
"rolls": 3,
109109
"entries": [
110110
{
111111
"name": "minecraft:fishing_rod",
@@ -215,7 +215,7 @@
215215
{
216216
"name": "minecraft:map",
217217
"type": "minecraft:item",
218-
"weight": 1,
218+
"weight": 2,
219219
"functions": [
220220
{
221221
"function": "minecraft:exploration_map",

src/main/resources/data/repurposed_structures/loot_tables/chests/ruins/land_cold/small.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
]
9696
},
9797
{
98-
"rolls": 1,
98+
"rolls": 2,
9999
"entries": [
100100
{
101101
"name": "minecraft:fishing_rod",
@@ -190,7 +190,7 @@
190190
{
191191
"name": "minecraft:map",
192192
"type": "minecraft:item",
193-
"weight": 1,
193+
"weight": 2,
194194
"functions": [
195195
{
196196
"function": "minecraft:exploration_map",

src/main/resources/data/repurposed_structures/loot_tables/chests/ruins/land_hot/large.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@
105105
]
106106
},
107107
{
108-
"rolls": 2,
108+
"rolls": 3,
109109
"entries": [
110110
{
111111
"name": "minecraft:compass",
@@ -200,7 +200,7 @@
200200
{
201201
"name": "minecraft:map",
202202
"type": "minecraft:item",
203-
"weight": 1,
203+
"weight": 2,
204204
"functions": [
205205
{
206206
"function": "minecraft:exploration_map",

src/main/resources/data/repurposed_structures/loot_tables/chests/ruins/land_hot/small.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@
110110
]
111111
},
112112
{
113-
"rolls": 1,
113+
"rolls": 2,
114114
"entries": [
115115
{
116116
"name": "minecraft:compass",
@@ -205,7 +205,7 @@
205205
{
206206
"name": "minecraft:map",
207207
"type": "minecraft:item",
208-
"weight": 1,
208+
"weight": 2,
209209
"functions": [
210210
{
211211
"function": "minecraft:exploration_map",

src/main/resources/data/repurposed_structures/loot_tables/chests/ruins/land_icy/large.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@
105105
]
106106
},
107107
{
108-
"rolls": 2,
108+
"rolls": 3,
109109
"entries": [
110110
{
111111
"name": "minecraft:stone_shovel",
@@ -205,7 +205,7 @@
205205
{
206206
"name": "minecraft:map",
207207
"type": "minecraft:item",
208-
"weight": 1,
208+
"weight": 2,
209209
"functions": [
210210
{
211211
"function": "minecraft:exploration_map",

src/main/resources/data/repurposed_structures/loot_tables/chests/ruins/land_icy/small.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
]
9696
},
9797
{
98-
"rolls": 1,
98+
"rolls": 2,
9999
"entries": [
100100
{
101101
"name": "minecraft:stone_shovel",
@@ -200,7 +200,7 @@
200200
{
201201
"name": "minecraft:map",
202202
"type": "minecraft:item",
203-
"weight": 1,
203+
"weight": 2,
204204
"functions": [
205205
{
206206
"function": "minecraft:exploration_map",

src/main/resources/data/repurposed_structures/loot_tables/chests/ruins/land_warm/large.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@
105105
]
106106
},
107107
{
108-
"rolls": 2,
108+
"rolls": 3,
109109
"entries": [
110110
{
111111
"name": "minecraft:fishing_rod",
@@ -195,7 +195,7 @@
195195
{
196196
"name": "minecraft:map",
197197
"type": "minecraft:item",
198-
"weight": 1,
198+
"weight": 2,
199199
"functions": [
200200
{
201201
"function": "minecraft:exploration_map",

src/main/resources/data/repurposed_structures/loot_tables/chests/ruins/land_warm/small.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
]
9696
},
9797
{
98-
"rolls": 1,
98+
"rolls": 2,
9999
"entries": [
100100
{
101101
"name": "minecraft:fishing_rod",
@@ -170,7 +170,7 @@
170170
{
171171
"name": "minecraft:map",
172172
"type": "minecraft:item",
173-
"weight": 1,
173+
"weight": 2,
174174
"functions": [
175175
{
176176
"function": "minecraft:exploration_map",

src/main/resources/data/repurposed_structures/worldgen/processor_list/ruins/land_icy_randomize.json

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,23 @@
3232
"Properties": {
3333
"snowy": "false"
3434
},
35-
"Name": "minecraft:grass_block"
35+
"Name": "minecraft:blue_ice"
3636
},
3737
"input_predicate": {
38-
"block": "minecraft:dirt_path",
38+
"block": "minecraft:grass_block",
39+
"probability": 0.05,
40+
"predicate_type": "minecraft:random_block_match"
41+
},
42+
"location_predicate": {
43+
"predicate_type": "minecraft:always_true"
44+
}
45+
},
46+
{
47+
"output_state": {
48+
"Name": "minecraft:powder_snow"
49+
},
50+
"input_predicate": {
51+
"block": "minecraft:grass_block",
3952
"probability": 0.1,
4053
"predicate_type": "minecraft:random_block_match"
4154
},
@@ -45,14 +58,11 @@
4558
},
4659
{
4760
"output_state": {
48-
"Properties": {
49-
"snowy": "false"
50-
},
51-
"Name": "minecraft:blue_ice"
61+
"Name": "minecraft:snow_block"
5262
},
5363
"input_predicate": {
5464
"block": "minecraft:grass_block",
55-
"probability": 0.05,
65+
"probability": 0.2,
5666
"predicate_type": "minecraft:random_block_match"
5767
},
5868
"location_predicate": {
@@ -64,7 +74,7 @@
6474
"Name": "minecraft:powder_snow"
6575
},
6676
"input_predicate": {
67-
"block": "minecraft:grass_block",
77+
"block": "minecraft:dirt_path",
6878
"probability": 0.1,
6979
"predicate_type": "minecraft:random_block_match"
7080
},
@@ -77,7 +87,7 @@
7787
"Name": "minecraft:snow_block"
7888
},
7989
"input_predicate": {
80-
"block": "minecraft:grass_block",
90+
"block": "minecraft:dirt_path",
8191
"probability": 0.2,
8292
"predicate_type": "minecraft:random_block_match"
8393
},
@@ -87,11 +97,11 @@
8797
},
8898
{
8999
"output_state": {
90-
"Name": "minecraft:powder_snow"
100+
"Name": "minecraft:cracked_stone_bricks"
91101
},
92102
"input_predicate": {
93103
"block": "minecraft:dirt_path",
94-
"probability": 0.1,
104+
"probability": 0.75,
95105
"predicate_type": "minecraft:random_block_match"
96106
},
97107
"location_predicate": {
@@ -100,12 +110,11 @@
100110
},
101111
{
102112
"output_state": {
103-
"Name": "minecraft:snow_block"
113+
"Name": "minecraft:stone_bricks"
104114
},
105115
"input_predicate": {
106116
"block": "minecraft:dirt_path",
107-
"probability": 0.2,
108-
"predicate_type": "minecraft:random_block_match"
117+
"predicate_type": "minecraft:block_match"
109118
},
110119
"location_predicate": {
111120
"predicate_type": "minecraft:always_true"

src/main/resources/data/repurposed_structures/worldgen/structure/ruins_land_cold.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
"type": "repurposed_structures:generic_jigsaw_structure",
33
"start_pool": "repurposed_structures:ruins/land_cold/start_pool",
44
"size": 2,
5-
"terrain_height_radius_check": 2,
6-
"allowed_terrain_height_range": 5,
5+
"terrain_height_radius_check": 1,
6+
"allowed_terrain_height_range": 8,
77
"cannot_spawn_in_liquid": true,
88
"biomes": "#repurposed_structures:has_structure/ruins/land_cold",
99
"step": "surface_structures",

src/main/resources/data/repurposed_structures/worldgen/structure/ruins_land_hot.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
"type": "repurposed_structures:generic_jigsaw_structure",
33
"start_pool": "repurposed_structures:ruins/land_hot/start_pool",
44
"size": 2,
5-
"terrain_height_radius_check": 2,
6-
"allowed_terrain_height_range": 5,
5+
"terrain_height_radius_check": 1,
6+
"allowed_terrain_height_range": 8,
77
"cannot_spawn_in_liquid": true,
88
"biomes": "#repurposed_structures:has_structure/ruins/land_hot",
99
"step": "surface_structures",

src/main/resources/data/repurposed_structures/worldgen/structure/ruins_land_icy.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
"type": "repurposed_structures:generic_jigsaw_structure",
33
"start_pool": "repurposed_structures:ruins/land_icy/start_pool",
44
"size": 2,
5-
"terrain_height_radius_check": 2,
6-
"allowed_terrain_height_range": 5,
5+
"terrain_height_radius_check": 1,
6+
"allowed_terrain_height_range": 8,
77
"cannot_spawn_in_liquid": true,
88
"biomes": "#repurposed_structures:has_structure/ruins/land_icy",
99
"step": "surface_structures",

src/main/resources/data/repurposed_structures/worldgen/structure/ruins_land_warm.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
"type": "repurposed_structures:generic_jigsaw_structure",
33
"start_pool": "repurposed_structures:ruins/land_warm/start_pool",
44
"size": 2,
5-
"terrain_height_radius_check": 2,
6-
"allowed_terrain_height_range": 5,
5+
"terrain_height_radius_check": 1,
6+
"allowed_terrain_height_range": 8,
77
"cannot_spawn_in_liquid": true,
88
"biomes": "#repurposed_structures:has_structure/ruins/land_warm",
99
"step": "surface_structures",

src/main/resources/data/repurposed_structures/worldgen/structure_set/bastions_overworld.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
"placement": {
99
"type": "repurposed_structures:advanced_random_spread",
1010
"salt": 618127296,
11-
"spacing": 180,
12-
"separation": 90,
11+
"spacing": 135,
12+
"separation": 75,
1313
"super_exclusion_zone": {
1414
"chunk_count": 7,
1515
"other_set": "#repurposed_structures:underground_bastion_avoid"

0 commit comments

Comments
 (0)