Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Index: java/com/l2jserver/gameserver/model/actor/instance/L2RequestsInstance.java
- ===================================================================
- --- java/com/l2jserver/gameserver/model/actor/instance/L2RequestsInstance.java (revision 0)
- +++ java/com/l2jserver/gameserver/model/actor/instance/L2RequestsInstance.java (revision 0)
- @@ -0,0 +1,109 @@
- +package com.l2jserver.gameserver.model.actor.instance;
- +
- +import java.sql.Connection;
- +import java.sql.PreparedStatement;
- +import java.sql.ResultSet;
- +
- +import javolution.text.TextBuilder;
- +import javolution.util.FastList;
- +
- +import com.l2jserver.L2DatabaseFactory;
- +import com.l2jserver.gameserver.model.actor.L2Npc;
- +import com.l2jserver.gameserver.model.actor.templates.L2NpcTemplate;
- +import com.l2jserver.gameserver.network.serverpackets.NpcHtmlMessage;
- +
- +/**
- + * @author Marwan
- + * @version 1.0
- + */
- +public class L2RequestsInstance extends L2Npc
- +{
- + public L2RequestsInstance(int objectId, L2NpcTemplate template)
- + {
- + super(objectId, template);
- + }
- +
- + public static FastList<String> reqs = new FastList<String>();
- +
- + @Override
- + public void onBypassFeedback(L2PcInstance player, String command)
- + {
- + if ((player == null) || (player.getLastFolkNPC() == null) || (player.getLastFolkNPC().getObjectId() != this.getObjectId()))
- + {
- + return;
- + }
- + if (command.startsWith("viewlist"))
- + {
- + StringBuilder sb = new StringBuilder();
- + sb.append("<html><title>Requester NPC</title><body>");
- + sb.append("<br><table width=300><tr><td>Title</td><td width=30>Info</td><td>Type</td></tr><br></font>");
- + Connection con = null;
- + try
- + {
- + con = L2DatabaseFactory.getInstance().getConnection();
- + PreparedStatement statement = con.prepareStatement("SELECT * FROM requests ORDER BY id DESC");
- +
- + ResultSet result = statement.executeQuery();
- +
- + String title;
- + String desc;
- + String type;
- + int id;
- + int counter = 0;
- + while (result.next())
- + {
- + if (!reqs.contains(result.getString(2)))
- + {
- + reqs.add(result.getString(2));
- + }
- + title = result.getString(3);
- + type = result.getString(4);
- + desc = result.getString(5);
- + id = result.getInt(1);
- + sb.append("<tr><td>" + title + "</td><td><a action=\"bypass -h showreq " + id + "\" <font color=\"FFFF00\">Info</font></a></td><td>" + type + "</td></tr>");
- + }
- + statement.close();
- + }
- + catch (Exception e)
- + {
- + player.sendMessage(e.getMessage());
- + }
- + sb.append("</body></html>");
- + NpcHtmlMessage msg = new NpcHtmlMessage(this.getObjectId());
- + msg.setHtml(sb.toString());
- + player.sendPacket(msg);
- +
- + }
- + else if (command.startsWith("post"))
- + {
- + StringBuilder sb = new StringBuilder();
- + sb.append("<html noscrollbar><title>Requester NPC</title><body>");
- + sb.append("Title:<edit var=\"title\" width=\"120\" height=\"15\"><br>");
- + sb.append("Info: <multiedit var=\"info\" width=\"150\" height=\"120\"><br>");
- + sb.append("Type:<combobox var=\"ty\" list=Request;Requester width=\"100\" height=\"150\"><br>");
- + sb.append("<br><br><center><button value=\"Post\" action=\"bypass -h addreq $title $ty $info\" width=160 height=32 back=\"L2UI_CT1.Button_DF_Down\" fore=\"L2UI_ct1.button_df\"></center>");
- + sb.append("</body></html>");
- + NpcHtmlMessage msg = new NpcHtmlMessage(this.getObjectId());
- + msg.setHtml(sb.toString());
- + player.sendPacket(msg);
- +
- + }
- + }
- +
- + @Override
- + public void showChatWindow(L2PcInstance player, int val)
- + {
- + TextBuilder tb = new TextBuilder();
- + tb.append("<html><title>Requester NPC</title><body><center><br>");
- + tb.append("Hello <font color=\"LEVEL\">" + player.getName() + "</font><br>Here you can view all requests<br> and post too.");
- + tb.append("<br><img src=\"l2ui.squaregray\" width=\"270\" height=\"1\"><br>");
- + tb.append("<button value=\"Request List\" action=\"bypass -h npc_%objectId%_viewlist\" width=160 height=32 back=\"L2UI_CT1.Button_DF_Down\" fore=\"L2UI_ct1.button_df\">");
- + tb.append("<button value=\"Post\" action=\"bypass -h npc_%objectId%_post\" width=160 height=32 back=\"L2UI_CT1.Button_DF_Down\" fore=\"L2UI_ct1.button_df\">");
- +
- + NpcHtmlMessage msg = new NpcHtmlMessage(this.getObjectId());
- + msg.setHtml(tb.toString());
- + msg.replace("%objectId%", String.valueOf(this.getObjectId()));
- +
- + player.sendPacket(msg);
- + }
- +}
- \ No newline at end of file
- Index: java/com/l2jserver/gameserver/network/clientpackets/RequestBypassToServer.java
- ===================================================================
- --- java/com/l2jserver/gameserver/network/clientpackets/RequestBypassToServer.java (revision 5667)
- +++ java/com/l2jserver/gameserver/network/clientpackets/RequestBypassToServer.java (working copy)
- @@ -14,27 +14,37 @@
- */
- package com.l2jserver.gameserver.network.clientpackets;
- +import java.sql.Connection;
- +import java.sql.PreparedStatement;
- +import java.sql.ResultSet;
- import java.util.List;
- import java.util.StringTokenizer;
- import java.util.logging.Level;
- import javolution.util.FastList;
- import com.l2jserver.Config;
- +import com.l2jserver.L2DatabaseFactory;
- import com.l2jserver.gameserver.ai.CtrlIntention;
- import com.l2jserver.gameserver.communitybbs.CommunityBoard;
- import com.l2jserver.gameserver.datatables.AdminTable;
- import com.l2jserver.gameserver.handler.AdminCommandHandler;
- import com.l2jserver.gameserver.handler.BypassHandler;
- import com.l2jserver.gameserver.handler.IAdminCommandHandler;
- import com.l2jserver.gameserver.handler.IBypassHandler;
- import com.l2jserver.gameserver.model.L2CharPosition;
- import com.l2jserver.gameserver.model.L2Object;
- import com.l2jserver.gameserver.model.L2World;
- import com.l2jserver.gameserver.model.actor.L2Npc;
- import com.l2jserver.gameserver.model.actor.instance.L2MerchantSummonInstance;
- import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
- import com.l2jserver.gameserver.model.entity.Hero;
- import com.l2jserver.gameserver.model.items.instance.L2ItemInstance;
- import com.l2jserver.gameserver.network.SystemMessageId;
- import com.l2jserver.gameserver.network.communityserver.CommunityServerThread;
- @@ -85,7 +97,90 @@
- activeChar.logout();
- return;
- }
- -
- + if (_command.startsWith("showreq"))
- + {
- + StringTokenizer st = new StringTokenizer(_command);
- +
- + st.nextToken();
- +
- + String id = st.nextToken();
- + Connection con = null;
- + StringBuilder sb = new StringBuilder();
- + sb.append("<html><title>Requester NPC</title><body>");
- +
- + try
- + {
- +
- + con = L2DatabaseFactory.getInstance().getConnection();
- +
- + PreparedStatement statement = con.prepareStatement("SELECT * FROM requests where `id`=?");
- +
- + statement.setString(1, id);
- + statement.execute();
- + ResultSet result = statement.executeQuery();
- + String info;
- + String title;
- + String name;
- + String type;
- + while (result.next())
- + {
- + info = result.getString(5);
- + title = result.getString(3);
- + name = result.getString(2);
- + type = result.getString(4);
- + sb.append("<br><br><br><center>Character Name : " + name + "</center>");
- + sb.append("<br><br><center>Request Title : " + title + "</center>");
- + sb.append("<br><br><center>Reaquest Info : " + info + "</center>");
- + sb.append("<br><br><center>Request Type : " + type + "</center>");
- + sb.append("</body></html>");
- + }
- + statement.close();
- + }
- + catch (Exception e)
- + {
- + e.printStackTrace();
- + _log.log(Level.SEVERE, e.getMessage(), e);
- + }
- + NpcHtmlMessage msg = new NpcHtmlMessage(6);
- + msg.setHtml(sb.toString());
- + activeChar.sendPacket(msg);
- + }
- + if (_command.startsWith("addreq"))
- + {
- +
- + StringTokenizer st = new StringTokenizer(_command);
- +
- + st.nextToken();
- +
- + String title = st.nextToken();
- + String desc = " ";
- + String type = st.nextToken();
- + while (st.hasMoreTokens())
- + {
- + desc = desc + " " + st.nextToken() + " ";
- + }
- + Connection con = null;
- + try
- + {
- +
- + con = L2DatabaseFactory.getInstance().getConnection();
- +
- + PreparedStatement statement = con.prepareStatement("INSERT INTO requests VALUES ('0',?,?,?,?)");
- +
- + statement.setString(1, activeChar.getName());
- + statement.setString(2, title);
- + statement.setString(3, type);
- + statement.setString(4, desc);
- + statement.execute();
- + statement.close();
- +
- + activeChar.sendMessage("Succesfull");
- +
- + }
- + catch (Exception e){}
- + }
- CREATE TABLE `requests` (
- `id` int AUTO_INCREMENT,
- `name` text,
- `title` text,
- `type` text,
- `desc` text,
- PRIMARY KEY (`id`)
- ) ENGINE=InnoDB AUTO_INCREMENT=43 DEFAULT CHARSET=latin1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement