/* * This program is free software: you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later * version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more * details. * * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ package com.l2jserver.gameserver.network.serverpackets; import com.l2jserver.gameserver.datatables.ClanTable; import com.l2jserver.gameserver.model.L2Clan; import com.l2jserver.gameserver.model.actor.instance.L2PcInstance; import com.l2jserver.gameserver.network.SystemMessageId; /** */ public class AllyInfo extends L2GameServerPacket { //private static Logger _log = Logger.getLogger(AllyInfo.class.getName()); private static final String _S__B5_ALLYINFO = "[S] b5 AllyInfo"; private static L2PcInstance _cha ; public AllyInfo(L2PcInstance cha) { _cha = cha; } @Override protected final void writeImpl() { L2PcInstance activeChar = getClient().getActiveChar(); if (activeChar == null) return; if (activeChar.getAllyId() == 0) { _cha.sendPacket(new SystemMessage(SystemMessageId.NO_CURRENT_ALLIANCES)); return; } //============ SystemMessage sm = new SystemMessage(SystemMessageId.ALLIANCE_INFO_HEAD); _cha.sendPacket(sm); //============ sm = new SystemMessage(SystemMessageId.ALLIANCE_NAME_S1); sm.addString(_cha.getClan().getAllyName()); _cha.sendPacket(sm); int online = 0; int count = 0; int clancount = 0; for (L2Clan clan : ClanTable.getInstance().getClans()){ if (clan.getAllyId() == _cha.getAllyId()){ clancount++; online+=clan.getOnlineMembers(0).length; count+=clan.getMembers().length; } } //Connection sm = new SystemMessage(SystemMessageId.CONNECTION_S1_TOTAL_S2); sm.addString(""+online); sm.addString(""+count); _cha.sendPacket(sm); L2Clan leaderclan = ClanTable.getInstance().getClan(_cha.getAllyId()); sm = new SystemMessage(SystemMessageId.ALLIANCE_LEADER_S2_OF_S1); sm.addString(leaderclan.getName()); sm.addString(leaderclan.getLeaderName()); _cha.sendPacket(sm); //clan count sm = new SystemMessage(SystemMessageId.ALLIANCE_CLAN_TOTAL_S1); sm.addString(""+clancount); _cha.sendPacket(sm); //clan information sm = new SystemMessage(SystemMessageId.CLAN_INFO_HEAD); _cha.sendPacket(sm); for (L2Clan clan : ClanTable.getInstance().getClans()){ if (clan.getAllyId() == _cha.getAllyId()){ //clan name sm = new SystemMessage(SystemMessageId.CLAN_INFO_NAME); sm.addString(clan.getName()); _cha.sendPacket(sm); //clan leader name sm = new SystemMessage(SystemMessageId.CLAN_INFO_LEADER); sm.addString(clan.getLeaderName()); _cha.sendPacket(sm); //clan level sm = new SystemMessage(SystemMessageId.CLAN_INFO_LEVEL); sm.addNumber(clan.getLevel()); _cha.sendPacket(sm); //--------- sm = new SystemMessage(SystemMessageId.CLAN_INFO_SEPARATOR); _cha.sendPacket(sm); } } //========================= sm = new SystemMessage(SystemMessageId.CLAN_INFO_FOOT); _cha.sendPacket(sm); } /* (non-Javadoc) * @see com.l2jserver.gameserver.serverpackets.ServerBasePacket#getType() */ @Override public String getType() { return _S__B5_ALLYINFO; } }