mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-04-04 23:06:05 +00:00
fix NPE
This commit is contained in:
@@ -49,7 +49,10 @@ public class ProbabilityCollection<E> implements Collection<E> {
|
||||
|
||||
public <T> ProbabilityCollection<T> map(Function<E, T> mapper, boolean carryNull) {
|
||||
ProbabilityCollection<T> newCollection = new ProbabilityCollection<>();
|
||||
cont.forEach((o, count) -> newCollection.add(mapper.apply(o), count.get()));
|
||||
cont.forEach((o, count) -> {
|
||||
if(o != null) newCollection.add(mapper.apply(o), count.get());
|
||||
else if(carryNull) newCollection.add(null, count.get());
|
||||
});
|
||||
return newCollection;
|
||||
}
|
||||
|
||||
|
||||
@@ -30,8 +30,8 @@ public class BorderListMutatorTemplate extends MutatorStageTemplate {
|
||||
public BiomeMutator build(long seed) {
|
||||
Map<TerraBiome, ProbabilityCollection<TerraBiome>> replaceMap = new HashMap<>();
|
||||
|
||||
replace.forEach((keyBuilder, replacements) -> replaceMap.put(keyBuilder.apply(seed), replacements.map(replacement -> replacement.get().apply(seed), true)));
|
||||
replace.forEach((keyBuilder, replacements) -> replaceMap.put(keyBuilder.apply(seed), replacements.map(MetaValue::get).map(replacement -> replacement.apply(seed))));
|
||||
|
||||
return new BorderListMutator(replaceMap, from.get(), defaultReplace.get(), noise.get().apply(seed), defaultTo.map(biomeBuilder -> biomeBuilder.get().apply(seed), true));
|
||||
return new BorderListMutator(replaceMap, from.get(), defaultReplace.get(), noise.get().apply(seed), defaultTo.map(MetaValue::get).map(biomeBuilder -> biomeBuilder.apply(seed)));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,6 @@ public class BorderMutatorTemplate extends MutatorStageTemplate {
|
||||
|
||||
@Override
|
||||
public BiomeMutator build(long seed) {
|
||||
return new BorderMutator(from.get(), replace.get(), noise.get().apply(seed), to.map(biomeBuilder -> biomeBuilder.get().apply(seed), true));
|
||||
return new BorderMutator(from.get(), replace.get(), noise.get().apply(seed), to.map(MetaValue::get).map(biomeBuilder -> biomeBuilder.apply(seed)));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,8 +26,8 @@ public class ReplaceListMutatorTemplate extends MutatorStageTemplate {
|
||||
public BiomeMutator build(long seed) {
|
||||
Map<TerraBiome, ProbabilityCollection<TerraBiome>> replaceMap = new HashMap<>();
|
||||
|
||||
replace.forEach((biomeBuilder, biomeBuilders) -> replaceMap.put(biomeBuilder.apply(seed), biomeBuilders.map(builder -> builder.get().apply(seed), true)));
|
||||
replace.forEach((biomeBuilder, biomeBuilders) -> replaceMap.put(biomeBuilder.apply(seed), biomeBuilders.map(MetaValue::get).map(builder -> builder.apply(seed))));
|
||||
|
||||
return new ReplaceListMutator(replaceMap, defaultFrom.get(), defaultTo.map(biomeBuilder -> biomeBuilder.get().apply(seed), true), noise.get().apply(seed));
|
||||
return new ReplaceListMutator(replaceMap, defaultFrom.get(), defaultTo.map(MetaValue::get).map(biomeBuilder -> biomeBuilder.apply(seed)), noise.get().apply(seed));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,6 @@ public class ReplaceMutatorTemplate extends MutatorStageTemplate {
|
||||
|
||||
@Override
|
||||
public BiomeMutator build(long seed) {
|
||||
return new ReplaceMutator(from.get(), to.map(biomeBuilder -> biomeBuilder.get().apply(seed), true), noise.get().apply(seed));
|
||||
return new ReplaceMutator(from.get(), to.map(MetaValue::get).map(biomeBuilder -> biomeBuilder.apply(seed)), noise.get().apply(seed));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user