StringTokenizer st = new StringTokenizer(command, " ");
command = st.nextToken(); // Get actual command
// Get fort
Fort fort = null;
if(st.hasMoreTokens())
{
fort = FortManager.getInstance().getFort(st.nextToken());
}
// Get fort
// String val = "";
//
// if(st.hasMoreTokens())
// {
// val = st.nextToken();
// }
//
// val = null;
// No fort specified
if(fort == null || fort.getFortId() < 0)
{
showFortSelectPage(activeChar);
}
else
{
L2Object target = activeChar.getTarget();
L2PcInstance player = null;
if(target instanceof L2PcInstance)
{
player = (L2PcInstance) target;
}
target = null;
if(command.equalsIgnoreCase("admin_add_fortattacker"))
{
if(player == null)
{
activeChar.sendPacket(new SystemMessage(SystemMessageId.TARGET_IS_INCORRECT));
}
else
{
fort.getSiege().registerAttacker(player, true);
}
}
else if(command.equalsIgnoreCase("admin_add_fortdefender"))
{
if(player == null)
{
activeChar.sendPacket(new SystemMessage(SystemMessageId.TARGET_IS_INCORRECT));
}
else
{
fort.getSiege().registerDefender(player, true);
}
}
// FIXME
// else if (command.equalsIgnoreCase("admin_add_guard"))
// {
// try
// {
// int npcId = Integer.parseInt(val);
// fort.getSiege().getFortSiegeGuardManager().addFortSiegeGuard(activeChar, npcId);
// }
// catch (Exception e)
// {
// activeChar.sendMessage("Usage: //add_guard npcId");
// }
// }
else if(command.equalsIgnoreCase("admin_clear_fortsiege_list"))
{
fort.getSiege().clearSiegeClan();
}
else if(command.equalsIgnoreCase("admin_endfortsiege"))
{
fort.getSiege().endSiege();
}
else if(command.equalsIgnoreCase("admin_list_fortsiege_clans"))
{
fort.getSiege().listRegisterClan(activeChar);
return true;
}
else if(command.equalsIgnoreCase("admin_move_fortdefenders"))
{
activeChar.sendMessage("Not implemented yet.");
}
else if(command.equalsIgnoreCase("admin_setfort"))
{
if(player == null || player.getClan() == null)
{
activeChar.sendPacket(new SystemMessage(SystemMessageId.TARGET_IS_INCORRECT));
}
else
{
fort.setOwner(player.getClan());
}
}
else if(command.equalsIgnoreCase("admin_removefort"))
{
L2Clan clan = ClanTable.getInstance().getClan(fort.getOwnerId());
if(clan != null)
{
fort.removeOwner(clan);
}
else
{
activeChar.sendMessage("Unable to remove fort");
}
clan = null;
}
else if(command.equalsIgnoreCase("admin_spawn_fortdoors"))
{
fort.spawnDoor();
}
else if(command.equalsIgnoreCase("admin_startfortsiege"))
{
fort.getSiege().startSiege();
}
showFortSiegePage(activeChar, fort.getName());
player = null;
}
return true;