Skip to content

Commit 1f0c19b

Browse files
committed
Streamline the code here and make the blacklist and whitelist for dimensions code actually work
1 parent b9d4283 commit 1f0c19b

File tree

3 files changed

+10
-9
lines changed

3 files changed

+10
-9
lines changed

src/main/java/com/mcmoddev/orespawn/EventHandlers.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public class EventHandlers {
4646

4747
private List<EventType> vanillaEvents = Arrays.asList(EventType.ANDESITE, EventType.COAL, EventType.DIAMOND, EventType.DIORITE, EventType.DIRT,
4848
EventType.EMERALD, EventType.GOLD, EventType.GRANITE, EventType.GRAVEL, EventType.IRON, EventType.LAPIS, EventType.REDSTONE,
49-
EventType.QUARTZ, EventType.SILVERFISH);
49+
EventType.QUARTZ, EventType.SILVERFISH );
5050

5151
@SubscribeEvent(priority = EventPriority.HIGHEST, receiveCanceled = true)
5252
public void onGenerateMinable(OreGenEvent.GenerateMinable event) {

src/main/java/com/mcmoddev/orespawn/json/OS3Reader.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -156,9 +156,10 @@ private static void finallyParse(JsonObject parseJson, String filename) {
156156
spawn.enabled( nw.get(ConfigNames.V2.ENABLED).getAsBoolean());
157157
spawn.retrogen( nw.get(ConfigNames.V2.RETROGEN).getAsBoolean());
158158

159-
if( nw.has( ConfigNames.DIMENSION) )
160-
spawn.create( biomes, gen, replacements, nw.getAsJsonObject( ConfigNames.DIMENSION ), blocks.toArray( new OreBuilder[0]) );
161-
else
159+
if( nw.has( ConfigNames.DIMENSION) ) {
160+
OreSpawn.LOGGER.fatal( "Entry has %s tag with contents: %s", ConfigNames.DIMENSION, nw.getAsJsonObject( ConfigNames.DIMENSION ) );
161+
spawn.create( biomes, gen, replacements, nw.getAsJsonObject( ConfigNames.DIMENSION ), blocks.toArray( new OreBuilder[0] ) );
162+
} else
162163
spawn.create(biomes, gen, replacements, blocks.toArray( new OreBuilder[0] ) );
163164

164165
builder.create(spawn);

src/main/java/com/mcmoddev/orespawn/worldgen/OreSpawnWorldGen.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,17 +49,17 @@ public void generate(Random random, int chunkX, int chunkZ, World world, IChunkG
4949

5050
int thisDim = world.provider.getDimension();
5151
List<SpawnBuilder> entries = new ArrayList<> ( this.dimensions.getOrDefault ( thisDim, new ArrayList<> () ) );
52-
53-
if( entries.isEmpty() && (thisDim == -1 || thisDim == 1)) return;
5452

55-
if( (thisDim != -1 && thisDim != 1) && !(this.dimensions.getOrDefault(OreSpawn.API.dimensionWildcard(), new ArrayList<>()).isEmpty()) ) {
56-
entries.addAll(this.dimensions.get(OreSpawn.API.dimensionWildcard()));
53+
if( !this.dimensions.getOrDefault( OreSpawn.API.dimensionWildcard(), new ArrayList<>() ).isEmpty() ) {
54+
entries.addAll(this.dimensions.get( OreSpawn.API.dimensionWildcard() ).stream()
55+
.filter( ent -> (!ent.hasExtendedDimensions() && thisDim > 0 && thisDim != 1) ||
56+
ent.extendedDimensionsMatch( thisDim ) )
57+
.collect( Collectors.toList()) );
5758
}
5859

5960
entries.stream()
6061
.filter( SpawnBuilder::enabled )
6162
.filter( sb -> !Config.getBoolean ( Constants.RETROGEN_KEY ) || (sb.retrogen () || Config.getBoolean ( Constants.FORCE_RETROGEN_KEY )) )
62-
.filter( ent -> ent.hasExtendedDimensions() || ent.extendedDimensionsMatch(thisDim) )
6363
.forEach( sE -> {
6464
IFeature currentFeatureGen = sE.getFeatureGen().getGenerator();
6565
List<IBlockState> replacement = sE.getReplacementBlocks();

0 commit comments

Comments
 (0)