Clan packet rework.
Contributed by rocknowx.
This commit is contained in:
@@ -163,7 +163,7 @@ public class EnterWorld extends L2GameClientPacket
|
||||
}
|
||||
else
|
||||
{
|
||||
int instanceId = InstanceManager.getInstance().getPlayerInstance(activeChar.getObjectId());
|
||||
final int instanceId = InstanceManager.getInstance().getPlayerInstance(activeChar.getObjectId());
|
||||
if (instanceId > 0)
|
||||
{
|
||||
InstanceManager.getInstance().getInstance(instanceId).removePlayer(activeChar.getObjectId());
|
||||
@@ -277,9 +277,8 @@ public class EnterWorld extends L2GameClientPacket
|
||||
if (activeChar.getClan() != null)
|
||||
{
|
||||
final L2Clan clan = activeChar.getClan();
|
||||
clan.broadcastToOnlineMembers(new PledgeShowMemberListUpdate(activeChar));
|
||||
activeChar.sendPacket(new PledgeShowMemberListUpdate(activeChar));
|
||||
sendPacket(new PledgeShowMemberListAll(clan));
|
||||
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
||||
activeChar.sendPacket(new PledgeSkillList(clan));
|
||||
}
|
||||
else
|
||||
@@ -727,6 +726,7 @@ public class EnterWorld extends L2GameClientPacket
|
||||
msg.addString(activeChar.getName());
|
||||
clan.broadcastToOtherOnlineMembers(msg, activeChar);
|
||||
clan.broadcastToOtherOnlineMembers(new PledgeShowMemberListUpdate(activeChar), activeChar);
|
||||
clan.broadcastToOnlineMembers(new ExPledgeCount(clan));
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -22,7 +22,6 @@ import com.l2jserver.gameserver.model.L2Clan;
|
||||
import com.l2jserver.gameserver.model.L2ClanMember;
|
||||
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
|
||||
import com.l2jserver.gameserver.network.serverpackets.PledgeReceiveMemberInfo;
|
||||
import com.l2jserver.gameserver.network.serverpackets.PledgeSkillList;
|
||||
|
||||
/**
|
||||
* Format: (ch) dS
|
||||
@@ -64,8 +63,6 @@ public final class RequestPledgeMemberInfo extends L2GameClientPacket
|
||||
return;
|
||||
}
|
||||
activeChar.sendPacket(new PledgeReceiveMemberInfo(member));
|
||||
activeChar.sendPacket(new PledgeSkillList(clan));
|
||||
activeChar.broadcastUserInfo();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -18,7 +18,6 @@
|
||||
*/
|
||||
package com.l2jserver.gameserver.network.clientpackets;
|
||||
|
||||
import com.l2jserver.gameserver.model.ClanPrivilege;
|
||||
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
|
||||
import com.l2jserver.gameserver.network.serverpackets.ManagePledgePower;
|
||||
|
||||
@@ -49,33 +48,20 @@ public final class RequestPledgePower extends L2GameClientPacket
|
||||
protected void runImpl()
|
||||
{
|
||||
final L2PcInstance player = getClient().getActiveChar();
|
||||
if (player == null)
|
||||
if ((player == null) || !player.isClanLeader())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (_action == 2)
|
||||
{
|
||||
if (player.isClanLeader())
|
||||
{
|
||||
if (_rank == 9)
|
||||
{
|
||||
// The rights below cannot be bestowed upon Academy members:
|
||||
// Join a clan or be dismissed
|
||||
// Title management, crest management, master management, level management,
|
||||
// bulletin board administration
|
||||
// Clan war, right to dismiss, set functions
|
||||
// Auction, manage taxes, attack/defend registration, mercenary management
|
||||
// => Leaves only CP_CL_VIEW_WAREHOUSE, CP_CH_OPEN_DOOR, CP_CS_OPEN_DOOR?
|
||||
_privs &= ClanPrivilege.CL_VIEW_WAREHOUSE.getBitmask() | ClanPrivilege.CH_OPEN_DOOR.getBitmask() | ClanPrivilege.CS_OPEN_DOOR.getBitmask();
|
||||
}
|
||||
player.getClan().setRankPrivs(_rank, _privs);
|
||||
}
|
||||
player.getClan().setRankPrivs(_rank, _privs);
|
||||
}
|
||||
else
|
||||
{
|
||||
player.sendPacket(new ManagePledgePower(getClient().getActiveChar().getClan(), _action, _rank));
|
||||
player.getClan().updateRankPrivs(_rank, player.getClan().getRankPrivs(_rank).getBitmask());
|
||||
}
|
||||
player.sendPacket(new ManagePledgePower(player.getClan(), _action, _rank));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -22,6 +22,8 @@ import com.l2jserver.gameserver.model.ClanPrivilege;
|
||||
import com.l2jserver.gameserver.model.L2Clan;
|
||||
import com.l2jserver.gameserver.model.L2ClanMember;
|
||||
import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
|
||||
import com.l2jserver.gameserver.network.serverpackets.PledgeReceiveMemberInfo;
|
||||
import com.l2jserver.gameserver.network.serverpackets.PledgeReceiveUpdatePower;
|
||||
|
||||
/**
|
||||
* Format: (ch) Sd
|
||||
@@ -79,7 +81,8 @@ public final class RequestPledgeSetMemberPowerGrade extends L2GameClientPacket
|
||||
}
|
||||
|
||||
member.setPowerGrade(_powerGrade);
|
||||
clan.broadcastClanStatus();
|
||||
member.getPlayerInstance().sendPacket(new PledgeReceiveUpdatePower(member.getClan().getRankPrivs(_powerGrade).getBitmask()));
|
||||
clan.broadcastToOnlineMembers(new PledgeReceiveMemberInfo(member));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user