From 39f0b862725bb0df67506081e6797ef243fa1d83 Mon Sep 17 00:00:00 2001 From: gnembon Date: Wed, 10 Jun 2020 23:20:21 -0300 Subject: [PATCH] fixes --- .../carpet/network/ServerNetworkHandler.java | 16 +++++++++-- .../carpet/script/utils/ShapeDispatcher.java | 28 ++++++++++--------- 2 files changed, 28 insertions(+), 16 deletions(-) diff --git a/src/main/java/carpet/network/ServerNetworkHandler.java b/src/main/java/carpet/network/ServerNetworkHandler.java index ba6d1db0..6de0b77b 100644 --- a/src/main/java/carpet/network/ServerNetworkHandler.java +++ b/src/main/java/carpet/network/ServerNetworkHandler.java @@ -18,8 +18,8 @@ import java.util.Set; public class ServerNetworkHandler { - public static Map remoteCarpetPlayers = new HashMap<>(); - public static Set validCarpetPlayers = new HashSet<>(); + private static Map remoteCarpetPlayers = new HashMap<>(); + private static Set validCarpetPlayers = new HashSet<>(); public static void handleData(PacketByteBuf data, ServerPlayerEntity player) { @@ -63,6 +63,7 @@ public class ServerNetworkHandler public static void updateRuleWithConnectedClients(ParsedRule rule) { + if (CarpetSettings.superSecretSetting) return; for (ServerPlayerEntity player : remoteCarpetPlayers.keySet()) { player.networkHandler.sendPacket(new CustomPayloadS2CPacket( @@ -74,6 +75,7 @@ public class ServerNetworkHandler public static void updateTickSpeedToConnectedPlayers() { + if (CarpetSettings.superSecretSetting) return; for (ServerPlayerEntity player : remoteCarpetPlayers.keySet()) { player.networkHandler.sendPacket(new CustomPayloadS2CPacket( @@ -85,6 +87,7 @@ public class ServerNetworkHandler public static void broadcastCustomCommand(String command, Tag data) { + if (CarpetSettings.superSecretSetting) return; for (ServerPlayerEntity player : validCarpetPlayers) { player.networkHandler.sendPacket(new CustomPayloadS2CPacket( @@ -96,7 +99,7 @@ public class ServerNetworkHandler public static void sendCustomCommand(ServerPlayerEntity player, String command, Tag data) { - if (validCarpetPlayers.contains(player)) + if (isValidCarpetPlayer(player)) { player.networkHandler.sendPacket(new CustomPayloadS2CPacket( CarpetClient.CARPET_CHANNEL, @@ -119,6 +122,13 @@ public class ServerNetworkHandler validCarpetPlayers.clear(); } + public static boolean isValidCarpetPlayer(ServerPlayerEntity player) + { + if (CarpetSettings.superSecretSetting) return false; + return validCarpetPlayers.contains(player); + + } + private static class DataBuilder { private CompoundTag tag; diff --git a/src/main/java/carpet/script/utils/ShapeDispatcher.java b/src/main/java/carpet/script/utils/ShapeDispatcher.java index 58f30095..cebcb143 100644 --- a/src/main/java/carpet/script/utils/ShapeDispatcher.java +++ b/src/main/java/carpet/script/utils/ShapeDispatcher.java @@ -106,7 +106,7 @@ public class ShapeDispatcher List alternativePlayers = new ArrayList<>(); for (ServerPlayerEntity player : players) { - if (ServerNetworkHandler.validCarpetPlayers.contains(player)) + if (ServerNetworkHandler.isValidCarpetPlayer(player)) { clientPlayers.add(player); } @@ -328,7 +328,7 @@ public class ShapeDispatcher } public Vec3d relativiseRender(World world, Vec3d vec, float partialTick) { - if (followEntity <= 0) return vec; + if (followEntity < 0) return vec; Entity e = world.getEntityById(followEntity); if (e == null) return vec; return toAbsolute(e, vec, partialTick); @@ -344,6 +344,14 @@ public class ShapeDispatcher NumericValue.asNumber( elements.get(2)).getDouble() ); } + protected ParticleEffect replacementParticle() + { + String particleName = fa ==0 ? + String.format(Locale.ROOT , "dust %.1f %.1f %.1f 1.0", r, g, b): + String.format(Locale.ROOT , "dust %.1f %.1f %.1f 1.0", fr, fg, fb); + return getParticleData(particleName); + } + public abstract Consumer alternative(); public long key() @@ -406,8 +414,7 @@ public class ShapeDispatcher @Override public Consumer alternative() { - String particleName = String.format(Locale.ROOT , "dust %.1f %.1f %.1f 1.0", r, g, b); - ParticleEffect particle = getParticleData(particleName); + ParticleEffect particle = replacementParticle(); double density = Math.max(2.0, from.distanceTo(to) /50) / (a+0.1); return p -> { @@ -440,7 +447,7 @@ public class ShapeDispatcher double x1 = from.x; double y1 = from.y; double z1 = from.z; - double x2 = to.z; + double x2 = to.x; double y2 = to.y; double z2 = to.z; return @@ -490,10 +497,8 @@ public class ShapeDispatcher @Override public Consumer alternative() { - String particleName = String.format(Locale.ROOT , "dust %.1f %.1f %.1f 1.0", r, g, b); - ParticleEffect particle = getParticleData(particleName); + ParticleEffect particle = replacementParticle(); double density = Math.max(2.0, from.distanceTo(to) /50) / (a+0.1); - return p -> { if (p.dimension == shapeDimension) drawParticleLine( @@ -553,9 +558,7 @@ public class ShapeDispatcher @Override public Consumer alternative() { return p -> { - if (p.dimension != shapeDimension) return; - String particleName = String.format(Locale.ROOT , "dust %.1f %.1f %.1f 1.0", r, g, b); - ParticleEffect particle = getParticleData(particleName); + ParticleEffect particle = replacementParticle(); int partno = Math.min(1000,20*subdivisions); Random rand = p.world.getRandom(); ServerWorld world = p.getServerWorld(); @@ -633,8 +636,7 @@ public class ShapeDispatcher @Override public Consumer alternative() { return p -> { - String particleName = String.format(Locale.ROOT , "dust %.1f %.1f %.1f 1.0", r, g, b); - ParticleEffect particle = getParticleData(particleName); + ParticleEffect particle = replacementParticle(); int partno = (int)Math.min(1000,Math.sqrt(20*subdivisions*(1+height))); Random rand = p.world.getRandom(); ServerWorld world = p.getServerWorld();