0flee Posted May 4, 2020 Posted May 4, 2020 How i can change title for npc? (L2j-Sunrise) I try from stats/npc/custom. But isn't from there. I set my title and usingServerSideTitle="true". Spoiler Anything i do, no work. it is coded? Quote
0 Silma Posted May 4, 2020 Posted May 4, 2020 4 minutes ago, 0flee said: How i can change title for npc? (L2j-Sunrise) I try from stats/npc/custom. But isn't from there. I set my title and usingServerSideTitle="true". Hide contents Anything i do, no work. it is coded? ( system ) npcname-e.dat Quote
0 0flee Posted May 4, 2020 Author Posted May 4, 2020 I check before, isn't fro there. Cuz devs from sunrise can;t access my system :) Quote
0 L2 TokTil Posted May 4, 2020 Posted May 4, 2020 check on npc ai/instance code that npc and check in npcinfopacket too, if you use usingServerSideTitle="true" title info is sended from npcinfopacket, you can trace from this file to ai/instance that npc Quote
0 0flee Posted May 4, 2020 Author Posted May 4, 2020 In another word, where o should enter? in java file ond DelevelManager? Quote
0 0flee Posted May 4, 2020 Author Posted May 4, 2020 Spoiler package ai.sunriseNpc.DelevelManager; import l2r.gameserver.data.xml.impl.ExperienceData; import l2r.gameserver.data.xml.impl.ItemData; import l2r.gameserver.model.actor.L2Npc; import l2r.gameserver.model.actor.instance.L2PcInstance; import l2r.gameserver.network.SystemMessageId; import l2r.gameserver.network.serverpackets.NpcHtmlMessage; import l2r.gameserver.network.serverpackets.SocialAction; import gr.sr.configsEngine.configs.impl.CustomNpcsConfigs; import ai.npc.AbstractNpcAI; /** * @author L2jSunrise Team * @Website www.l2jsunrise.com */ public class DelevelManager extends AbstractNpcAI { private static final int NPC = CustomNpcsConfigs.DELEVEL_NPC_ID; private static final int ITEM_ID = CustomNpcsConfigs.DELEVEL_ITEM_ID; private static final int ITEM_COUNT_PER_LEVEL = CustomNpcsConfigs.DELEVEL_ITEM_AMOUNT; private static final boolean DYNAMIC_PRICES = CustomNpcsConfigs.DELEVEL_DYNAMIC_PRICE; private int getDelevelPrice(final L2PcInstance player) { return DYNAMIC_PRICES ? ITEM_COUNT_PER_LEVEL * player.getLevel() : ITEM_COUNT_PER_LEVEL; } public DelevelManager() { super(DelevelManager.class.getSimpleName(), "ai/sunriseNpc"); addStartNpc(NPC); addFirstTalkId(NPC); addTalkId(NPC); } @Override public String onAdvEvent(final String event, final L2Npc npc, final L2PcInstance player) { if (!CustomNpcsConfigs.ENABLE_DELEVEL_MANAGER) { player.sendMessage("Delevel manager npc is disabled by admin"); sendMainHtmlWindow(player, npc); return ""; } if (event.equalsIgnoreCase("level")) { if (player.getLevel() < 80) { player.sendMessage("Sorry, you must have minim " + 80 + " level."); sendMainHtmlWindow(player, npc); return ""; } if (player.isInCombat()) { player.sendMessage("Cannot use while in combat."); sendMainHtmlWindow(player, npc); return ""; } if (player.getKarma() > 0) { player.sendMessage("Cannot use while hava karma."); sendMainHtmlWindow(player, npc); return ""; } if (player.isEnchanting()) { player.sendMessage("Cannot use while Enchanting."); sendMainHtmlWindow(player, npc); return ""; } if (player.isAlikeDead()) { player.sendMessage("Cannot use while Dead or Fake Death."); sendMainHtmlWindow(player, npc); return ""; } if (player.destroyItemByItemId("Delevel", ITEM_ID, getDelevelPrice(player), player, true)) { player.setExp(player.getStat().getExpForLevel(player.getLevel())); // sets exp to 0%, if you don't like people abusing this by // deleveling at 99% exp, comment the previous line player.removeExpAndSp(player.getExp() - ExperienceData.getInstance().getExpForLevel(player.getLevel() - 30), 0); player.broadcastPacket(new SocialAction(player.getObjectId(), 20016)); // Hero Animation player.sendMessage("Your level has been decreased."); player.addItem("Here it is your reward!", 9142, 1, null, true); } else { player.sendPacket(SystemMessageId.INCORRECT_ITEM_COUNT); } sendMainHtmlWindow(player, npc); return ""; } return ""; } @Override public String onFirstTalk(final L2Npc npc, final L2PcInstance player) { sendMainHtmlWindow(player, npc); return ""; } private void sendMainHtmlWindow(L2PcInstance player, L2Npc npc) { final NpcHtmlMessage html = getHtmlPacket(player, npc, "main.htm"); html.replace("%MINLVL%", String.valueOf(80)); html.replace("%PLAYER%", player.getName()); html.replace("%DELEVEL_PRICE%", String.valueOf(getDelevelPrice(player))); html.replace("%ITEM_NAME%", ItemData.getInstance().getTemplate(ITEM_ID).getName()); player.sendPacket(html); } private NpcHtmlMessage getHtmlPacket(L2PcInstance player, L2Npc npc, String htmlFile) { final NpcHtmlMessage packet = new NpcHtmlMessage(npc.getObjectId()); packet.setHtml(getHtm(player, player.getHtmlPrefix(), htmlFile)); return packet; } } Here it is code, maybe it is more ok to change path to scripts folder. But i don;t know to change code Quote
0 0flee Posted May 4, 2020 Author Posted May 4, 2020 How i can open hiden configs? I try to open coded configs but in eclipse i don;t know what i need. Spoiler Quote
Question
0flee
How i can change title for npc? (L2j-Sunrise) I try from stats/npc/custom. But isn't from there. I set my title and
usingServerSideTitle="true".
Anything i do, no work. it is coded?
6 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.