mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-07-18 18:23:06 +00:00
Iris engine decorators
This commit is contained in:
parent
14d5286eb0
commit
c8e2bcd6e4
@ -0,0 +1,44 @@
|
||||
package com.volmit.iris.v2.generator.decorator;
|
||||
|
||||
import com.volmit.iris.object.DecorationPart;
|
||||
import com.volmit.iris.object.IrisBiome;
|
||||
import com.volmit.iris.object.IrisDecorator;
|
||||
import com.volmit.iris.util.RNG;
|
||||
import com.volmit.iris.v2.generator.IrisEngine;
|
||||
import com.volmit.iris.v2.scaffold.engine.Engine;
|
||||
import com.volmit.iris.v2.scaffold.engine.EngineAssignedComponent;
|
||||
import com.volmit.iris.v2.scaffold.engine.EngineDecorator;
|
||||
import com.volmit.iris.v2.scaffold.hunk.Hunk;
|
||||
import lombok.Getter;
|
||||
import org.bukkit.block.data.BlockData;
|
||||
|
||||
public abstract class IrisEngineDecorator extends EngineAssignedComponent implements EngineDecorator {
|
||||
|
||||
@Getter
|
||||
private final RNG rng;
|
||||
|
||||
@Getter
|
||||
private final DecorationPart part;
|
||||
|
||||
public IrisEngineDecorator(Engine engine, String name, DecorationPart part) {
|
||||
super(engine, name + " Decorator");
|
||||
this.part = part;
|
||||
this.rng = new RNG(getSeed() + 29356788 - (part.ordinal() * 10439677));
|
||||
}
|
||||
|
||||
protected IrisDecorator getDecorator(IrisBiome biome, double realX, double realZ)
|
||||
{
|
||||
for(IrisDecorator i : biome.getDecorators())
|
||||
{
|
||||
if(i.getPartOf().equals(part))
|
||||
{
|
||||
if(i.getBlockData(biome, rng, realX, realZ, getData()) != null)
|
||||
{
|
||||
return i;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user