use of biomesoplenty.api.biome.IExtendedBiome in project BiomeTweaker by superckl.
the class ScriptCommandRemoveBOP method perform.
@Override
public void perform() throws Exception {
final Iterator<Biome> it = this.pack.getIterator();
while (it.hasNext()) {
Biome biome = it.next();
final IExtendedBiome eBiome = BOPIntegrationModule.getExtendedBiome(biome);
biome = eBiome.getBaseBiome();
if (this.types == null)
for (final BOPClimates climate : BOPClimates.values()) {
final Iterator<WeightedBiomeEntry> bit = WarningHelper.<List<WeightedBiomeEntry>>uncheckedCast(BOPBiomeProperties.LAND_BIOMES.get(climate)).iterator();
while (bit.hasNext()) {
final WeightedBiomeEntry entry = bit.next();
if (Biome.getIdForBiome(entry.biome) == Biome.getIdForBiome(biome)) {
bit.remove();
BOPBiomeProperties.TOTAL_BIOMES_WEIGHT.set(climate, BOPBiomeProperties.TOTAL_BIOMES_WEIGHT.get(climate) - entry.weight);
}
}
}
else
for (final String type : this.types) {
final BOPClimates climate = BOPClimates.valueOf(type);
if (climate == null)
throw new IllegalArgumentException("No climate type found for: " + type);
final Iterator<WeightedBiomeEntry> bit = WarningHelper.<List<WeightedBiomeEntry>>uncheckedCast(BOPBiomeProperties.LAND_BIOMES.get(climate)).iterator();
while (bit.hasNext()) {
final WeightedBiomeEntry entry = bit.next();
if (Biome.getIdForBiome(entry.biome) == Biome.getIdForBiome(biome)) {
bit.remove();
BOPBiomeProperties.TOTAL_BIOMES_WEIGHT.set(climate, BOPBiomeProperties.TOTAL_BIOMES_WEIGHT.get(climate) - entry.weight);
}
}
}
BiomeTweaker.getInstance().onTweak(Biome.getIdForBiome(biome));
}
}
use of biomesoplenty.api.biome.IExtendedBiome in project BiomeTweaker by superckl.
the class BOPIntegrationModule method getExtendedBiome.
public static IExtendedBiome getExtendedBiome(final Biome biome) {
IExtendedBiome eBiome = BOPBiomes.REG_INSTANCE.getExtendedBiome(biome);
if (eBiome == null) {
eBiome = new ExtendedBiomeWrapper(biome);
BOPBiomes.REG_INSTANCE.registerBiome(eBiome, eBiome.getBaseBiome().biomeName.toLowerCase());
}
return eBiome;
}
use of biomesoplenty.api.biome.IExtendedBiome in project BiomesOPlenty by Glitchfiend.
the class ModBiomes method registerBiome.
@Override
public IExtendedBiome registerBiome(IExtendedBiome extendedBiome, String idName) {
if (extendedBiome == null)
throw new IllegalArgumentException("Extended biome to register cannot be null!");
// Add to the set of present biomes
presentBiomes.add(extendedBiome.getBaseBiome());
// Extra functionality builtin, such as with BOPBiome
if (extendedBiome instanceof Biome) {
for (Entry<BOPClimates, Integer> entry : extendedBiome.getWeightMap().entrySet()) {
if (entry != null) {
BOPClimates climate = entry.getKey();
int weight = entry.getValue();
climate.addBiome(weight, extendedBiome.getBaseBiome());
}
}
} else // extendedBiome is a wrapper
{
biomeWrapperMap.put(Biome.getIdForBiome(extendedBiome.getBaseBiome()), extendedBiome);
}
return extendedBiome;
}
Aggregations