Hi all, I have a html file that I have set in npc without a directory of this error, can anyone help me? Why does not a direct HTML work in here? No Directory.
package net.sf.l2j.gameserver.model.actor.instance;
import java.util.StringTokenizer;
import net.sf.l2j.gameserver.data.xml.AugmentationData;
import net.sf.l2j.gameserver.model.L2Augmentation;
import net.sf.l2j.gameserver.model.actor.template.NpcTemplate;
import net.sf.l2j.gameserver.model.item.instance.ItemInstance;
import net.sf.l2j.gameserver.model.item.type.WeaponType;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.network.serverpackets.ActionFailed;
import net.sf.l2j.gameserver.network.serverpackets.ExShowScreenMessage;
import net.sf.l2j.gameserver.network.serverpackets.ExShowScreenMessage.SMPOS;
import net.sf.l2j.gameserver.network.serverpackets.ExVariationCancelResult;
import net.sf.l2j.gameserver.network.serverpackets.ExVariationResult;
import net.sf.l2j.gameserver.network.serverpackets.InventoryUpdate;
import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage;
import net.sf.l2j.gameserver.network.serverpackets.SkillList;
import net.sf.l2j.gameserver.network.serverpackets.StatusUpdate;
import net.sf.l2j.gameserver.network.serverpackets.SystemMessage;
/**
* @author AbsolutePower
*
*/
public class FastAug extends Folk
{
public FastAug(int objectId, NpcTemplate template)
{
super(objectId, template);
}
@Override
public void onBypassFeedback(Player player, String command)
{
if (player == null)
return;
final StringTokenizer st = new StringTokenizer(command, " ");
final String currentcommand = st.nextToken();
final String letsSliptIt = currentcommand;
final String[] nowTheId = letsSliptIt.split("-");
final String OurSplititCommand = nowTheId[0];
final String FinallyWeHaveObjectId = nowTheId[1];
if(OurSplititCommand.startsWith("showremlist"))
showListWindowForRemove(player);
else if(OurSplititCommand.startsWith("showauglist"))
showListWindow(player);
else if(OurSplititCommand.startsWith("tryremove"))
{
final ItemInstance item = player.getInventory().getItemByObjectId(Integer.parseInt(FinallyWeHaveObjectId));
if (item == null)
return;
if (item.isEquipped())
{
player.disarmWeapons();
player.broadcastUserInfo();
}
item.removeAugmentation();
player.sendPacket(new ExVariationCancelResult(1));
InventoryUpdate iu = new InventoryUpdate();
iu.addModifiedItem(item);
player.sendPacket(iu);
player.sendPacket(new SkillList());
player.sendPacket(SystemMessage.getSystemMessage(SystemMessageId.AUGMENTATION_HAS_BEEN_SUCCESSFULLY_REMOVED_FROM_YOUR_S1).addItemName(item));
showListWindowForRemove(player);
player.sendPacket(ActionFailed.STATIC_PACKET);
}
else if(OurSplititCommand.startsWith("tryaug"))
{
if (player.getInventory().getInventoryItemCount(57, 0) < 200000)
{
player.sendMessage("You do not have enough adena!");
player.sendPacket(ActionFailed.STATIC_PACKET);
return;
}
final ItemInstance item = player.getInventory().getItemByObjectId(Integer.parseInt(FinallyWeHaveObjectId));
if (item == null)
return;
if (item.isEquipped())
{
player.disarmWeapons();
player.broadcastUserInfo();
}
final L2Augmentation aug = AugmentationData.getInstance().generateRandomAugmentation(2, 2);
item.setAugmentation(aug);
final int stat12 = 0x0000FFFF & aug.getAugmentationId();
final int stat34 = aug.getAugmentationId() >> 16;
player.sendPacket(new ExVariationResult(stat12, stat34, 1));
InventoryUpdate iu = new InventoryUpdate();
iu.addModifiedItem(item);
player.sendPacket(iu);
StatusUpdate su = new StatusUpdate(player);
su.addAttribute(StatusUpdate.CUR_LOAD, player.getCurrentLoad());
player.sendPacket(su);
showListWindow(player);
player.getInventory().reduceAdena("FastAugh", 200000, player, null);
player.sendPacket(SystemMessageId.THE_ITEM_WAS_SUCCESSFULLY_AUGMENTED);
if (item.getAugmentation().getSkill()!=null)
{
player.sendPacket(new ExShowScreenMessage("You have " + item.getAugmentation().getSkill().getName(), 5000, SMPOS.TOP_CENTER, true));
player.sendPacket(new SkillList());
}
player.sendPacket(ActionFailed.STATIC_PACKET);
}
super.onBypassFeedback(player, command);
}
public void showListWindow(Player player)
{
NpcHtmlMessage nhm = new NpcHtmlMessage(5);
StringBuilder tb = new StringBuilder("");
String Rem = "RemoveAug";
tb.append("<html><head><title>By AbsolutePower</title></head><body>");
tb.append("<center>");
tb.append("<tablewidth=\"250\"cellpadding=\"5\"bgcolor=\"000000\">");
tb.append("<tr>");
tb.append("<tdwidth=\"45\"valign=\"top\"align=\"center\"><imgsrc=\"L2ui_ch3.menubutton4\"width=\"38\"height=\"38\"></td>");
tb.append("<tdvalign=\"top\"><fontcolor=\"FF6600\">AugmentHelper</font>");
tb.append("<br1><fontcolor=\"00FF00ju\">" + player.getName() + "</font>, use this menu for fast augment :)<br1></td>");
tb.append("</tr>");
tb.append("</table>");
tb.append("</center>");
tb.append("<center>");
tb.append("<br>");
for (ItemInstance item : player.getInventory().getItems())
{
if (!item.isAugmented() && item.getItemType() instanceof WeaponType && item.isEquipable() && !item.isQuestItem())
{
tb.append("<buttonvalue=\""+item.getItemName()+"\"action=\"bypass -h npc_" + getObjectId() + "_tryaug-"+item.getObjectId()+"\"width=204height=20back=\"sek.cbui75\"fore=\"sek.cbui75\"><br>");
tb.append("<tableborder=0width=\"100%\">");
tb.append("<tr><td><imgsrc=\""+ item.getItem().getIcon()+"\"width=\"32\"height=\"32\"></td>" +"<td>"+"<buttonvalue=\""+item.getItemName()+"\"action=\"bypass -h npc_"+getObjectId()+"_tryaug-"+item.getObjectId()+"\"width=204height=21back=\"sek.cbui75\"fore=\"sek.cbui75\"><br>"+"</td>"+"<td>+"+item.getEnchantLevel()+"</td></tr></table>");
}
}
tb.append("<br>");
tb.append("<buttonvalue=\""+Rem+"\"action=\"bypass -h npc_" + getObjectId() + "_showremlist-1"+"\"width=204height=20back=\"sek.cbui75\"fore=\"sek.cbui75\"><br>");
tb.append("</center>");
tb.append("</body></html>");
nhm.setHtml(tb.toString());
player.sendPacket(nhm);
}
public void showListWindowForRemove(Player player)
{
NpcHtmlMessage nhm = new NpcHtmlMessage(5);
StringBuilder tb = new StringBuilder("");
String Rem = "GobackToAugList";
tb.append("<html><head><title>By AbsolutePower</title></head><body>");
tb.append("<center>");
tb.append("<tablewidth=\"250\"cellpadding=\"5\"bgcolor=\"000000\">");
tb.append("<tr>");
tb.append("<tdwidth=\"45\"valign=\"top\"align=\"center\"><imgsrc=\"L2ui_ch3.menubutton4\"width=\"38\"height=\"38\"></td>");
tb.append("<tdvalign=\"top\"><fontcolor=\"FF6600\">AugmentHelper</font>");
tb.append("<br1><fontcolor=\"00FF00ju\">" + player.getName() + "</font>, use this menu for fast augment :)<br1></td>");
tb.append("</tr>");
tb.append("</table>");
tb.append("</center>");
tb.append("<center>");
tb.append("<br>");
for (ItemInstance item : player.getInventory().getItems())
{
if (item.isAugmented() && item.getItemType() instanceof WeaponType && item.isEquipable() && !item.isQuestItem())
{
tb.append("<buttonvalue=\""+item.getItemName()+"\"action=\"bypass -h npc_" + getObjectId() + "_tryremove-"+item.getObjectId()+"\"width=204height=20back=\"sek.cbui75\"fore=\"sek.cbui75\"><br>");
tb.append("<tableborder=0width=\"100%\">");
tb.append("<tr><td><imgsrc=\""+ item.getItem().getIcon() +"\"width=\"32\"height=\"32\"></td>" +"<td>"+"<buttonvalue=\""+ item.getItemName() +"\"action=\"bypass -h npc_" +getObjectId()+ "_tryaug-"+item.getObjectId()+"\"width=204height=21back=\"sek.cbui75\"fore=\"sek.cbui75\"><br>"+"</td>"+"<td>+"+item.getEnchantLevel()+"</td></tr></table>");
}
}
tb.append("<br>");
tb.append("<buttonvalue=\""+Rem+"\"action=\"bypass -h npc_" + getObjectId() + "_showauglist-1"+"\"width=204height=20back=\"sek.cbui75\"fore=\"sek.cbui75\"><br>");
tb.append("</center>");
tb.append("</body></html>");
nhm.setHtml(tb.toString());
player.sendPacket(nhm);
}
}
If anyone is reading this, until we find the 488 protocol system that works with AuthD + Authgated from High Five (HF), just use L2Filter included in the leak as the login server to be able to play.
hAuthd does not works with this chronicle, @Hint. do you happen to know about this?
Be aware of the system you use!
If UseEMailAccount is set as true in l2.ini, your user_info table linked to your account must have email column not NULL with a valid e-mail, and you will use that e-mail to login instead of the account name.
(Post merged)
OKAY! Nevermind about the above, I just figured it out, AuthD and Authgated from HF requires GameGuard to be enabled and UseEMailAccount set to false.
Enable GameGuard at server side as per Fyyre instructions,
Add the missing GameGuard files in your client system:
https://mega.nz/file/xZMWQBjK#triEj7My9B9roiLqAKk32HOLcLmPynoOm-QhBI_Ligw
SELLING EMPTY TELEGRAM BOTS WITH AGE
Registration date: November 2024
High-quality & clean bots — no subscribers, no bans, created on fresh IPs.
y rested and reliable — perfect for:
— Telegram search ranking
— any technical or marketing tasks
Delivery options:
tdata, by phone number, ownership transfer, or via tokens.
Current price list:
From 3 pcs — $3 each
From 20 pcs — $2.5 each
From 60 pcs — $2.3 each
From 100 pcs — $2.2 each
From 400 pcs — $1.9 each
Over 15,000+ bots available — ready for instant delivery.
Contact on Telegram: t.me/smmtg_link
My project is based on this files i bought data files from dude, got good support everything was perfect, yea needed to spend some time editing but still you have really good extensions for interlude server from here.
Question
l2jkain
Hi all, I have a html file that I have set in npc without a directory of this error, can anyone help me? Why does not a direct HTML work in here? No Directory.
1 answer to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now