I found a code for l2jserver (to see players inventory items and delete them) and I addapted it to L2jFrozen..So far so good, it's working perfectly but I cant figure out 1 line.
In-game i can use the commands and everything but I can't see the icons.I have installed Icon Parser for interlude but still..
Code:
/*
* Copyright (C) 2004-2014 L2J DataPack
*
* This file is part of L2J DataPack.
*
* L2J DataPack 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.
*
* L2J DataPack 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 <http://www.gnu.org/licenses/>.
*/
package com.l2jfrozen.gameserver.handler.admincommandhandlers;
import com.l2jfrozen.gameserver.cache.HtmCache;
import com.l2jfrozen.gameserver.handler.IAdminCommandHandler;
import com.l2jfrozen.gameserver.model.actor.instance.L2PcInstance;
import com.l2jfrozen.gameserver.model.L2Character;
import com.l2jfrozen.gameserver.model.actor.instance.L2ItemInstance;
import com.l2jfrozen.gameserver.network.serverpackets.NpcHtmlMessage;
import com.l2jfrozen.gameserver.util.Util;
/**
* This class handles following admin commands:
* <ul>
* <li>show_ivetory</li>
* <li>delete_item</li>
* </ul>
* @author Zealar
*/
public class AdminInventory implements IAdminCommandHandler
{
private static final String[] ADMIN_COMMANDS =
{
"admin_show_inventory",
"admin_delete_item"
};
@Override
public boolean useAdminCommand(String command, L2PcInstance activeChar)
{
if ((activeChar.getTarget() == null))
{
activeChar.sendMessage("Select a target");
return false;
}
if (!(activeChar.getTarget() instanceof L2Character))
{
activeChar.sendMessage("Target need to be player");
return false;
}
L2PcInstance player = activeChar.getTarget().getActingPlayer();
if (command.startsWith(ADMIN_COMMANDS[0]))
{
if (command.length() > ADMIN_COMMANDS[0].length())
{
String com = command.substring(ADMIN_COMMANDS[0].length() + 1);
if (Util.isAlphaNumeric(com))
{
showItemsPage(activeChar, Integer.parseInt(com));
}
}
else
{
showItemsPage(activeChar, 0);
}
}
else if (command.contains(ADMIN_COMMANDS[1]))
{
String val = command.substring(ADMIN_COMMANDS[1].length() + 1);
player.destroyItem("GM Destroy", Integer.parseInt(val), player.getInventory().getItemByObjectId(Integer.parseInt(val)).getCount(), null, true);
showItemsPage(activeChar, 0);
}
return true;
}
private void showItemsPage(L2PcInstance activeChar, int page)
{
final L2PcInstance target = activeChar.getTarget().getActingPlayer();
final L2ItemInstance[] items = target.getInventory().getItems();
int maxItemsPerPage = 10;
int maxPages = items.length / maxItemsPerPage;
if (items.length > (maxItemsPerPage * maxPages))
{
maxPages++;
}
if (page > maxPages)
{
page = maxPages;
}
int itemsStart = maxItemsPerPage * page;
int itemsEnd = items.length;
if ((itemsEnd - itemsStart) > maxItemsPerPage)
{
itemsEnd = itemsStart + maxItemsPerPage;
}
final NpcHtmlMessage adminReply = new NpcHtmlMessage(itemsEnd);
adminReply.setFile(HtmCache.getInstance().getHtm("data/html/admin/inventory.htm"));
adminReply.replace("%PLAYER_NAME%", target.getName());
StringBuilder sbPages = new StringBuilder();
for (int x = 0; x < maxPages; x++)
{
int pagenr = x + 1;
sbPages.append("<td><button value=\"" + String.valueOf(pagenr) + "\" action=\"bypass -h admin_show_inventory " + String.valueOf(x) + "\" width=20 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td>");
}
adminReply.replace("%PAGES%", sbPages.toString());
StringBuilder sbItems = new StringBuilder();
for (int i = itemsStart; i < itemsEnd; i++)
{
sbItems.append("<tr><td><img src=\"" + items[i].getItem().getIcon() + "\" width=32 height=32></td>");
sbItems.append("<td width=60>" + items[i].getName() + "</td>");
sbItems.append("<td><button action=\"bypass -h admin_delete_item " + String.valueOf(items[i].getObjectId()) + "\" width=16 height=16 back=\"L2UI_ct1.Button_DF_Delete\" fore=\"L2UI_ct1.Button_DF_Delete\">" + "</td></tr>");
}
adminReply.replace("%ITEMS%", sbItems.toString());
activeChar.sendPacket(adminReply);
}
@Override
public String[] getAdminCommandList()
{
return ADMIN_COMMANDS;
}
}
FIrst error is that i changed this : if (Util.isDigit(com)) to this : if (Util.isAlphaNumeric(com))
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
Great share!
for svn you can use the tortoisesvn: https://tortoisesvn.net/downloads.html
also you can help the GX-Ext if you join at discord server!
GX-Ext share the discord link with us!
After many great years of running this community, I’ve made the decision to sell this forum and pass it on to someone who can continue its legacy or take it in a new direction.
This gaming forum has been around for 20 years, serving thousands of users, discussions, and memories. It’s one of the oldest communities in its niche, with a loyal user base and strong SEO presence.
Why I’m Selling:
Running the forum has been a passion project, but after all these years:
My personal and professional priorities have changed.
I no longer have the time to actively manage or grow the community.
I’d like to see it evolve under new ownership rather than let it fade away.
What’s Included:
Full ownership of the forum domain and database
Forum software and user data
Branding, assets, and archives
Optional: Transition assistance for a smooth handover
💰 Starting Price: 1 BTC
I’m open to offers above this amount. Serious buyers only, please.
🔒 Secure Payment & Transfer Process:
To ensure a safe and smooth transaction for both parties:
Escrow Service will be used (such as Escrow.com or a trusted crypto escrow provider).
The buyer sends payment to the escrow service.
Once payment is confirmed, I will provide full access to the forum assets.
After the buyer confirms successful transfer and access, escrow releases the funds.
This protects both sides and ensures transparency throughout the process.
If you're passionate about gaming communities or looking to acquire a well-established platform, this is a unique opportunity.
📩 For more details or to make an offer, contact me directly via private message or email: admin@maxcheaters.com
Let’s find the right new owner to take this community into the future.
Question
criss22
Hello guys,
I found a code for l2jserver (to see players inventory items and delete them) and I addapted it to L2jFrozen..So far so good, it's working perfectly but I cant figure out 1 line.
In-game i can use the commands and everything but I can't see the icons.I have installed Icon Parser for interlude but still..
Code:
FIrst error is that i changed this : if (Util.isDigit(com)) to this : if (Util.isAlphaNumeric(com))
And i can't see the number of items in inventory
And the other one is here,

Edited by criss2214 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.