mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-04-08 16:56:07 +00:00
slab
This commit is contained in:
@@ -10,6 +10,6 @@ import java.lang.reflect.Type;
|
||||
public class MaterialLoader implements TypeLoader<Material> {
|
||||
@Override
|
||||
public Material load(Type type, Object o, ConfigLoader configLoader) throws LoadException {
|
||||
return Material.getMaterial((String) o);
|
||||
return Material.matchMaterial((String) o);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,6 +76,42 @@ public class BiomeTemplate implements ConfigTemplate {
|
||||
@Abstractable
|
||||
private String elevationEquation = null;
|
||||
|
||||
@Value("slabs.enable")
|
||||
@Abstractable
|
||||
@Default
|
||||
private boolean doSlabs = false;
|
||||
|
||||
@Value("slabs.threshold")
|
||||
@Abstractable
|
||||
@Default
|
||||
private double slabThreshold = 0.0075D;
|
||||
|
||||
@Value("slabs.palettes")
|
||||
@Abstractable
|
||||
@Default
|
||||
private Map<Material, Palette<BlockData>> slabPalettes;
|
||||
|
||||
@Value("stair-palettes")
|
||||
@Abstractable
|
||||
@Default
|
||||
private Map<Material, Palette<BlockData>> stairPalettes;
|
||||
|
||||
public double getSlabThreshold() {
|
||||
return slabThreshold;
|
||||
}
|
||||
|
||||
public boolean doSlabs() {
|
||||
return doSlabs;
|
||||
}
|
||||
|
||||
public Map<Material, Palette<BlockData>> getSlabPalettes() {
|
||||
return slabPalettes;
|
||||
}
|
||||
|
||||
public Map<Material, Palette<BlockData>> getStairPalettes() {
|
||||
return stairPalettes;
|
||||
}
|
||||
|
||||
public BiomeTemplate(ConfigPack pack) {
|
||||
this.pack = pack;
|
||||
}
|
||||
|
||||
@@ -175,10 +175,10 @@ public class TerraChunkGenerator extends GaeaChunkGenerator {
|
||||
if(interpolator.getNoise(x, y - elevate, z) > 0) {
|
||||
BlockData data = getPalette(x, y, z, c, interpolator, elevationInterpolator).get(paletteLevel, cx, cz);
|
||||
chunk.setBlock(x, y, z, data);
|
||||
/*if(paletteLevel == 0 && slab != null && y < 255) {
|
||||
prepareBlockPart(data, chunk.getBlockData(x, y + 1, z), chunk, new Vector(x, y + 1, z), slab.getSlabs(),
|
||||
slab.getStairs(), slab.getSlabThreshold(), interpolator, elevationInterpolator);
|
||||
}*/
|
||||
if(paletteLevel == 0 && c.doSlabs() && y < 255) {
|
||||
prepareBlockPart(data, chunk.getBlockData(x, y + 1, z), chunk, new Vector(x, y + 1, z), c.getSlabPalettes(),
|
||||
c.getStairPalettes(), c.getSlabThreshold(), interpolator, elevationInterpolator);
|
||||
}
|
||||
paletteLevel++;
|
||||
} else if(y <= sea) {
|
||||
chunk.setBlock(x, y, z, seaPalette.get(sea - y, x + xOrig, z + zOrig));
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.dfsek.terra.biome.palette.PaletteLayer;
|
||||
import com.dfsek.terra.carving.CarverPalette;
|
||||
import com.dfsek.terra.config.loaders.BlockDataLoader;
|
||||
import com.dfsek.terra.config.loaders.GridSpawnLoader;
|
||||
import com.dfsek.terra.config.loaders.MaterialLoader;
|
||||
import com.dfsek.terra.config.loaders.PaletteHolderLoader;
|
||||
import com.dfsek.terra.config.loaders.PaletteLayerLoader;
|
||||
import com.dfsek.terra.config.loaders.ProbabilityCollectionLoader;
|
||||
@@ -13,6 +14,7 @@ import com.dfsek.terra.config.loaders.RangeLoader;
|
||||
import com.dfsek.terra.config.loaders.VanillaBiomeLoader;
|
||||
import com.dfsek.terra.config.loaders.base.CarverPaletteLoader;
|
||||
import com.dfsek.terra.procgen.GridSpawn;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.block.Biome;
|
||||
import org.bukkit.block.data.BlockData;
|
||||
import org.polydev.gaea.math.ProbabilityCollection;
|
||||
@@ -60,6 +62,7 @@ public final class ConfigUtil {
|
||||
.registerLoader(PaletteHolder.class, new PaletteHolderLoader())
|
||||
.registerLoader(PaletteLayer.class, new PaletteLayerLoader())
|
||||
.registerLoader(Biome.class, new VanillaBiomeLoader())
|
||||
.registerLoader(BlockData.class, new BlockDataLoader());
|
||||
.registerLoader(BlockData.class, new BlockDataLoader())
|
||||
.registerLoader(Material.class, new MaterialLoader());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user