From d50a160532f90c205327249acdbf088508979c8d Mon Sep 17 00:00:00 2001 From: Timo Ley Date: Fri, 6 Jan 2023 17:33:48 +0100 Subject: [PATCH] fix: multiple nodes spawning in same temple --- .../java/dev/tilera/auracore/world/WorldGenerator.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/dev/tilera/auracore/world/WorldGenerator.java b/src/main/java/dev/tilera/auracore/world/WorldGenerator.java index efa4e78..2c5a00c 100644 --- a/src/main/java/dev/tilera/auracore/world/WorldGenerator.java +++ b/src/main/java/dev/tilera/auracore/world/WorldGenerator.java @@ -79,8 +79,12 @@ public class WorldGenerator implements IWorldGenerator { if (var7 != null && !this.structureNode.containsKey(var7.hashCode())) { auraGen = true; this.structureNode.put(var7.hashCode(), true); - int value = random.nextInt(200) + 800; - AuraManager.registerAuraNode(world, (short)value, EnumNodeType.NORMAL, world.provider.dimensionId, var7.chunkPosX, world.getHeightValue(var7.chunkPosX, var7.chunkPosZ) + 3, var7.chunkPosZ); + int yPos = world.getHeightValue(var7.chunkPosX, var7.chunkPosZ) + 3; + int nearKey = AuraManager.getClosestAuraWithinRange(world, var7.chunkPosX, yPos, var7.chunkPosZ, 10); + if (nearKey < 0) { + int value = random.nextInt(200) + 800; + AuraManager.registerAuraNode(world, (short)value, EnumNodeType.NORMAL, world.provider.dimensionId, var7.chunkPosX, yPos, var7.chunkPosZ); + } } auraGen = this.generateAura(world, random, chunkX, chunkZ, auraGen, newGen); }