From 855a58e3fe715ce92a324be9a5a881d4318d87ad Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sun, 13 Dec 2015 08:59:53 +0000 Subject: [PATCH] Reverting NpcInfo changes made with Underground patch. --- .../network/serverpackets/NpcInfo.java | 90 ++++++++++++------- 1 file changed, 60 insertions(+), 30 deletions(-) diff --git a/trunk/java/com/l2jserver/gameserver/network/serverpackets/NpcInfo.java b/trunk/java/com/l2jserver/gameserver/network/serverpackets/NpcInfo.java index 624b4d1289..2b381c4caf 100644 --- a/trunk/java/com/l2jserver/gameserver/network/serverpackets/NpcInfo.java +++ b/trunk/java/com/l2jserver/gameserver/network/serverpackets/NpcInfo.java @@ -62,18 +62,22 @@ public class NpcInfo extends AbstractMaskPacket _npc = npc; _abnormalVisualEffects = npc.getCurrentAbnormalVisualEffects(); - if (npc.getTemplate().isUsingServerSideName()) + addComponentType(NpcInfoType.ATTACKABLE, NpcInfoType.UNKNOWN1, NpcInfoType.ID, NpcInfoType.POSITION, NpcInfoType.ALIVE, NpcInfoType.RUNNING); + + if (npc.getHeading() > 0) { - addComponentType(NpcInfoType.NAME); + addComponentType(NpcInfoType.HEADING); } - addComponentType(NpcInfoType.ATTACKABLE, NpcInfoType.UNKNOWN1, NpcInfoType.TITLE, NpcInfoType.ID, NpcInfoType.POSITION, NpcInfoType.ALIVE, NpcInfoType.RUNNING); + if ((npc.getStat().getPAtkSpd() > 0) || (npc.getStat().getMAtkSpd() > 0)) + { + addComponentType(NpcInfoType.ATK_CAST_SPEED); + } - addComponentType(NpcInfoType.HEADING); - - addComponentType(NpcInfoType.ATK_CAST_SPEED); - - addComponentType(NpcInfoType.SPEED_MULTIPLIER); + if (npc.getRunSpeed() > 0) + { + addComponentType(NpcInfoType.SPEED_MULTIPLIER); + } if ((npc.getLeftHandItem() > 0) || (npc.getRightHandItem() > 0)) { @@ -85,17 +89,55 @@ public class NpcInfo extends AbstractMaskPacket addComponentType(NpcInfoType.TEAM); } - addComponentType(NpcInfoType.DISPLAY_EFFECT); + if (npc.getDisplayEffect() > 0) + { + addComponentType(NpcInfoType.DISPLAY_EFFECT); + } - addComponentType(NpcInfoType.SWIM_OR_FLY); + if (npc.isInsideZone(ZoneId.WATER) || npc.isFlying()) + { + addComponentType(NpcInfoType.SWIM_OR_FLY); + } - addComponentType(NpcInfoType.FLYING); + if (npc.isFlying()) + { + addComponentType(NpcInfoType.FLYING); + } - addComponentType(NpcInfoType.MAX_HP); + if (npc.getMaxHp() > 0) + { + addComponentType(NpcInfoType.MAX_HP); + } - addComponentType(NpcInfoType.CURRENT_HP); + if (npc.getMaxMp() > 0) + { + addComponentType(NpcInfoType.MAX_MP); + } - addComponentType(NpcInfoType.ABNORMALS); + if (npc.getCurrentHp() <= npc.getMaxHp()) + { + addComponentType(NpcInfoType.CURRENT_HP); + } + + if (npc.getCurrentMp() <= npc.getMaxMp()) + { + addComponentType(NpcInfoType.CURRENT_MP); + } + + if (npc.getTemplate().isUsingServerSideName()) + { + addComponentType(NpcInfoType.NAME); + } + + if (npc.getTemplate().isUsingServerSideTitle() || (Config.SHOW_NPC_LVL && npc.isMonster()) || npc.isChampion()) + { + addComponentType(NpcInfoType.TITLE); + } + + if (!_abnormalVisualEffects.isEmpty()) + { + addComponentType(NpcInfoType.ABNORMALS); + } if (npc.getEnchantEffect() > 0) { @@ -123,6 +165,8 @@ public class NpcInfo extends AbstractMaskPacket } } + addComponentType(NpcInfoType.UNKNOWN8); + // TODO: Confirm me if (npc.isInCombat()) { @@ -171,14 +215,7 @@ public class NpcInfo extends AbstractMaskPacket } case TITLE: { - if (npc.getTemplate().isUsingServerSideTitle()) - { - _initSize += type.getBlockLength() + (npc.getTemplate().getTitle().length() * 2); - } - else - { - _initSize += type.getBlockLength(); - } + _initSize += type.getBlockLength() + (npc.getTitle().length() * 2); break; } case NAME: @@ -216,14 +253,7 @@ public class NpcInfo extends AbstractMaskPacket } if (containsMask(NpcInfoType.TITLE)) { - if (_npc.getTemplate().isUsingServerSideTitle()) - { - writeS(_npc.getTemplate().getTitle()); - } - else - { - writeS(""); - } + writeS(_npc.getTitle()); } // Block 2