Added support for custom beaches for vanilla biomes
This commit is contained in:
parent
cda6c12bba
commit
ffc04154db
|
@ -363,6 +363,12 @@ public class BOPBiome extends BiomeGenBase implements IExtendedBiome
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBeachId()
|
||||
{
|
||||
return this.beachBiomeId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BiomeGenBase getBaseBiome()
|
||||
|
|
|
@ -19,6 +19,8 @@ public class ExtendedBiomeWrapper implements IExtendedBiome
|
|||
private GenerationManager generationManager = new GenerationManager();
|
||||
private Map<BOPClimates, Integer> weightMap = new HashMap<BOPClimates, Integer>();
|
||||
|
||||
public int beachBiomeId = BiomeGenBase.beach.biomeID;
|
||||
|
||||
public ExtendedBiomeWrapper(BiomeGenBase biome)
|
||||
{
|
||||
this.biome = biome;
|
||||
|
@ -33,6 +35,8 @@ public class ExtendedBiomeWrapper implements IExtendedBiome
|
|||
@Override
|
||||
public void configure(IConfigObj conf)
|
||||
{
|
||||
this.beachBiomeId = conf.getInt("beachBiomeId", this.beachBiomeId);
|
||||
|
||||
// Allow generators to be configured
|
||||
IConfigObj confGenerators = conf.getObject("generators");
|
||||
if (confGenerators != null)
|
||||
|
@ -89,6 +93,12 @@ public class ExtendedBiomeWrapper implements IExtendedBiome
|
|||
{
|
||||
this.weightMap.clear();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBeachId()
|
||||
{
|
||||
return this.beachBiomeId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BiomeGenBase getBaseBiome()
|
||||
|
|
|
@ -30,6 +30,8 @@ public interface IExtendedBiome
|
|||
public void clearWeights();
|
||||
public void addWeight(BOPClimates climate, int weight);
|
||||
|
||||
public int getBeachId();
|
||||
|
||||
/**Get the base biome associated with this extension**/
|
||||
public BiomeGenBase getBaseBiome();
|
||||
}
|
||||
|
|
|
@ -10,6 +10,8 @@ package biomesoplenty.common.world.layer;
|
|||
import com.google.common.base.Predicate;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiome;
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.IExtendedBiome;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import net.minecraft.world.biome.BiomeGenJungle;
|
||||
import net.minecraft.world.biome.BiomeGenMesa;
|
||||
|
@ -71,10 +73,10 @@ public class GenLayerShoreBOP extends BOPGenLayer
|
|||
if (biomeId != BiomeGenBase.ocean.biomeID && biomeId != BiomeGenBase.deepOcean.biomeID && biomeId != BiomeGenBase.river.biomeID && biomeId != BiomeGenBase.swampland.biomeID)
|
||||
{
|
||||
//Generate custom beaches for our biomes
|
||||
if (biome != null && biome instanceof BOPBiome)
|
||||
if (biome != null && BOPBiomes.REG_INSTANCE.getExtendedBiome(biome) != null)
|
||||
{
|
||||
BOPBiome bopBiome = (BOPBiome)biome;
|
||||
setBiomeWithAdjacent(biomeIds, out, x, z, areaWidth, biomeId, bopBiome.beachBiomeId, OCEANIC_PREDICATE);
|
||||
IExtendedBiome extBiome = BOPBiomes.REG_INSTANCE.getExtendedBiome(biome);
|
||||
setBiomeWithAdjacent(biomeIds, out, x, z, areaWidth, biomeId, extBiome.getBeachId(), OCEANIC_PREDICATE);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue