mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-07-18 18:23:06 +00:00
Coord annotations
This commit is contained in:
parent
cff402affb
commit
04fc1e25e4
@ -25,6 +25,7 @@ import com.volmit.iris.engine.hunk.Hunk;
|
|||||||
import com.volmit.iris.engine.object.*;
|
import com.volmit.iris.engine.object.*;
|
||||||
import com.volmit.iris.util.collection.KList;
|
import com.volmit.iris.util.collection.KList;
|
||||||
import com.volmit.iris.util.collection.KMap;
|
import com.volmit.iris.util.collection.KMap;
|
||||||
|
import com.volmit.iris.util.documentation.BlockCoordinates;
|
||||||
import com.volmit.iris.util.documentation.ChunkCoordinates;
|
import com.volmit.iris.util.documentation.ChunkCoordinates;
|
||||||
import com.volmit.iris.util.format.C;
|
import com.volmit.iris.util.format.C;
|
||||||
import com.volmit.iris.util.format.Form;
|
import com.volmit.iris.util.format.Form;
|
||||||
@ -147,11 +148,13 @@ public class IrisEngine extends BlockPopulator implements Engine {
|
|||||||
getFramework().recycle();
|
getFramework().recycle();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
public double modifyX(double x) {
|
public double modifyX(double x) {
|
||||||
return x / getDimension().getTerrainZoom();
|
return x / getDimension().getTerrainZoom();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
public double modifyZ(double z) {
|
public double modifyZ(double z) {
|
||||||
return z / getDimension().getTerrainZoom();
|
return z / getDimension().getTerrainZoom();
|
||||||
@ -215,6 +218,7 @@ public class IrisEngine extends BlockPopulator implements Engine {
|
|||||||
close();
|
close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ChunkCoordinates
|
||||||
@Override
|
@Override
|
||||||
public void populate(@NotNull World world, @NotNull Random random, @NotNull Chunk c) {
|
public void populate(@NotNull World world, @NotNull Random random, @NotNull Chunk c) {
|
||||||
getWorldManager().spawnInitialEntities(c);
|
getWorldManager().spawnInitialEntities(c);
|
||||||
|
@ -34,6 +34,8 @@ import com.volmit.iris.engine.parallel.MultiBurst;
|
|||||||
import com.volmit.iris.util.atomics.AtomicRollingSequence;
|
import com.volmit.iris.util.atomics.AtomicRollingSequence;
|
||||||
import com.volmit.iris.util.collection.KList;
|
import com.volmit.iris.util.collection.KList;
|
||||||
import com.volmit.iris.util.collection.KMap;
|
import com.volmit.iris.util.collection.KMap;
|
||||||
|
import com.volmit.iris.util.documentation.BlockCoordinates;
|
||||||
|
import com.volmit.iris.util.documentation.ChunkCoordinates;
|
||||||
import com.volmit.iris.util.format.C;
|
import com.volmit.iris.util.format.C;
|
||||||
import com.volmit.iris.util.format.Form;
|
import com.volmit.iris.util.format.Form;
|
||||||
import com.volmit.iris.util.scheduling.PrecisionStopwatch;
|
import com.volmit.iris.util.scheduling.PrecisionStopwatch;
|
||||||
@ -212,6 +214,7 @@ public class IrisEngineCompound implements EngineCompound {
|
|||||||
return new File(world.worldFolder(), "iris/engine-metadata.json");
|
return new File(world.worldFolder(), "iris/engine-metadata.json");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ChunkCoordinates
|
||||||
@Override
|
@Override
|
||||||
public void generate(int x, int z, Hunk<BlockData> blocks, Hunk<BlockData> postblocks, Hunk<Biome> biomes, boolean multicore) {
|
public void generate(int x, int z, Hunk<BlockData> blocks, Hunk<BlockData> postblocks, Hunk<Biome> biomes, boolean multicore) {
|
||||||
recycle();
|
recycle();
|
||||||
@ -259,6 +262,7 @@ public class IrisEngineCompound implements EngineCompound {
|
|||||||
engineMetadata.save(getEngineMetadataFile());
|
engineMetadata.save(getEngineMetadataFile());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
public IrisDataManager getData(int height) {
|
public IrisDataManager getData(int height) {
|
||||||
return getEngineForHeight(height).getData();
|
return getEngineForHeight(height).getData();
|
||||||
|
@ -25,6 +25,7 @@ import com.volmit.iris.engine.framework.Engine;
|
|||||||
import com.volmit.iris.engine.framework.EngineAssignedWorldManager;
|
import com.volmit.iris.engine.framework.EngineAssignedWorldManager;
|
||||||
import com.volmit.iris.engine.object.*;
|
import com.volmit.iris.engine.object.*;
|
||||||
import com.volmit.iris.util.collection.KList;
|
import com.volmit.iris.util.collection.KList;
|
||||||
|
import com.volmit.iris.util.documentation.ChunkCoordinates;
|
||||||
import com.volmit.iris.util.math.RNG;
|
import com.volmit.iris.util.math.RNG;
|
||||||
import com.volmit.iris.util.scheduling.J;
|
import com.volmit.iris.util.scheduling.J;
|
||||||
import org.bukkit.Chunk;
|
import org.bukkit.Chunk;
|
||||||
@ -52,6 +53,7 @@ public class IrisWorldManager extends EngineAssignedWorldManager {
|
|||||||
getEngine().getParallax().saveAll();
|
getEngine().getParallax().saveAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ChunkCoordinates
|
||||||
@Override
|
@Override
|
||||||
public void spawnInitialEntities(Chunk c) {
|
public void spawnInitialEntities(Chunk c) {
|
||||||
RNG rng = new RNG(Cache.key(c));
|
RNG rng = new RNG(Cache.key(c));
|
||||||
@ -148,6 +150,7 @@ public class IrisWorldManager extends EngineAssignedWorldManager {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ChunkCoordinates
|
||||||
private void trySpawn(KList<IrisEntityInitialSpawn> s, Chunk c, RNG rng) {
|
private void trySpawn(KList<IrisEntityInitialSpawn> s, Chunk c, RNG rng) {
|
||||||
for (IrisEntityInitialSpawn i : s) {
|
for (IrisEntityInitialSpawn i : s) {
|
||||||
i.spawn(getEngine(), c, rng);
|
i.spawn(getEngine(), c, rng);
|
||||||
|
@ -31,6 +31,8 @@ import com.volmit.iris.engine.object.common.IrisWorld;
|
|||||||
import com.volmit.iris.engine.parallax.ParallaxAccess;
|
import com.volmit.iris.engine.parallax.ParallaxAccess;
|
||||||
import com.volmit.iris.engine.parallel.MultiBurst;
|
import com.volmit.iris.engine.parallel.MultiBurst;
|
||||||
import com.volmit.iris.util.collection.KList;
|
import com.volmit.iris.util.collection.KList;
|
||||||
|
import com.volmit.iris.util.documentation.BlockCoordinates;
|
||||||
|
import com.volmit.iris.util.documentation.ChunkCoordinates;
|
||||||
import com.volmit.iris.util.math.BlockPosition;
|
import com.volmit.iris.util.math.BlockPosition;
|
||||||
import com.volmit.iris.util.math.M;
|
import com.volmit.iris.util.math.M;
|
||||||
import com.volmit.iris.util.math.RNG;
|
import com.volmit.iris.util.math.RNG;
|
||||||
@ -77,10 +79,13 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
|
|
||||||
int getMinHeight();
|
int getMinHeight();
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
double modifyX(double x);
|
double modifyX(double x);
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
double modifyZ(double z);
|
double modifyZ(double z);
|
||||||
|
|
||||||
|
@ChunkCoordinates
|
||||||
void generate(int x, int z, Hunk<BlockData> blocks, Hunk<Biome> biomes, boolean multicore);
|
void generate(int x, int z, Hunk<BlockData> blocks, Hunk<Biome> biomes, boolean multicore);
|
||||||
|
|
||||||
EngineMetrics getMetrics();
|
EngineMetrics getMetrics();
|
||||||
@ -117,6 +122,7 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
return getTarget().getParallaxWorld();
|
return getTarget().getParallaxWorld();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
default Color draw(double x, double z) {
|
default Color draw(double x, double z) {
|
||||||
IrisRegion region = getRegion((int) x, (int) z);
|
IrisRegion region = getRegion((int) x, (int) z);
|
||||||
IrisBiome biome = getSurfaceBiome((int) x, (int) z);
|
IrisBiome biome = getSurfaceBiome((int) x, (int) z);
|
||||||
@ -131,6 +137,7 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
return IrisColor.blend(rc, bc, bc, Color.getHSBColor(0, 0, (float) heightFactor));
|
return IrisColor.blend(rc, bc, bc, Color.getHSBColor(0, 0, (float) heightFactor));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
default IrisRegion getRegion(int x, int z) {
|
default IrisRegion getRegion(int x, int z) {
|
||||||
return getFramework().getComplex().getRegionStream().get(x, z);
|
return getFramework().getComplex().getRegionStream().get(x, z);
|
||||||
@ -141,21 +148,25 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
return getParallax();
|
return getParallax();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
default IrisBiome getCaveBiome(int x, int z) {
|
default IrisBiome getCaveBiome(int x, int z) {
|
||||||
return getFramework().getComplex().getCaveBiomeStream().get(x, z);
|
return getFramework().getComplex().getCaveBiomeStream().get(x, z);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
default IrisBiome getSurfaceBiome(int x, int z) {
|
default IrisBiome getSurfaceBiome(int x, int z) {
|
||||||
return getFramework().getComplex().getTrueBiomeStream().get(x, z);
|
return getFramework().getComplex().getTrueBiomeStream().get(x, z);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
default int getHeight(int x, int z) {
|
default int getHeight(int x, int z) {
|
||||||
return getFramework().getEngineParallax().getHighest(x, z, true);
|
return getFramework().getEngineParallax().getHighest(x, z, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
default void catchBlockUpdates(int x, int y, int z, BlockData data) {
|
default void catchBlockUpdates(int x, int y, int z, BlockData data) {
|
||||||
if (data == null) {
|
if (data == null) {
|
||||||
@ -168,10 +179,12 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ChunkCoordinates
|
||||||
default void placeTiles(Chunk c) {
|
default void placeTiles(Chunk c) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ChunkCoordinates
|
||||||
@Override
|
@Override
|
||||||
default void updateChunk(Chunk c) {
|
default void updateChunk(Chunk c) {
|
||||||
PrecisionStopwatch p = PrecisionStopwatch.start();
|
PrecisionStopwatch p = PrecisionStopwatch.start();
|
||||||
@ -195,6 +208,7 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
getMetrics().getUpdates().put(p.getMilliseconds());
|
getMetrics().getUpdates().put(p.getMilliseconds());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
default void updateLighting(int x, int y, int z, Chunk c) {
|
default void updateLighting(int x, int y, int z, Chunk c) {
|
||||||
Block block = c.getBlock(x, y, z);
|
Block block = c.getBlock(x, y, z);
|
||||||
BlockData data = block.getBlockData();
|
BlockData data = block.getBlockData();
|
||||||
@ -210,6 +224,7 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
default void update(int x, int y, int z, Chunk c, RNG rf) {
|
default void update(int x, int y, int z, Chunk c, RNG rf) {
|
||||||
Block block = c.getBlock(x, y, z);
|
Block block = c.getBlock(x, y, z);
|
||||||
@ -285,6 +300,7 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
list.addAll(r.getLootTables(getFramework().getComplex()));
|
list.addAll(r.getLootTables(getFramework().getComplex()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
@Override
|
@Override
|
||||||
default KList<IrisLootTable> getLootTables(RNG rng, Block b) {
|
default KList<IrisLootTable> getLootTables(RNG rng, Block b) {
|
||||||
int rx = b.getX();
|
int rx = b.getX();
|
||||||
@ -362,14 +378,17 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro
|
|||||||
burst().lazy(() -> getParallax().cleanup());
|
burst().lazy(() -> getParallax().cleanup());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
default IrisBiome getBiome(Location l) {
|
default IrisBiome getBiome(Location l) {
|
||||||
return getBiome(l.getBlockX(), l.getBlockY(), l.getBlockZ());
|
return getBiome(l.getBlockX(), l.getBlockY(), l.getBlockZ());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
default IrisRegion getRegion(Location l) {
|
default IrisRegion getRegion(Location l) {
|
||||||
return getRegion(l.getBlockX(), l.getBlockZ());
|
return getRegion(l.getBlockX(), l.getBlockZ());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@BlockCoordinates
|
||||||
default boolean contains(Location l) {
|
default boolean contains(Location l) {
|
||||||
return l.getBlockY() >= getMinHeight() && l.getBlockY() <= getMaxHeight();
|
return l.getBlockY() >= getMinHeight() && l.getBlockY() <= getMaxHeight();
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user