diff --git a/src/main/java/com/volmit/iris/Iris.java b/src/main/java/com/volmit/iris/Iris.java index 4526292e9..c72a7ef21 100644 --- a/src/main/java/com/volmit/iris/Iris.java +++ b/src/main/java/com/volmit/iris/Iris.java @@ -22,7 +22,6 @@ import com.volmit.iris.core.*; import com.volmit.iris.core.command.CommandIris; import com.volmit.iris.core.command.PermissionIris; import com.volmit.iris.core.command.world.CommandLocate; -import com.volmit.iris.core.events.IrisEngineHotloadEvent; import com.volmit.iris.core.link.IrisPapiExpansion; import com.volmit.iris.core.link.MultiverseCoreLink; import com.volmit.iris.core.link.OraxenLink; diff --git a/src/main/java/com/volmit/iris/core/command/studio/CommandIrisStudioExplorerGenerator.java b/src/main/java/com/volmit/iris/core/command/studio/CommandIrisStudioExplorerGenerator.java index dd73dc29e..05ef6b7a4 100644 --- a/src/main/java/com/volmit/iris/core/command/studio/CommandIrisStudioExplorerGenerator.java +++ b/src/main/java/com/volmit/iris/core/command/studio/CommandIrisStudioExplorerGenerator.java @@ -30,7 +30,6 @@ import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.plugin.MortarCommand; import com.volmit.iris.util.plugin.VolmitSender; -import java.util.function.Consumer; import java.util.function.Supplier; public class CommandIrisStudioExplorerGenerator extends MortarCommand { @@ -73,7 +72,6 @@ public class CommandIrisStudioExplorerGenerator extends MortarCommand { } - Supplier> l = () -> { long seed = 12345; IrisGenerator generator; @@ -84,8 +82,7 @@ public class CommandIrisStudioExplorerGenerator extends MortarCommand { generator = IrisData.loadAnyGenerator(args[0]); } - if(generator == null) - { + if (generator == null) { return (x, z) -> 0D; } @@ -94,7 +91,6 @@ public class CommandIrisStudioExplorerGenerator extends MortarCommand { }; - NoiseExplorerGUI.launch(l, "Custom Generator"); return true; diff --git a/src/main/java/com/volmit/iris/core/gui/NoiseExplorerGUI.java b/src/main/java/com/volmit/iris/core/gui/NoiseExplorerGUI.java index 10a13e141..9d18a763b 100644 --- a/src/main/java/com/volmit/iris/core/gui/NoiseExplorerGUI.java +++ b/src/main/java/com/volmit/iris/core/gui/NoiseExplorerGUI.java @@ -42,7 +42,6 @@ import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.concurrent.locks.ReentrantLock; -import java.util.function.Consumer; import java.util.function.Supplier; public class NoiseExplorerGUI extends JPanel implements MouseWheelListener, Listener { @@ -108,8 +107,7 @@ public class NoiseExplorerGUI extends JPanel implements MouseWheelListener, List } @EventHandler - public void on(IrisEngineHotloadEvent e) - { + public void on(IrisEngineHotloadEvent e) { generator = loader.get(); } diff --git a/src/main/java/com/volmit/iris/core/project/loader/ResourceLoader.java b/src/main/java/com/volmit/iris/core/project/loader/ResourceLoader.java index 8f0a0b413..acc0ab645 100644 --- a/src/main/java/com/volmit/iris/core/project/loader/ResourceLoader.java +++ b/src/main/java/com/volmit/iris/core/project/loader/ResourceLoader.java @@ -195,8 +195,7 @@ public class ResourceLoader { } } - public Stream streamAll(Stream s) - { + public Stream streamAll(Stream s) { return s.map(this::load); } diff --git a/src/main/java/com/volmit/iris/engine/IrisWorldManager.java b/src/main/java/com/volmit/iris/engine/IrisWorldManager.java index e8e931512..8eedb6606 100644 --- a/src/main/java/com/volmit/iris/engine/IrisWorldManager.java +++ b/src/main/java/com/volmit/iris/engine/IrisWorldManager.java @@ -91,7 +91,7 @@ public class IrisWorldManager extends EngineAssignedWorldManager { } for (int ig = 0; ig < data.get(i).size() / 8; ig++) { - Chunk c = data.get(i).getRandom(); + Chunk c = data.get(i).getRandom(); IrisBiome biome = getEngine().getSurfaceBiome(c); IrisRegion region = getEngine().getRegion(c); spawnIn(c, biome, region, i, maxGroups); @@ -111,25 +111,25 @@ public class IrisWorldManager extends EngineAssignedWorldManager { //@builder spawnRandomly(Stream.concat(Stream.concat( - getData().getSpawnerLoader() - .loadAll(getDimension().getEntitySpawners()) - .shuffleCopy(RNG.r).stream().filter(this::canSpawn), - getData().getSpawnerLoader().streamAll(getEngine().getFramework().getEngineParallax() - .getFeaturesInChunk(c).stream() - .flatMap((o) -> o.getFeature().getEntitySpawners().stream())) - .filter(this::canSpawn)) - .filter((i) -> i.isValid(biome)) - .flatMap(this::stream), - Stream.concat(getData().getSpawnerLoader() - .loadAll(getEngine().getRegion(c.getX() << 4, c.getZ() << 4).getEntitySpawners()) - .shuffleCopy(RNG.r).stream().filter(this::canSpawn) - .flatMap(this::stream), - getData().getSpawnerLoader() - .loadAll(getEngine().getSurfaceBiome(c.getX() << 4, c.getZ() << 4).getEntitySpawners()) - .shuffleCopy(RNG.r).stream().filter(this::canSpawn) - .flatMap(this::stream))) - .collect(Collectors.toList())) - .popRandom(RNG.r, max).forEach((i) -> spawn(c, id, i)); + getData().getSpawnerLoader() + .loadAll(getDimension().getEntitySpawners()) + .shuffleCopy(RNG.r).stream().filter(this::canSpawn), + getData().getSpawnerLoader().streamAll(getEngine().getFramework().getEngineParallax() + .getFeaturesInChunk(c).stream() + .flatMap((o) -> o.getFeature().getEntitySpawners().stream())) + .filter(this::canSpawn)) + .filter((i) -> i.isValid(biome)) + .flatMap(this::stream), + Stream.concat(getData().getSpawnerLoader() + .loadAll(getEngine().getRegion(c.getX() << 4, c.getZ() << 4).getEntitySpawners()) + .shuffleCopy(RNG.r).stream().filter(this::canSpawn) + .flatMap(this::stream), + getData().getSpawnerLoader() + .loadAll(getEngine().getSurfaceBiome(c.getX() << 4, c.getZ() << 4).getEntitySpawners()) + .shuffleCopy(RNG.r).stream().filter(this::canSpawn) + .flatMap(this::stream))) + .collect(Collectors.toList())) + .popRandom(RNG.r, max).forEach((i) -> spawn(c, id, i)); //@done } diff --git a/src/main/java/com/volmit/iris/engine/framework/Engine.java b/src/main/java/com/volmit/iris/engine/framework/Engine.java index e0191544e..a3d468c39 100644 --- a/src/main/java/com/volmit/iris/engine/framework/Engine.java +++ b/src/main/java/com/volmit/iris/engine/framework/Engine.java @@ -413,13 +413,11 @@ public interface Engine extends DataProvider, Fallible, GeneratorAccess, LootPro IrisEngineData getEngineData(); - default IrisBiome getSurfaceBiome(Chunk c) - { - return getSurfaceBiome((c.getX()<<4) + 8, (c.getZ()<<4) + 8); + default IrisBiome getSurfaceBiome(Chunk c) { + return getSurfaceBiome((c.getX() << 4) + 8, (c.getZ() << 4) + 8); } - default IrisRegion getRegion(Chunk c) - { - return getRegion((c.getX()<<4) + 8, (c.getZ()<<4) + 8); + default IrisRegion getRegion(Chunk c) { + return getRegion((c.getX() << 4) + 8, (c.getZ() << 4) + 8); } } diff --git a/src/main/java/com/volmit/iris/engine/framework/EngineParallaxManager.java b/src/main/java/com/volmit/iris/engine/framework/EngineParallaxManager.java index 6d7f4d521..6ed5d2897 100644 --- a/src/main/java/com/volmit/iris/engine/framework/EngineParallaxManager.java +++ b/src/main/java/com/volmit/iris/engine/framework/EngineParallaxManager.java @@ -25,7 +25,6 @@ import com.volmit.iris.engine.cache.Cache; import com.volmit.iris.engine.data.B; import com.volmit.iris.engine.data.DataProvider; import com.volmit.iris.engine.hunk.Hunk; -import com.volmit.iris.engine.interpolation.InterpolationMethod; import com.volmit.iris.engine.jigsaw.PlannedStructure; import com.volmit.iris.engine.object.*; import com.volmit.iris.engine.object.common.IObjectPlacer; @@ -198,18 +197,17 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer { } @ChunkCoordinates - default KList getFeaturesInChunk(int x, int z) - { + default KList getFeaturesInChunk(int x, int z) { KList pos = new KList<>(); for (IrisFeaturePositional i : getEngine().getDimension().getSpecificFeatures()) { - if (i.shouldFilter((x<<4) + 8, (z<<4) + 8, getEngine().getFramework().getComplex().getRng(), getData())) { + if (i.shouldFilter((x << 4) + 8, (z << 4) + 8, getEngine().getFramework().getComplex().getRng(), getData())) { pos.add(i); } } for (IrisFeaturePositional i : getParallaxAccess().getMetaR(x, z).getFeatures()) { - if (i.shouldFilter((x<<4) + 8, (z<<4) + 8, getEngine().getFramework().getComplex().getRng(), getData())) { + if (i.shouldFilter((x << 4) + 8, (z << 4) + 8, getEngine().getFramework().getComplex().getRng(), getData())) { pos.add(i); } } @@ -567,8 +565,7 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer { }, null, getData()); - if(p.usesFeatures()) - { + if (p.usesFeatures()) { if (p.isVacuum()) { ParallaxChunkMeta rw = getParallaxAccess().getMetaRW(xx >> 4, zz >> 4); double a = Math.max(v.getW(), v.getD()); @@ -588,8 +585,7 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer { rw.getFeatures().add(new IrisFeaturePositional(xx, zz, f)); } - for(IrisFeaturePotential j : p.getAddFeatures()) - { + for (IrisFeaturePotential j : p.getAddFeatures()) { ParallaxChunkMeta rw = getParallaxAccess().getMetaRW(xx >> 4, zz >> 4); double a = Math.max(v.getW(), v.getD()); @@ -629,8 +625,7 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer { }, null, getData()); - if(objectPlacement.usesFeatures()) - { + if (objectPlacement.usesFeatures()) { if (objectPlacement.isVacuum()) { ParallaxChunkMeta rw = getParallaxAccess().getMetaRW(xx >> 4, zz >> 4); double a = Math.max(v.getW(), v.getD()); @@ -650,8 +645,7 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer { rw.getFeatures().add(new IrisFeaturePositional(xx, zz, f)); } - for(IrisFeaturePotential j : objectPlacement.getAddFeatures()) - { + for (IrisFeaturePotential j : objectPlacement.getAddFeatures()) { ParallaxChunkMeta rw = getParallaxAccess().getMetaRW(xx >> 4, zz >> 4); double a = Math.max(v.getW(), v.getD()); @@ -952,8 +946,7 @@ public interface EngineParallaxManager extends DataProvider, IObjectPlacer { } @ChunkCoordinates - default KList getFeaturesInChunk(Chunk c) - { + default KList getFeaturesInChunk(Chunk c) { return getFeaturesInChunk(c.getX(), c.getZ()); } } diff --git a/src/main/java/com/volmit/iris/engine/object/IrisEntitySpawn.java b/src/main/java/com/volmit/iris/engine/object/IrisEntitySpawn.java index 77c592d59..5ee64f5cc 100644 --- a/src/main/java/com/volmit/iris/engine/object/IrisEntitySpawn.java +++ b/src/main/java/com/volmit/iris/engine/object/IrisEntitySpawn.java @@ -21,11 +21,9 @@ package com.volmit.iris.engine.object; import com.volmit.iris.Iris; import com.volmit.iris.engine.IrisComplex; import com.volmit.iris.engine.cache.AtomicCache; -import com.volmit.iris.engine.data.B; import com.volmit.iris.engine.framework.Engine; import com.volmit.iris.engine.framework.EngineFramework; import com.volmit.iris.engine.modifier.IrisCaveModifier; -import com.volmit.iris.engine.modifier.IrisPostModifier; import com.volmit.iris.engine.object.annotations.Desc; import com.volmit.iris.engine.object.annotations.MinNumber; import com.volmit.iris.engine.object.annotations.RegistryListResource; @@ -41,14 +39,7 @@ import lombok.NoArgsConstructor; import lombok.experimental.Accessors; import org.bukkit.Chunk; import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.block.data.BlockData; -import org.bukkit.block.data.type.Slab; import org.bukkit.entity.Entity; -import org.bukkit.entity.LivingEntity; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; -import org.bukkit.potion.PotionType; @Accessors(chain = true) @NoArgsConstructor @@ -87,9 +78,8 @@ public class IrisEntitySpawn implements IRare { int z = (c.getZ() * 16) + rng.i(15); int h = gen.getHeight(x, z, true); int hf = gen.getHeight(x, z, false); - Location l = switch(getReferenceSpawner().getGroup()) - { - case NORMAL -> new Location(c.getWorld(), x, hf+1, z); + Location l = switch (getReferenceSpawner().getGroup()) { + case NORMAL -> new Location(c.getWorld(), x, hf + 1, z); case CAVE -> { IrisComplex comp = gen.getFramework().getComplex(); EngineFramework frame = gen.getFramework(); @@ -97,7 +87,7 @@ public class IrisEntitySpawn implements IRare { KList r = new KList<>(); if (cave != null) { for (CaveResult i : ((IrisCaveModifier) frame.getCaveModifier()).genCaves(x, z)) { - if (i.getCeiling() >= gen.getHeight() || i.getFloor() < 0 || i.getCeiling()-2 <= i.getFloor()) { + if (i.getCeiling() >= gen.getHeight() || i.getFloor() < 0 || i.getCeiling() - 2 <= i.getFloor()) { continue; } @@ -108,18 +98,17 @@ public class IrisEntitySpawn implements IRare { yield r.getRandom(rng); } - case UNDERWATER, BEACH -> new Location(c.getWorld(), x, rng.i(h+1, hf), z); + case UNDERWATER, BEACH -> new Location(c.getWorld(), x, rng.i(h + 1, hf), z); }; - if(l != null) - { + if (l != null) { spawn100(gen, l); s++; } } } - return s>0; + return s > 0; } public IrisEntity getRealEntity(Engine g) { diff --git a/src/main/java/com/volmit/iris/engine/object/IrisObjectPlacement.java b/src/main/java/com/volmit/iris/engine/object/IrisObjectPlacement.java index fa0293a19..cbfd8b4c8 100644 --- a/src/main/java/com/volmit/iris/engine/object/IrisObjectPlacement.java +++ b/src/main/java/com/volmit/iris/engine/object/IrisObjectPlacement.java @@ -218,8 +218,7 @@ public class IrisObjectPlacement { return getMode().equals(ObjectPlaceMode.VACUUM); } - public boolean usesFeatures() - { + public boolean usesFeatures() { return isVacuum() || getAddFeatures().isNotEmpty(); } diff --git a/src/main/java/com/volmit/iris/engine/object/IrisSpawner.java b/src/main/java/com/volmit/iris/engine/object/IrisSpawner.java index 07fc57d51..7aa668bc9 100644 --- a/src/main/java/com/volmit/iris/engine/object/IrisSpawner.java +++ b/src/main/java/com/volmit/iris/engine/object/IrisSpawner.java @@ -26,7 +26,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.Accessors; -import org.bukkit.Location; import org.bukkit.World; @EqualsAndHashCode(callSuper = true) @@ -52,24 +51,22 @@ public class IrisSpawner extends IrisRegistrant { @Desc("Where should these spawns be placed") private IrisSpawnGroup group = IrisSpawnGroup.NORMAL; - public boolean isValid(IrisBiome biome) - { - return switch (group) - { - case NORMAL -> switch(biome.getInferredType()) { - case SHORE, SEA, CAVE, RIVER, LAKE, DEFER -> false; - case LAND -> true; - }; - case CAVE -> true; - case UNDERWATER -> switch(biome.getInferredType()) { - case SHORE, LAND, CAVE, RIVER, LAKE, DEFER -> false; - case SEA -> true; - }; - case BEACH -> switch(biome.getInferredType()) { - case SHORE -> true; - case LAND, CAVE, RIVER, LAKE, SEA, DEFER -> false; - }; - }; + public boolean isValid(IrisBiome biome) { + return switch (group) { + case NORMAL -> switch (biome.getInferredType()) { + case SHORE, SEA, CAVE, RIVER, LAKE, DEFER -> false; + case LAND -> true; + }; + case CAVE -> true; + case UNDERWATER -> switch (biome.getInferredType()) { + case SHORE, LAND, CAVE, RIVER, LAKE, DEFER -> false; + case SEA -> true; + }; + case BEACH -> switch (biome.getInferredType()) { + case SHORE -> true; + case LAND, CAVE, RIVER, LAKE, SEA, DEFER -> false; + }; + }; } public boolean isValid(World world) { diff --git a/src/main/java/com/volmit/iris/util/math/RNG.java b/src/main/java/com/volmit/iris/util/math/RNG.java index d58061411..dc7daf220 100644 --- a/src/main/java/com/volmit/iris/util/math/RNG.java +++ b/src/main/java/com/volmit/iris/util/math/RNG.java @@ -114,8 +114,7 @@ public class RNG extends Random { } public double d(double lowerBound, double upperBound) { - if(lowerBound > upperBound) - { + if (lowerBound > upperBound) { return M.lerp(upperBound, lowerBound, nextDouble()); }