9
0
mirror of https://github.com/VolmitSoftware/Iris.git synced 2026-01-06 15:51:30 +00:00

Compare commits

..

17 Commits

Author SHA1 Message Date
Brian Fopiano
0ea936f3fe Merge pull request #845 from VolmitSoftware/Development
Development
2022-08-04 08:50:17 -07:00
Brian Fopiano
d1870ee0a8 V+ 2022-08-04 08:43:03 -07:00
Vatuu
d2151690ad Fixed pregen memory leak. 2022-08-04 00:27:33 +02:00
Brian Fopiano
dff373e7d5 Merge pull request #843 from CocoTheOwner/sortedNoise
sort noise
2022-07-30 16:23:45 -07:00
CocoTheOwner
0aec2a664f sort noise 2022-07-30 22:19:02 +01:00
Brian Fopiano
723b696393 Merge pull request #838 from VolmitSoftware/Development
Development
2022-07-29 10:04:58 -07:00
Brian Fopiano
f5f89eb4e4 Merge branch 'master' into Development 2022-07-29 10:04:53 -07:00
Brian Fopiano
df15332c7f Merge pull request #832 from CocoTheOwner/noWarn
Remove warning on create
2022-07-29 10:04:22 -07:00
Vatuu
61d9e5a869 V+ 2022-07-29 19:03:18 +02:00
Brian Fopiano
9628b66a97 Merge pull request #837 from VolmitSoftware/Development
Development Update
2022-07-29 10:02:04 -07:00
Vatuu
5e041366d4 Update to 1.19.1 2022-07-28 18:29:01 +02:00
Vatuu
3ecae8d72c Removed debug printout. 2022-07-28 17:45:51 +02:00
Vatuu
5709ce9d82 Fixed the QOL command being a bitch. 2022-07-28 15:54:31 +02:00
Vatuu
ce3c334ac5 Fixed vines and derivatives not placing properly in objects. 2022-07-27 19:35:18 +02:00
Vatuu
2ed5aa8730 Removed leftover debug message. 2022-07-26 21:41:06 +02:00
Vatuu
8480a63dda Fixed sculk veins not being recognized as vines. 2022-07-26 21:40:28 +02:00
CocoTheOwner
132a1695f3 Bey 2022-07-24 14:20:12 +01:00
9 changed files with 69 additions and 18 deletions

View File

