Fixed clan subpledge invitation issues.
This commit is contained in:
parent
d3b68cc899
commit
fbaa73d331
@ -87,7 +87,6 @@ import com.l2jmobius.gameserver.network.serverpackets.ExWorldChatCnt;
|
|||||||
import com.l2jmobius.gameserver.network.serverpackets.HennaInfo;
|
import com.l2jmobius.gameserver.network.serverpackets.HennaInfo;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.ItemList;
|
import com.l2jmobius.gameserver.network.serverpackets.ItemList;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowInfoUpdate;
|
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListAll;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListAll;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeSkillList;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeSkillList;
|
||||||
@ -373,7 +372,6 @@ public class EnterWorld implements IClientIncomingPacket
|
|||||||
PledgeShowMemberListAll.sendAllTo(activeChar);
|
PledgeShowMemberListAll.sendAllTo(activeChar);
|
||||||
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
||||||
activeChar.sendPacket(new PledgeSkillList(clan));
|
activeChar.sendPacket(new PledgeSkillList(clan));
|
||||||
activeChar.sendPacket(new PledgeShowInfoUpdate(clan));
|
|
||||||
final ClanHall ch = ClanHallData.getInstance().getClanHallByClan(clan);
|
final ClanHall ch = ClanHallData.getInstance().getClanHallByClan(clan);
|
||||||
if ((ch != null) && (ch.getCostFailDay() > 0))
|
if ((ch != null) && (ch.getCostFailDay() > 0))
|
||||||
{
|
{
|
||||||
|
@ -57,6 +57,6 @@ public class RequestClanAskJoinByName implements IClientIncomingPacket
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
invitedPlayer.sendPacket(new AskJoinPledge(activeChar, activeChar.getClan().getSubPledge(_pledgeType) != null ? activeChar.getClan().getSubPledge(_pledgeType).getName() : null, _pledgeType, activeChar.getClan().getName()));
|
invitedPlayer.sendPacket(new AskJoinPledge(activeChar, _pledgeType, activeChar.getClan().getName()));
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -74,8 +74,7 @@ public final class RequestJoinPledge implements IClientIncomingPacket
|
|||||||
}
|
}
|
||||||
|
|
||||||
final String pledgeName = activeChar.getClan().getName();
|
final String pledgeName = activeChar.getClan().getName();
|
||||||
final String subPledgeName = (activeChar.getClan().getSubPledge(_pledgeType) != null ? activeChar.getClan().getSubPledge(_pledgeType).getName() : null);
|
target.sendPacket(new AskJoinPledge(activeChar, _pledgeType, pledgeName));
|
||||||
target.sendPacket(new AskJoinPledge(activeChar, subPledgeName, _pledgeType, pledgeName));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getPledgeType()
|
public int getPledgeType()
|
||||||
|
@ -53,6 +53,7 @@ public final class RequestPledgePower implements IClientIncomingPacket
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
player.sendPacket(new ManagePledgePower(client.getActiveChar().getClan(), _action, _rank));
|
||||||
if (_action == 2)
|
if (_action == 2)
|
||||||
{
|
{
|
||||||
if (player.isClanLeader())
|
if (player.isClanLeader())
|
||||||
@ -71,9 +72,5 @@ public final class RequestPledgePower implements IClientIncomingPacket
|
|||||||
player.getClan().setRankPrivs(_rank, _privs);
|
player.getClan().setRankPrivs(_rank, _privs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
player.sendPacket(new ManagePledgePower(client.getActiveChar().getClan(), _action, _rank));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -77,7 +77,7 @@ public final class RequestPledgeSetMemberPowerGrade implements IClientIncomingPa
|
|||||||
if (member.getPledgeType() == L2Clan.SUBUNIT_ACADEMY)
|
if (member.getPledgeType() == L2Clan.SUBUNIT_ACADEMY)
|
||||||
{
|
{
|
||||||
// also checked from client side
|
// also checked from client side
|
||||||
activeChar.sendMessage("You cannot change academy member grade");
|
activeChar.sendPacket(SystemMessageId.THAT_PRIVILEGE_CANNOT_BE_GRANTED_TO_A_CLAN_ACADEMY_MEMBER);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ public class RequestPledgeWaitingApplied implements IClientIncomingPacket
|
|||||||
public void run(L2GameClient client)
|
public void run(L2GameClient client)
|
||||||
{
|
{
|
||||||
final L2PcInstance activeChar = client.getActiveChar();
|
final L2PcInstance activeChar = client.getActiveChar();
|
||||||
if ((activeChar == null) || (activeChar.getClan() == null))
|
if ((activeChar == null) || (activeChar.getClan() != null))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -23,14 +23,12 @@ import com.l2jmobius.gameserver.network.OutgoingPackets;
|
|||||||
public final class AskJoinPledge implements IClientOutgoingPacket
|
public final class AskJoinPledge implements IClientOutgoingPacket
|
||||||
{
|
{
|
||||||
private final L2PcInstance _requestor;
|
private final L2PcInstance _requestor;
|
||||||
private final String _subPledgeName;
|
|
||||||
private final int _pledgeType;
|
private final int _pledgeType;
|
||||||
private final String _pledgeName;
|
private final String _pledgeName;
|
||||||
|
|
||||||
public AskJoinPledge(L2PcInstance requestor, String subPledgeName, int pledgeType, String pledgeName)
|
public AskJoinPledge(L2PcInstance requestor, int pledgeType, String pledgeName)
|
||||||
{
|
{
|
||||||
_requestor = requestor;
|
_requestor = requestor;
|
||||||
_subPledgeName = subPledgeName;
|
|
||||||
_pledgeType = pledgeType;
|
_pledgeType = pledgeType;
|
||||||
_pledgeName = pledgeName;
|
_pledgeName = pledgeName;
|
||||||
}
|
}
|
||||||
@ -39,14 +37,8 @@ public final class AskJoinPledge implements IClientOutgoingPacket
|
|||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
OutgoingPackets.ASK_JOIN_PLEDGE.writeId(packet);
|
OutgoingPackets.ASK_JOIN_PLEDGE.writeId(packet);
|
||||||
|
|
||||||
packet.writeD(_requestor.getObjectId());
|
packet.writeD(_requestor.getObjectId());
|
||||||
packet.writeS(_requestor.getName());
|
packet.writeS(_requestor.getName());
|
||||||
|
|
||||||
if (_subPledgeName != null)
|
|
||||||
{
|
|
||||||
packet.writeS(_pledgeType > 0 ? _subPledgeName : _pledgeName);
|
|
||||||
}
|
|
||||||
packet.writeS(_pledgeName);
|
packet.writeS(_pledgeName);
|
||||||
if (_pledgeType != 0)
|
if (_pledgeType != 0)
|
||||||
{
|
{
|
||||||
|
@ -36,16 +36,12 @@ public class ManagePledgePower implements IClientOutgoingPacket
|
|||||||
@Override
|
@Override
|
||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
// TODO: Verify this!
|
OutgoingPackets.MANAGE_PLEDGE_POWER.writeId(packet);
|
||||||
if (_action == 1)
|
|
||||||
{
|
packet.writeD(_rank);
|
||||||
OutgoingPackets.MANAGE_PLEDGE_POWER.writeId(packet);
|
packet.writeD(_action);
|
||||||
|
packet.writeD(_clan.getRankPrivs(_rank).getBitmask());
|
||||||
packet.writeD(_rank);
|
|
||||||
packet.writeD(_action);
|
return true;
|
||||||
packet.writeD(_clan.getRankPrivs(_rank).getBitmask());
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,15 +34,18 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
private final String _name;
|
private final String _name;
|
||||||
private final String _leaderName;
|
private final String _leaderName;
|
||||||
private final Collection<L2ClanMember> _members;
|
private final Collection<L2ClanMember> _members;
|
||||||
private int _pledgeType;
|
private final int _pledgeId;
|
||||||
|
private final boolean _isSubPledge;
|
||||||
|
|
||||||
private PledgeShowMemberListAll(L2Clan clan, SubPledge pledge)
|
private PledgeShowMemberListAll(L2Clan clan, SubPledge pledge, boolean isSubPledge)
|
||||||
{
|
{
|
||||||
_clan = clan;
|
_clan = clan;
|
||||||
_pledge = pledge;
|
_pledge = pledge;
|
||||||
|
_pledgeId = _pledge == null ? 0x00 : _pledge.getId();
|
||||||
_leaderName = pledge == null ? clan.getLeaderName() : CharNameTable.getInstance().getNameById(pledge.getLeaderId());
|
_leaderName = pledge == null ? clan.getLeaderName() : CharNameTable.getInstance().getNameById(pledge.getLeaderId());
|
||||||
_name = pledge == null ? clan.getName() : pledge.getName();
|
_name = pledge == null ? clan.getName() : pledge.getName();
|
||||||
_members = _clan.getMembers();
|
_members = _clan.getMembers();
|
||||||
|
_isSubPledge = isSubPledge;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void sendAllTo(L2PcInstance player)
|
public static void sendAllTo(L2PcInstance player)
|
||||||
@ -50,33 +53,32 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
final L2Clan clan = player.getClan();
|
final L2Clan clan = player.getClan();
|
||||||
if (clan != null)
|
if (clan != null)
|
||||||
{
|
{
|
||||||
player.sendPacket(new PledgeShowMemberListAll(clan, null));
|
|
||||||
for (SubPledge subPledge : clan.getAllSubPledges())
|
for (SubPledge subPledge : clan.getAllSubPledges())
|
||||||
{
|
{
|
||||||
player.sendPacket(new PledgeShowMemberListAll(clan, subPledge));
|
player.sendPacket(new PledgeShowMemberListAll(clan, subPledge, false));
|
||||||
}
|
}
|
||||||
|
player.sendPacket(new PledgeShowMemberListAll(clan, null, true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
final int pledgeId = (_pledge == null ? 0x00 : _pledge.getId());
|
|
||||||
OutgoingPackets.PLEDGE_SHOW_MEMBER_LIST_ALL.writeId(packet);
|
OutgoingPackets.PLEDGE_SHOW_MEMBER_LIST_ALL.writeId(packet);
|
||||||
|
|
||||||
packet.writeD(_pledge == null ? 0 : 1);
|
packet.writeD(_isSubPledge ? 0x00 : 0x01);
|
||||||
packet.writeD(_clan.getId());
|
packet.writeD(_clan.getId());
|
||||||
packet.writeD(Config.SERVER_ID);
|
packet.writeD(Config.SERVER_ID);
|
||||||
packet.writeD(pledgeId);
|
packet.writeD(_pledgeId);
|
||||||
packet.writeS(_name);
|
packet.writeS(_name);
|
||||||
packet.writeS(_leaderName);
|
packet.writeS(_leaderName);
|
||||||
|
|
||||||
packet.writeD(_clan.getCrestId()); // crest id .. is used again
|
packet.writeD(_clan.getCrestId()); // crest id .. is used again
|
||||||
packet.writeD(_clan.getLevel());
|
packet.writeD(_clan.getLevel());
|
||||||
packet.writeD(_clan.getCastleId());
|
packet.writeD(_clan.getCastleId());
|
||||||
|
packet.writeD(0x00);
|
||||||
packet.writeD(_clan.getHideoutId());
|
packet.writeD(_clan.getHideoutId());
|
||||||
packet.writeD(_clan.getFortId());
|
packet.writeD(_clan.getFortId());
|
||||||
packet.writeD(0x00);
|
|
||||||
packet.writeD(_clan.getRank());
|
packet.writeD(_clan.getRank());
|
||||||
packet.writeD(_clan.getReputationScore());
|
packet.writeD(_clan.getReputationScore());
|
||||||
packet.writeD(0x00); // 0
|
packet.writeD(0x00); // 0
|
||||||
@ -86,11 +88,11 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
packet.writeD(_clan.getAllyCrestId());
|
packet.writeD(_clan.getAllyCrestId());
|
||||||
packet.writeD(_clan.isAtWar() ? 1 : 0); // new c3
|
packet.writeD(_clan.isAtWar() ? 1 : 0); // new c3
|
||||||
packet.writeD(0x00); // Territory castle ID
|
packet.writeD(0x00); // Territory castle ID
|
||||||
packet.writeD(_clan.getSubPledgeMembersCount(_pledgeType));
|
packet.writeD(_clan.getSubPledgeMembersCount(_pledgeId));
|
||||||
|
|
||||||
for (L2ClanMember m : _members)
|
for (L2ClanMember m : _members)
|
||||||
{
|
{
|
||||||
if (m.getPledgeType() != _pledgeType)
|
if (m.getPledgeType() != _pledgeId)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -110,7 +112,6 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
}
|
}
|
||||||
packet.writeD(m.isOnline() ? m.getObjectId() : 0); // objectId = online 0 = offline
|
packet.writeD(m.isOnline() ? m.getObjectId() : 0); // objectId = online 0 = offline
|
||||||
packet.writeD(m.getSponsor() != 0 ? 1 : 0);
|
packet.writeD(m.getSponsor() != 0 ? 1 : 0);
|
||||||
packet.writeC(m.getOnlineStatus());
|
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -89,7 +89,6 @@ import com.l2jmobius.gameserver.network.serverpackets.ExWorldChatCnt;
|
|||||||
import com.l2jmobius.gameserver.network.serverpackets.HennaInfo;
|
import com.l2jmobius.gameserver.network.serverpackets.HennaInfo;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.ItemList;
|
import com.l2jmobius.gameserver.network.serverpackets.ItemList;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowInfoUpdate;
|
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListAll;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListAll;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeSkillList;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeSkillList;
|
||||||
@ -376,7 +375,6 @@ public class EnterWorld implements IClientIncomingPacket
|
|||||||
PledgeShowMemberListAll.sendAllTo(activeChar);
|
PledgeShowMemberListAll.sendAllTo(activeChar);
|
||||||
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
||||||
activeChar.sendPacket(new PledgeSkillList(clan));
|
activeChar.sendPacket(new PledgeSkillList(clan));
|
||||||
activeChar.sendPacket(new PledgeShowInfoUpdate(clan));
|
|
||||||
final ClanHall ch = ClanHallData.getInstance().getClanHallByClan(clan);
|
final ClanHall ch = ClanHallData.getInstance().getClanHallByClan(clan);
|
||||||
if ((ch != null) && (ch.getCostFailDay() > 0))
|
if ((ch != null) && (ch.getCostFailDay() > 0))
|
||||||
{
|
{
|
||||||
|
@ -57,6 +57,6 @@ public class RequestClanAskJoinByName implements IClientIncomingPacket
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
invitedPlayer.sendPacket(new AskJoinPledge(activeChar, activeChar.getClan().getSubPledge(_pledgeType) != null ? activeChar.getClan().getSubPledge(_pledgeType).getName() : null, _pledgeType, activeChar.getClan().getName()));
|
invitedPlayer.sendPacket(new AskJoinPledge(activeChar, _pledgeType, activeChar.getClan().getName()));
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -74,8 +74,7 @@ public final class RequestJoinPledge implements IClientIncomingPacket
|
|||||||
}
|
}
|
||||||
|
|
||||||
final String pledgeName = activeChar.getClan().getName();
|
final String pledgeName = activeChar.getClan().getName();
|
||||||
final String subPledgeName = (activeChar.getClan().getSubPledge(_pledgeType) != null ? activeChar.getClan().getSubPledge(_pledgeType).getName() : null);
|
target.sendPacket(new AskJoinPledge(activeChar, _pledgeType, pledgeName));
|
||||||
target.sendPacket(new AskJoinPledge(activeChar, subPledgeName, _pledgeType, pledgeName));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getPledgeType()
|
public int getPledgeType()
|
||||||
|
@ -53,6 +53,7 @@ public final class RequestPledgePower implements IClientIncomingPacket
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
player.sendPacket(new ManagePledgePower(client.getActiveChar().getClan(), _action, _rank));
|
||||||
if (_action == 2)
|
if (_action == 2)
|
||||||
{
|
{
|
||||||
if (player.isClanLeader())
|
if (player.isClanLeader())
|
||||||
@ -71,9 +72,5 @@ public final class RequestPledgePower implements IClientIncomingPacket
|
|||||||
player.getClan().setRankPrivs(_rank, _privs);
|
player.getClan().setRankPrivs(_rank, _privs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
player.sendPacket(new ManagePledgePower(client.getActiveChar().getClan(), _action, _rank));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -77,7 +77,7 @@ public final class RequestPledgeSetMemberPowerGrade implements IClientIncomingPa
|
|||||||
if (member.getPledgeType() == L2Clan.SUBUNIT_ACADEMY)
|
if (member.getPledgeType() == L2Clan.SUBUNIT_ACADEMY)
|
||||||
{
|
{
|
||||||
// also checked from client side
|
// also checked from client side
|
||||||
activeChar.sendMessage("You cannot change academy member grade");
|
activeChar.sendPacket(SystemMessageId.THAT_PRIVILEGE_CANNOT_BE_GRANTED_TO_A_CLAN_ACADEMY_MEMBER);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ public class RequestPledgeWaitingApplied implements IClientIncomingPacket
|
|||||||
public void run(L2GameClient client)
|
public void run(L2GameClient client)
|
||||||
{
|
{
|
||||||
final L2PcInstance activeChar = client.getActiveChar();
|
final L2PcInstance activeChar = client.getActiveChar();
|
||||||
if ((activeChar == null) || (activeChar.getClan() == null))
|
if ((activeChar == null) || (activeChar.getClan() != null))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -23,14 +23,12 @@ import com.l2jmobius.gameserver.network.OutgoingPackets;
|
|||||||
public final class AskJoinPledge implements IClientOutgoingPacket
|
public final class AskJoinPledge implements IClientOutgoingPacket
|
||||||
{
|
{
|
||||||
private final L2PcInstance _requestor;
|
private final L2PcInstance _requestor;
|
||||||
private final String _subPledgeName;
|
|
||||||
private final int _pledgeType;
|
private final int _pledgeType;
|
||||||
private final String _pledgeName;
|
private final String _pledgeName;
|
||||||
|
|
||||||
public AskJoinPledge(L2PcInstance requestor, String subPledgeName, int pledgeType, String pledgeName)
|
public AskJoinPledge(L2PcInstance requestor, int pledgeType, String pledgeName)
|
||||||
{
|
{
|
||||||
_requestor = requestor;
|
_requestor = requestor;
|
||||||
_subPledgeName = subPledgeName;
|
|
||||||
_pledgeType = pledgeType;
|
_pledgeType = pledgeType;
|
||||||
_pledgeName = pledgeName;
|
_pledgeName = pledgeName;
|
||||||
}
|
}
|
||||||
@ -39,14 +37,8 @@ public final class AskJoinPledge implements IClientOutgoingPacket
|
|||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
OutgoingPackets.ASK_JOIN_PLEDGE.writeId(packet);
|
OutgoingPackets.ASK_JOIN_PLEDGE.writeId(packet);
|
||||||
|
|
||||||
packet.writeD(_requestor.getObjectId());
|
packet.writeD(_requestor.getObjectId());
|
||||||
packet.writeS(_requestor.getName());
|
packet.writeS(_requestor.getName());
|
||||||
|
|
||||||
if (_subPledgeName != null)
|
|
||||||
{
|
|
||||||
packet.writeS(_pledgeType > 0 ? _subPledgeName : _pledgeName);
|
|
||||||
}
|
|
||||||
packet.writeS(_pledgeName);
|
packet.writeS(_pledgeName);
|
||||||
if (_pledgeType != 0)
|
if (_pledgeType != 0)
|
||||||
{
|
{
|
||||||
|
@ -36,16 +36,12 @@ public class ManagePledgePower implements IClientOutgoingPacket
|
|||||||
@Override
|
@Override
|
||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
// TODO: Verify this!
|
OutgoingPackets.MANAGE_PLEDGE_POWER.writeId(packet);
|
||||||
if (_action == 1)
|
|
||||||
{
|
packet.writeD(_rank);
|
||||||
OutgoingPackets.MANAGE_PLEDGE_POWER.writeId(packet);
|
packet.writeD(_action);
|
||||||
|
packet.writeD(_clan.getRankPrivs(_rank).getBitmask());
|
||||||
packet.writeD(_rank);
|
|
||||||
packet.writeD(_action);
|
return true;
|
||||||
packet.writeD(_clan.getRankPrivs(_rank).getBitmask());
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,15 +34,18 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
private final String _name;
|
private final String _name;
|
||||||
private final String _leaderName;
|
private final String _leaderName;
|
||||||
private final Collection<L2ClanMember> _members;
|
private final Collection<L2ClanMember> _members;
|
||||||
private int _pledgeType;
|
private final int _pledgeId;
|
||||||
|
private final boolean _isSubPledge;
|
||||||
|
|
||||||
private PledgeShowMemberListAll(L2Clan clan, SubPledge pledge)
|
private PledgeShowMemberListAll(L2Clan clan, SubPledge pledge, boolean isSubPledge)
|
||||||
{
|
{
|
||||||
_clan = clan;
|
_clan = clan;
|
||||||
_pledge = pledge;
|
_pledge = pledge;
|
||||||
|
_pledgeId = _pledge == null ? 0x00 : _pledge.getId();
|
||||||
_leaderName = pledge == null ? clan.getLeaderName() : CharNameTable.getInstance().getNameById(pledge.getLeaderId());
|
_leaderName = pledge == null ? clan.getLeaderName() : CharNameTable.getInstance().getNameById(pledge.getLeaderId());
|
||||||
_name = pledge == null ? clan.getName() : pledge.getName();
|
_name = pledge == null ? clan.getName() : pledge.getName();
|
||||||
_members = _clan.getMembers();
|
_members = _clan.getMembers();
|
||||||
|
_isSubPledge = isSubPledge;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void sendAllTo(L2PcInstance player)
|
public static void sendAllTo(L2PcInstance player)
|
||||||
@ -50,33 +53,32 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
final L2Clan clan = player.getClan();
|
final L2Clan clan = player.getClan();
|
||||||
if (clan != null)
|
if (clan != null)
|
||||||
{
|
{
|
||||||
player.sendPacket(new PledgeShowMemberListAll(clan, null));
|
|
||||||
for (SubPledge subPledge : clan.getAllSubPledges())
|
for (SubPledge subPledge : clan.getAllSubPledges())
|
||||||
{
|
{
|
||||||
player.sendPacket(new PledgeShowMemberListAll(clan, subPledge));
|
player.sendPacket(new PledgeShowMemberListAll(clan, subPledge, false));
|
||||||
}
|
}
|
||||||
|
player.sendPacket(new PledgeShowMemberListAll(clan, null, true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
final int pledgeId = (_pledge == null ? 0x00 : _pledge.getId());
|
|
||||||
OutgoingPackets.PLEDGE_SHOW_MEMBER_LIST_ALL.writeId(packet);
|
OutgoingPackets.PLEDGE_SHOW_MEMBER_LIST_ALL.writeId(packet);
|
||||||
|
|
||||||
packet.writeD(_pledge == null ? 0 : 1);
|
packet.writeD(_isSubPledge ? 0x00 : 0x01);
|
||||||
packet.writeD(_clan.getId());
|
packet.writeD(_clan.getId());
|
||||||
packet.writeD(Config.SERVER_ID);
|
packet.writeD(Config.SERVER_ID);
|
||||||
packet.writeD(pledgeId);
|
packet.writeD(_pledgeId);
|
||||||
packet.writeS(_name);
|
packet.writeS(_name);
|
||||||
packet.writeS(_leaderName);
|
packet.writeS(_leaderName);
|
||||||
|
|
||||||
packet.writeD(_clan.getCrestId()); // crest id .. is used again
|
packet.writeD(_clan.getCrestId()); // crest id .. is used again
|
||||||
packet.writeD(_clan.getLevel());
|
packet.writeD(_clan.getLevel());
|
||||||
packet.writeD(_clan.getCastleId());
|
packet.writeD(_clan.getCastleId());
|
||||||
|
packet.writeD(0x00);
|
||||||
packet.writeD(_clan.getHideoutId());
|
packet.writeD(_clan.getHideoutId());
|
||||||
packet.writeD(_clan.getFortId());
|
packet.writeD(_clan.getFortId());
|
||||||
packet.writeD(0x00);
|
|
||||||
packet.writeD(_clan.getRank());
|
packet.writeD(_clan.getRank());
|
||||||
packet.writeD(_clan.getReputationScore());
|
packet.writeD(_clan.getReputationScore());
|
||||||
packet.writeD(0x00); // 0
|
packet.writeD(0x00); // 0
|
||||||
@ -86,11 +88,11 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
packet.writeD(_clan.getAllyCrestId());
|
packet.writeD(_clan.getAllyCrestId());
|
||||||
packet.writeD(_clan.isAtWar() ? 1 : 0); // new c3
|
packet.writeD(_clan.isAtWar() ? 1 : 0); // new c3
|
||||||
packet.writeD(0x00); // Territory castle ID
|
packet.writeD(0x00); // Territory castle ID
|
||||||
packet.writeD(_clan.getSubPledgeMembersCount(_pledgeType));
|
packet.writeD(_clan.getSubPledgeMembersCount(_pledgeId));
|
||||||
|
|
||||||
for (L2ClanMember m : _members)
|
for (L2ClanMember m : _members)
|
||||||
{
|
{
|
||||||
if (m.getPledgeType() != _pledgeType)
|
if (m.getPledgeType() != _pledgeId)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -82,14 +82,14 @@ public class ExPledgeBonusOpen implements IClientOutgoingPacket
|
|||||||
// Members online bonus
|
// Members online bonus
|
||||||
packet.writeD(highestMembersOnlineBonus.getRequiredAmount());
|
packet.writeD(highestMembersOnlineBonus.getRequiredAmount());
|
||||||
packet.writeD(clan.getMaxOnlineMembers());
|
packet.writeD(clan.getMaxOnlineMembers());
|
||||||
packet.writeD(highestMembersOnlineBonus.getSkillReward().getSkillId());
|
packet.writeD(membersOnlineBonus != null ? highestMembersOnlineBonus.getSkillReward().getSkillId() : 0x00);
|
||||||
packet.writeC(membersOnlineBonus != null ? membersOnlineBonus.getLevel() : 0x00);
|
packet.writeC(membersOnlineBonus != null ? membersOnlineBonus.getLevel() : 0x00);
|
||||||
packet.writeC(membersOnlineBonus != null ? 0x01 : 0x00);
|
packet.writeC(membersOnlineBonus != null ? 0x01 : 0x00);
|
||||||
|
|
||||||
// Hunting bonus
|
// Hunting bonus
|
||||||
packet.writeD(highestHuntingBonus.getRequiredAmount());
|
packet.writeD(highestHuntingBonus.getRequiredAmount());
|
||||||
packet.writeD(clan.getHuntingPoints());
|
packet.writeD(clan.getHuntingPoints());
|
||||||
packet.writeD(highestHuntingBonus.getItemReward().getId());
|
packet.writeD(huntingBonus != null ? highestHuntingBonus.getItemReward().getId() : 0x00);
|
||||||
packet.writeC(huntingBonus != null ? huntingBonus.getLevel() : 0x00);
|
packet.writeC(huntingBonus != null ? huntingBonus.getLevel() : 0x00);
|
||||||
packet.writeC(huntingBonus != null ? 0x01 : 0x00);
|
packet.writeC(huntingBonus != null ? 0x01 : 0x00);
|
||||||
return true;
|
return true;
|
||||||
|
@ -89,7 +89,6 @@ import com.l2jmobius.gameserver.network.serverpackets.ExWorldChatCnt;
|
|||||||
import com.l2jmobius.gameserver.network.serverpackets.HennaInfo;
|
import com.l2jmobius.gameserver.network.serverpackets.HennaInfo;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.ItemList;
|
import com.l2jmobius.gameserver.network.serverpackets.ItemList;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowInfoUpdate;
|
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListAll;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListAll;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeSkillList;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeSkillList;
|
||||||
@ -376,7 +375,6 @@ public class EnterWorld implements IClientIncomingPacket
|
|||||||
PledgeShowMemberListAll.sendAllTo(activeChar);
|
PledgeShowMemberListAll.sendAllTo(activeChar);
|
||||||
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
||||||
activeChar.sendPacket(new PledgeSkillList(clan));
|
activeChar.sendPacket(new PledgeSkillList(clan));
|
||||||
activeChar.sendPacket(new PledgeShowInfoUpdate(clan));
|
|
||||||
final ClanHall ch = ClanHallData.getInstance().getClanHallByClan(clan);
|
final ClanHall ch = ClanHallData.getInstance().getClanHallByClan(clan);
|
||||||
if ((ch != null) && (ch.getCostFailDay() > 0))
|
if ((ch != null) && (ch.getCostFailDay() > 0))
|
||||||
{
|
{
|
||||||
|
@ -57,6 +57,6 @@ public class RequestClanAskJoinByName implements IClientIncomingPacket
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
invitedPlayer.sendPacket(new AskJoinPledge(activeChar, activeChar.getClan().getSubPledge(_pledgeType) != null ? activeChar.getClan().getSubPledge(_pledgeType).getName() : null, _pledgeType, activeChar.getClan().getName()));
|
invitedPlayer.sendPacket(new AskJoinPledge(activeChar, _pledgeType, activeChar.getClan().getName()));
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -74,8 +74,7 @@ public final class RequestJoinPledge implements IClientIncomingPacket
|
|||||||
}
|
}
|
||||||
|
|
||||||
final String pledgeName = activeChar.getClan().getName();
|
final String pledgeName = activeChar.getClan().getName();
|
||||||
final String subPledgeName = (activeChar.getClan().getSubPledge(_pledgeType) != null ? activeChar.getClan().getSubPledge(_pledgeType).getName() : null);
|
target.sendPacket(new AskJoinPledge(activeChar, _pledgeType, pledgeName));
|
||||||
target.sendPacket(new AskJoinPledge(activeChar, subPledgeName, _pledgeType, pledgeName));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getPledgeType()
|
public int getPledgeType()
|
||||||
|
@ -53,6 +53,7 @@ public final class RequestPledgePower implements IClientIncomingPacket
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
player.sendPacket(new ManagePledgePower(client.getActiveChar().getClan(), _action, _rank));
|
||||||
if (_action == 2)
|
if (_action == 2)
|
||||||
{
|
{
|
||||||
if (player.isClanLeader())
|
if (player.isClanLeader())
|
||||||
@ -71,9 +72,5 @@ public final class RequestPledgePower implements IClientIncomingPacket
|
|||||||
player.getClan().setRankPrivs(_rank, _privs);
|
player.getClan().setRankPrivs(_rank, _privs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
player.sendPacket(new ManagePledgePower(client.getActiveChar().getClan(), _action, _rank));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -77,7 +77,7 @@ public final class RequestPledgeSetMemberPowerGrade implements IClientIncomingPa
|
|||||||
if (member.getPledgeType() == L2Clan.SUBUNIT_ACADEMY)
|
if (member.getPledgeType() == L2Clan.SUBUNIT_ACADEMY)
|
||||||
{
|
{
|
||||||
// also checked from client side
|
// also checked from client side
|
||||||
activeChar.sendMessage("You cannot change academy member grade");
|
activeChar.sendPacket(SystemMessageId.THAT_PRIVILEGE_CANNOT_BE_GRANTED_TO_A_CLAN_ACADEMY_MEMBER);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ public class RequestPledgeWaitingApplied implements IClientIncomingPacket
|
|||||||
public void run(L2GameClient client)
|
public void run(L2GameClient client)
|
||||||
{
|
{
|
||||||
final L2PcInstance activeChar = client.getActiveChar();
|
final L2PcInstance activeChar = client.getActiveChar();
|
||||||
if ((activeChar == null) || (activeChar.getClan() == null))
|
if ((activeChar == null) || (activeChar.getClan() != null))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -23,14 +23,12 @@ import com.l2jmobius.gameserver.network.OutgoingPackets;
|
|||||||
public final class AskJoinPledge implements IClientOutgoingPacket
|
public final class AskJoinPledge implements IClientOutgoingPacket
|
||||||
{
|
{
|
||||||
private final L2PcInstance _requestor;
|
private final L2PcInstance _requestor;
|
||||||
private final String _subPledgeName;
|
|
||||||
private final int _pledgeType;
|
private final int _pledgeType;
|
||||||
private final String _pledgeName;
|
private final String _pledgeName;
|
||||||
|
|
||||||
public AskJoinPledge(L2PcInstance requestor, String subPledgeName, int pledgeType, String pledgeName)
|
public AskJoinPledge(L2PcInstance requestor, int pledgeType, String pledgeName)
|
||||||
{
|
{
|
||||||
_requestor = requestor;
|
_requestor = requestor;
|
||||||
_subPledgeName = subPledgeName;
|
|
||||||
_pledgeType = pledgeType;
|
_pledgeType = pledgeType;
|
||||||
_pledgeName = pledgeName;
|
_pledgeName = pledgeName;
|
||||||
}
|
}
|
||||||
@ -39,14 +37,8 @@ public final class AskJoinPledge implements IClientOutgoingPacket
|
|||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
OutgoingPackets.ASK_JOIN_PLEDGE.writeId(packet);
|
OutgoingPackets.ASK_JOIN_PLEDGE.writeId(packet);
|
||||||
|
|
||||||
packet.writeD(_requestor.getObjectId());
|
packet.writeD(_requestor.getObjectId());
|
||||||
packet.writeS(_requestor.getName());
|
packet.writeS(_requestor.getName());
|
||||||
|
|
||||||
if (_subPledgeName != null)
|
|
||||||
{
|
|
||||||
packet.writeS(_pledgeType > 0 ? _subPledgeName : _pledgeName);
|
|
||||||
}
|
|
||||||
packet.writeS(_pledgeName);
|
packet.writeS(_pledgeName);
|
||||||
if (_pledgeType != 0)
|
if (_pledgeType != 0)
|
||||||
{
|
{
|
||||||
|
@ -36,16 +36,12 @@ public class ManagePledgePower implements IClientOutgoingPacket
|
|||||||
@Override
|
@Override
|
||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
// TODO: Verify this!
|
OutgoingPackets.MANAGE_PLEDGE_POWER.writeId(packet);
|
||||||
if (_action == 1)
|
|
||||||
{
|
packet.writeD(_rank);
|
||||||
OutgoingPackets.MANAGE_PLEDGE_POWER.writeId(packet);
|
packet.writeD(_action);
|
||||||
|
packet.writeD(_clan.getRankPrivs(_rank).getBitmask());
|
||||||
packet.writeD(_rank);
|
|
||||||
packet.writeD(_action);
|
return true;
|
||||||
packet.writeD(_clan.getRankPrivs(_rank).getBitmask());
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,15 +34,18 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
private final String _name;
|
private final String _name;
|
||||||
private final String _leaderName;
|
private final String _leaderName;
|
||||||
private final Collection<L2ClanMember> _members;
|
private final Collection<L2ClanMember> _members;
|
||||||
private int _pledgeType;
|
private final int _pledgeId;
|
||||||
|
private final boolean _isSubPledge;
|
||||||
|
|
||||||
private PledgeShowMemberListAll(L2Clan clan, SubPledge pledge)
|
private PledgeShowMemberListAll(L2Clan clan, SubPledge pledge, boolean isSubPledge)
|
||||||
{
|
{
|
||||||
_clan = clan;
|
_clan = clan;
|
||||||
_pledge = pledge;
|
_pledge = pledge;
|
||||||
|
_pledgeId = _pledge == null ? 0x00 : _pledge.getId();
|
||||||
_leaderName = pledge == null ? clan.getLeaderName() : CharNameTable.getInstance().getNameById(pledge.getLeaderId());
|
_leaderName = pledge == null ? clan.getLeaderName() : CharNameTable.getInstance().getNameById(pledge.getLeaderId());
|
||||||
_name = pledge == null ? clan.getName() : pledge.getName();
|
_name = pledge == null ? clan.getName() : pledge.getName();
|
||||||
_members = _clan.getMembers();
|
_members = _clan.getMembers();
|
||||||
|
_isSubPledge = isSubPledge;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void sendAllTo(L2PcInstance player)
|
public static void sendAllTo(L2PcInstance player)
|
||||||
@ -50,33 +53,32 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
final L2Clan clan = player.getClan();
|
final L2Clan clan = player.getClan();
|
||||||
if (clan != null)
|
if (clan != null)
|
||||||
{
|
{
|
||||||
player.sendPacket(new PledgeShowMemberListAll(clan, null));
|
|
||||||
for (SubPledge subPledge : clan.getAllSubPledges())
|
for (SubPledge subPledge : clan.getAllSubPledges())
|
||||||
{
|
{
|
||||||
player.sendPacket(new PledgeShowMemberListAll(clan, subPledge));
|
player.sendPacket(new PledgeShowMemberListAll(clan, subPledge, false));
|
||||||
}
|
}
|
||||||
|
player.sendPacket(new PledgeShowMemberListAll(clan, null, true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
final int pledgeId = (_pledge == null ? 0x00 : _pledge.getId());
|
|
||||||
OutgoingPackets.PLEDGE_SHOW_MEMBER_LIST_ALL.writeId(packet);
|
OutgoingPackets.PLEDGE_SHOW_MEMBER_LIST_ALL.writeId(packet);
|
||||||
|
|
||||||
packet.writeD(_pledge == null ? 0 : 1);
|
packet.writeD(_isSubPledge ? 0x00 : 0x01);
|
||||||
packet.writeD(_clan.getId());
|
packet.writeD(_clan.getId());
|
||||||
packet.writeD(Config.SERVER_ID);
|
packet.writeD(Config.SERVER_ID);
|
||||||
packet.writeD(pledgeId);
|
packet.writeD(_pledgeId);
|
||||||
packet.writeS(_name);
|
packet.writeS(_name);
|
||||||
packet.writeS(_leaderName);
|
packet.writeS(_leaderName);
|
||||||
|
|
||||||
packet.writeD(_clan.getCrestId()); // crest id .. is used again
|
packet.writeD(_clan.getCrestId()); // crest id .. is used again
|
||||||
packet.writeD(_clan.getLevel());
|
packet.writeD(_clan.getLevel());
|
||||||
packet.writeD(_clan.getCastleId());
|
packet.writeD(_clan.getCastleId());
|
||||||
|
packet.writeD(0x00);
|
||||||
packet.writeD(_clan.getHideoutId());
|
packet.writeD(_clan.getHideoutId());
|
||||||
packet.writeD(_clan.getFortId());
|
packet.writeD(_clan.getFortId());
|
||||||
packet.writeD(0x00);
|
|
||||||
packet.writeD(_clan.getRank());
|
packet.writeD(_clan.getRank());
|
||||||
packet.writeD(_clan.getReputationScore());
|
packet.writeD(_clan.getReputationScore());
|
||||||
packet.writeD(0x00); // 0
|
packet.writeD(0x00); // 0
|
||||||
@ -86,11 +88,11 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
packet.writeD(_clan.getAllyCrestId());
|
packet.writeD(_clan.getAllyCrestId());
|
||||||
packet.writeD(_clan.isAtWar() ? 1 : 0); // new c3
|
packet.writeD(_clan.isAtWar() ? 1 : 0); // new c3
|
||||||
packet.writeD(0x00); // Territory castle ID
|
packet.writeD(0x00); // Territory castle ID
|
||||||
packet.writeD(_clan.getSubPledgeMembersCount(_pledgeType));
|
packet.writeD(_clan.getSubPledgeMembersCount(_pledgeId));
|
||||||
|
|
||||||
for (L2ClanMember m : _members)
|
for (L2ClanMember m : _members)
|
||||||
{
|
{
|
||||||
if (m.getPledgeType() != _pledgeType)
|
if (m.getPledgeType() != _pledgeId)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -82,14 +82,14 @@ public class ExPledgeBonusOpen implements IClientOutgoingPacket
|
|||||||
// Members online bonus
|
// Members online bonus
|
||||||
packet.writeD(highestMembersOnlineBonus.getRequiredAmount());
|
packet.writeD(highestMembersOnlineBonus.getRequiredAmount());
|
||||||
packet.writeD(clan.getMaxOnlineMembers());
|
packet.writeD(clan.getMaxOnlineMembers());
|
||||||
packet.writeD(highestMembersOnlineBonus.getSkillReward().getSkillId());
|
packet.writeD(membersOnlineBonus != null ? highestMembersOnlineBonus.getSkillReward().getSkillId() : 0x00);
|
||||||
packet.writeC(membersOnlineBonus != null ? membersOnlineBonus.getLevel() : 0x00);
|
packet.writeC(membersOnlineBonus != null ? membersOnlineBonus.getLevel() : 0x00);
|
||||||
packet.writeC(membersOnlineBonus != null ? 0x01 : 0x00);
|
packet.writeC(membersOnlineBonus != null ? 0x01 : 0x00);
|
||||||
|
|
||||||
// Hunting bonus
|
// Hunting bonus
|
||||||
packet.writeD(highestHuntingBonus.getRequiredAmount());
|
packet.writeD(highestHuntingBonus.getRequiredAmount());
|
||||||
packet.writeD(clan.getHuntingPoints());
|
packet.writeD(clan.getHuntingPoints());
|
||||||
packet.writeD(highestHuntingBonus.getItemReward().getId());
|
packet.writeD(huntingBonus != null ? highestHuntingBonus.getItemReward().getId() : 0x00);
|
||||||
packet.writeC(huntingBonus != null ? huntingBonus.getLevel() : 0x00);
|
packet.writeC(huntingBonus != null ? huntingBonus.getLevel() : 0x00);
|
||||||
packet.writeC(huntingBonus != null ? 0x01 : 0x00);
|
packet.writeC(huntingBonus != null ? 0x01 : 0x00);
|
||||||
return true;
|
return true;
|
||||||
|
@ -89,7 +89,6 @@ import com.l2jmobius.gameserver.network.serverpackets.ExWorldChatCnt;
|
|||||||
import com.l2jmobius.gameserver.network.serverpackets.HennaInfo;
|
import com.l2jmobius.gameserver.network.serverpackets.HennaInfo;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.ItemList;
|
import com.l2jmobius.gameserver.network.serverpackets.ItemList;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
import com.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowInfoUpdate;
|
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListAll;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListAll;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeShowMemberListUpdate;
|
||||||
import com.l2jmobius.gameserver.network.serverpackets.PledgeSkillList;
|
import com.l2jmobius.gameserver.network.serverpackets.PledgeSkillList;
|
||||||
@ -376,7 +375,6 @@ public class EnterWorld implements IClientIncomingPacket
|
|||||||
PledgeShowMemberListAll.sendAllTo(activeChar);
|
PledgeShowMemberListAll.sendAllTo(activeChar);
|
||||||
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
||||||
activeChar.sendPacket(new PledgeSkillList(clan));
|
activeChar.sendPacket(new PledgeSkillList(clan));
|
||||||
activeChar.sendPacket(new PledgeShowInfoUpdate(clan));
|
|
||||||
final ClanHall ch = ClanHallData.getInstance().getClanHallByClan(clan);
|
final ClanHall ch = ClanHallData.getInstance().getClanHallByClan(clan);
|
||||||
if ((ch != null) && (ch.getCostFailDay() > 0))
|
if ((ch != null) && (ch.getCostFailDay() > 0))
|
||||||
{
|
{
|
||||||
|
@ -57,6 +57,6 @@ public class RequestClanAskJoinByName implements IClientIncomingPacket
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
invitedPlayer.sendPacket(new AskJoinPledge(activeChar, activeChar.getClan().getSubPledge(_pledgeType) != null ? activeChar.getClan().getSubPledge(_pledgeType).getName() : null, _pledgeType, activeChar.getClan().getName()));
|
invitedPlayer.sendPacket(new AskJoinPledge(activeChar, _pledgeType, activeChar.getClan().getName()));
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -74,8 +74,7 @@ public final class RequestJoinPledge implements IClientIncomingPacket
|
|||||||
}
|
}
|
||||||
|
|
||||||
final String pledgeName = activeChar.getClan().getName();
|
final String pledgeName = activeChar.getClan().getName();
|
||||||
final String subPledgeName = (activeChar.getClan().getSubPledge(_pledgeType) != null ? activeChar.getClan().getSubPledge(_pledgeType).getName() : null);
|
target.sendPacket(new AskJoinPledge(activeChar, _pledgeType, pledgeName));
|
||||||
target.sendPacket(new AskJoinPledge(activeChar, subPledgeName, _pledgeType, pledgeName));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getPledgeType()
|
public int getPledgeType()
|
||||||
|
@ -53,6 +53,7 @@ public final class RequestPledgePower implements IClientIncomingPacket
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
player.sendPacket(new ManagePledgePower(client.getActiveChar().getClan(), _action, _rank));
|
||||||
if (_action == 2)
|
if (_action == 2)
|
||||||
{
|
{
|
||||||
if (player.isClanLeader())
|
if (player.isClanLeader())
|
||||||
@ -71,9 +72,5 @@ public final class RequestPledgePower implements IClientIncomingPacket
|
|||||||
player.getClan().setRankPrivs(_rank, _privs);
|
player.getClan().setRankPrivs(_rank, _privs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
player.sendPacket(new ManagePledgePower(client.getActiveChar().getClan(), _action, _rank));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -77,7 +77,7 @@ public final class RequestPledgeSetMemberPowerGrade implements IClientIncomingPa
|
|||||||
if (member.getPledgeType() == L2Clan.SUBUNIT_ACADEMY)
|
if (member.getPledgeType() == L2Clan.SUBUNIT_ACADEMY)
|
||||||
{
|
{
|
||||||
// also checked from client side
|
// also checked from client side
|
||||||
activeChar.sendMessage("You cannot change academy member grade");
|
activeChar.sendPacket(SystemMessageId.THAT_PRIVILEGE_CANNOT_BE_GRANTED_TO_A_CLAN_ACADEMY_MEMBER);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ public class RequestPledgeWaitingApplied implements IClientIncomingPacket
|
|||||||
public void run(L2GameClient client)
|
public void run(L2GameClient client)
|
||||||
{
|
{
|
||||||
final L2PcInstance activeChar = client.getActiveChar();
|
final L2PcInstance activeChar = client.getActiveChar();
|
||||||
if ((activeChar == null) || (activeChar.getClan() == null))
|
if ((activeChar == null) || (activeChar.getClan() != null))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -23,14 +23,12 @@ import com.l2jmobius.gameserver.network.OutgoingPackets;
|
|||||||
public final class AskJoinPledge implements IClientOutgoingPacket
|
public final class AskJoinPledge implements IClientOutgoingPacket
|
||||||
{
|
{
|
||||||
private final L2PcInstance _requestor;
|
private final L2PcInstance _requestor;
|
||||||
private final String _subPledgeName;
|
|
||||||
private final int _pledgeType;
|
private final int _pledgeType;
|
||||||
private final String _pledgeName;
|
private final String _pledgeName;
|
||||||
|
|
||||||
public AskJoinPledge(L2PcInstance requestor, String subPledgeName, int pledgeType, String pledgeName)
|
public AskJoinPledge(L2PcInstance requestor, int pledgeType, String pledgeName)
|
||||||
{
|
{
|
||||||
_requestor = requestor;
|
_requestor = requestor;
|
||||||
_subPledgeName = subPledgeName;
|
|
||||||
_pledgeType = pledgeType;
|
_pledgeType = pledgeType;
|
||||||
_pledgeName = pledgeName;
|
_pledgeName = pledgeName;
|
||||||
}
|
}
|
||||||
@ -39,14 +37,8 @@ public final class AskJoinPledge implements IClientOutgoingPacket
|
|||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
OutgoingPackets.ASK_JOIN_PLEDGE.writeId(packet);
|
OutgoingPackets.ASK_JOIN_PLEDGE.writeId(packet);
|
||||||
|
|
||||||
packet.writeD(_requestor.getObjectId());
|
packet.writeD(_requestor.getObjectId());
|
||||||
packet.writeS(_requestor.getName());
|
packet.writeS(_requestor.getName());
|
||||||
|
|
||||||
if (_subPledgeName != null)
|
|
||||||
{
|
|
||||||
packet.writeS(_pledgeType > 0 ? _subPledgeName : _pledgeName);
|
|
||||||
}
|
|
||||||
packet.writeS(_pledgeName);
|
packet.writeS(_pledgeName);
|
||||||
if (_pledgeType != 0)
|
if (_pledgeType != 0)
|
||||||
{
|
{
|
||||||
|
@ -36,16 +36,12 @@ public class ManagePledgePower implements IClientOutgoingPacket
|
|||||||
@Override
|
@Override
|
||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
// TODO: Verify this!
|
OutgoingPackets.MANAGE_PLEDGE_POWER.writeId(packet);
|
||||||
if (_action == 1)
|
|
||||||
{
|
packet.writeD(_rank);
|
||||||
OutgoingPackets.MANAGE_PLEDGE_POWER.writeId(packet);
|
packet.writeD(_action);
|
||||||
|
packet.writeD(_clan.getRankPrivs(_rank).getBitmask());
|
||||||
packet.writeD(_rank);
|
|
||||||
packet.writeD(_action);
|
return true;
|
||||||
packet.writeD(_clan.getRankPrivs(_rank).getBitmask());
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,15 +34,18 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
private final String _name;
|
private final String _name;
|
||||||
private final String _leaderName;
|
private final String _leaderName;
|
||||||
private final Collection<L2ClanMember> _members;
|
private final Collection<L2ClanMember> _members;
|
||||||
private int _pledgeType;
|
private final int _pledgeId;
|
||||||
|
private final boolean _isSubPledge;
|
||||||
|
|
||||||
private PledgeShowMemberListAll(L2Clan clan, SubPledge pledge)
|
private PledgeShowMemberListAll(L2Clan clan, SubPledge pledge, boolean isSubPledge)
|
||||||
{
|
{
|
||||||
_clan = clan;
|
_clan = clan;
|
||||||
_pledge = pledge;
|
_pledge = pledge;
|
||||||
|
_pledgeId = _pledge == null ? 0x00 : _pledge.getId();
|
||||||
_leaderName = pledge == null ? clan.getLeaderName() : CharNameTable.getInstance().getNameById(pledge.getLeaderId());
|
_leaderName = pledge == null ? clan.getLeaderName() : CharNameTable.getInstance().getNameById(pledge.getLeaderId());
|
||||||
_name = pledge == null ? clan.getName() : pledge.getName();
|
_name = pledge == null ? clan.getName() : pledge.getName();
|
||||||
_members = _clan.getMembers();
|
_members = _clan.getMembers();
|
||||||
|
_isSubPledge = isSubPledge;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void sendAllTo(L2PcInstance player)
|
public static void sendAllTo(L2PcInstance player)
|
||||||
@ -50,33 +53,32 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
final L2Clan clan = player.getClan();
|
final L2Clan clan = player.getClan();
|
||||||
if (clan != null)
|
if (clan != null)
|
||||||
{
|
{
|
||||||
player.sendPacket(new PledgeShowMemberListAll(clan, null));
|
|
||||||
for (SubPledge subPledge : clan.getAllSubPledges())
|
for (SubPledge subPledge : clan.getAllSubPledges())
|
||||||
{
|
{
|
||||||
player.sendPacket(new PledgeShowMemberListAll(clan, subPledge));
|
player.sendPacket(new PledgeShowMemberListAll(clan, subPledge, false));
|
||||||
}
|
}
|
||||||
|
player.sendPacket(new PledgeShowMemberListAll(clan, null, true));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean write(PacketWriter packet)
|
public boolean write(PacketWriter packet)
|
||||||
{
|
{
|
||||||
final int pledgeId = (_pledge == null ? 0x00 : _pledge.getId());
|
|
||||||
OutgoingPackets.PLEDGE_SHOW_MEMBER_LIST_ALL.writeId(packet);
|
OutgoingPackets.PLEDGE_SHOW_MEMBER_LIST_ALL.writeId(packet);
|
||||||
|
|
||||||
packet.writeD(_pledge == null ? 0 : 1);
|
packet.writeD(_isSubPledge ? 0x00 : 0x01);
|
||||||
packet.writeD(_clan.getId());
|
packet.writeD(_clan.getId());
|
||||||
packet.writeD(Config.SERVER_ID);
|
packet.writeD(Config.SERVER_ID);
|
||||||
packet.writeD(pledgeId);
|
packet.writeD(_pledgeId);
|
||||||
packet.writeS(_name);
|
packet.writeS(_name);
|
||||||
packet.writeS(_leaderName);
|
packet.writeS(_leaderName);
|
||||||
|
|
||||||
packet.writeD(_clan.getCrestId()); // crest id .. is used again
|
packet.writeD(_clan.getCrestId()); // crest id .. is used again
|
||||||
packet.writeD(_clan.getLevel());
|
packet.writeD(_clan.getLevel());
|
||||||
packet.writeD(_clan.getCastleId());
|
packet.writeD(_clan.getCastleId());
|
||||||
|
packet.writeD(0x00);
|
||||||
packet.writeD(_clan.getHideoutId());
|
packet.writeD(_clan.getHideoutId());
|
||||||
packet.writeD(_clan.getFortId());
|
packet.writeD(_clan.getFortId());
|
||||||
packet.writeD(0x00);
|
|
||||||
packet.writeD(_clan.getRank());
|
packet.writeD(_clan.getRank());
|
||||||
packet.writeD(_clan.getReputationScore());
|
packet.writeD(_clan.getReputationScore());
|
||||||
packet.writeD(0x00); // 0
|
packet.writeD(0x00); // 0
|
||||||
@ -86,11 +88,11 @@ public class PledgeShowMemberListAll implements IClientOutgoingPacket
|
|||||||
packet.writeD(_clan.getAllyCrestId());
|
packet.writeD(_clan.getAllyCrestId());
|
||||||
packet.writeD(_clan.isAtWar() ? 1 : 0); // new c3
|
packet.writeD(_clan.isAtWar() ? 1 : 0); // new c3
|
||||||
packet.writeD(0x00); // Territory castle ID
|
packet.writeD(0x00); // Territory castle ID
|
||||||
packet.writeD(_clan.getSubPledgeMembersCount(_pledgeType));
|
packet.writeD(_clan.getSubPledgeMembersCount(_pledgeId));
|
||||||
|
|
||||||
for (L2ClanMember m : _members)
|
for (L2ClanMember m : _members)
|
||||||
{
|
{
|
||||||
if (m.getPledgeType() != _pledgeType)
|
if (m.getPledgeType() != _pledgeId)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -82,14 +82,14 @@ public class ExPledgeBonusOpen implements IClientOutgoingPacket
|
|||||||
// Members online bonus
|
// Members online bonus
|
||||||
packet.writeD(highestMembersOnlineBonus.getRequiredAmount());
|
packet.writeD(highestMembersOnlineBonus.getRequiredAmount());
|
||||||
packet.writeD(clan.getMaxOnlineMembers());
|
packet.writeD(clan.getMaxOnlineMembers());
|
||||||
packet.writeD(highestMembersOnlineBonus.getSkillReward().getSkillId());
|
packet.writeD(membersOnlineBonus != null ? highestMembersOnlineBonus.getSkillReward().getSkillId() : 0x00);
|
||||||
packet.writeC(membersOnlineBonus != null ? membersOnlineBonus.getLevel() : 0x00);
|
packet.writeC(membersOnlineBonus != null ? membersOnlineBonus.getLevel() : 0x00);
|
||||||
packet.writeC(membersOnlineBonus != null ? 0x01 : 0x00);
|
packet.writeC(membersOnlineBonus != null ? 0x01 : 0x00);
|
||||||
|
|
||||||
// Hunting bonus
|
// Hunting bonus
|
||||||
packet.writeD(highestHuntingBonus.getRequiredAmount());
|
packet.writeD(highestHuntingBonus.getRequiredAmount());
|
||||||
packet.writeD(clan.getHuntingPoints());
|
packet.writeD(clan.getHuntingPoints());
|
||||||
packet.writeD(highestHuntingBonus.getItemReward().getId());
|
packet.writeD(huntingBonus != null ? highestHuntingBonus.getItemReward().getId() : 0x00);
|
||||||
packet.writeC(huntingBonus != null ? huntingBonus.getLevel() : 0x00);
|
packet.writeC(huntingBonus != null ? huntingBonus.getLevel() : 0x00);
|
||||||
packet.writeC(huntingBonus != null ? 0x01 : 0x00);
|
packet.writeC(huntingBonus != null ? 0x01 : 0x00);
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
Reference in New Issue
Block a user