Gxz Posted February 20, 2010 Posted February 20, 2010 Hello guys so i need a admincommandhandler that will actually give items to all players in the server for example //giveallplayers 57 1000 to give to all players 1000 adena or smt like this "YES I SEARCHED IN FORUM AND I DIDNT FOUND ANYTHING LIKE THIS" reply only if you know pls
0 down Posted February 21, 2010 Posted February 21, 2010 Paste this else if (command.startsWith("admin_mass_create")) { try { String val = command.substring(17); StringTokenizer st = new StringTokenizer(val); if (st.countTokens()== 2) { String id = st.nextToken(); int idval = Integer.parseInt(id); String num = st.nextToken(); int numval = Integer.parseInt(num); massCreate(activeChar,idval,numval); } else if (st.countTokens()== 1) { String id = st.nextToken(); int idval = Integer.parseInt(id); massCreate(activeChar,idval,1); } } catch (StringIndexOutOfBoundsException e) { activeChar.sendMessage("Usage: //itemcreate <itemId> [amount]"); } catch (NumberFormatException nfe) { activeChar.sendMessage("Specify a valid number."); } } return true; } public String[] getAdminCommandList() { return ADMIN_COMMANDS; } private boolean checkLevel(int level) { return (level >= REQUIRED_LEVEL); } private void createItem(L2PcInstance activeChar, int id, int num) { if (num > 20) { L2Item template = ItemTable.getInstance().getTemplate(id); if (!template.isStackable()) { activeChar.sendMessage("This item does not stack - Creation aborted."); return; } } activeChar.getInventory().addItem("Admin", id, num, activeChar, null); ItemList il = new ItemList(activeChar, true); activeChar.sendPacket(il); activeChar.sendMessage("You have spawned " + num + " item(s) number " + id + " in your inventory."); } private void massCreate(L2PcInstance activeChar, int id, int num) { for (L2PcInstance _players : L2World.getInstance().getAllPlayers()) { if (_players == activeChar) continue; _players.getInventory().addItem("Admin", id, num, _players, null); ItemList il = new ItemList(_players, true); _players.sendPacket(il); } activeChar.sendMessage("You have spawned " + num + " item(s) number " + id + " in all chars inventory."); } }
0 Gxz Posted February 22, 2010 Author Posted February 22, 2010 Paste this else if (command.startsWith("admin_mass_create")) { try { String val = command.substring(17); StringTokenizer st = new StringTokenizer(val); if (st.countTokens()== 2) { String id = st.nextToken(); int idval = Integer.parseInt(id); String num = st.nextToken(); int numval = Integer.parseInt(num); massCreate(activeChar,idval,numval); } else if (st.countTokens()== 1) { String id = st.nextToken(); int idval = Integer.parseInt(id); massCreate(activeChar,idval,1); } } catch (StringIndexOutOfBoundsException e) { activeChar.sendMessage("Usage: //itemcreate <itemId> [amount]"); } catch (NumberFormatException nfe) { activeChar.sendMessage("Specify a valid number."); } } return true; } public String[] getAdminCommandList() { return ADMIN_COMMANDS; } private boolean checkLevel(int level) { return (level >= REQUIRED_LEVEL); } private void createItem(L2PcInstance activeChar, int id, int num) { if (num > 20) { L2Item template = ItemTable.getInstance().getTemplate(id); if (!template.isStackable()) { activeChar.sendMessage("This item does not stack - Creation aborted."); return; } } activeChar.getInventory().addItem("Admin", id, num, activeChar, null); ItemList il = new ItemList(activeChar, true); activeChar.sendPacket(il); activeChar.sendMessage("You have spawned " + num + " item(s) number " + id + " in your inventory."); } private void massCreate(L2PcInstance activeChar, int id, int num) { for (L2PcInstance _players : L2World.getInstance().getAllPlayers()) { if (_players == activeChar) continue; _players.getInventory().addItem("Admin", id, num, _players, null); ItemList il = new ItemList(_players, true); _players.sendPacket(il); } activeChar.sendMessage("You have spawned " + num + " item(s) number " + id + " in all chars inventory."); } } not working
0 Łighto™ Posted February 22, 2010 Posted February 22, 2010 Here you are /* * 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.handler.admincommandhandlers; import java.util.StringTokenizer; import net.sf.l2j.Config; import net.sf.l2j.gameserver.datatables.ItemTable; import net.sf.l2j.gameserver.handler.IAdminCommandHandler; import net.sf.l2j.gameserver.model.GMAudit; import net.sf.l2j.gameserver.model.L2World; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.serverpackets.ItemList; import net.sf.l2j.gameserver.templates.L2Item; /** * This class handles following admin commands: * - itemcreate = show menu * - create_item <id> [num] = creates num items with respective id, if num is not specified, assumes 1. * * @version $Revision: 1.2.2.2.2.3 $ $Date: 2005/04/11 10:06:06 $ */ public class AdminCreateItem implements IAdminCommandHandler { private static final String[] ADMIN_COMMANDS = { "admin_itemcreate", "admin_create_item", "admin_mass_create" }; private static final int REQUIRED_LEVEL = Config.GM_CREATE_ITEM; public boolean useAdminCommand(String command, L2PcInstance activeChar) { if (!Config.ALT_PRIVILEGES_ADMIN) { if (!(checkLevel(activeChar.getAccessLevel()) && activeChar.isGM())) return false; } GMAudit.auditGMAction(activeChar.getName(), command, (activeChar.getTarget() != null?activeChar.getTarget().getName():"no-target"), ""); if (command.equals("admin_itemcreate")) { AdminHelpPage.showHelpPage(activeChar, "itemcreation.htm"); } else if (command.startsWith("admin_create_item")) { try { String val = command.substring(17); StringTokenizer st = new StringTokenizer(val); if (st.countTokens()== 2) { String id = st.nextToken(); int idval = Integer.parseInt(id); String num = st.nextToken(); int numval = Integer.parseInt(num); createItem(activeChar,idval,numval); } else if (st.countTokens()== 1) { String id = st.nextToken(); int idval = Integer.parseInt(id); createItem(activeChar,idval,1); } } catch (StringIndexOutOfBoundsException e) { activeChar.sendMessage("Usage: //itemcreate <itemId> [amount]"); } catch (NumberFormatException nfe) { activeChar.sendMessage("Specify a valid number."); } AdminHelpPage.showHelpPage(activeChar, "itemcreation.htm"); } else if (command.startsWith("admin_mass_create")) { try { String val = command.substring(17); StringTokenizer st = new StringTokenizer(val); if (st.countTokens()== 2) { String id = st.nextToken(); int idval = Integer.parseInt(id); String num = st.nextToken(); int numval = Integer.parseInt(num); massCreate(activeChar,idval,numval); } else if (st.countTokens()== 1) { String id = st.nextToken(); int idval = Integer.parseInt(id); massCreate(activeChar,idval,1); } } catch (StringIndexOutOfBoundsException e) { activeChar.sendMessage("Usage: //itemcreate <itemId> [amount]"); } catch (NumberFormatException nfe) { activeChar.sendMessage("Specify a valid number."); } } return true; } /** * @param activeChar * @param idval * @param numval */ private void massCreate(L2PcInstance activeChar, int idval, int numval) { for (L2PcInstance _players : L2World.getInstance().getAllPlayers()) { if (_players == activeChar) continue; _players.getInventory().addItem("Admin", idval, numval, _players, null); ItemList il = new ItemList(_players, true); _players.sendPacket(il); activeChar.sendMessage("You have spawned " + numval + " item(s) number " + idval + " in all chars inventory."); } } public String[] getAdminCommandList() { return ADMIN_COMMANDS; } private boolean checkLevel(int level) { return (level >= REQUIRED_LEVEL); } private void createItem(L2PcInstance activeChar, int id, int num) { if (num > 20) { L2Item template = ItemTable.getInstance().getTemplate(id); if (!template.isStackable()) { activeChar.sendMessage("This item does not stack - Creation aborted."); return; } } activeChar.getInventory().addItem("Admin", id, num, activeChar, null); ItemList il = new ItemList(activeChar, true); activeChar.sendPacket(il); activeChar.sendMessage("You have spawned " + num + " item(s) number " + id + " in your inventory."); } } Just tested in l2j interlude. It works great.
0 Gxz Posted February 22, 2010 Author Posted February 22, 2010 Here you are /* * 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.handler.admincommandhandlers; import java.util.StringTokenizer; import net.sf.l2j.Config; import net.sf.l2j.gameserver.datatables.ItemTable; import net.sf.l2j.gameserver.handler.IAdminCommandHandler; import net.sf.l2j.gameserver.model.GMAudit; import net.sf.l2j.gameserver.model.L2World; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.serverpackets.ItemList; import net.sf.l2j.gameserver.templates.L2Item; /** * This class handles following admin commands: * - itemcreate = show menu * - create_item <id> [num] = creates num items with respective id, if num is not specified, assumes 1. * * @version $Revision: 1.2.2.2.2.3 $ $Date: 2005/04/11 10:06:06 $ */ public class AdminCreateItem implements IAdminCommandHandler { private static final String[] ADMIN_COMMANDS = { "admin_itemcreate", "admin_create_item", "admin_mass_create" }; private static final int REQUIRED_LEVEL = Config.GM_CREATE_ITEM; public boolean useAdminCommand(String command, L2PcInstance activeChar) { if (!Config.ALT_PRIVILEGES_ADMIN) { if (!(checkLevel(activeChar.getAccessLevel()) && activeChar.isGM())) return false; } GMAudit.auditGMAction(activeChar.getName(), command, (activeChar.getTarget() != null?activeChar.getTarget().getName():"no-target"), ""); if (command.equals("admin_itemcreate")) { AdminHelpPage.showHelpPage(activeChar, "itemcreation.htm"); } else if (command.startsWith("admin_create_item")) { try { String val = command.substring(17); StringTokenizer st = new StringTokenizer(val); if (st.countTokens()== 2) { String id = st.nextToken(); int idval = Integer.parseInt(id); String num = st.nextToken(); int numval = Integer.parseInt(num); createItem(activeChar,idval,numval); } else if (st.countTokens()== 1) { String id = st.nextToken(); int idval = Integer.parseInt(id); createItem(activeChar,idval,1); } } catch (StringIndexOutOfBoundsException e) { activeChar.sendMessage("Usage: //itemcreate <itemId> [amount]"); } catch (NumberFormatException nfe) { activeChar.sendMessage("Specify a valid number."); } AdminHelpPage.showHelpPage(activeChar, "itemcreation.htm"); } else if (command.startsWith("admin_mass_create")) { try { String val = command.substring(17); StringTokenizer st = new StringTokenizer(val); if (st.countTokens()== 2) { String id = st.nextToken(); int idval = Integer.parseInt(id); String num = st.nextToken(); int numval = Integer.parseInt(num); massCreate(activeChar,idval,numval); } else if (st.countTokens()== 1) { String id = st.nextToken(); int idval = Integer.parseInt(id); massCreate(activeChar,idval,1); } } catch (StringIndexOutOfBoundsException e) { activeChar.sendMessage("Usage: //itemcreate <itemId> [amount]"); } catch (NumberFormatException nfe) { activeChar.sendMessage("Specify a valid number."); } } return true; } /** * @param activeChar * @param idval * @param numval */ private void massCreate(L2PcInstance activeChar, int idval, int numval) { for (L2PcInstance _players : L2World.getInstance().getAllPlayers()) { if (_players == activeChar) continue; _players.getInventory().addItem("Admin", idval, numval, _players, null); ItemList il = new ItemList(_players, true); _players.sendPacket(il); activeChar.sendMessage("You have spawned " + numval + " item(s) number " + idval + " in all chars inventory."); } } public String[] getAdminCommandList() { return ADMIN_COMMANDS; } private boolean checkLevel(int level) { return (level >= REQUIRED_LEVEL); } private void createItem(L2PcInstance activeChar, int id, int num) { if (num > 20) { L2Item template = ItemTable.getInstance().getTemplate(id); if (!template.isStackable()) { activeChar.sendMessage("This item does not stack - Creation aborted."); return; } } activeChar.getInventory().addItem("Admin", id, num, activeChar, null); ItemList il = new ItemList(activeChar, true); activeChar.sendPacket(il); activeChar.sendMessage("You have spawned " + num + " item(s) number " + id + " in your inventory."); } } Just tested in l2j interlude. It works great. thx this works great but only one problem, it doesnt show to players that it has spawned in their inventory :( anyone know how to show them that they took an item?
0 Łighto™ Posted February 22, 2010 Posted February 22, 2010 No problem try ItemList il = new ItemList(_players, true); _players.sendPacket(il); _players.sendMessage("Admin spawned " + numval + " item(s) number " + idval + " in your inventory");
0 Gxz Posted February 22, 2010 Author Posted February 22, 2010 No problem try ItemList il = new ItemList(_players, true); _players.sendPacket(il); _players.sendMessage("Admin spawned " + numval + " item(s) number " + idval + " in your inventory"); thx works dude ;)
0 Belzebul Posted February 22, 2010 Posted February 22, 2010 i was just curious to see that and try to add it in my pack (infinity last rev) but im getting error in this line : ItemList il = new ItemList(_players, true); could anyone helps me? thats the error @ console [javac] import net.sf.l2j.gameserver.serverpackets.ItemList; [javac] ^ [javac] C:\Eclipse Workspace\l2jinfinity\L2J-Infinity_IL_GS\java\net\sf\l2j\gameserver\handler\admincommandhandlers\AdminCreateItem.java:142: cannot find symbol [javac] symbol : class ItemList [javac] location: class net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCreateItem [javac] ItemList il = new ItemList(_players, true); [javac] ^ [javac] C:\Eclipse Workspace\l2jinfinity\L2J-Infinity_IL_GS\java\net\sf\l2j\gameserver\handler\admincommandhandlers\AdminCreateItem.java:142: cannot find symbol [javac] symbol : class ItemList [javac] location: class net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCreateItem [javac] ItemList il = new ItemList(_players, true); [javac] ^ [javac] C:\Eclipse Workspace\l2jinfinity\L2J-Infinity_IL_GS\java\net\sf\l2j\gameserver\handler\admincommandhandlers\AdminCreateItem.java:175: cannot find symbol [javac] symbol : class ItemList [javac] location: class net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCreateItem [javac] ItemList il = new ItemList(activeChar, true); [javac] ^ [javac] C:\Eclipse Workspace\l2jinfinity\L2J-Infinity_IL_GS\java\net\sf\l2j\gameserver\handler\admincommandhandlers\AdminCreateItem.java:175: cannot find symbol [javac] symbol : class ItemList [javac] location: class net.sf.l2j.gameserver.handler.admincommandhandlers.AdminCreateItem [javac] ItemList il = new ItemList(activeChar, true); [javac] ^ [javac] Note: C:\Eclipse Workspace\l2jinfinity\L2J-Infinity_IL_GS\java\net\sf\l2j\gameserver\GeoEngine.java uses or overrides a deprecated API. [javac] Note: Recompile with -Xlint:deprecation for details. [javac] 5 errors
0 down Posted February 22, 2010 Posted February 22, 2010 I told u it has to work just this guy doesnt know how to import it...
0 Matim Posted February 22, 2010 Posted February 22, 2010 @Rozdex open this class and check import patch for this class ItemList
Question
Gxz
Hello guys so i need a admincommandhandler that will actually give items to all players in the server for example
//giveallplayers 57 1000
to give to all players 1000 adena or smt like this "YES I SEARCHED IN FORUM AND I DIDNT FOUND ANYTHING LIKE THIS"
reply only if you know pls
24 answers to this question
Recommended Posts