@@ -24,10 +24,10 @@ plugins {
id "de.undercouch.download" version "5.0.1"
}
version '2.2.5-1.19' // Needs to be version specific
def nmsVersion = "1.19"
version '2.2.7-1.19.1' // Needs to be version specific
def nmsVersion = "1.19.1"
def apiVersion = '1.19'
def spigotJarVersion = '1.19-R0.1-SNAPSHOT'
def spigotJarVersion = '1.19.1-R0.1-SNAPSHOT'
def name = getRootProject().getName() // Defined in settings.gradle
def main = 'com.volmit.iris.Iris'
@@ -38,7 +38,7 @@ registerCustomOutputTask('Psycho', 'D://Dan/MinecraftDevelopment/server/plugins'
registerCustomOutputTask('ArcaneArts', 'C://Users/arcane/Documents/development/server/plugins')
registerCustomOutputTask('Coco', 'D://Documents/MC/plugins')
registerCustomOutputTask('Strange', 'D://Servers/1.17 Test Server/plugins')
registerCustomOutputTask('Vatuu', 'D://Minecraft/Servers/1.19/plugins')
registerCustomOutputTask('Vatuu', 'D://Minecraft/Servers/1.19.1/plugins')
// ========================== UNIX ==============================
registerCustomOutputTaskUnix('CyberpwnLT', '/Users/danielmills/development/server/plugins')
registerCustomOutputTaskUnix('PsychoLT', '/Users/brianfopiano/Desktop/REMOTES/RemoteMinecraft/plugins')
@@ -124,10 +124,10 @@ dependencies {
// Provided or Classpath
compileOnly 'org.projectlombok:lombok:1.18.24'
annotationProcessor 'org.projectlombok:lombok:1.18.24'
implementation 'org.spigotmc:spigot-api:1.19-R0.1-SNAPSHOT'
implementation 'org.spigotmc:spigot-api:1.19.1-R0.1-SNAPSHOT'
implementation 'me.clip:placeholderapi:2.11.1'
implementation 'io.th0rgal:oraxen:1.94.0'
implementation 'org.bukkit:craftbukkit:1.19-R0.1-SNAPSHOT:remapped-mojang'
implementation 'org.bukkit:craftbukkit:1.19.1-R0.1-SNAPSHOT:remapped-mojang'
implementation 'com.github.LoneDev6:api-itemsadder:3.1.0b'
// Shaded

View File

@@ -78,8 +78,6 @@ public class CommandIris implements DecreeExecutor {
return;
}
sender().sendMessage(C.RED + "You should not be using this command to create new worlds. Instead, use the tutorial: https://docs.volmit.com/iris/getting-started");
try {
IrisToolbelt.createWorld()
.dimension(type.getLoadKey())
@@ -140,7 +138,7 @@ public class CommandIris implements DecreeExecutor {
sender().sendMessage(C.GREEN + "Total Height: " + (sender().player().getWorld().getMaxHeight() - sender().player().getWorld().getMinHeight()));
}
@Decree(description = "QOL command to open a overworld studio world.")
@Decree(description = "QOL command to open a overworld studio world.", sync = true)
public void so() {
sender().sendMessage(C.GREEN + "Opening studio for the \"Overworld\" pack (seed: 1337)");
Iris.service(StudioSVC.class).open(sender(), 1337, "overworld");

View File

@@ -148,7 +148,7 @@ public class NoiseExplorerGUI extends JPanel implements MouseWheelListener, List
JFrame frame = new JFrame("Noise Explorer");
NoiseExplorerGUI nv = new NoiseExplorerGUI();
frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
KList<String> li = new KList<>(NoiseStyle.values()).toStringList();
KList<String> li = new KList<>(NoiseStyle.values()).toStringList().sort();
combo = new JComboBox<>(li.toArray(new String[0]));
combo.setSelectedItem("STATIC");
combo.setFocusable(false);

View File

@@ -140,6 +140,7 @@ public class IrisPregenerator {
generator.close();
ticker.interrupt();
listener.onClose();
getMantle().trim(0);
}
private void visitRegion(int x, int z, boolean regions) {

View File

@@ -23,6 +23,7 @@ import com.volmit.iris.engine.framework.Engine;
import com.volmit.iris.engine.object.IrisBiome;
import com.volmit.iris.engine.object.IrisDecorationPart;
import com.volmit.iris.engine.object.IrisDecorator;
import com.volmit.iris.util.data.B;
import com.volmit.iris.util.documentation.BlockCoordinates;
import com.volmit.iris.util.hunk.Hunk;
import org.bukkit.Material;
@@ -100,14 +101,13 @@ public class IrisCeilingDecorator extends IrisEngineDecorator {
}
private BlockData fixFaces(BlockData b, int x, int y, int z) {
Material mat = b.getMaterial();
if(mat == Material.VINE || mat == Material.GLOW_LICHEN) {
if(B.isVineBlock(b)) {
MultipleFacing data = (MultipleFacing)b.clone();
boolean found = false;
for(BlockFace f : BlockFace.values()) {
if(!f.isCartesian())
continue;
Material m = getEngine().getMantle().get(x, y, z).getMaterial();
Material m = getEngine().getMantle().get(x + f.getModX(), y + f.getModY(), z + f.getModZ()).getMaterial();
if(m.isSolid()) {
found = true;
data.setFace(f, m.isSolid());

View File

@@ -25,12 +25,14 @@ import com.volmit.iris.engine.object.InferredType;
import com.volmit.iris.engine.object.IrisBiome;
import com.volmit.iris.engine.object.IrisDecorationPart;
import com.volmit.iris.engine.object.IrisDecorator;
import com.volmit.iris.util.data.B;
import com.volmit.iris.util.documentation.BlockCoordinates;
import com.volmit.iris.util.hunk.Hunk;
import org.bukkit.Material;
import org.bukkit.block.BlockFace;
import org.bukkit.block.data.Bisected;
import org.bukkit.block.data.BlockData;
import org.bukkit.block.data.MultipleFacing;
import org.bukkit.block.data.type.PointedDripstone;
public class IrisSurfaceDecorator extends IrisEngineDecorator {
@@ -73,8 +75,8 @@ public class IrisSurfaceDecorator extends IrisEngineDecorator {
}
if(decorator.getForceBlock() != null)
data.set(x, height, z, decorator.getForceBlock().getBlockData(getData()));
data.set(x, height + 1, z, bd);
data.set(x, height, z, fixFaces(decorator.getForceBlock().getBlockData(getData()), x, height, z));
data.set(x, height + 1, z, fixFaces(bd, x, height, z));
} else {
if(height < getDimension().getFluidHeight()) {
max = getDimension().getFluidHeight();
@@ -140,4 +142,24 @@ public class IrisSurfaceDecorator extends IrisEngineDecorator {
}
}
}
private BlockData fixFaces(BlockData b, int x, int y, int z) {
if(B.isVineBlock(b)) {
MultipleFacing data = (MultipleFacing)b.clone();
boolean found = false;
for(BlockFace f : BlockFace.values()) {
if(!f.isCartesian())
continue;
Material m = getEngine().getMantle().get(x + f.getModX(), y + f.getModY(), z + f.getModZ()).getMaterial();
if(m.isSolid()) {
found = true;
data.setFace(f, m.isSolid());
}
}
if(!found)
data.setFace(BlockFace.UP, true);
return data;
}
return b;
}
}

View File

@@ -47,9 +47,11 @@ import lombok.experimental.Accessors;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.block.BlockState;
import org.bukkit.block.TileState;
import org.bukkit.block.data.BlockData;
import org.bukkit.block.data.MultipleFacing;
import org.bukkit.block.data.Waterlogged;
import org.bukkit.block.data.type.Leaves;
import org.bukkit.util.BlockVector;
@@ -803,6 +805,16 @@ public class IrisObject extends IrisRegistrant {
((Waterlogged) data).setWaterlogged(true);
}
if(B.isVineBlock(data)) {
MultipleFacing f = (MultipleFacing)data;
for(BlockFace face : f.getAllowedFaces()) {
BlockData facingBlock = placer.get(xx + face.getModX(), yy + face.getModY(), zz + face.getModZ());
if(B.isSolid(facingBlock) && !B.isVineBlock(facingBlock)) {
f.setFace(face, true);
}
}
}
if(listener != null) {
listener.accept(new BlockPosition(xx, yy, zz));
}
@@ -895,8 +907,19 @@ public class IrisObject extends IrisRegistrant {
if(settings.getYMax() != 0)
lowerBound -= Math.min(config.getStiltSettings().getYMax() - (lowest + y - highest), 0);
}
for(int j = lowest + y; j > lowerBound; j--)
for(int j = lowest + y; j > lowerBound; j--) {
if(B.isVineBlock(d)) {
MultipleFacing f = (MultipleFacing)d;
for(BlockFace face : f.getAllowedFaces()) {
BlockData facingBlock = placer.get(xx + face.getModX(), j + face.getModY(), zz + face.getModZ());
if(B.isSolid(facingBlock) && !B.isVineBlock(facingBlock)) {
f.setFace(face, true);
}
}
}
placer.set(xx, j, zz, d);
}
}
readLock.unlock();

View File

@@ -201,7 +201,8 @@ public class B {
TORCH,
SOUL_TORCH,
GLOW_LICHEN,
VINE
VINE,
SCULK_VEIN
}).forEach((i) -> b.add(i.ordinal()));
b.addAll(foliageCache);
@@ -674,4 +675,11 @@ public class B {
public static void registerCustomBlockData(String namespace, String key, BlockData blockData) {
custom.put(namespace + ":" + key, blockData);
}
public static boolean isVineBlock(BlockData data) {
return switch(data.getMaterial()) {
case VINE, SCULK_VEIN, GLOW_LICHEN -> true;
default -> false;
};
}
}

View File

@@ -62,7 +62,6 @@ public class BiomeGridHunkView implements Hunk<Biome> {
if(y > highest)
{
highest = y;
Iris.info("Highest = " + highest);
}
}