Перейти к содержанию

MeRDox

Постоялец
  • Публикаций

    595
  • Зарегистрирован

  • Посещение

  • Победитель дней

    2
  • Отзывы

    0%

Весь контент MeRDox

  1. может есть идеи у кого-то, хоть какие-то)
  2. Можно ли сделать так, чтобы вещи покупались за определенный итем, но показывало их шопе только тогда, когда у вас есть этот итем. Пробовал сделать по такой схеме "bypass -h npc_%objectId%_exc_multisell циферка" "<list maintainEnchantment="false" npcId="циферка" saveEnchantment="true"> ну когда присутствует эта строка "bypass -h npc_%objectId%_exc_multisell циферка", то в шопе вещи не отображаются.
  3. Меня тоже смутило это, так как делал все по примеру, думал то так и нужно, хотя ругался гейм сервер. Работаю первый раз над квестами, из-за этого и есть недочеты. Спасибо большое за помощь
  4. Спасибо большое, объяснили. А то я сутки сидел над этим всем) Ну в том смысле если нету предмета с 1 уровня, то тоже не давать награду. По уровням все.
  5. Да, первый путь идеально работает, а дальше получается каша. Извиняюсь, так получилось. Первый раз просто занимаюсь квестами, и разместил как было, а оно получилось как видите. Эту проблему решил, теперь на втором уровне за набитие 2000 итемов, их может быть хоть 0, всеровно дает дает главный итем, так же и на 3 уровне. Бред) Вроде бы прописал как и на первом уровне.
  6. Ни у кого нету вариантов решения проблемы? а то всё также не получается исправить её.
  7. Спасибо, а насчет моей главной проблемы есть какие-то догадки? а то я перепробовал и менять разные значения, и добавлять новые формулы, ничего не получается.
  8. Спасибо, возможно сделаю так. Это пока саму механику путей пробую сделать, дальше буду совершенствовать, главное сейчас решить эту проблему. Одну проблему решу, другая выскакивает.
  9. Делаю одну фишку, но что-то немного запутался. Доходит до уровня start_2, нажимаю, выскакивает диалог что нужно сделать 50002-10.htm. Когда выполняю требования до уровня sobral_2, прихожу отдать предметы, возвращает меня на start_2. Где тут что поправить чтобы при достаточном количестве предметов, перейти на следующий уровень. PS: Без этих диалогов(объяснений) все работало, когда добавил их, то перестало переходить на следующий уровень. package quests.Master; import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.quest.QuestState; import net.sf.l2j.gameserver.model.quest.State; import net.sf.l2j.gameserver.model.quest.jython.QuestJython; import net.sf.l2j.util.Rnd; public class Master extends QuestJython { //NPC private final static int npcId = 50002; private final static int[] MOBS = {439017}; private final static int RaidBoss = 439059; //Farm private final static int HEAD_UNDEAD = 14060; //Master private final static int MASTER_1 = 14070; private final static int MASTER_2 = 14071; private final static int MASTER_3 = 14072; //Chance from mobs private final static int chance1 = 100; private int count; private int caunt; private int cond = 0; private State STARTED = new State("Started", this); public Master(int questId, String name, String descr) { super(questId, name, descr, 1); State st = new State("Start", this); this.setInitialState(st); addStartNpc(npcId); addTalkId(npcId); for (int mobs : MOBS) addKillId(mobs); addKillId(RaidBoss); } public String onEvent(String event, QuestState st) { L2PcInstance player = st.getPlayer(); if (event.equalsIgnoreCase("start")) { st.set("cond","1"); event = "50002-2.htm"; st.setState(STARTED); } else if (event.equalsIgnoreCase("sobral")) { count = player.getInventory().getInventoryItemCount(HEAD_UNDEAD,0); if (count < 500) event = "50002-no.htm"; else { st.takeItems(HEAD_UNDEAD,500); st.giveItems(MASTER_1,1); st.set("cond","2"); event = "50002-4.htm"; } } if (event.equalsIgnoreCase("start_2")) { st.set("cond","2"); event = "50002-10.htm"; st.setState(STARTED); } else if (event.equalsIgnoreCase("sobral_2")) { count = player.getInventory().getInventoryItemCount(HEAD_UNDEAD,0); caunt = player.getInventory().getInventoryItemCount(MASTER_1,0); if (count < 2000) event = "50002-no1.htm"; if (caunt < 1) event = "50002-no1.htm"; else { st.takeItems(HEAD_UNDEAD,2000); st.takeItems(MASTER_1,1); st.giveItems(MASTER_2,1); st.set("cond","3"); event = "50002-6.htm"; } } if (event.equalsIgnoreCase("start_3")) { st.set("cond","3"); event = "50002-11.htm"; st.setState(STARTED); } else if (event.equalsIgnoreCase("sobral_3")) { count = player.getInventory().getInventoryItemCount(HEAD_UNDEAD,0); caunt = player.getInventory().getInventoryItemCount(MASTER_2,0); if (count < 5000) event = "50002-no1.htm"; if (caunt < 1) event = "50002-no1.htm"; else { st.takeItems(HEAD_UNDEAD,5000); st.takeItems(MASTER_2,1); st.giveItems(MASTER_3,1); st.set("cond","3"); event = "50002-8.htm"; } } else if (event.equalsIgnoreCase("otmena")) { event = "<html><body>kvest otmenen</body></html>"; st.exitQuest(true); } return event; } public String onTalk(L2NpcInstance npc, L2PcInstance talker) { QuestState st = talker.getQuestState(getName()); String htmltext = "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.</body></html>"; if(st == null) return htmltext; int npcId = npc.getNpcId(); cond = st.getInt("cond"); if(npcId == npcId) { if (cond == 0) htmltext = "50002-1.htm"; else if (cond == 1) htmltext = "50002-3.htm"; else if (cond == 2) htmltext = "50002-5.htm"; else if (cond == 3) htmltext = "50002-7.htm"; else if (cond == 4) htmltext = "50002-9.htm"; } return htmltext; } public String onKill(L2NpcInstance npc, L2PcInstance killer, boolean isPet) { QuestState st = killer.getQuestState(getName()); if(st == null) return null; int npcId = npc.getNpcId(); int cond = st.getInt("cond"); switch(cond) { case 1: for(int id : MOBS) if(npcId == id && Rnd.get(100) < chance1 && st.getPlayer().getInventory().getInventoryItemCount(HEAD_UNDEAD,0) < 500) st.giveItems(HEAD_UNDEAD,1); break; case 2: for(int id : MOBS) if(npcId == id && Rnd.get(100) < chance1 && st.getPlayer().getInventory().getInventoryItemCount(HEAD_UNDEAD,0) < 2000) st.giveItems(HEAD_UNDEAD,1); break; case 3: for(int id : MOBS) if(npcId == id && Rnd.get(100) < chance1 && st.getPlayer().getInventory().getInventoryItemCount(HEAD_UNDEAD,0) < 5000) st.giveItems(HEAD_UNDEAD,1); break; } return null; } public static void main(String[] args) { new Master(-1, "Master", "quests"); } }
  10. MeRDox

    Временный итем

    Тему можно закрывать, бутылочка пива и сам нашел решение, всем спасибо!)
  11. MeRDox

    Временный итем

    извините, не написал: PWSoft там нет такой функции
  12. MeRDox

    Временный итем

    Кто знает как сделать временный итем? Именно итем, чтобы какой-то свиток, или монета...перепробовал уже все, может для этого есть какой-то скрипт? PS: по аналогии с шадов оружием пробовал, не идет...так не одевается итем.
  13. MeRDox

    Server termined

    Появилась внезапно такая проблема, сделал откат системы на сутки, все ровно ничего не изменилось...Что это может быть?
  14. Может кто-то знает, как делать на серверах с дополнениями, классик твт(в классическом шмоте), или для этого нужны исходы? PWSoft
  15. MeRDox

    (Npc) Interlude

    шара шарой, но хотя бы укажи кто автор.
  16. как думаете, стоит ли покупать? http://l2rr.ucoz.ru/load/interlude/krasnye_dospekhi_demona_perchatki_botinki_dlja_interlude/2-1-0-983 (не реклама) Копирайты не проблема снять
  17. на сколько я знаю, полный сет там
  18. Зеленый эффект http://l2rr.ucoz.ru/load/interlude/valakas_weapon_green_effect_for_interlude/2-1-0-977 (Не реклама) Синий и красный http://l2rr.ucoz.ru/load/interlude/valakas_weapon_red_and_blue_effect_for_interlude/2-1-0-866 (Не реклама)
  19. MeRDox

    Иконки Монет

    Может есть у кого Золотые монеты какие-то для l2, не те что в клиенте есть. Поделитесь пожалуйста.
  20. MeRDox

    Крылья На Гномах

    спасибо, сейчас попробую
  21. MeRDox

    Крылья На Гномах

    Ангельские крылья на всех расах кроме гномов выглядят нормально, только вот на гномах они подняты вверх намного больше головы. Как это исправить? Где редактировать можно это?
  22. st.dropItemsAlways(RELICS, 1, 0); st.dropItems(ENTRANCE, 1, 0, 50000); Я так понял это и есть шанс? только вот когда меняю, на 1000000, шанс выпадения всеровно не 100%
×
×
  • Создать...