PartySmallWindowAll.java 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. /*
  2. * This program is free software: you can redistribute it and/or modify it under the terms of the
  3. * GNU General Public License as published by the Free Software Foundation, either version 3 of the
  4. * License, or (at your option) any later version.
  5. *
  6. * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
  7. * even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  8. * General Public License for more details.
  9. *
  10. * You should have received a copy of the GNU General Public License along with this program. If
  11. * not, see <http://www.gnu.org/licenses/>.
  12. */
  13. package com.l2jserver.gameserver.network.serverpackets;
  14. import com.l2jserver.gameserver.model.L2Party;
  15. import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
  16. /**
  17. *
  18. *
  19. * sample 63 01 00 00 00 count
  20. *
  21. * c1 b2 e0 4a object id 54 00 75 00 65 00 73 00 64 00 61 00 79 00 00 00 name 5a 01 00 00 hp 5a 01
  22. * 00 00 hp max 89 00 00 00 mp 89 00 00 00 mp max 0e 00 00 00 level 12 00 00 00 class 00 00 00 00 01
  23. * 00 00 00
  24. *
  25. *
  26. * format d (dSdddddddd)
  27. *
  28. *
  29. * @version $Revision: 1.6.2.1.2.5 $ $Date: 2005/03/27 15:29:57 $
  30. */
  31. public final class PartySmallWindowAll extends L2GameServerPacket
  32. {
  33. private static final String _S__63_PARTYSMALLWINDOWALL = "[S] 4e PartySmallWindowAll";
  34. private L2Party _party;
  35. private L2PcInstance _exclude;
  36. private int _dist, _LeaderOID;
  37. public PartySmallWindowAll(L2PcInstance exclude, L2Party party)
  38. {
  39. _exclude = exclude;
  40. _party = party;
  41. _LeaderOID = _party.getPartyLeaderOID();
  42. _dist = _party.getLootDistribution();
  43. }
  44. @Override
  45. protected final void writeImpl()
  46. {
  47. writeC(0x4e);
  48. writeD(_LeaderOID);
  49. writeD(_dist);
  50. writeD(_party.getMemberCount() - 1);
  51. for (L2PcInstance member : _party.getPartyMembers())
  52. {
  53. if ((member != null) && (member != _exclude))
  54. {
  55. writeD(member.getObjectId());
  56. writeS(member.getName());
  57. writeD((int) member.getCurrentCp()); // c4
  58. writeD(member.getMaxCp()); // c4
  59. writeD((int) member.getCurrentHp());
  60. writeD(member.getMaxHp());
  61. writeD((int) member.getCurrentMp());
  62. writeD(member.getMaxMp());
  63. writeD(member.getLevel());
  64. writeD(member.getClassId().getId());
  65. writeD(0x00);// writeD(0x01); ??
  66. writeD(member.getRace().ordinal());
  67. writeD(0x00); // T2.3
  68. writeD(0x00); // T2.3
  69. if (member.getPet() != null)
  70. {
  71. writeD(member.getPet().getObjectId());
  72. writeD(member.getPet().getNpcId() + 1000000);
  73. writeD(member.getPet().getSummonType());
  74. writeS(member.getPet().getName());
  75. writeD((int) member.getPet().getCurrentHp());
  76. writeD(member.getPet().getMaxHp());
  77. writeD((int) member.getPet().getCurrentMp());
  78. writeD(member.getPet().getMaxMp());
  79. writeD(member.getPet().getLevel());
  80. }
  81. else
  82. {
  83. writeD(0x00);
  84. }
  85. }
  86. }
  87. }
  88. /*
  89. * (non-Javadoc)
  90. *
  91. * @see com.l2jserver.gameserver.serverpackets.ServerBasePacket#getType()
  92. */
  93. @Override
  94. public String getType()
  95. {
  96. return _S__63_PARTYSMALLWINDOWALL;
  97. }
  98. }