Там я уже заправил в принципе. Вот пример кода
Код:
/*
* 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 2, 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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* http://www.gnu.org/copyleft/gpl.html
*/
package net.sf.l2j.gameserver.communitybbs;
import net.sf.l2j.Config;
import net.sf.l2j.gameserver.communitybbs.tables.AddFav;
import net.sf.l2j.gameserver.communitybbs.tables.Clan;
import net.sf.l2j.gameserver.communitybbs.tables.Fav;
import net.sf.l2j.gameserver.communitybbs.tables.Fr;
import net.sf.l2j.gameserver.communitybbs.tables.Home;
import net.sf.l2j.gameserver.communitybbs.tables.Loc;
import net.sf.l2j.gameserver.communitybbs.tables.Mail;
import net.sf.l2j.gameserver.communitybbs.tables.Memo;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.L2GameClient;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.serverpackets.ShowBoard;
import net.sf.l2j.gameserver.serverpackets.SystemMessage;
public class CommunityBoard
{
private static CommunityBoard _instance;
public CommunityBoard()
{
}
public static CommunityBoard getInstance()
{
if (_instance == null)
{
_instance = new CommunityBoard();
}
return _instance;
}
public void handleCommands(L2GameClient client, String command)
{
L2PcInstance activeChar = client.getActiveChar();
if(activeChar == null)
return;
if(Config.COMMUNITY_TYPE.equals("full"))
{
if (command.startsWith("_bbshome"))
{
Home.getInstance().parsecmd(command,activeChar);
}
else if(command.startsWith("_bbsgetfav"))
{
Fav.getInstance().parsecmd(command,activeChar);
}
else if(command.startsWith("_bbsloc"))
{
Loc.getInstance().parsecmd(command,activeChar);
}
else if(command.startsWith("_bbsclan"))
{
Clan.getInstance().parsecmd(command,activeChar);
}
else if(command.startsWith("_bbsmemo"))
{
Memo.getInstance().parsecmd(command,activeChar);
}
else if(command.startsWith("_bbsmail"))
{
Mail.getInstance().parsecmd(command,activeChar);
}
else if(command.startsWith("_bbsfriends"))
{
Fr.getInstance().parsecmd(command,activeChar);
}
else if(command.startsWith("_bbs_add_fav"))
{
AddFav.getInstance().parsecmd(command,activeChar);
}
else
{
ShowBoard sb = new ShowBoard("<html><body><br><br><center>the command: "+command+" is not implemented yet</center><br><br></body></html>","101");
activeChar.sendPacket(sb);
activeChar.sendPacket(new ShowBoard(null,"102"));
activeChar.sendPacket(new ShowBoard(null,"103"));
}
}
else if(Config.COMMUNITY_TYPE.equals("old"))
{
Loc.getInstance().parsecmd(command,activeChar);
}
else
{
activeChar.sendPacket(new SystemMessage(SystemMessageId.CB_OFFLINE));
}
}
/**
* @param client
* @param url
* @param arg1
* @param arg2
* @param arg3
* @param arg4
* @param arg5
*/
public void handleWriteCommands(L2GameClient client, String url, String arg1, String arg2, String arg3, String arg4, String arg5)
{
L2PcInstance activeChar = client.getActiveChar();
if(activeChar == null)
return;
if (Config.COMMUNITY_TYPE.equals("full"))
{
if (url.equals("Topic"))
{
Loc.getInstance().parsewrite(arg1, arg2, arg3, arg4, arg5, activeChar);
} else if (url.equals("Post"))
{
Loc.getInstance().parsewrite(arg1, arg2, arg3, arg4, arg5, activeChar);
} else if (url.equals("Region"))
{
Loc.getInstance().parsewrite(arg1, arg2, arg3, arg4, arg5, activeChar);
} else
{
ShowBoard sb = new ShowBoard("<html><body><br><br><center>the command: " + url + " is not implemented yet</center><br><br></body></html>", "101");
activeChar.sendPacket(sb);
activeChar.sendPacket(new ShowBoard(null, "102"));
activeChar.sendPacket(new ShowBoard(null, "103"));
}
} else if (Config.COMMUNITY_TYPE.equals("old"))
{
Loc.getInstance().parsewrite(arg1, arg2, arg3, arg4, arg5, activeChar);
} else
{
ShowBoard sb = new ShowBoard("<html><body><br><br><center>The Community board is currently disable</center><br><br></body></html>", "101");
activeChar.sendPacket(sb);
activeChar.sendPacket(new ShowBoard(null, "102"));
activeChar.sendPacket(new ShowBoard(null, "103"));
}
}
}