diff --git a/gradle/scripts/jars.gradle b/gradle/scripts/jars.gradle index 6de0d095e2..3545343ed1 100644 --- a/gradle/scripts/jars.gradle +++ b/gradle/scripts/jars.gradle @@ -6,7 +6,6 @@ configurations { } shadowJar { - from jar.outputs configurations = [project.configurations.includedLibrary] archiveClassifier = "dev" } diff --git a/src/main/java/com/gregtechceu/gtceu/api/graphnet/pipenet/physical/tile/PipeBlockEntity.java b/src/main/java/com/gregtechceu/gtceu/api/graphnet/pipenet/physical/tile/PipeBlockEntity.java index 4b255fc0c2..474cc8f505 100644 --- a/src/main/java/com/gregtechceu/gtceu/api/graphnet/pipenet/physical/tile/PipeBlockEntity.java +++ b/src/main/java/com/gregtechceu/gtceu/api/graphnet/pipenet/physical/tile/PipeBlockEntity.java @@ -529,7 +529,6 @@ protected void initialize() { this.netLogicDatas.clear(); this.capabilities.clear(); this.netCapabilities.clear(); - boolean firstNode = true; for (WorldPipeNetNode node : PipeBlock.getNodesForTile(this)) { this.addCapabilities(node.getNet().getNewCapabilityObjects(node)); this.netCapabilities.put(node, new PipeCapabilityWrapper(this, node)); @@ -542,9 +541,10 @@ protected void initialize() { for (var entry : node.getData().getEntries()) { node.getData().markLogicEntryAsUpdated(entry, true); } - if (firstNode) { - firstNode = false; - this.temperatureLogic = node.getData().getLogicEntryNullable(TemperatureLogic.TYPE); + if (this.temperatureLogic == null) { + TemperatureLogic candidate = node.getData().getLogicEntryNullable(TemperatureLogic.TYPE); + if (candidate != null) + updateTemperatureLogic(candidate); } } if (this.legacy) { @@ -603,7 +603,9 @@ public void receiveCustomData(int discriminator, @NotNull FriendlyByteBuf buf) { // particle // public void updateTemperatureLogic(@NotNull TemperatureLogic logic) { + this.temperatureLogic = logic; if (overheatParticle == null || !overheatParticle.isAlive()) { + // TODO figure out if this can crash if playing on a server long tick = Platform.getMinecraftServer().getTickCount(); int temp = logic.getTemperature(tick); if (temp > GTOverheatParticle.TEMPERATURE_CUTOFF) {