From ea27b1a0814b2d0924311bf5a6532a6c048ca99e Mon Sep 17 00:00:00 2001 From: WinDanesz <31292708+WinDanesz@users.noreply.github.com> Date: Sun, 17 Apr 2022 15:53:48 +0200 Subject: [PATCH] Revert "Merge pull request #750 from WinDanesz/patch-1226-2" --- .../packet/PacketSpellProperties.java | 21 +++++++------------ .../electroblob/wizardry/spell/Spell.java | 20 ++---------------- 2 files changed, 9 insertions(+), 32 deletions(-) diff --git a/src/main/java/electroblob/wizardry/packet/PacketSpellProperties.java b/src/main/java/electroblob/wizardry/packet/PacketSpellProperties.java index b1ea515a..42852c93 100644 --- a/src/main/java/electroblob/wizardry/packet/PacketSpellProperties.java +++ b/src/main/java/electroblob/wizardry/packet/PacketSpellProperties.java @@ -20,9 +20,7 @@ public class PacketSpellProperties implements IMessageHandler { - - int first = message.firstId; - for(int i = first; i propertiesList = new ArrayList<>(); - int i = buf.readInt(); - count = buf.readInt(); - firstId = i; - while(buf.isReadable() && i < count){ + int i = 0; + + while(buf.isReadable()){ propertiesList.add(new SpellProperties(Spell.byNetworkID(i++), buf)); } @@ -60,8 +55,6 @@ public class PacketSpellProperties implements IMessageHandler implements C // To avoid sending extra data unnecessarily, the spell properties are sent in order of spell ID List spells = new ArrayList<>(registry.getValuesCollection()); spells.sort(Comparator.comparingInt(Spell::networkID)); - - SpellProperties[] propertiesArray = spells.stream().map(s -> s.properties).toArray(SpellProperties[]::new); - - // splitting the packet into batches of 100 spells - int i = 0; - while (i < propertiesArray.length) { - List propertiesList = new ArrayList<>(); - int first = i; - int batchCounter = 0; - for (int currentIndex = i; currentIndex < propertiesArray.length && batchCounter < 100; currentIndex++) { - propertiesList.add(propertiesArray[currentIndex]); - batchCounter++; - i++; - } - SpellProperties[] currentArray = propertiesList.toArray(new SpellProperties[0]); - PacketSpellProperties.Message currentPacket = new PacketSpellProperties.Message(first, currentArray.length, currentArray); - WizardryPacketHandler.net.sendTo(currentPacket, player); - } + WizardryPacketHandler.net.sendTo(new PacketSpellProperties.Message(spells.stream() + .map(s -> s.properties).toArray(SpellProperties[]::new)), player); } private static void clearProperties(){