diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 4c32249e81..df5b6f1285 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -90,5 +92,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 4c32249e81..df5b6f1285 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -90,5 +92,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 4c32249e81..df5b6f1285 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -90,5 +92,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 4c32249e81..df5b6f1285 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -90,5 +92,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 4c32249e81..df5b6f1285 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -90,5 +92,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 4c32249e81..df5b6f1285 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -90,5 +92,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 4c32249e81..df5b6f1285 100644 --- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -90,5 +92,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 0f1e297743..a4f250cf28 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -91,5 +93,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 0f1e297743..a4f250cf28 100644 --- a/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_8.2_Homunculus/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -91,5 +93,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index 0f1e297743..a4f250cf28 100644 --- a/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_9.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; import org.l2jmobius.gameserver.network.serverpackets.ability.ExAcquireAPSkillList; @@ -91,5 +93,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); player.sendPacket(new ExAcquireAPSkillList(player)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java index a73f523cb7..960dc82bf2 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/effecthandlers/ClassChange.java @@ -29,6 +29,8 @@ import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.AcquireSkillList; import org.l2jmobius.gameserver.network.serverpackets.ExStorageMaxCount; import org.l2jmobius.gameserver.network.serverpackets.ExSubjobInfo; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowAll; +import org.l2jmobius.gameserver.network.serverpackets.PartySmallWindowDeleteAll; import org.l2jmobius.gameserver.network.serverpackets.SystemMessage; /** @@ -88,5 +90,19 @@ public class ClassChange extends AbstractEffect player.sendPacket(new ExStorageMaxCount(player)); player.sendPacket(new AcquireSkillList(player)); player.sendPacket(new ExSubjobInfo(player, SubclassInfoType.CLASS_CHANGED)); + + if (player.isInParty()) + { + // Delete party window for other party members + player.getParty().broadcastToPartyMembers(player, PartySmallWindowDeleteAll.STATIC_PACKET); + for (PlayerInstance member : player.getParty().getMembers()) + { + // And re-add + if (member != player) + { + member.sendPacket(new PartySmallWindowAll(member, player.getParty())); + } + } + } } }