diff --git a/src/main/java/com/volmit/iris/Iris.java b/src/main/java/com/volmit/iris/Iris.java index 4c2d7eed6..96c74d692 100644 --- a/src/main/java/com/volmit/iris/Iris.java +++ b/src/main/java/com/volmit/iris/Iris.java @@ -23,8 +23,8 @@ import com.volmit.iris.core.link.IrisPapiExpansion; import com.volmit.iris.core.link.MultiverseCoreLink; import com.volmit.iris.core.link.MythicMobsLink; import com.volmit.iris.core.link.OraxenLink; -import com.volmit.iris.core.nms.INMS; import com.volmit.iris.core.loader.IrisData; +import com.volmit.iris.core.nms.INMS; import com.volmit.iris.core.service.StudioSVC; import com.volmit.iris.engine.object.biome.IrisBiome; import com.volmit.iris.engine.object.biome.IrisBiomeCustom; @@ -47,7 +47,10 @@ import com.volmit.iris.util.io.JarScanner; import com.volmit.iris.util.math.M; import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.parallel.MultiBurst; -import com.volmit.iris.util.plugin.*; +import com.volmit.iris.util.plugin.IrisService; +import com.volmit.iris.util.plugin.Metrics; +import com.volmit.iris.util.plugin.VolmitPlugin; +import com.volmit.iris.util.plugin.VolmitSender; import com.volmit.iris.util.reflect.ShadeFix; import com.volmit.iris.util.scheduling.J; import com.volmit.iris.util.scheduling.Queue; @@ -129,17 +132,17 @@ public class Iris extends VolmitPlugin implements Listener { J.a(this::verifyDataPacksPost, 20); splash(); - if(IrisSettings.get().getGeneral().isAutoStartDefaultStudio()) - { + if (IrisSettings.get().getGeneral().isAutoStartDefaultStudio()) { Iris.info("Starting up auto Studio!"); try { Player r = new KList<>(getServer().getOnlinePlayers()).getRandom(); Iris.service(StudioSVC.class).open(r != null ? new VolmitSender(r) : sender, 1337, IrisSettings.get().getGenerator().getDefaultWorldType(), (w) -> { - J.s(() -> {for(Player i : getServer().getOnlinePlayers()) - { - i.setGameMode(GameMode.SPECTATOR); - i.teleport(new Location(w, 0, 200, 0)); - }}); + J.s(() -> { + for (Player i : getServer().getOnlinePlayers()) { + i.setGameMode(GameMode.SPECTATOR); + i.teleport(new Location(w, 0, 200, 0)); + } + }); }); } catch (IrisException e) { e.printStackTrace(); diff --git a/src/main/java/com/volmit/iris/core/commands/CommandObject.java b/src/main/java/com/volmit/iris/core/commands/CommandObject.java index 2d378620a..d0da850a3 100644 --- a/src/main/java/com/volmit/iris/core/commands/CommandObject.java +++ b/src/main/java/com/volmit/iris/core/commands/CommandObject.java @@ -42,7 +42,7 @@ public class CommandObject implements DecreeExecutor { @Decree(description = "Check the composition of an object") public void analyze( @Param(description = "The object to analyze", customHandler = ObjectHandler.class) - String object + String object ) { IrisObject o = IrisData.loadAnyObject(object); sender().sendMessage("Object Size: " + o.getW() + " * " + o.getH() + " * " + o.getD() + ""); @@ -194,20 +194,20 @@ public class CommandObject implements DecreeExecutor { @Decree(description = "Paste an object", sync = true) public void paste( @Param(description = "The object to paste", customHandler = ObjectHandler.class) - String object, + String object, @Param(description = "Whether or not to edit the object (need to hold wand)", defaultValue = "false") boolean edit, @Param(description = "The amount of degrees to rotate by", defaultValue = "0") int rotate, @Param(description = "The factor by which to scale the object placement", defaultValue = "1") - double scale + double scale // , // @Param(description = "The scale interpolator to use", defaultValue = "none") // IrisObjectPlacementScaleInterpolator interpolator - ){ + ) { IrisObject o = IrisData.loadAnyObject(object); double maxScale = Double.max(10 - o.getBlocks().size() / 10000d, 1); - if (scale > maxScale){ + if (scale > maxScale) { sender().sendMessage(C.YELLOW + "Indicated scale exceeds maximum. Downscaled to maximum: " + maxScale); scale = maxScale; } @@ -321,12 +321,12 @@ public class CommandObject implements DecreeExecutor { @Decree(description = "Save an object") public void save( @Param(description = "The dimension to store the object in", contextual = true) - IrisDimension dimension, + IrisDimension dimension, @Param(description = "The file to store it in, can use / for subfolders") - String name, + String name, @Param(description = "Overwrite existing object files", defaultValue = "false", aliases = "force") - boolean overwrite - ){ + boolean overwrite + ) { IrisObject o = WandSVC.createSchematic(player().getInventory().getItemInMainHand()); if (o == null) { @@ -342,7 +342,7 @@ public class CommandObject implements DecreeExecutor { } try { o.write(file); - } catch (IOException e){ + } catch (IOException e) { sender().sendMessage(C.RED + "Failed to save object because of an IOException: " + e.getMessage()); Iris.reportError(e); } @@ -355,7 +355,7 @@ public class CommandObject implements DecreeExecutor { public void shift( @Param(description = "The amount to shift by", defaultValue = "1") int amount - ){ + ) { if (!WandSVC.isHoldingWand(player())) { sender().sendMessage("Hold your wand."); return; @@ -379,7 +379,7 @@ public class CommandObject implements DecreeExecutor { public void undo( @Param(description = "The amount of pastes to undo", defaultValue = "1") int amount - ){ + ) { ObjectSVC service = Iris.service(ObjectSVC.class); int actualReverts = Math.min(service.getUndos().size(), amount); service.revertChanges(actualReverts); @@ -394,8 +394,8 @@ public class CommandObject implements DecreeExecutor { } @Decree(name = "x&y", description = "Autoselect up, down & out", sync = true) - public void xay(){ - if (!WandSVC.isHoldingWand(player())){ + public void xay() { + if (!WandSVC.isHoldingWand(player())) { sender().sendMessage(C.YELLOW + "Hold your wand!"); return; } diff --git a/src/main/java/com/volmit/iris/core/commands/CommandStudio.java b/src/main/java/com/volmit/iris/core/commands/CommandStudio.java index 3cd50b199..9a49602e7 100644 --- a/src/main/java/com/volmit/iris/core/commands/CommandStudio.java +++ b/src/main/java/com/volmit/iris/core/commands/CommandStudio.java @@ -23,8 +23,8 @@ import com.volmit.iris.Iris; import com.volmit.iris.core.IrisSettings; import com.volmit.iris.core.gui.NoiseExplorerGUI; import com.volmit.iris.core.gui.VisionGUI; -import com.volmit.iris.core.project.IrisProject; import com.volmit.iris.core.loader.IrisData; +import com.volmit.iris.core.project.IrisProject; import com.volmit.iris.core.service.ConversionSVC; import com.volmit.iris.core.service.StudioSVC; import com.volmit.iris.core.tools.IrisToolbelt; @@ -309,7 +309,7 @@ public class CommandStudio implements DecreeExecutor { @Decree(description = "Charges all spawners in the area", aliases = "zzt", origin = DecreeOrigin.PLAYER) public void charge() { - if (!IrisToolbelt.isIrisWorld(world())){ + if (!IrisToolbelt.isIrisWorld(world())) { sender().sendMessage(C.RED + "You must be in an Iris world to charge spawners!"); return; } @@ -377,13 +377,13 @@ public class CommandStudio implements DecreeExecutor { if (regionPosition == null && region != null) { sender().sendMessage(C.RED + "Could not find the region you specified."); - } else if (regionPosition != null){ - sender().sendMessage(C.GREEN + "Found the region at: " + regionPosition.toString()); + } else if (regionPosition != null) { + sender().sendMessage(C.GREEN + "Found the region at: " + regionPosition); } if (biomePosition == null && biome != null) { sender().sendMessage(C.RED + "Could not find the biome you specified."); - } else if (biomePosition != null){ - sender().sendMessage(C.GREEN + "Found the biome at: " + biomePosition.toString()); + } else if (biomePosition != null) { + sender().sendMessage(C.GREEN + "Found the biome at: " + biomePosition); } final IrisPosition finalL = regionPosition == null ? biomePosition : regionPosition; @@ -705,7 +705,7 @@ public class CommandStudio implements DecreeExecutor { @Decree(aliases = {"find-features", "nf"}, description = "Get the noise feature data in your chunk") public void features() { - if (!IrisToolbelt.isIrisWorld(player().getWorld())){ + if (!IrisToolbelt.isIrisWorld(player().getWorld())) { sender().sendMessage(C.RED + "Iris worlds only"); return; } @@ -719,7 +719,7 @@ public class CommandStudio implements DecreeExecutor { @Decree(aliases = "find-objects", description = "Get information about nearby structures") public void objects() { - if (!IrisToolbelt.isIrisWorld(player().getWorld())){ + if (!IrisToolbelt.isIrisWorld(player().getWorld())) { sender().sendMessage(C.RED + "You must be in an Iris world"); return; } diff --git a/src/main/java/com/volmit/iris/core/commands/CommandWhat.java b/src/main/java/com/volmit/iris/core/commands/CommandWhat.java index 8a6f8e7e8..8005e72db 100644 --- a/src/main/java/com/volmit/iris/core/commands/CommandWhat.java +++ b/src/main/java/com/volmit/iris/core/commands/CommandWhat.java @@ -12,7 +12,9 @@ import com.volmit.iris.util.decree.DecreeOrigin; import com.volmit.iris.util.decree.annotations.Decree; import com.volmit.iris.util.format.C; import com.volmit.iris.util.json.JSONObject; -import org.bukkit.*; +import org.bukkit.Chunk; +import org.bukkit.FluidCollisionMode; +import org.bukkit.Material; import org.bukkit.block.Biome; import org.bukkit.block.data.BlockData; diff --git a/src/main/java/com/volmit/iris/core/pack/IrisPack.java b/src/main/java/com/volmit/iris/core/pack/IrisPack.java index b8cbd2fb7..797d41f8b 100644 --- a/src/main/java/com/volmit/iris/core/pack/IrisPack.java +++ b/src/main/java/com/volmit/iris/core/pack/IrisPack.java @@ -30,7 +30,6 @@ import com.volmit.iris.util.format.Form; import com.volmit.iris.util.io.IO; import com.volmit.iris.util.json.JSONArray; import com.volmit.iris.util.json.JSONObject; -import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.plugin.VolmitSender; import com.volmit.iris.util.scheduling.PrecisionStopwatch; import lombok.Data; @@ -54,6 +53,7 @@ public class IrisPack { /** * Create an iris pack backed by a data folder * the data folder is assumed to be in the Iris/packs/NAME folder + * * @param name the name */ public IrisPack(String name) { @@ -62,18 +62,17 @@ public class IrisPack { /** * Create an iris pack backed by a data folder + * * @param folder the folder of the pack. Must be a directory */ public IrisPack(File folder) { this.folder = folder; - if(!folder.exists()) - { + if (!folder.exists()) { throw new RuntimeException("Cannot open Pack " + folder.getPath() + " (directory doesnt exist)"); } - if(!folder.isDirectory()) - { + if (!folder.isDirectory()) { throw new RuntimeException("Cannot open Pack " + folder.getPath() + " (not a directory)"); } @@ -91,15 +90,15 @@ public class IrisPack { /** * Create a new pack from the input url + * * @param sender the sender - * @param url the url, or name, or really anything see IrisPackRepository.from(String) + * @param url the url, or name, or really anything see IrisPackRepository.from(String) * @return the iris pack * @throws IrisException fails */ public static Future from(VolmitSender sender, String url) throws IrisException { IrisPackRepository repo = IrisPackRepository.from(url); - if(repo == null) - { + if (repo == null) { throw new IrisException("Null Repo"); } @@ -112,15 +111,16 @@ public class IrisPack { /** * Get the name of this pack + * * @return the pack name */ - public String getName() - { + public String getName() { return folder.getName(); } /** * Get the file path of the workspace file + * * @return the workspace file path */ public File getWorkspaceFile() { @@ -129,6 +129,7 @@ public class IrisPack { /** * Update the workspace file + * * @return true if it was updated */ public boolean updateWorkspace() { @@ -160,33 +161,32 @@ public class IrisPack { /** * Install this pack into a world + * * @param world the world to install into (world/iris/pack) * @return the installed pack */ - public IrisPack install(World world) throws IrisException - { + public IrisPack install(World world) throws IrisException { return install(new File(world.getWorldFolder(), "iris/pack")); } /** * Install this pack into a world + * * @param world the world to install into (world/iris/pack) * @return the installed pack */ - public IrisPack install(IrisWorld world) throws IrisException - { + public IrisPack install(IrisWorld world) throws IrisException { return install(new File(world.worldFolder(), "iris/pack")); } /** * Install this pack into a world + * * @param folder the folder to install this pack into * @return the installed pack */ - public IrisPack install(File folder) throws IrisException - { - if(folder.exists()) - { + public IrisPack install(File folder) throws IrisException { + if (folder.exists()) { throw new IrisException("Cannot install new pack because the folder " + folder.getName() + " already exists!"); } @@ -204,15 +204,14 @@ public class IrisPack { /** * Create a new pack using this pack as a template. The new pack will be renamed & have a renamed dimension * to match it. + * * @param newName the new pack name * @return the new IrisPack */ - public IrisPack install(String newName) throws IrisException - { + public IrisPack install(String newName) throws IrisException { File newPack = packsPack(newName); - if(newPack.exists()) - { + if (newPack.exists()) { throw new IrisException("Cannot install new pack because the folder " + newName + " already exists!"); } @@ -242,24 +241,25 @@ public class IrisPack { /** * The dimension's assumed loadkey + * * @return getName() */ - public String getDimensionKey() - { + public String getDimensionKey() { return getName(); } /** * Get the main dimension object + * * @return the dimension (folder name as dim key) */ - public IrisDimension getDimension() - { + public IrisDimension getDimension() { return getData().getDimensionLoader().load(getDimensionKey()); } /** * Find all files in this pack with the given extension + * * @param fileExtension the extension * @return the list of files */ @@ -314,8 +314,9 @@ public class IrisPack { /** * Create a pack from a repo + * * @param sender the sender - * @param repo the repo + * @param repo the repo * @return the pack * @throws MalformedURLException shit happens */ @@ -329,6 +330,7 @@ public class IrisPack { /** * Create a blank pack with a given name + * * @param name the name of the pack * @return the pack * @throws IrisException if the pack already exists or another error @@ -336,8 +338,7 @@ public class IrisPack { public static IrisPack blank(String name) throws IrisException { File f = packsPack(name); - if(f.exists()) - { + if (f.exists()) { throw new IrisException("Already exists"); } @@ -345,7 +346,7 @@ public class IrisPack { fd.getParentFile().mkdirs(); try { IO.writeAll(fd, "{\n" + - " \"name\": \""+Form.capitalize(name)+"\",\n" + + " \"name\": \"" + Form.capitalize(name) + "\",\n" + " \"version\": 1\n" + "}\n"); } catch (IOException e) { @@ -359,11 +360,11 @@ public class IrisPack { /** * Get a packs pack folder for a name. Such that overworld would resolve as Iris/packs/overworld + * * @param name the name * @return the file path */ - public static File packsPack(String name) - { + public static File packsPack(String name) { return Iris.instance.getDataFolderNoCreate(StudioSVC.WORKSPACE_NAME, name); } diff --git a/src/main/java/com/volmit/iris/core/pack/IrisPackRepository.java b/src/main/java/com/volmit/iris/core/pack/IrisPackRepository.java index ffe337933..d006198b5 100644 --- a/src/main/java/com/volmit/iris/core/pack/IrisPackRepository.java +++ b/src/main/java/com/volmit/iris/core/pack/IrisPackRepository.java @@ -51,7 +51,6 @@ public class IrisPackRepository { private String tag = ""; /** - * * @param g * @return */ @@ -127,10 +126,7 @@ public class IrisPackRepository { e.printStackTrace(); } })).execute(sender, whenComplete); - } - - else - { + } else { sender.sendMessage("Pack already exists!"); } } diff --git a/src/main/java/com/volmit/iris/core/service/CommandSVC.java b/src/main/java/com/volmit/iris/core/service/CommandSVC.java index 589f4c980..88a6b626a 100644 --- a/src/main/java/com/volmit/iris/core/service/CommandSVC.java +++ b/src/main/java/com/volmit/iris/core/service/CommandSVC.java @@ -28,7 +28,7 @@ import com.volmit.iris.util.plugin.IrisService; public class CommandSVC implements IrisService, DecreeSystem { @Override public void onEnable() { - Iris.instance.getCommand("iris").setExecutor(this); + Iris.instance.getCommand("iris").setExecutor(this); } @Override diff --git a/src/main/java/com/volmit/iris/core/service/ObjectSVC.java b/src/main/java/com/volmit/iris/core/service/ObjectSVC.java index 4450a67b8..480931cab 100644 --- a/src/main/java/com/volmit/iris/core/service/ObjectSVC.java +++ b/src/main/java/com/volmit/iris/core/service/ObjectSVC.java @@ -1,14 +1,15 @@ package com.volmit.iris.core.service; -import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.plugin.IrisService; import com.volmit.iris.util.scheduling.J; import lombok.Getter; import org.bukkit.block.Block; import org.bukkit.block.data.BlockData; -import org.bukkit.entity.Player; -import java.util.*; +import java.util.ArrayDeque; +import java.util.Deque; +import java.util.Iterator; +import java.util.Map; public class ObjectSVC implements IrisService { diff --git a/src/main/java/com/volmit/iris/core/service/StudioSVC.java b/src/main/java/com/volmit/iris/core/service/StudioSVC.java index 0e67227c2..43fe68ec1 100644 --- a/src/main/java/com/volmit/iris/core/service/StudioSVC.java +++ b/src/main/java/com/volmit/iris/core/service/StudioSVC.java @@ -22,9 +22,9 @@ import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; import com.volmit.iris.Iris; import com.volmit.iris.core.IrisSettings; +import com.volmit.iris.core.loader.IrisData; import com.volmit.iris.core.pack.IrisPack; import com.volmit.iris.core.project.IrisProject; -import com.volmit.iris.core.loader.IrisData; import com.volmit.iris.core.tools.IrisToolbelt; import com.volmit.iris.engine.data.cache.AtomicCache; import com.volmit.iris.engine.object.dimensional.IrisDimension; @@ -60,8 +60,7 @@ public class StudioSVC implements IrisService { String pack = IrisSettings.get().getGenerator().getDefaultWorldType(); File f = IrisPack.packsPack(pack); - if(!f.exists()) - { + if (!f.exists()) { Iris.info("Downloading Default Pack " + pack); downloadSearch(Iris.getSender(), pack, false); } @@ -323,7 +322,8 @@ public class StudioSVC implements IrisService { public void open(VolmitSender sender, long seed, String dimm) { try { - open(sender, seed, dimm, (w) -> {}); + open(sender, seed, dimm, (w) -> { + }); } catch (Exception e) { Iris.reportError(e); sender.sendMessage("Error when creating studio world:"); diff --git a/src/main/java/com/volmit/iris/core/tools/IrisToolbelt.java b/src/main/java/com/volmit/iris/core/tools/IrisToolbelt.java index ca56fa39a..470df5b74 100644 --- a/src/main/java/com/volmit/iris/core/tools/IrisToolbelt.java +++ b/src/main/java/com/volmit/iris/core/tools/IrisToolbelt.java @@ -21,11 +21,11 @@ package com.volmit.iris.core.tools; import com.volmit.iris.Iris; import com.volmit.iris.core.IrisSettings; import com.volmit.iris.core.gui.PregeneratorJob; +import com.volmit.iris.core.loader.IrisData; import com.volmit.iris.core.pregenerator.PregenTask; import com.volmit.iris.core.pregenerator.PregeneratorMethod; import com.volmit.iris.core.pregenerator.methods.HeadlessPregenMethod; import com.volmit.iris.core.pregenerator.methods.HybridPregenMethod; -import com.volmit.iris.core.loader.IrisData; import com.volmit.iris.core.service.StudioSVC; import com.volmit.iris.engine.object.dimensional.IrisDimension; import com.volmit.iris.engine.platform.HeadlessGenerator; diff --git a/src/main/java/com/volmit/iris/engine/IrisComplex.java b/src/main/java/com/volmit/iris/engine/IrisComplex.java index ef3b9a53a..c78927e6a 100644 --- a/src/main/java/com/volmit/iris/engine/IrisComplex.java +++ b/src/main/java/com/volmit/iris/engine/IrisComplex.java @@ -21,11 +21,9 @@ package com.volmit.iris.engine; import com.google.common.util.concurrent.AtomicDouble; import com.volmit.iris.Iris; import com.volmit.iris.core.loader.IrisData; -import com.volmit.iris.engine.actuator.IrisTerrainNormalActuator; import com.volmit.iris.engine.framework.Engine; import com.volmit.iris.engine.object.biome.InferredType; import com.volmit.iris.engine.object.biome.IrisBiome; -import com.volmit.iris.engine.object.common.CaveResult; import com.volmit.iris.engine.object.decoration.IrisDecorationPart; import com.volmit.iris.engine.object.decoration.IrisDecorator; import com.volmit.iris.engine.object.feature.IrisFeaturePositional; @@ -44,7 +42,6 @@ import org.bukkit.Material; import org.bukkit.block.Biome; import org.bukkit.block.data.BlockData; -import java.util.List; import java.util.UUID; @Data diff --git a/src/main/java/com/volmit/iris/engine/IrisEngine.java b/src/main/java/com/volmit/iris/engine/IrisEngine.java index 9350957b0..cc1c6ad76 100644 --- a/src/main/java/com/volmit/iris/engine/IrisEngine.java +++ b/src/main/java/com/volmit/iris/engine/IrisEngine.java @@ -415,7 +415,7 @@ public class IrisEngine implements Engine { getBiomeActuator().actuate(x, z, vbiomes, multicore); getDecorantActuator().actuate(x, z, blocks, multicore); getDepositModifier().modify(x, z, blocks, multicore); - getCaveModifier().modify(x >> 4,z >> 4, blocks, multicore); + getCaveModifier().modify(x >> 4, z >> 4, blocks, multicore); getPostModifier().modify(x, z, blocks, multicore); getMantle().insertMatter(x >> 4, z >> 4, BlockData.class, blocks, multicore); } diff --git a/src/main/java/com/volmit/iris/engine/IrisEngineMantle.java b/src/main/java/com/volmit/iris/engine/IrisEngineMantle.java index 894c9d561..dc763178b 100644 --- a/src/main/java/com/volmit/iris/engine/IrisEngineMantle.java +++ b/src/main/java/com/volmit/iris/engine/IrisEngineMantle.java @@ -28,7 +28,6 @@ import com.volmit.iris.engine.mantle.components.MantleFeatureComponent; import com.volmit.iris.engine.mantle.components.MantleJigsawComponent; import com.volmit.iris.engine.mantle.components.MantleObjectComponent; import com.volmit.iris.engine.object.biome.IrisBiome; -import com.volmit.iris.engine.object.carving.IrisCarving; import com.volmit.iris.engine.object.deposits.IrisDepositGenerator; import com.volmit.iris.engine.object.feature.IrisFeaturePotential; import com.volmit.iris.engine.object.jigsaw.IrisJigsawStructurePlacement; @@ -316,13 +315,11 @@ public class IrisEngineMantle implements EngineMantle { m = Math.max(m, getDimension().getCarving().getMaxRange(getData())); - for(IrisRegion i : getDimension().getAllRegions(getEngine())) - { + for (IrisRegion i : getDimension().getAllRegions(getEngine())) { m = Math.max(m, i.getCarving().getMaxRange(getData())); } - for(IrisBiome i : getDimension().getAllBiomes(getEngine())) - { + for (IrisBiome i : getDimension().getAllBiomes(getEngine())) { m = Math.max(m, i.getCarving().getMaxRange(getData())); } diff --git a/src/main/java/com/volmit/iris/engine/IrisWorldManager.java b/src/main/java/com/volmit/iris/engine/IrisWorldManager.java index 4bac6040a..f1e44cb64 100644 --- a/src/main/java/com/volmit/iris/engine/IrisWorldManager.java +++ b/src/main/java/com/volmit/iris/engine/IrisWorldManager.java @@ -155,12 +155,9 @@ public class IrisWorldManager extends EngineAssignedWorldManager { for (Player i : getEngine().getWorld().realWorld().getPlayers()) { int r = 2; Chunk c = i.getLocation().getChunk(); - for(int x = -r; x <= r; x++) - { - for(int z = -r; z <= r; z++) - { - if(c.getWorld().isChunkLoaded(c.getX() + x, c.getZ() + z)) - { + for (int x = -r; x <= r; x++) { + for (int z = -r; z <= r; z++) { + if (c.getWorld().isChunkLoaded(c.getX() + x, c.getZ() + z)) { getEngine().updateChunk(c.getWorld().getChunkAt(c.getX() + x, c.getZ() + z)); } } @@ -381,9 +378,8 @@ public class IrisWorldManager extends EngineAssignedWorldManager { () -> J.a(() -> spawnIn(e, true), RNG.r.i(5, 200)))); energy += 0.3; fixEnergy(); - if(!getMantle().hasFlag(e.getX(), e.getZ(), MantleFlag.UPDATE)) - { - J.a(() -> getEngine().updateChunk(e),20); + if (!getMantle().hasFlag(e.getX(), e.getZ(), MantleFlag.UPDATE)) { + J.a(() -> getEngine().updateChunk(e), 20); } } diff --git a/src/main/java/com/volmit/iris/engine/actuator/IrisDecorantActuator.java b/src/main/java/com/volmit/iris/engine/actuator/IrisDecorantActuator.java index 30b06bd02..5ebe1d7a8 100644 --- a/src/main/java/com/volmit/iris/engine/actuator/IrisDecorantActuator.java +++ b/src/main/java/com/volmit/iris/engine/actuator/IrisDecorantActuator.java @@ -32,7 +32,6 @@ import lombok.Getter; import org.bukkit.Material; import org.bukkit.block.data.BlockData; -import java.util.function.BiPredicate; import java.util.function.Predicate; public class IrisDecorantActuator extends EngineAssignedActuator { diff --git a/src/main/java/com/volmit/iris/engine/decorator/IrisCeilingDecorator.java b/src/main/java/com/volmit/iris/engine/decorator/IrisCeilingDecorator.java index 772368cd0..c99e1847e 100644 --- a/src/main/java/com/volmit/iris/engine/decorator/IrisCeilingDecorator.java +++ b/src/main/java/com/volmit/iris/engine/decorator/IrisCeilingDecorator.java @@ -70,37 +70,27 @@ public class IrisCeilingDecorator extends IrisEngineDecorator { decorator.getBlockDataForTop(biome, getRng(), realX, h, realZ, getData()) : decorator.getBlockData100(biome, getRng(), realX, h, realZ, getData()); - if(bd instanceof PointedDripstone) - { + if (bd instanceof PointedDripstone) { PointedDripstone.Thickness th = PointedDripstone.Thickness.BASE; - if(stack == 2) - { + if (stack == 2) { th = PointedDripstone.Thickness.FRUSTUM; - if(i == stack-1) - { + if (i == stack - 1) { th = PointedDripstone.Thickness.TIP; } - } - - else - { - if(i == stack-1) - { + } else { + if (i == stack - 1) { th = PointedDripstone.Thickness.TIP; - } - - else if(i == stack-2) - { + } else if (i == stack - 2) { th = PointedDripstone.Thickness.FRUSTUM; } } bd = Material.POINTED_DRIPSTONE.createBlockData(); - ((PointedDripstone)bd).setThickness(th); - ((PointedDripstone)bd).setVerticalDirection(BlockFace.DOWN); + ((PointedDripstone) bd).setThickness(th); + ((PointedDripstone) bd).setVerticalDirection(BlockFace.DOWN); } data.set(x, h, z, bd); diff --git a/src/main/java/com/volmit/iris/engine/decorator/IrisSurfaceDecorator.java b/src/main/java/com/volmit/iris/engine/decorator/IrisSurfaceDecorator.java index 63bee6ffb..60a902c17 100644 --- a/src/main/java/com/volmit/iris/engine/decorator/IrisSurfaceDecorator.java +++ b/src/main/java/com/volmit/iris/engine/decorator/IrisSurfaceDecorator.java @@ -27,7 +27,6 @@ import com.volmit.iris.engine.object.decoration.IrisDecorationPart; import com.volmit.iris.engine.object.decoration.IrisDecorator; import com.volmit.iris.util.documentation.BlockCoordinates; import com.volmit.iris.util.hunk.Hunk; -import net.minecraft.world.level.block.PointedDripstoneBlock; import org.bukkit.Material; import org.bukkit.block.BlockFace; import org.bukkit.block.data.Bisected; @@ -112,37 +111,27 @@ public class IrisSurfaceDecorator extends IrisEngineDecorator { break; } - if(bd instanceof PointedDripstone) - { + if (bd instanceof PointedDripstone) { PointedDripstone.Thickness th = PointedDripstone.Thickness.BASE; - if(stack == 2) - { + if (stack == 2) { th = PointedDripstone.Thickness.FRUSTUM; - if(i == stack-1) - { + if (i == stack - 1) { th = PointedDripstone.Thickness.TIP; } - } - - else - { - if(i == stack-1) - { + } else { + if (i == stack - 1) { th = PointedDripstone.Thickness.TIP; - } - - else if(i == stack-2) - { + } else if (i == stack - 2) { th = PointedDripstone.Thickness.FRUSTUM; } } bd = Material.POINTED_DRIPSTONE.createBlockData(); - ((PointedDripstone)bd).setThickness(th); - ((PointedDripstone)bd).setVerticalDirection(BlockFace.UP); + ((PointedDripstone) bd).setThickness(th); + ((PointedDripstone) bd).setVerticalDirection(BlockFace.UP); } data.set(x, height + 1 + i, z, bd); 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 c098973ea..f71671982 100644 --- a/src/main/java/com/volmit/iris/engine/framework/Engine.java +++ b/src/main/java/com/volmit/iris/engine/framework/Engine.java @@ -46,7 +46,6 @@ import com.volmit.iris.util.data.B; import com.volmit.iris.util.data.DataProvider; import com.volmit.iris.util.documentation.BlockCoordinates; import com.volmit.iris.util.documentation.ChunkCoordinates; -import com.volmit.iris.util.format.Form; import com.volmit.iris.util.function.Function2; import com.volmit.iris.util.hunk.Hunk; import com.volmit.iris.util.mantle.MantleFlag; @@ -55,7 +54,6 @@ import com.volmit.iris.util.math.M; import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.matter.MatterCavern; import com.volmit.iris.util.matter.MatterUpdate; -import com.volmit.iris.util.matter.slices.UpdateMatter; import com.volmit.iris.util.parallel.BurstExecutor; import com.volmit.iris.util.parallel.MultiBurst; import com.volmit.iris.util.scheduling.ChronoLatch; @@ -63,20 +61,20 @@ import com.volmit.iris.util.scheduling.J; import com.volmit.iris.util.scheduling.PrecisionStopwatch; import com.volmit.iris.util.stream.ProceduralStream; import io.papermc.lib.PaperLib; -import org.bukkit.*; +import org.bukkit.Bukkit; +import org.bukkit.Chunk; +import org.bukkit.Location; +import org.bukkit.Material; import org.bukkit.block.Biome; import org.bukkit.block.Block; import org.bukkit.block.data.BlockData; import org.bukkit.command.CommandSender; -import org.bukkit.craftbukkit.v1_17_R1.CraftWorld; -import org.bukkit.craftbukkit.v1_17_R1.block.CraftBlock; import org.bukkit.generator.ChunkGenerator; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.InventoryHolder; import org.bukkit.inventory.ItemStack; import java.awt.*; -import java.awt.Color; import java.util.Arrays; import java.util.UUID; import java.util.concurrent.atomic.AtomicBoolean; @@ -235,28 +233,25 @@ public interface Engine extends DataProvider, Fallible, LootProvider, BlockUpdat @ChunkCoordinates @Override default void updateChunk(Chunk c) { - if(c.getWorld().isChunkLoaded(c.getX() + 1, c.getZ() + 1) + if (c.getWorld().isChunkLoaded(c.getX() + 1, c.getZ() + 1) && c.getWorld().isChunkLoaded(c.getX(), c.getZ() + 1) && c.getWorld().isChunkLoaded(c.getX() + 1, c.getZ()) && c.getWorld().isChunkLoaded(c.getX() - 1, c.getZ() - 1) && c.getWorld().isChunkLoaded(c.getX(), c.getZ() - 1) && c.getWorld().isChunkLoaded(c.getX() - 1, c.getZ()) && c.getWorld().isChunkLoaded(c.getX() + 1, c.getZ() - 1) - && c.getWorld().isChunkLoaded(c.getX() - 1, c.getZ() + 1)) - { + && c.getWorld().isChunkLoaded(c.getX() - 1, c.getZ() + 1)) { getMantle().getMantle().raiseFlag(c.getX(), c.getZ(), MantleFlag.UPDATE, () -> J.s(() -> { PrecisionStopwatch p = PrecisionStopwatch.start(); KMap updates = new KMap<>(); RNG r = new RNG(Cache.key(c.getX(), c.getZ())); getMantle().getMantle().iterateChunk(c.getX(), c.getZ(), MatterCavern.class, (x, y, z, v) -> { - if(B.isAir(c.getBlock(x & 15, y, z & 15).getBlockData())) - { + if (B.isAir(c.getBlock(x & 15, y, z & 15).getBlockData())) { return; } - updates.compute(Cache.key(x & 15, z & 15), (k,vv) -> { - if(vv != null) - { + updates.compute(Cache.key(x & 15, z & 15), (k, vv) -> { + if (vv != null) { return Math.max(vv, y); } @@ -264,7 +259,7 @@ public interface Engine extends DataProvider, Fallible, LootProvider, BlockUpdat }); }); - updates.forEach((k,v) -> update(Cache.keyX(k), v, Cache.keyZ(k), c, r)); + updates.forEach((k, v) -> update(Cache.keyX(k), v, Cache.keyZ(k), c, r)); getMantle().getMantle().iterateChunk(c.getX(), c.getZ(), MatterUpdate.class, (x, y, z, v) -> { if (v != null && v.isUpdate()) { int vx = x & 15; @@ -322,10 +317,7 @@ public interface Engine extends DataProvider, Fallible, LootProvider, BlockUpdat Iris.reportError(e); } } - } - - else - { + } else { block.setType(Material.AIR, false); block.setBlockData(data, true); } diff --git a/src/main/java/com/volmit/iris/engine/mantle/EngineMantle.java b/src/main/java/com/volmit/iris/engine/mantle/EngineMantle.java index 39ce2c08c..57e1d1f80 100644 --- a/src/main/java/com/volmit/iris/engine/mantle/EngineMantle.java +++ b/src/main/java/com/volmit/iris/engine/mantle/EngineMantle.java @@ -84,8 +84,7 @@ public interface EngineMantle extends IObjectPlacer { return getComplex().getTrueHeightStream().get(x, z); } - default boolean isCarved(int x, int h, int z) - { + default boolean isCarved(int x, int h, int z) { return getMantle().get(x, h, z, MatterCavern.class) != null; } @@ -248,8 +247,7 @@ public interface EngineMantle extends IObjectPlacer { default void dropCavernBlock(int x, int y, int z) { Matter matter = getMantle().getChunk(x & 15, z & 15).get(y & 15); - if(matter != null) - { + if (matter != null) { matter.slice(MatterCavern.class).set(x & 15, y & 15, z & 15, null); } } diff --git a/src/main/java/com/volmit/iris/engine/mantle/MantleWriter.java b/src/main/java/com/volmit/iris/engine/mantle/MantleWriter.java index 78b0bc556..6cafa5b8f 100644 --- a/src/main/java/com/volmit/iris/engine/mantle/MantleWriter.java +++ b/src/main/java/com/volmit/iris/engine/mantle/MantleWriter.java @@ -26,22 +26,16 @@ import com.volmit.iris.engine.object.basic.IrisPosition; import com.volmit.iris.engine.object.common.IObjectPlacer; import com.volmit.iris.engine.object.feature.IrisFeaturePositional; import com.volmit.iris.engine.object.tile.TileData; -import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.collection.KMap; import com.volmit.iris.util.collection.KSet; import com.volmit.iris.util.mantle.Mantle; import com.volmit.iris.util.mantle.MantleChunk; -import com.volmit.iris.util.math.INode; -import com.volmit.iris.util.math.KochanekBartelsInterpolation; -import com.volmit.iris.util.math.M; -import com.volmit.iris.util.math.PathInterpolation; import com.volmit.iris.util.matter.Matter; import lombok.Data; import org.bukkit.block.TileState; import org.bukkit.block.data.BlockData; import org.bukkit.util.Vector; -import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -150,6 +144,7 @@ public class MantleWriter implements IObjectPlacer { public void setTile(int xx, int yy, int zz, TileData tile) { getEngineMantle().setTile(xx, yy, zz, tile); } + /** * Set a sphere into the mantle * @@ -534,8 +529,7 @@ public class MantleWriter implements IObjectPlacer { return isWithin(pos.getBlockX(), pos.getBlockY(), pos.getBlockZ()); } - public boolean isWithin(int x, int y, int z) - { + public boolean isWithin(int x, int y, int z) { int cx = x >> 4; int cz = z >> 4; @@ -543,11 +537,7 @@ public class MantleWriter implements IObjectPlacer { return false; } - if (cx >= this.x - radius && cx <= this.x + radius - && cz >= this.z - radius && cz <= this.z + radius) { - return true; - } - - return false; + return cx >= this.x - radius && cx <= this.x + radius + && cz >= this.z - radius && cz <= this.z + radius; } } diff --git a/src/main/java/com/volmit/iris/engine/mantle/components/MantleCarvingComponent.java b/src/main/java/com/volmit/iris/engine/mantle/components/MantleCarvingComponent.java index d8b618c2a..00d11c697 100644 --- a/src/main/java/com/volmit/iris/engine/mantle/components/MantleCarvingComponent.java +++ b/src/main/java/com/volmit/iris/engine/mantle/components/MantleCarvingComponent.java @@ -24,10 +24,7 @@ import com.volmit.iris.engine.mantle.IrisMantleComponent; import com.volmit.iris.engine.mantle.MantleWriter; import com.volmit.iris.engine.object.biome.IrisBiome; import com.volmit.iris.engine.object.carving.IrisCarving; -import com.volmit.iris.engine.object.feature.IrisFeaturePositional; -import com.volmit.iris.engine.object.feature.IrisFeaturePotential; import com.volmit.iris.engine.object.regional.IrisRegion; -import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.documentation.ChunkCoordinates; import com.volmit.iris.util.mantle.MantleFlag; import com.volmit.iris.util.math.RNG; diff --git a/src/main/java/com/volmit/iris/engine/mantle/components/MantleFeatureComponent.java b/src/main/java/com/volmit/iris/engine/mantle/components/MantleFeatureComponent.java index a94b14bbb..2902e600e 100644 --- a/src/main/java/com/volmit/iris/engine/mantle/components/MantleFeatureComponent.java +++ b/src/main/java/com/volmit/iris/engine/mantle/components/MantleFeatureComponent.java @@ -64,8 +64,7 @@ public class MantleFeatureComponent extends IrisMantleComponent { } private void placeZone(MantleWriter writer, RNG rng, int cx, int cz, IrisFeaturePotential i) { - if(i.hasZone(rng, cx, cz)) - { + if (i.hasZone(rng, cx, cz)) { int x = (cx << 4) + rng.nextInt(16); int z = (cz << 4) + rng.nextInt(16); writer.setData(x, 0, z, new IrisFeaturePositional(x, z, i.getZone())); diff --git a/src/main/java/com/volmit/iris/engine/modifier/IrisCarveModifier.java b/src/main/java/com/volmit/iris/engine/modifier/IrisCarveModifier.java index 08dab1a69..a4ecd7095 100644 --- a/src/main/java/com/volmit/iris/engine/modifier/IrisCarveModifier.java +++ b/src/main/java/com/volmit/iris/engine/modifier/IrisCarveModifier.java @@ -18,7 +18,6 @@ package com.volmit.iris.engine.modifier; -import com.volmit.iris.Iris; import com.volmit.iris.engine.IrisEngine; import com.volmit.iris.engine.actuator.IrisDecorantActuator; import com.volmit.iris.engine.data.cache.Cache; @@ -32,14 +31,11 @@ import com.volmit.iris.engine.object.decoration.IrisDecorator; import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.collection.KMap; import com.volmit.iris.util.data.B; -import com.volmit.iris.util.format.Form; import com.volmit.iris.util.hunk.Hunk; import com.volmit.iris.util.mantle.Mantle; import com.volmit.iris.util.mantle.MantleChunk; -import com.volmit.iris.util.math.M; import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.matter.MatterCavern; -import com.volmit.iris.util.scheduling.J; import com.volmit.iris.util.scheduling.PrecisionStopwatch; import lombok.Data; import org.bukkit.Material; @@ -66,8 +62,7 @@ public class IrisCarveModifier extends EngineAssignedModifier { KMap walls = new KMap<>(); mc.iterate(MatterCavern.class, (xx, yy, zz, c) -> { - if(yy > 256 || yy < 0) - { + if (yy > 256 || yy < 0) { return; } @@ -75,27 +70,29 @@ public class IrisCarveModifier extends EngineAssignedModifier { int rz = zz & 15; BlockData current = output.get(rx, yy, rz); - if(B.isFluid(current)) - { + if (B.isFluid(current)) { return; } - positions.compute(Cache.key(rx, rz), (k,v) -> Objects.requireNonNullElseGet(v, (Supplier>) KList::new).qadd(yy)); + positions.compute(Cache.key(rx, rz), (k, v) -> Objects.requireNonNullElseGet(v, (Supplier>) KList::new).qadd(yy)); - if(rz < 15 && mantle.get(xx, yy, zz + 1, MatterCavern.class) == null) - {walls.put(new IrisPosition(rx, yy, rz + 1), c);} + if (rz < 15 && mantle.get(xx, yy, zz + 1, MatterCavern.class) == null) { + walls.put(new IrisPosition(rx, yy, rz + 1), c); + } - if(rx < 15 && mantle.get(xx + 1, yy, zz, MatterCavern.class) == null) - {walls.put(new IrisPosition(rx + 1, yy, rz), c);} + if (rx < 15 && mantle.get(xx + 1, yy, zz, MatterCavern.class) == null) { + walls.put(new IrisPosition(rx + 1, yy, rz), c); + } - if(rz > 0 && mantle.get(xx, yy, zz - 1, MatterCavern.class) == null) - {walls.put(new IrisPosition(rx, yy, rz - 1), c);} + if (rz > 0 && mantle.get(xx, yy, zz - 1, MatterCavern.class) == null) { + walls.put(new IrisPosition(rx, yy, rz - 1), c); + } - if(rx > 0 && mantle.get(xx - 1, yy, zz, MatterCavern.class) == null) - {walls.put(new IrisPosition(rx - 1, yy, rz), c);} + if (rx > 0 && mantle.get(xx - 1, yy, zz, MatterCavern.class) == null) { + walls.put(new IrisPosition(rx - 1, yy, rz), c); + } - if(current.getMaterial().isAir()) - { + if (current.getMaterial().isAir()) { return; } @@ -107,20 +104,18 @@ public class IrisCarveModifier extends EngineAssignedModifier { ? getEngine().getCaveBiome(i.getX() + (x << 4), i.getZ() + (z << 4)) : getEngine().getData().getBiomeLoader().load(v.getCustomBiome()); - if(biome != null) - { + if (biome != null) { biome.setInferredType(InferredType.CAVE); BlockData d = biome.getWall().get(rng, i.getX() + (x << 4), i.getY(), i.getZ() + (z << 4), getData()); - if(d != null && B.isSolid(output.get(i.getX(), i.getY(), i.getZ()))) { + if (d != null && B.isSolid(output.get(i.getX(), i.getY(), i.getZ()))) { output.set(i.getX(), i.getY(), i.getZ(), d); } } }); positions.forEach((k, v) -> { - if(v.isEmpty()) - { + if (v.isEmpty()) { return; } @@ -131,19 +126,15 @@ public class IrisCarveModifier extends EngineAssignedModifier { zone.setFloor(v.get(0)); int buf = v.get(0) - 1; - for(Integer i : v) { + for (Integer i : v) { if (i < 0 || i > 255) { continue; } - if (i == buf + 1) - { + if (i == buf + 1) { buf = i; zone.ceiling = buf; - } - - else if(zone.isValid()) - { + } else if (zone.isValid()) { processZone(output, mc, zone, rx, rz, rx + (x << 4), rz + (z << 4)); zone = new CaveZone(); zone.setFloor(i); @@ -151,8 +142,7 @@ public class IrisCarveModifier extends EngineAssignedModifier { } } - if(zone.isValid()) - { + if (zone.isValid()) { processZone(output, mc, zone, rx, rz, rx + (x << 4), rz + (z << 4)); } }); @@ -167,13 +157,11 @@ public class IrisCarveModifier extends EngineAssignedModifier { int thickness = zone.airThickness(); String customBiome = ""; - for(int i = zone.floor; i <= zone.ceiling; i++) - { + for (int i = zone.floor; i <= zone.ceiling; i++) { MatterCavern cavernData = (MatterCavern) mc.getOrCreate(i >> 4).slice(MatterCavern.class) .get(rx, i & 15, rz); - if(cavernData != null && !cavernData.getCustomBiome().isEmpty()) - { + if (cavernData != null && !cavernData.getCustomBiome().isEmpty()) { customBiome = cavernData.getCustomBiome(); break; } @@ -183,38 +171,33 @@ public class IrisCarveModifier extends EngineAssignedModifier { ? getEngine().getCaveBiome(xx, zz) : getEngine().getData().getBiomeLoader().load(customBiome); - if(biome == null) - { + if (biome == null) { return; } biome.setInferredType(InferredType.CAVE); - IrisDecorantActuator actuator = (IrisDecorantActuator) ((IrisEngine)getEngine()).getDecorantActuator(); - for(IrisDecorator i : biome.getDecorators()) { - if (i.getPartOf().equals(IrisDecorationPart.NONE) && B.isSolid(output.get(rx, zone.getFloor()-1, rz))) { + IrisDecorantActuator actuator = (IrisDecorantActuator) ((IrisEngine) getEngine()).getDecorantActuator(); + for (IrisDecorator i : biome.getDecorators()) { + if (i.getPartOf().equals(IrisDecorationPart.NONE) && B.isSolid(output.get(rx, zone.getFloor() - 1, rz))) { actuator.getSurfaceDecorator().decorate(rx, rz, xx, xx, xx, zz, zz, zz, output, biome, zone.getFloor() - 1, zone.airThickness()); - } else if (i.getPartOf().equals(IrisDecorationPart.CEILING) && B.isSolid(output.get(rx, zone.getCeiling()+1, rz))) { + } else if (i.getPartOf().equals(IrisDecorationPart.CEILING) && B.isSolid(output.get(rx, zone.getCeiling() + 1, rz))) { actuator.getCeilingDecorator().decorate(rx, rz, xx, xx, xx, zz, zz, zz, output, biome, zone.getCeiling(), zone.airThickness()); } } KList blocks = biome.generateLayers(getDimension(), xx, zz, rng, 3, zone.floor, getData(), getComplex()); - for(int i = 0; i < zone.floor-1; i++) - { - if(!blocks.hasIndex(i)) - { + for (int i = 0; i < zone.floor - 1; i++) { + if (!blocks.hasIndex(i)) { break; } - if(!B.isSolid(output.get(rx, zone.floor - i - 1, rz))) - { + if (!B.isSolid(output.get(rx, zone.floor - i - 1, rz))) { continue; } - if(B.isOre(output.get(rx, zone.floor - i - 1, rz))) - { + if (B.isOre(output.get(rx, zone.floor - i - 1, rz))) { continue; } @@ -223,45 +206,37 @@ public class IrisCarveModifier extends EngineAssignedModifier { blocks = biome.generateCeilingLayers(getDimension(), xx, zz, rng, 3, zone.ceiling, getData(), getComplex()); - for(int i = 0; i < zone.ceiling+1; i++) - { - if(!blocks.hasIndex(i)) - { + for (int i = 0; i < zone.ceiling + 1; i++) { + if (!blocks.hasIndex(i)) { break; } - if(!B.isSolid(output.get(rx, zone.ceiling + i + 1, rz))) - { + if (!B.isSolid(output.get(rx, zone.ceiling + i + 1, rz))) { continue; } - if(B.isOre(output.get(rx, zone.ceiling + i + 1, rz))) - { + if (B.isOre(output.get(rx, zone.ceiling + i + 1, rz))) { continue; } - output.set(rx, zone.ceiling + i + 1, rz, blocks.get(i)); + output.set(rx, zone.ceiling + i + 1, rz, blocks.get(i)); } } @Data - public static class CaveZone - { + public static class CaveZone { private int ceiling = -1; private int floor = -1; - public int airThickness() - { + public int airThickness() { return (ceiling - floor) - 1; } - public boolean isValid() - { + public boolean isValid() { return floor < ceiling && ceiling - floor >= 1 && floor >= 0 && ceiling <= 255 && airThickness() > 0; } - public String toString() - { + public String toString() { return floor + "-" + ceiling; } } diff --git a/src/main/java/com/volmit/iris/engine/modifier/IrisPostModifier.java b/src/main/java/com/volmit/iris/engine/modifier/IrisPostModifier.java index 936548746..2da0288db 100644 --- a/src/main/java/com/volmit/iris/engine/modifier/IrisPostModifier.java +++ b/src/main/java/com/volmit/iris/engine/modifier/IrisPostModifier.java @@ -18,11 +18,9 @@ package com.volmit.iris.engine.modifier; -import com.volmit.iris.Iris; import com.volmit.iris.engine.framework.Engine; import com.volmit.iris.engine.framework.EngineAssignedModifier; import com.volmit.iris.engine.object.biome.IrisBiome; -import com.volmit.iris.engine.object.common.CaveResult; import com.volmit.iris.util.data.B; import com.volmit.iris.util.hunk.Hunk; import com.volmit.iris.util.math.RNG; diff --git a/src/main/java/com/volmit/iris/engine/object/basic/IrisPosition.java b/src/main/java/com/volmit/iris/engine/object/basic/IrisPosition.java index 75d44ce6f..4b8433753 100644 --- a/src/main/java/com/volmit/iris/engine/object/basic/IrisPosition.java +++ b/src/main/java/com/volmit/iris/engine/object/basic/IrisPosition.java @@ -82,7 +82,7 @@ public class IrisPosition { } public boolean isLongerThan(IrisPosition s, int maxLength) { - return Math.abs(Math.pow(s.x - x,2) + Math.pow(s.y - y,2) + Math.pow(s.z - z,2)) > maxLength * maxLength; + return Math.abs(Math.pow(s.x - x, 2) + Math.pow(s.y - y, 2) + Math.pow(s.z - z, 2)) > maxLength * maxLength; } public Vector toVector() { diff --git a/src/main/java/com/volmit/iris/engine/object/carving/IrisCarving.java b/src/main/java/com/volmit/iris/engine/object/carving/IrisCarving.java index c736c4f9d..bfee3dde0 100644 --- a/src/main/java/com/volmit/iris/engine/object/carving/IrisCarving.java +++ b/src/main/java/com/volmit/iris/engine/object/carving/IrisCarving.java @@ -59,50 +59,37 @@ public class IrisCarving { @BlockCoordinates public void doCarving(MantleWriter writer, RNG rng, Engine engine, int x, int y, int z) { - if(caves.isNotEmpty()) - { - for(IrisCavePlacer i : caves) - { + if (caves.isNotEmpty()) { + for (IrisCavePlacer i : caves) { i.generateCave(writer, rng, engine, x, y, z); } } - if(ravines.isNotEmpty()) - { - for(IrisRavinePlacer i : ravines) - { + if (ravines.isNotEmpty()) { + for (IrisRavinePlacer i : ravines) { i.generateRavine(writer, rng, engine, x, y, z); } } - if(spheres.isNotEmpty()) - { - for(IrisSphere i : spheres) - { - if(rng.nextInt(i.getRarity()) == 0) - { + if (spheres.isNotEmpty()) { + for (IrisSphere i : spheres) { + if (rng.nextInt(i.getRarity()) == 0) { i.generate(rng, engine, writer, x, y, z); } } } - if(elipsoids.isNotEmpty()) - { - for(IrisElipsoid i : elipsoids) - { - if(rng.nextInt(i.getRarity()) == 0) - { + if (elipsoids.isNotEmpty()) { + for (IrisElipsoid i : elipsoids) { + if (rng.nextInt(i.getRarity()) == 0) { i.generate(rng, engine, writer, x, y, z); } } } - if(pyramids.isNotEmpty()) - { - for(IrisPyramid i : pyramids) - { - if(rng.nextInt(i.getRarity()) == 0) - { + if (pyramids.isNotEmpty()) { + for (IrisPyramid i : pyramids) { + if (rng.nextInt(i.getRarity()) == 0) { i.generate(rng, engine, writer, x, y, z); } } @@ -112,23 +99,19 @@ public class IrisCarving { public int getMaxRange(IrisData data) { int max = 0; - for(IrisCavePlacer i : caves) - { + for (IrisCavePlacer i : caves) { max = Math.max(max, i.getSize(data)); } - if(elipsoids.isNotEmpty()) - { + if (elipsoids.isNotEmpty()) { max = (int) Math.max(elipsoids.stream().mapToDouble(IrisElipsoid::maxSize).max().getAsDouble(), max); } - if(spheres.isNotEmpty()) - { + if (spheres.isNotEmpty()) { max = (int) Math.max(spheres.stream().mapToDouble(IrisSphere::maxSize).max().getAsDouble(), max); } - if(pyramids.isNotEmpty()) - { + if (pyramids.isNotEmpty()) { max = (int) Math.max(pyramids.stream().mapToDouble(IrisPyramid::maxSize).max().getAsDouble(), max); } diff --git a/src/main/java/com/volmit/iris/engine/object/carving/IrisCave.java b/src/main/java/com/volmit/iris/engine/object/carving/IrisCave.java index 4160ac439..903e5b4ee 100644 --- a/src/main/java/com/volmit/iris/engine/object/carving/IrisCave.java +++ b/src/main/java/com/volmit/iris/engine/object/carving/IrisCave.java @@ -18,7 +18,6 @@ package com.volmit.iris.engine.object.carving; -import com.volmit.iris.Iris; import com.volmit.iris.core.loader.IrisData; import com.volmit.iris.core.loader.IrisRegistrant; import com.volmit.iris.engine.data.cache.AtomicCache; @@ -26,14 +25,9 @@ import com.volmit.iris.engine.framework.Engine; import com.volmit.iris.engine.mantle.MantleWriter; import com.volmit.iris.engine.object.annotations.Desc; import com.volmit.iris.engine.object.annotations.RegistryListResource; -import com.volmit.iris.engine.object.basic.IrisPosition; import com.volmit.iris.engine.object.basic.IrisRange; import com.volmit.iris.engine.object.biome.IrisBiome; -import com.volmit.iris.engine.object.block.IrisBlockData; import com.volmit.iris.engine.object.noise.IrisWorm; -import com.volmit.iris.engine.object.objects.IrisObjectLimit; -import com.volmit.iris.util.collection.KList; -import com.volmit.iris.util.data.B; import com.volmit.iris.util.json.JSONObject; import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.matter.MatterCavern; @@ -44,9 +38,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.Accessors; -import org.bukkit.block.data.BlockData; - -import java.util.List; @EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @@ -83,9 +74,9 @@ public class IrisCave extends IrisRegistrant { public void generate(MantleWriter writer, RNG rng, Engine engine, int x, int y, int z) { writer.setLine(getWorm().generate(rng, engine.getData(), writer, verticalRange, x, y, z, - (at) -> fork.doCarving(writer, rng, engine, at.getX(), at.getY(), at.getZ())), - getWorm().getGirth().get(rng, x, z, engine.getData()), true, - matterNodeCache.aquire(() -> CavernMatter.get(getCustomBiome()))); + (at) -> fork.doCarving(writer, rng, engine, at.getX(), at.getY(), at.getZ())), + getWorm().getGirth().get(rng, x, z, engine.getData()), true, + matterNodeCache.aquire(() -> CavernMatter.get(getCustomBiome()))); } @Override diff --git a/src/main/java/com/volmit/iris/engine/object/carving/IrisCavePlacer.java b/src/main/java/com/volmit/iris/engine/object/carving/IrisCavePlacer.java index 7adfa0e04..fd183ae4a 100644 --- a/src/main/java/com/volmit/iris/engine/object/carving/IrisCavePlacer.java +++ b/src/main/java/com/volmit/iris/engine/object/carving/IrisCavePlacer.java @@ -74,8 +74,7 @@ public class IrisCavePlacer implements IRare { return; } - if(rng.nextInt(rarity) != 0) - { + if (rng.nextInt(rarity) != 0) { return; } @@ -88,20 +87,15 @@ public class IrisCavePlacer implements IRare { return; } - if(y == -1) - { - int h = (int) caveStartHeight.get(rng,x, z,data); - int ma = breakSurface ? h : (int) (engine.getComplex().getHeightStream().get(x, z) - 9); + if (y == -1) { + int h = (int) caveStartHeight.get(rng, x, z, data); + int ma = breakSurface ? h : (int) (engine.getComplex().getHeightStream().get(x, z) - 9); y = Math.min(h, ma); } - try - { + try { cave.generate(mantle, rng, engine, x + rng.nextInt(15), y, z + rng.nextInt(15)); - } - - catch(Throwable e) - { + } catch (Throwable e) { e.printStackTrace(); fail.set(true); } diff --git a/src/main/java/com/volmit/iris/engine/object/carving/IrisElipsoid.java b/src/main/java/com/volmit/iris/engine/object/carving/IrisElipsoid.java index ee3c4e1f5..2a94b14e6 100644 --- a/src/main/java/com/volmit/iris/engine/object/carving/IrisElipsoid.java +++ b/src/main/java/com/volmit/iris/engine/object/carving/IrisElipsoid.java @@ -26,7 +26,6 @@ import com.volmit.iris.engine.object.annotations.MinNumber; import com.volmit.iris.engine.object.annotations.RegistryListResource; import com.volmit.iris.engine.object.annotations.Required; import com.volmit.iris.engine.object.biome.IrisBiome; -import com.volmit.iris.engine.object.block.IrisBlockData; import com.volmit.iris.engine.object.common.IRare; import com.volmit.iris.engine.object.noise.IrisGeneratorStyle; import com.volmit.iris.engine.object.noise.IrisStyledRange; @@ -38,8 +37,7 @@ import lombok.Data; @Desc("Represents an procedural eliptical shape") @Data -public class IrisElipsoid implements IRare -{ +public class IrisElipsoid implements IRare { @Required @Desc("Typically a 1 in RARITY on a per fork basis") @MinNumber(1) @@ -60,8 +58,7 @@ public class IrisElipsoid implements IRare private transient final AtomicCache matterNodeCache = new AtomicCache<>(); @SuppressWarnings("SuspiciousNameCombination") - public void generate(RNG rng, Engine engine, MantleWriter writer, int x, int y, int z) - { + public void generate(RNG rng, Engine engine, MantleWriter writer, int x, int y, int z) { writer.setElipsoid(x, y, z, xRadius.get(rng, z, y, engine.getData()), yRadius.get(rng, x, z, engine.getData()), diff --git a/src/main/java/com/volmit/iris/engine/object/carving/IrisPyramid.java b/src/main/java/com/volmit/iris/engine/object/carving/IrisPyramid.java index f467be342..bc36d2e38 100644 --- a/src/main/java/com/volmit/iris/engine/object/carving/IrisPyramid.java +++ b/src/main/java/com/volmit/iris/engine/object/carving/IrisPyramid.java @@ -26,7 +26,6 @@ import com.volmit.iris.engine.object.annotations.MinNumber; import com.volmit.iris.engine.object.annotations.RegistryListResource; import com.volmit.iris.engine.object.annotations.Required; import com.volmit.iris.engine.object.biome.IrisBiome; -import com.volmit.iris.engine.object.block.IrisBlockData; import com.volmit.iris.engine.object.common.IRare; import com.volmit.iris.engine.object.noise.IrisGeneratorStyle; import com.volmit.iris.engine.object.noise.IrisStyledRange; @@ -38,8 +37,7 @@ import lombok.Data; @Desc("Represents an procedural eliptical shape") @Data -public class IrisPyramid implements IRare -{ +public class IrisPyramid implements IRare { @Required @Desc("Typically a 1 in RARITY on a per fork basis") @MinNumber(1) @@ -53,10 +51,10 @@ public class IrisPyramid implements IRare private IrisStyledRange baseWidth = new IrisStyledRange(1, 5, new IrisGeneratorStyle(NoiseStyle.STATIC)); private transient final AtomicCache matterNodeCache = new AtomicCache<>(); - public void generate(RNG rng, Engine engine, MantleWriter writer, int x, int y, int z) - { + + public void generate(RNG rng, Engine engine, MantleWriter writer, int x, int y, int z) { writer.setPyramid(x, y, z, matterNodeCache.aquire(() -> CavernMatter.get(getCustomBiome())), - (int)baseWidth.get(rng, z, y, engine.getData()), true); + (int) baseWidth.get(rng, z, y, engine.getData()), true); } public double maxSize() { diff --git a/src/main/java/com/volmit/iris/engine/object/carving/IrisRavine.java b/src/main/java/com/volmit/iris/engine/object/carving/IrisRavine.java index 65ec6e139..75e54a666 100644 --- a/src/main/java/com/volmit/iris/engine/object/carving/IrisRavine.java +++ b/src/main/java/com/volmit/iris/engine/object/carving/IrisRavine.java @@ -18,7 +18,6 @@ package com.volmit.iris.engine.object.carving; -import com.volmit.iris.Iris; import com.volmit.iris.core.loader.IrisData; import com.volmit.iris.core.loader.IrisRegistrant; import com.volmit.iris.engine.data.cache.AtomicCache; @@ -29,7 +28,6 @@ import com.volmit.iris.engine.object.annotations.MaxNumber; import com.volmit.iris.engine.object.annotations.MinNumber; import com.volmit.iris.engine.object.annotations.RegistryListResource; import com.volmit.iris.engine.object.basic.IrisPosition; -import com.volmit.iris.engine.object.basic.IrisRange; import com.volmit.iris.engine.object.biome.IrisBiome; import com.volmit.iris.engine.object.noise.IrisShapedGeneratorStyle; import com.volmit.iris.engine.object.noise.IrisWorm; @@ -89,6 +87,7 @@ public class IrisRavine extends IrisRegistrant { private double ribThickness = 3; private transient final AtomicCache matterNodeCache = new AtomicCache<>(); + @Override public String getFolderName() { return "ravines"; @@ -101,36 +100,32 @@ public class IrisRavine extends IrisRegistrant { public void generate(MantleWriter writer, RNG rng, Engine engine, int x, int y, int z) { - KList pos = getWorm().generate(rng, engine.getData(), writer, null, x, y, z, (at) -> {}); + KList pos = getWorm().generate(rng, engine.getData(), writer, null, x, y, z, (at) -> { + }); CNG dg = depthStyle.getGenerator().createNoCache(rng, engine.getData()); CNG bw = baseWidthStyle.getGenerator().createNoCache(rng, engine.getData()); - if(pos.size() < nodeThreshold) - { + if (pos.size() < nodeThreshold) { return; } - for(IrisPosition p : pos) - { + for (IrisPosition p : pos) { int rsurface = y == -1 ? engine.getComplex().getHeightStream().get(x, z).intValue() : y; int depth = (int) Math.round(dg.fitDouble(depthStyle.getMin(), depthStyle.getMax(), p.getX(), p.getZ())); int width = (int) Math.round(bw.fitDouble(baseWidthStyle.getMin(), baseWidthStyle.getMax(), p.getX(), p.getZ())); int surface = (int) Math.round(rsurface - depth * 0.45); - fork.doCarving(writer, rng, engine, p.getX(), rng.i(surface-depth, surface), p.getZ()); + fork.doCarving(writer, rng, engine, p.getX(), rng.i(surface - depth, surface), p.getZ()); - for(int i = surface + depth; i >= surface; i--) - { - if(i % ribThickness == 0) { + for (int i = surface + depth; i >= surface; i--) { + if (i % ribThickness == 0) { double v = width + ((((surface + depth) - i) * (angle / 360D))); - if(v <= 0.25) - { + if (v <= 0.25) { break; } - if(i <= ribThickness+2) - { + if (i <= ribThickness + 2) { break; } @@ -138,18 +133,15 @@ public class IrisRavine extends IrisRegistrant { } } - for(int i = surface - depth; i <= surface; i++) - { - if(i % ribThickness == 0) { + for (int i = surface - depth; i <= surface; i++) { + if (i % ribThickness == 0) { double v = width - ((((surface - depth) - i) * (angle / 360D))); - if(v <= 0.25) - { + if (v <= 0.25) { break; } - if(i <= ribThickness+2) - { + if (i <= ribThickness + 2) { break; } diff --git a/src/main/java/com/volmit/iris/engine/object/carving/IrisRavinePlacer.java b/src/main/java/com/volmit/iris/engine/object/carving/IrisRavinePlacer.java index 8ebc11d11..638e658ad 100644 --- a/src/main/java/com/volmit/iris/engine/object/carving/IrisRavinePlacer.java +++ b/src/main/java/com/volmit/iris/engine/object/carving/IrisRavinePlacer.java @@ -28,9 +28,6 @@ import com.volmit.iris.engine.object.annotations.MinNumber; import com.volmit.iris.engine.object.annotations.RegistryListResource; import com.volmit.iris.engine.object.annotations.Required; import com.volmit.iris.engine.object.common.IRare; -import com.volmit.iris.engine.object.noise.IrisGeneratorStyle; -import com.volmit.iris.engine.object.noise.IrisStyledRange; -import com.volmit.iris.engine.object.noise.NoiseStyle; import com.volmit.iris.util.math.RNG; import lombok.AllArgsConstructor; import lombok.Data; @@ -68,8 +65,7 @@ public class IrisRavinePlacer implements IRare { return; } - if(rng.nextInt(rarity) != 0) - { + if (rng.nextInt(rarity) != 0) { return; } @@ -82,15 +78,11 @@ public class IrisRavinePlacer implements IRare { return; } - try - { + try { int xx = x + rng.nextInt(15); int zz = z + rng.nextInt(15); ravine.generate(mantle, rng, engine, xx, y, zz); - } - - catch(Throwable e) - { + } catch (Throwable e) { e.printStackTrace(); fail.set(true); } diff --git a/src/main/java/com/volmit/iris/engine/object/carving/IrisSphere.java b/src/main/java/com/volmit/iris/engine/object/carving/IrisSphere.java index 1b4c68943..dc00898f7 100644 --- a/src/main/java/com/volmit/iris/engine/object/carving/IrisSphere.java +++ b/src/main/java/com/volmit/iris/engine/object/carving/IrisSphere.java @@ -26,7 +26,6 @@ import com.volmit.iris.engine.object.annotations.MinNumber; import com.volmit.iris.engine.object.annotations.RegistryListResource; import com.volmit.iris.engine.object.annotations.Required; import com.volmit.iris.engine.object.biome.IrisBiome; -import com.volmit.iris.engine.object.block.IrisBlockData; import com.volmit.iris.engine.object.common.IRare; import com.volmit.iris.engine.object.noise.IrisGeneratorStyle; import com.volmit.iris.engine.object.noise.IrisStyledRange; @@ -38,8 +37,7 @@ import lombok.Data; @Desc("Represents an procedural eliptical shape") @Data -public class IrisSphere implements IRare -{ +public class IrisSphere implements IRare { @Required @Desc("Typically a 1 in RARITY on a per fork basis") @MinNumber(1) @@ -53,9 +51,9 @@ public class IrisSphere implements IRare private IrisStyledRange radius = new IrisStyledRange(1, 5, new IrisGeneratorStyle(NoiseStyle.STATIC)); private transient final AtomicCache matterNodeCache = new AtomicCache<>(); - public void generate(RNG rng, Engine engine, MantleWriter writer, int x, int y, int z) - { - writer.setSphere(x, y, z, radius.get(rng, z, y, engine.getData()),true, matterNodeCache.aquire(() -> CavernMatter.get(getCustomBiome()))); + + public void generate(RNG rng, Engine engine, MantleWriter writer, int x, int y, int z) { + writer.setSphere(x, y, z, radius.get(rng, z, y, engine.getData()), true, matterNodeCache.aquire(() -> CavernMatter.get(getCustomBiome()))); } public double maxSize() { diff --git a/src/main/java/com/volmit/iris/engine/object/entity/IrisEntitySpawn.java b/src/main/java/com/volmit/iris/engine/object/entity/IrisEntitySpawn.java index dcdb0b54e..4cad469ef 100644 --- a/src/main/java/com/volmit/iris/engine/object/entity/IrisEntitySpawn.java +++ b/src/main/java/com/volmit/iris/engine/object/entity/IrisEntitySpawn.java @@ -27,7 +27,6 @@ import com.volmit.iris.engine.object.annotations.MinNumber; import com.volmit.iris.engine.object.annotations.RegistryListResource; import com.volmit.iris.engine.object.annotations.Required; import com.volmit.iris.engine.object.biome.IrisBiome; -import com.volmit.iris.engine.object.common.CaveResult; import com.volmit.iris.engine.object.common.IRare; import com.volmit.iris.engine.object.spawners.IrisSpawner; import com.volmit.iris.util.collection.KList; @@ -87,7 +86,7 @@ public class IrisEntitySpawn implements IRare { IrisComplex comp = gen.getComplex(); IrisBiome cave = comp.getCaveBiomeStream().get(x, z); KList r = new KList<>(); - r.add( new Location(c.getWorld(), x, hf + 1, z)); // TODO CAVE HEIGHT + r.add(new Location(c.getWorld(), x, hf + 1, z)); // TODO CAVE HEIGHT yield r.getRandom(rng); } diff --git a/src/main/java/com/volmit/iris/engine/object/noise/IrisGeneratorStyle.java b/src/main/java/com/volmit/iris/engine/object/noise/IrisGeneratorStyle.java index f8dddb9cc..a7a5add3f 100644 --- a/src/main/java/com/volmit/iris/engine/object/noise/IrisGeneratorStyle.java +++ b/src/main/java/com/volmit/iris/engine/object/noise/IrisGeneratorStyle.java @@ -75,8 +75,7 @@ public class IrisGeneratorStyle { return this; } - public CNG createNoCache(RNG rng, IrisData data) - { + public CNG createNoCache(RNG rng, IrisData data) { if (getExpression() != null) { IrisExpression e = data.getExpressionLoader().load(getExpression()); diff --git a/src/main/java/com/volmit/iris/engine/object/noise/IrisWorm.java b/src/main/java/com/volmit/iris/engine/object/noise/IrisWorm.java index 5d87441e0..dfc894d11 100644 --- a/src/main/java/com/volmit/iris/engine/object/noise/IrisWorm.java +++ b/src/main/java/com/volmit/iris/engine/object/noise/IrisWorm.java @@ -18,16 +18,13 @@ package com.volmit.iris.engine.object.noise; -import com.volmit.iris.Iris; import com.volmit.iris.core.loader.IrisData; -import com.volmit.iris.engine.data.cache.AtomicCache; import com.volmit.iris.engine.mantle.MantleWriter; import com.volmit.iris.engine.object.annotations.Desc; import com.volmit.iris.engine.object.basic.IrisPosition; import com.volmit.iris.engine.object.basic.IrisRange; import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.collection.KSet; -import com.volmit.iris.util.function.NoiseProvider; import com.volmit.iris.util.math.RNG; import com.volmit.iris.util.noise.CNG; import lombok.AllArgsConstructor; @@ -65,8 +62,7 @@ public class IrisWorm { private IrisStyledRange girth = new IrisStyledRange().setMin(3).setMax(5) .setStyle(new IrisGeneratorStyle(NoiseStyle.PERLIN)); - public KList generate(RNG rng, IrisData data, MantleWriter writer, IrisRange verticalRange, int x, int y, int z, Consumer fork) - { + public KList generate(RNG rng, IrisData data, MantleWriter writer, IrisRange verticalRange, int x, int y, int z, Consumer fork) { int itr = maxIterations; double jx, jy, jz; double cx = x; @@ -79,14 +75,12 @@ public class IrisWorm { CNG gy = xStyle.getGenerator().createNoCache(new RNG(rng.lmax()), data); CNG gz = xStyle.getGenerator().createNoCache(new RNG(rng.lmax()), data); - while(itr-- > 0) - { + while (itr-- > 0) { IrisPosition current = new IrisPosition(Math.round(cx), Math.round(cy), Math.round(cz)); fork.accept(current); pos.add(current); - if(check != null) - { + if (check != null) { check.add(current); } @@ -98,23 +92,19 @@ public class IrisWorm { cz += jz; IrisPosition next = new IrisPosition(Math.round(cx), Math.round(cy), Math.round(cz)); - if(verticalRange != null && !verticalRange.contains(next.getY())) - { + if (verticalRange != null && !verticalRange.contains(next.getY())) { break; } - if(!writer.isWithin((int)Math.round(cx), verticalRange != null ? (int)Math.round(cy) : 5, (int)Math.round(cz))) - { + if (!writer.isWithin((int) Math.round(cx), verticalRange != null ? (int) Math.round(cy) : 5, (int) Math.round(cz))) { break; } - if(next.isLongerThan(start, maxDistance)) - { + if (next.isLongerThan(start, maxDistance)) { break; } - if(check != null && check.contains(next)) - { + if (check != null && check.contains(next)) { break; } } diff --git a/src/main/java/com/volmit/iris/engine/object/objects/IrisObject.java b/src/main/java/com/volmit/iris/engine/object/objects/IrisObject.java index aa4cb2461..ced6ef340 100644 --- a/src/main/java/com/volmit/iris/engine/object/objects/IrisObject.java +++ b/src/main/java/com/volmit/iris/engine/object/objects/IrisObject.java @@ -464,8 +464,7 @@ public class IrisObject extends IrisRegistrant { if (yv < 0) { if (config.getMode().equals(ObjectPlaceMode.CENTER_HEIGHT)) { y = (c != null ? c.getSurface() : placer.getHighest(x, z, getLoader(), config.isUnderwater())) + rty; - if(placer.isCarved(x, y, z) || placer.isCarved(x, y-1, z)) - { + if (placer.isCarved(x, y, z) || placer.isCarved(x, y - 1, z)) { bail = true; } } else if (config.getMode().equals(ObjectPlaceMode.MAX_HEIGHT) || config.getMode().equals(ObjectPlaceMode.STILT)) { @@ -476,8 +475,7 @@ public class IrisObject extends IrisRegistrant { for (int j = z - (rotatedDimensions.getBlockZ() / 2) + offset.getBlockZ(); j <= z + (rotatedDimensions.getBlockZ() / 2) + offset.getBlockZ(); j++) { int h = placer.getHighest(i, j, getLoader(), config.isUnderwater()) + rty; - if(placer.isCarved(i, h, j)) - { + if (placer.isCarved(i, h, j)) { bail = true; break; } @@ -495,8 +493,7 @@ public class IrisObject extends IrisRegistrant { for (int j = z - (rotatedDimensions.getBlockZ() / 2) + offset.getBlockZ(); j <= z + (rotatedDimensions.getBlockZ() / 2) + offset.getBlockZ(); j += (rotatedDimensions.getBlockZ() / 2) + 1) { int h = placer.getHighest(i, j, getLoader(), config.isUnderwater()) + rty; - if(placer.isCarved(i, h, j)) - { + if (placer.isCarved(i, h, j)) { bail = true; break; } @@ -514,8 +511,7 @@ public class IrisObject extends IrisRegistrant { for (int i = x - (rotatedDimensions.getBlockX() / 2) + offset.getBlockX(); i <= x + (rotatedDimensions.getBlockX() / 2) + offset.getBlockX(); i++) { for (int j = z - (rotatedDimensions.getBlockZ() / 2) + offset.getBlockZ(); j <= z + (rotatedDimensions.getBlockZ() / 2) + offset.getBlockZ(); j++) { int h = placer.getHighest(i, j, getLoader(), config.isUnderwater()) + rty; - if(placer.isCarved(i, h, j)) - { + if (placer.isCarved(i, h, j)) { bail = true; break; } @@ -532,8 +528,7 @@ public class IrisObject extends IrisRegistrant { for (int i = x - (rotatedDimensions.getBlockX() / 2) + offset.getBlockX(); i <= x + (rotatedDimensions.getBlockX() / 2) + offset.getBlockX(); i += (rotatedDimensions.getBlockX() / 2) + 1) { for (int j = z - (rotatedDimensions.getBlockZ() / 2) + offset.getBlockZ(); j <= z + (rotatedDimensions.getBlockZ() / 2) + offset.getBlockZ(); j += (rotatedDimensions.getBlockZ() / 2) + 1) { int h = placer.getHighest(i, j, getLoader(), config.isUnderwater()) + rty; - if(placer.isCarved(i, h, j)) - { + if (placer.isCarved(i, h, j)) { bail = true; break; } @@ -544,15 +539,13 @@ public class IrisObject extends IrisRegistrant { } } else if (config.getMode().equals(ObjectPlaceMode.PAINT)) { y = placer.getHighest(x, z, getLoader(), config.isUnderwater()) + rty; - if(placer.isCarved(x, y, z)) - { + if (placer.isCarved(x, y, z)) { bail = true; } } } else { y = yv; - if(placer.isCarved(x, y, z)) - { + if (placer.isCarved(x, y, z)) { bail = true; } } @@ -562,8 +555,7 @@ public class IrisObject extends IrisRegistrant { bail = placer.isCarved(x, y, z); } - if(bail) - { + if (bail) { return -1; } diff --git a/src/main/java/com/volmit/iris/util/data/B.java b/src/main/java/com/volmit/iris/util/data/B.java index a381631c6..4c1827057 100644 --- a/src/main/java/com/volmit/iris/util/data/B.java +++ b/src/main/java/com/volmit/iris/util/data/B.java @@ -441,7 +441,7 @@ public class B { return isLit(mat) || isStorage(mat) || (mat instanceof PointedDripstone - && ((PointedDripstone)mat).getThickness().equals(PointedDripstone.Thickness.TIP)); + && ((PointedDripstone) mat).getThickness().equals(PointedDripstone.Thickness.TIP)); } public static boolean isFoliage(Material d) { @@ -525,6 +525,6 @@ public class B { } public static boolean isWaterLogged(BlockData b) { - return (b instanceof Waterlogged) && ((Waterlogged)b).isWaterlogged(); + return (b instanceof Waterlogged) && ((Waterlogged) b).isWaterlogged(); } } diff --git a/src/main/java/com/volmit/iris/util/decree/DecreeNode.java b/src/main/java/com/volmit/iris/util/decree/DecreeNode.java index ab512b3c0..22cd9efcd 100644 --- a/src/main/java/com/volmit/iris/util/decree/DecreeNode.java +++ b/src/main/java/com/volmit/iris/util/decree/DecreeNode.java @@ -52,13 +52,13 @@ public class DecreeNode { for (Parameter i : method.getParameters()) { DecreeParameter p = new DecreeParameter(i); - if (p.isRequired()){ + if (p.isRequired()) { required.add(p); } else { optional.add(p); } } - + required.addAll(optional); return required; diff --git a/src/main/java/com/volmit/iris/util/decree/DecreeSystem.java b/src/main/java/com/volmit/iris/util/decree/DecreeSystem.java index 65f141737..53a15d63b 100644 --- a/src/main/java/com/volmit/iris/util/decree/DecreeSystem.java +++ b/src/main/java/com/volmit/iris/util/decree/DecreeSystem.java @@ -60,8 +60,7 @@ public interface DecreeSystem extends CommandExecutor, TabCompleter { @Override default boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) { - if(!sender.hasPermission("iris.all")) - { + if (!sender.hasPermission("iris.all")) { sender.sendMessage("You lack the Permission 'iris.all'"); } diff --git a/src/main/java/com/volmit/iris/util/decree/handlers/VectorHandler.java b/src/main/java/com/volmit/iris/util/decree/handlers/VectorHandler.java index 53944a4fd..1ecce6b9e 100644 --- a/src/main/java/com/volmit/iris/util/decree/handlers/VectorHandler.java +++ b/src/main/java/com/volmit/iris/util/decree/handlers/VectorHandler.java @@ -25,7 +25,6 @@ import com.volmit.iris.util.decree.DecreeSystem; import com.volmit.iris.util.decree.exceptions.DecreeParsingException; import com.volmit.iris.util.decree.exceptions.DecreeWhichException; import com.volmit.iris.util.format.Form; -import com.volmit.iris.util.plugin.VolmitSender; import org.bukkit.FluidCollisionMode; import org.bukkit.entity.Player; import org.bukkit.util.BlockVector; diff --git a/src/main/java/com/volmit/iris/util/decree/handlers/WorldHandler.java b/src/main/java/com/volmit/iris/util/decree/handlers/WorldHandler.java index 1f79f4248..21e9d00a6 100644 --- a/src/main/java/com/volmit/iris/util/decree/handlers/WorldHandler.java +++ b/src/main/java/com/volmit/iris/util/decree/handlers/WorldHandler.java @@ -30,7 +30,7 @@ public class WorldHandler implements DecreeParameterHandler { public KList getPossibilities() { KList options = new KList<>(); for (World world : Bukkit.getWorlds()) { - if (!world.getName().toLowerCase().startsWith("iris/")){ + if (!world.getName().toLowerCase().startsWith("iris/")) { options.add(world); } } diff --git a/src/main/java/com/volmit/iris/util/mantle/Mantle.java b/src/main/java/com/volmit/iris/util/mantle/Mantle.java index 5f0ea90f8..c72aa687d 100644 --- a/src/main/java/com/volmit/iris/util/mantle/Mantle.java +++ b/src/main/java/com/volmit/iris/util/mantle/Mantle.java @@ -18,12 +18,10 @@ package com.volmit.iris.util.mantle; -import com.google.common.collect.ImmutableList; import com.volmit.iris.Iris; import com.volmit.iris.engine.data.cache.Cache; import com.volmit.iris.engine.mantle.EngineMantle; import com.volmit.iris.engine.mantle.MantleWriter; -import com.volmit.iris.engine.object.basic.IrisPosition; import com.volmit.iris.engine.object.feature.IrisFeaturePositional; import com.volmit.iris.util.collection.KMap; import com.volmit.iris.util.collection.KSet; @@ -33,21 +31,16 @@ import com.volmit.iris.util.documentation.RegionCoordinates; import com.volmit.iris.util.format.C; import com.volmit.iris.util.format.Form; import com.volmit.iris.util.function.Consumer4; -import com.volmit.iris.util.math.INode; -import com.volmit.iris.util.math.KochanekBartelsInterpolation; import com.volmit.iris.util.math.M; -import com.volmit.iris.util.math.PathInterpolation; import com.volmit.iris.util.matter.Matter; -import com.volmit.iris.util.matter.MatterCavern; import com.volmit.iris.util.parallel.BurstExecutor; import com.volmit.iris.util.parallel.HyperLock; import com.volmit.iris.util.parallel.MultiBurst; import org.bukkit.Chunk; -import org.bukkit.util.Vector; import java.io.File; import java.io.IOException; -import java.util.*; +import java.util.Map; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; diff --git a/src/main/java/com/volmit/iris/util/mantle/MantleChunk.java b/src/main/java/com/volmit/iris/util/mantle/MantleChunk.java index 46b57ec2b..49110f47e 100644 --- a/src/main/java/com/volmit/iris/util/mantle/MantleChunk.java +++ b/src/main/java/com/volmit/iris/util/mantle/MantleChunk.java @@ -243,11 +243,9 @@ public class MantleChunk { } public void deleteSlices(Class c) { - for(int i = 0; i < sections.length(); i++) - { + for (int i = 0; i < sections.length(); i++) { Matter m = sections.get(i); - if(m != null && m.hasSlice(c)) - { + if (m != null && m.hasSlice(c)) { m.deleteSlice(c); } } diff --git a/src/main/java/com/volmit/iris/util/matter/slices/CavernMatter.java b/src/main/java/com/volmit/iris/util/matter/slices/CavernMatter.java index 957bccbc7..af0d9486a 100644 --- a/src/main/java/com/volmit/iris/util/matter/slices/CavernMatter.java +++ b/src/main/java/com/volmit/iris/util/matter/slices/CavernMatter.java @@ -20,8 +20,6 @@ package com.volmit.iris.util.matter.slices; import com.volmit.iris.util.matter.MatterCavern; import com.volmit.iris.util.matter.Sliced; -import lombok.AllArgsConstructor; -import lombok.Data; import java.io.DataInputStream; import java.io.DataOutputStream; @@ -32,10 +30,8 @@ public class CavernMatter extends RawMatter { public static final MatterCavern ON = new MatterCavern(true, ""); public static final MatterCavern OFF = new MatterCavern(false, ""); - public static MatterCavern get(String customBiome) - { - if(customBiome.isEmpty()) - { + public static MatterCavern get(String customBiome) { + if (customBiome.isEmpty()) { return ON; } diff --git a/src/main/java/com/volmit/iris/util/matter/slices/UpdateMatter.java b/src/main/java/com/volmit/iris/util/matter/slices/UpdateMatter.java index 65f487210..31ec595f9 100644 --- a/src/main/java/com/volmit/iris/util/matter/slices/UpdateMatter.java +++ b/src/main/java/com/volmit/iris/util/matter/slices/UpdateMatter.java @@ -20,8 +20,6 @@ package com.volmit.iris.util.matter.slices; import com.volmit.iris.util.matter.MatterUpdate; import com.volmit.iris.util.matter.Sliced; -import lombok.AllArgsConstructor; -import lombok.Data; import java.io.DataInputStream; import java.io.DataOutputStream; diff --git a/src/main/java/com/volmit/iris/util/noise/CNG.java b/src/main/java/com/volmit/iris/util/noise/CNG.java index 9d9253626..d8a70e8f8 100644 --- a/src/main/java/com/volmit/iris/util/noise/CNG.java +++ b/src/main/java/com/volmit/iris/util/noise/CNG.java @@ -388,8 +388,7 @@ public class CNG { return noise(dim); } - public double noiseSym(double... dim) - { + public double noiseSym(double... dim) { return (noise(dim) * 2) - 1; } diff --git a/src/main/java/com/volmit/iris/util/plugin/VolmitSender.java b/src/main/java/com/volmit/iris/util/plugin/VolmitSender.java index 844f48430..12023a444 100644 --- a/src/main/java/com/volmit/iris/util/plugin/VolmitSender.java +++ b/src/main/java/com/volmit/iris/util/plugin/VolmitSender.java @@ -43,7 +43,6 @@ import org.bukkit.permissions.PermissionAttachmentInfo; import org.bukkit.plugin.Plugin; import java.time.Duration; -import java.util.Comparator; import java.util.Set; import java.util.UUID; import java.util.concurrent.CompletableFuture; @@ -439,7 +438,7 @@ public class VolmitSender implements CommandSender { String usage = "<#bbe03f>✒ <#a8e0a2>"; String onClick; if (i.isNode()) { - if (i.getNode().getParameters().isEmpty()){ + if (i.getNode().getParameters().isEmpty()) { usage += "There are no parameters. Click to run."; onClick = "run_command"; } else { @@ -461,7 +460,7 @@ public class VolmitSender implements CommandSender { /// Params StringBuilder nodes = new StringBuilder(); - if (i.isNode()){ + if (i.isNode()) { for (DecreeParameter p : i.getNode().getParameters()) { String nTitle = "" + p.getName(); @@ -469,19 +468,19 @@ public class VolmitSender implements CommandSender { String nDescription = "<#3fe05a>✎ <#6ad97d>" + p.getDescription(); String nUsage; String context = ""; - if (p.isRequired()){ + if (p.isRequired()) { nUsage = "<#db4321>⚠ <#faa796>This parameter is required."; } else if (p.hasDefault()) { - nUsage = "<#2181db>✔ <#78dcf0>Defaults to \""+ p.getParam().defaultValue()+"\" if undefined."; + nUsage = "<#2181db>✔ <#78dcf0>Defaults to \"" + p.getParam().defaultValue() + "\" if undefined."; } else { nUsage = "<#a73abd>✔ <#78dcf0>This parameter is optional."; } - if (p.isContextual()){ + if (p.isContextual()) { context = "<#ff9900>➱ <#ffcc00>The value may be derived from environment context" + newline; } String type = "<#cc00ff>✢ <#ff33cc>This parameter is of type " + p.getType().getSimpleName(); String fullTitle; - if (p.isRequired()){ + if (p.isRequired()) { fullTitle = "[" + nTitle + "] "; } else { fullTitle = "<#4f4f4f>⊰" + nTitle + "<#4f4f4f>⊱"; @@ -505,20 +504,20 @@ public class VolmitSender implements CommandSender { /// Wrapper String wrapper = "" + - "" + - "" + - " " + - nodes; + hoverTitle + newline + + description + newline + + usage + + suggestion + //Newlines for suggestions are added when they're built, to prevent blanklines. + suggestions + // ^ + "'>" + + "" + + "" + + " " + + nodes; sendMessageRaw(wrapper); } else { diff --git a/src/main/java/com/volmit/iris/util/scheduling/jobs/Job.java b/src/main/java/com/volmit/iris/util/scheduling/jobs/Job.java index 2e0331fe8..32c56034b 100644 --- a/src/main/java/com/volmit/iris/util/scheduling/jobs/Job.java +++ b/src/main/java/com/volmit/iris/util/scheduling/jobs/Job.java @@ -50,7 +50,8 @@ public interface Job { default void execute(VolmitSender sender) { - execute(sender, () -> {}); + execute(sender, () -> { + }); } default void execute(VolmitSender sender, Runnable whenComplete) {