From c6ced6b5da68b170811fc7e8004ef8f96f23e93e Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Mon, 19 Sep 2022 23:54:14 +0000 Subject: [PATCH] Corrected ExDieInfo packet structure. Contributed by Index. --- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- .../network/serverpackets/ExDieInfo.java | 20 +++++++++++++++---- 9 files changed, 144 insertions(+), 36 deletions(-) diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; } diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; } diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; } diff --git a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; } diff --git a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; } diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; } diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; } diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java index 8bee464fb0..7ddef21299 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/network/serverpackets/ExDieInfo.java @@ -19,6 +19,7 @@ package org.l2jmobius.gameserver.network.serverpackets; import java.util.Collection; import org.l2jmobius.commons.network.PacketWriter; +import org.l2jmobius.gameserver.model.clan.Clan; import org.l2jmobius.gameserver.model.holders.DamageTakenHolder; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.OutgoingPackets; @@ -48,14 +49,25 @@ public class ExDieInfo implements IClientOutgoingPacket packet.writeD(item.getEnchantLevel()); packet.writeD((int) item.getCount()); } - packet.writeD(_lastDamageTaken.size()); + packet.writeH(_lastDamageTaken.size()); for (DamageTakenHolder damageHolder : _lastDamageTaken) { - packet.writeS(damageHolder.getCreature().getName()); - packet.writeH(0); + if (damageHolder.getCreature().isNpc()) + { + packet.writeH(1); + packet.writeD(damageHolder.getCreature().getId()); + packet.writeS(""); + } + else + { + final Clan clan = damageHolder.getCreature().getClan(); + packet.writeH(0); + packet.writeS(damageHolder.getCreature().getName()); + packet.writeS(clan == null ? "" : clan.getName()); + } packet.writeD(damageHolder.getSkillId()); packet.writeF(damageHolder.getDamage()); - packet.writeD(0); + packet.writeH(0); // damage type } return true; }