
vladislav4k
Members-
Posts
37 -
Credits
0 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by vladislav4k
-
Hello, i need quests for Interlude on java. Please help me!
-
I use http://subversion.assembla.com/svn/silentium-interlude/ (no reclame)
-
I don't understand what you written=) My script working, but after reload, color is custom. In mysql table haven't information about colors(how i see)
-
Can you say, how to do normal, when I relogin, color dont be default? I really need this
-
I understand, i find this in my source. But when i change name color (in adm panel), when I relogin, color is default. Code in script: if (command.startsWith("nameColor")) { final String val = command.substring(6); player.getAppearance().setNameColor(Integer.decode("0x" + val)); player.broadcastUserInfo(); } else if (command.startsWith("titleColor")) { final String val = command.substring(6); player.getAppearance().setTitleColor(Integer.decode("0x" + val)); player.broadcastUserInfo(); }
-
I dont use Eclipse, all i can find, but how do the quest if done?
-
Write please function for: 1)Change player name color 2)Change player title color 3)Do player a noblesse 4)Set quest done(set quests for sub-class and noblesse is done) Thanks
-
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
Closed -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
Can you show my, how do script: When I click button in 50010.htm, show 50010-1.htm, and if i press button in 50010-1.htm, in my inventory add some item Thanks -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
lag -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
Because I don't understand how its work. My bypass working, but only if bypass in 50010.htm. I ask, why if bypass in 50010-1.htm (50010 and 50010-1 in one dir) he didn't work? -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
Thanks, but i don't like this. I want do: public void onBypassFeedback(L2PcInstance player, String command) { if (player == null) { return; } if (command.equals("showInfo")) { NpcHtmlMessage html = new NpcHtmlMessage(getObjectId()); if (player.getInventory().getInventoryItemCount(10041, 0) >= 1) { html.setFile("data/html-en/toti/L2TattooMenager/50010-1.htm", player); } } } ......... All works, but only if bypass in 50010.htm, if bypass in 50010-1.htm not work. This is a problem -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
I created a new instant, made with the main NPC dialogue, and a dialogue 1. If the call to start bipass XTM and all plows Event and goes ok. And if the blabla-1.htm nothing happens. -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
But all gamers can write in chat: .upgrade (if they know this command) I don't want this. I want do instance java file, and do bypass to him P.S. If I wrong, sory -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
But i need: when i click button "Update", in NPC dialog, my tattoo upgrade. Please help, maybe tutorial, how to do this -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
.py its a Pyton, i need a Java. And voiced command its a command in chat, no? -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
I dont want voice command. I put in file L2TattooMenagerInstance.java, and file i put intro src\silentium\gameserver\model\actor\instance I need: when in NPC dialog click button "Upgrade", event upgrade working and give my new tattoo -
package silentium.scripts.quests; import java.util.Arrays; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import silentium.commons.utils.Rnd; import silentium.gameserver.instancemanager.FourSepulchersManager; import silentium.gameserver.model.actor.L2Npc; import silentium.gameserver.model.actor.instance.L2PcInstance; import silentium.gameserver.model.quest.Quest; import silentium.gameserver.model.quest.QuestState; import silentium.gameserver.properties.GameServerProperties; import silentium.gameserver.scripting.ScriptFile; import silentium.gameserver.utils.Util; public class Q800_TotiSecret extends Quest implements ScriptFile { private static final Logger _log = LoggerFactory.getLogger(Q800_TotiSecret.class.getName()); private static final String qn = "Q800_TotiSecret"; //NPC private static final int POWER_MASTER = 50010; private static final int NPC_1 = 30862; private static final int NPC_2 = 31742; private static final int NPC_3 = 30694; //private static final int KILL_1 = 31458; //private static final int KILL_2 = 31459; //private static final int KILL_3 = 31412; //Items //private static final int ITEM_1 = 7251; //private static final int ITEM_2 = 7252; //private static final int ITEM_3 = 7253; //private static final int ITEM_4 = 7254; private static final int ITEM_1 = 10042; // Rewards private static final int REWARD_1 = 10041; public Q800_TotiSecret(final int scriptId, final String name, final String dname, final String path) { super(scriptId, name, dname, path); questItemIds = new int[] { ITEM_1, }; addStartNpc(POWER_MASTER); addTalkId(POWER_MASTER); addTalkId(NPC_1); addTalkId(NPC_2); addTalkId(NPC_3); /*addKillId(KILL_1); addKillId(KILL_2); addKillId(KILL_3);*/ } public static void onLoad() { new Q800_TotiSecret(800, "Q800_TotiSecret", "TotiSecret", "Quests"); if (GameServerProperties.PRINT_QUESTS_LOADING) { _log.info("Loaded: scripts.quests.Q800_TotiSecret"); } } @Override public String onAdvEvent(final String event, final L2Npc npc, final L2PcInstance player) { String htmltext = event; final QuestState st = player.getQuestState(qn); if (st == null) { return htmltext; } if ("800-03.htm".equalsIgnoreCase(event)) { st.set("cond", "1"); st.setState(QuestState.STARTED); st.playSound(QuestState.SOUND_ACCEPT); } else if ("801-05.htm".equalsIgnoreCase(event)) { st.set("cond", "2"); st.playSound(QuestState.SOUND_MIDDLE); } else if ("802-03.htm".equalsIgnoreCase(event)) { st.set("cond", "3"); st.playSound(QuestState.SOUND_MIDDLE); } else if ("802-06.htm".equalsIgnoreCase(event)) { st.set("cond", "5"); st.playSound(QuestState.SOUND_MIDDLE); } else if ("801-07.htm".equalsIgnoreCase(event)) { st.set("cond", "6"); st.playSound(QuestState.SOUND_MIDDLE); } else if ("803-03.htm".equalsIgnoreCase(event)) { st.set("cond", "7"); st.playSound(QuestState.SOUND_MIDDLE); } else if ("803-06.htm".equalsIgnoreCase(event)) { st.set("cond", "9"); st.playSound(QuestState.SOUND_MIDDLE); } return htmltext; } @Override public String onTalk(final L2Npc npc, final L2PcInstance player) { String htmltext = Quest.getNoQuestMsg(); final QuestState st = player.getQuestState(qn); if (st == null) { return htmltext; } switch (st.getState()) { case QuestState.CREATED: if (player.getLevel() >= 80) { htmltext = "800-1.htm"; } else { htmltext = "800-00.htm"; st.exitQuest(true); } break; case QuestState.STARTED: final int cond = st.getInt("cond"); switch (npc.getNpcId()) { case NPC_1: if (cond == 1) { htmltext = "801-1.htm"; } else if (cond == 5) { htmltext = "801-1.htm"; } else if (cond == 10) { htmltext = "801-8.htm"; } break; case NPC_2: if (cond == 2) { htmltext = "802-1.htm"; } else if (cond == 3) { htmltext = "802-4.htm"; } else if (cond == 4) { htmltext = "802-5.htm"; } break; case NPC_3: if (cond == 6) { htmltext = "803-1.htm"; } else if (cond == 8) { htmltext = "803-4.htm"; } break; } break; case QuestState.COMPLETED: htmltext = Quest.getAlreadyCompletedMsg(); break; } return htmltext; } /*@Override public String onKill(final L2Npc npc, final L2PcInstance player, final boolean isPet) { final QuestState st = player.getQuestState(qn); if ((st == null) || !st.isStarted() || !player.isSubClassActive()) { return null; } final int npcId = npc.getNpcId(); if (npcId == KILL_1) { if (checkPlayerCondition(player, npc, "cond", "3")) { if (st.dropQuestItems(ITEM_1, 1, 40, 25000)) { st.set("cond", "4"); st.playSound(QuestState.SOUND_MIDDLE); } } } if (npcId == KILL_2) { if (checkPlayerCondition(player, npc, "cond", "7")) { if (st.dropQuestItems(ITEM_2, 1, 500, 25000)) { st.set("cond", "8"); st.playSound(QuestState.SOUND_MIDDLE); } } } if (npcId == KILL_3) { if (checkPlayerCondition(player, npc, "cond", "9")) { if (!st.hasQuestItems(ITEM_3)) { st.set("cond", "10"); st.playSound(QuestState.SOUND_MIDDLE); } } } return null; }*/ } When i clik "Quest" oll OK, show 800-1 then i press button and show dialog 800-2 then 800-3 but in 800-3 quest not give to chartoper
-
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
I do this: package silentium.gameserver.model.actor.instance; import gnu.trove.map.hash.TIntIntHashMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import silentium.gameserver.data.cache.HtmCache; import silentium.gameserver.data.multilang.MultilangHtmPath; import silentium.gameserver.model.L2ItemInstance; import silentium.gameserver.model.L2Skill; import silentium.gameserver.model.actor.L2Character; import silentium.gameserver.model.actor.L2Summon; import silentium.gameserver.network.SystemMessageId; import silentium.gameserver.network.serverpackets.ActionFailed; import silentium.gameserver.network.serverpackets.NpcHtmlMessage; import silentium.gameserver.network.serverpackets.SystemMessage; import silentium.gameserver.tables.NpcBufferTable; import silentium.gameserver.tables.SkillTable; import silentium.gameserver.taskmanager.AttackStanceTaskManager; import silentium.gameserver.templates.chars.L2NpcTemplate; public class L2TattooMenagerInstance extends L2NpcInstance { private static final Logger _log = LoggerFactory.getLogger(L2TattooMenagerInstance.class.getName()); private static TIntIntHashMap pageVal = new TIntIntHashMap(); public L2TattooMenagerInstance(int objectId, L2NpcTemplate template) { super(objectId, template); } @Override public void onBypassFeedback(L2PcInstance player, String command) { if (player == null) { return; } L2Character target = player; int npcId = getNpcId(); if (command.startsWith("upgrade")) { if (player.getInventory().getInventoryItemCount(10041, 0) >= 1) { player.destroyItemByItemId("Toti Tattoo Level 1", 10041, 1, player, false); player.getInventory().addItem("Toti Tattoo Level 2", 10042, 1, player, null); player.getInventory().updateDatabase(); player.sendMessage("3lvl"); } else if (player.getInventory().getInventoryItemCount(10042, 0) >= 1) { player.destroyItemByItemId("Toti Tattoo Level 2", 10042, 1, player, false); player.getInventory().addItem("Toti Tattoo Level 3", 10043, 1, player, null); player.getInventory().updateDatabase(); player.sendMessage("4lvl"); } else if (player.getInventory().getInventoryItemCount(10043, 0) >= 1) { player.destroyItemByItemId("Toti Tattoo Level 3", 10043, 1, player, false); player.getInventory().addItem("Toti Tattoo Level 4", 10044, 1, player, null); player.getInventory().updateDatabase(); player.sendMessage("4lvl"); } else if (player.getInventory().getInventoryItemCount(10044, 0) >= 1) { player.destroyItemByItemId("Toti Tattoo Level 4", 10044, 1, player, false); player.getInventory().addItem("Toti Tattoo Level 5", 10045, 1, player, null); player.getInventory().updateDatabase(); player.sendMessage("5lvl"); } else if (player.getInventory().getInventoryItemCount(10045, 0) >= 1) { player.destroyItemByItemId("Toti Tattoo Level 5", 10045, 1, player, false); player.getInventory().addItem("Toti Tattoo Level 6", 10046, 1, player, null); player.getInventory().updateDatabase(); player.sendMessage("6lvl"); } else if (player.getInventory().getInventoryItemCount(10046, 0) >= 1) { player.destroyItemByItemId("Toti Tattoo Level 6", 10046, 1, player, false); player.getInventory().addItem("Toti Tattoo Level 7", 10047, 1, player, null); player.getInventory().updateDatabase(); player.sendMessage("7lvl"); } else if (player.getInventory().getInventoryItemCount(10047, 0) >= 1); { player.sendMessage("Maximum"); } } } } and in html: <a action="bypass -h npc_%objectId%_upgrade">Update</a></br> Not working( -
And so, my hands got to a quest. Wrote the script, did the dialogue. Compiled, the starting NPC appeared quest dialogue, and there are 3 on 3, it should give the quest. But 0 reactions. I remembered that he still had a client pohimichit. To file questname-e add one line to go square and the first condition. I try but same... It is in the client: 1 800 1 a,TotiSecrets\0 a,Go to master\0 u,Идите к.\\n\0 0 0 -115888.00000000 43568.00000000 524.00000000 17 23 0 a,Trader Erinu\0 1 1 0 50010 -115888.00000000 43568.00000000 524.00000000 a,No Requirements\0 u,Новинка сезона Деревня Kamael! Раскупайте принадлежности, сделанные из П.\0 0 0 0 0 0 243 Piece of script: @Override public String onAdvEvent(final String event, final L2Npc npc, final L2PcInstance player) { String htmltext = event; final QuestState st = player.getQuestState(qn); if (st == null) { return htmltext; } if ("800-03.htm".equalsIgnoreCase(event)) { st.set("cond", "1"); st.setState(QuestState.STARTED); st.playSound(QuestState.SOUND_ACCEPT); } 800-03.htm - then have to add square. But in this dialogue 0 reactions. Smart heds help advice, maybe I have something somewhere forgot?
-
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
Oh, senks! How delete last tattoo and some prise -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
I wrote, I do not have a trader! I need NPC, when pressing a button, change old tdttoo to a new tattoo! On JAVA! Need functions in Java to add, take items, see items from inventory -
Tattoos updater
vladislav4k replied to vladislav4k's question in Request Server Development Help [L2J]
Can be more? -
Hello, I need your help. I need to create NPC that will check lvl tattoo (7 lvl tattoo), and depending on what lvl you, when you click "Upgrade", gets some reward and your tattoo, and then gives the better tattoo. Please tell me at least a template script or function to give, take, check. Script in JAVA!
-
I do it. Closed or delete.