drakola 10 Опубликовано 5 марта, 2017 Привет всем. Проблема такая хочу сходить на рб Sailren он на дино. все квесты выполнены прихожу к Shilen's Stone Statue говорю с ним меня тп к рб все нормально но вот спам идет только один моб и дальше тишина. время проходит и тп из логова рб ((( кто может помочь ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
CalypsoToolz 451 Опубликовано 5 марта, 2017 Смотри скрипт рб, а вообще - лучше указывать сборку Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 5 марта, 2017 (изменено) Смотри скрипт рб, а вообще - лучше указывать сборку It.su сборка package ru.catssoftware.gameserver.model.quest.pack.ai; import ru.catssoftware.gameserver.datatables.SpawnTable; import ru.catssoftware.gameserver.instancemanager.grandbosses.SailrenManager; import ru.catssoftware.gameserver.model.L2Spawn; import ru.catssoftware.gameserver.model.actor.instance.L2NpcInstance; import ru.catssoftware.gameserver.model.actor.instance.L2PcInstance; import ru.catssoftware.gameserver.model.quest.Quest; import ru.catssoftware.gameserver.model.quest.QuestState; import ru.catssoftware.gameserver.model.zone.L2BossZone; import ru.catssoftware.gameserver.model.zone.L2Zone; public class Sailren extends Quest { //NPC private int STATUE = 32109; public static int VELOCIRAPTOR = 22218; public static int PTEROSAUR = 22199; public static int TYRANNOSAURUS = 22217; public static int SAILREN = 29065; public static String QUEST = "sailren"; //ITEM private int GAZKH = 8784; public Sailren() { super(-1, QUEST, "ai"); for (L2Spawn s : SpawnTable.getInstance().findAllNpc(TYRANNOSAURUS)) { SpawnTable.getInstance().deleteSpawn(s,true); } addStartNpc(STATUE); addTalkId(STATUE); addKillId(VELOCIRAPTOR); addKillId(PTEROSAUR); addKillId(TYRANNOSAURUS); addKillId(SAILREN); } public String onKill (L2NpcInstance npc, L2PcInstance player, boolean isPet) { L2BossZone zone = (L2BossZone)npc.getZone("Boss"); if(zone==null || zone.getBoss()!=L2Zone.Boss.SAILREN) return null; int npcId = npc.getNpcId(); if (npcId == VELOCIRAPTOR) SailrenManager.getInstance().setSailrenSpawnTask(PTEROSAUR); else if (npcId == PTEROSAUR) SailrenManager.getInstance().setSailrenSpawnTask(TYRANNOSAURUS); else if (npcId == TYRANNOSAURUS) SailrenManager.getInstance().setSailrenSpawnTask(SAILREN); else if (npcId == SAILREN) SailrenManager.getInstance().setCubeSpawn(); return null; } public String onTalk(L2NpcInstance npc,L2PcInstance player) { QuestState st = player.getQuestState("sailren"); if (st==null) return "<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>"; int npcId = npc.getNpcId(); if (npcId == STATUE) { if (st.getQuestItemsCount(GAZKH)!=0) { int ENTRY_SATAT = SailrenManager.getInstance().canIntoSailrenLair(player); if (ENTRY_SATAT == 1 || ENTRY_SATAT == 2) { st.exitQuest(true); return "<html><body>Shilen's Stone Statue:<br>Another adventurers have already fought against the sailren. Do not obstruct them.</body></html>"; } else if (ENTRY_SATAT == 3) { st.exitQuest(true); return "<html><body>Shilen's Stone Statue:<br>The sailren is very powerful now. It is not possible to enter the inside.</body></html>"; } else if (ENTRY_SATAT == 4) { st.exitQuest(true); return "<html><body>Shilen's Stone Statue:<br>You seal the sailren alone? You should not do so! Bring the companion.</body></html>"; } else if (ENTRY_SATAT == 0) { st.takeItems(GAZKH,1); SailrenManager.getInstance().entryToSailrenLair(player); return "<html><body>Shilen's Stone Statue:<br>Please seal the sailren by your ability.</body></html>"; } } else { st.exitQuest(true); return "<html><body>Shilen's Stone Statue:<br><font color=\"LEVEL\">Gazkh</font> is necessary for seal the sailren.</body></html>"; } } return null; } } Изменено 5 марта, 2017 пользователем drakola Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 6 марта, 2017 Смотри в методах: setSailrenSpawnTask(int) setCubeSpawn() Т.к. это единственные функции, отвечающие за спавн (если судить по названиюю). Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 6 марта, 2017 Смотри в методах: setSailrenSpawnTask(int) setCubeSpawn() Т.к. это единственные функции, отвечающие за спавн (если судить по названиюю). ну и как мне исправить ? что б спам был по очереди. VELOCIRAPTOR, PTEROSAUR, TYRANNOSAURUS, SAILREN. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 6 марта, 2017 (изменено) ну и как мне исправить ? что б спам был по очереди. VELOCIRAPTOR, PTEROSAUR, TYRANNOSAURUS, SAILREN. Проверку ставить на наличии моба. Вот часть кода, где тебе править надо: public String onKill (L2NpcInstance npc, L2PcInstance player, boolean isPet) { L2BossZone zone = (L2BossZone)npc.getZone("Boss"); if(zone==null || zone.getBoss()!=L2Zone.Boss.SAILREN) return null; int npcId = npc.getNpcId(); if (npcId == VELOCIRAPTOR) SailrenManager.getInstance().setSailrenSpawnTask(PTEROSAUR); else if (npcId == PTEROSAUR) SailrenManager.getInstance().setSailrenSpawnTask(TYRANNOSAURUS); else if (npcId == TYRANNOSAURUS) SailrenManager.getInstance().setSailrenSpawnTask(SAILREN); else if (npcId == SAILREN) SailrenManager.getInstance().setCubeSpawn(); return null; } Изменено 6 марта, 2017 пользователем zGosu Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 6 марта, 2017 Проверку ставить на наличии моба. Вот часть кода, где тебе править надо: public String onKill (L2NpcInstance npc, L2PcInstance player, boolean isPet) { L2BossZone zone = (L2BossZone)npc.getZone("Boss"); if(zone==null || zone.getBoss()!=L2Zone.Boss.SAILREN) return null; int npcId = npc.getNpcId(); if (npcId == VELOCIRAPTOR) SailrenManager.getInstance().setSailrenSpawnTask(PTEROSAUR); else if (npcId == PTEROSAUR) SailrenManager.getInstance().setSailrenSpawnTask(TYRANNOSAURUS); else if (npcId == TYRANNOSAURUS) SailrenManager.getInstance().setSailrenSpawnTask(SAILREN); else if (npcId == SAILREN) SailrenManager.getInstance().setCubeSpawn(); return null; } И что тут не правильно ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 6 марта, 2017 И что тут не правильно ? Смотри в методах: setSailrenSpawnTask(int) setCubeSpawn() Т.к. это единственные функции, отвечающие за спавн (если судить по названиюю). Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 6 марта, 2017 я не понял тебе Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 6 марта, 2017 я не понял тебе Тебе нужно править эту часть кода: if (npcId == VELOCIRAPTOR) SailrenManager.getInstance().setSailrenSpawnTask(PTEROSAUR); else if (npcId == PTEROSAUR) SailrenManager.getInstance().setSailrenSpawnTask(TYRANNOSAURUS); else if (npcId == TYRANNOSAURUS) SailrenManager.getInstance().setSailrenSpawnTask(SAILREN); else if (npcId == SAILREN) SailrenManager.getInstance().setCubeSpawn(); Включая методы: setSailrenSpawnTask(int) setCubeSpawn() В этих местах у тебя ошибка. Думаю разберешься. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 6 марта, 2017 Тебе нужно править эту часть кода: if (npcId == VELOCIRAPTOR) SailrenManager.getInstance().setSailrenSpawnTask(PTEROSAUR); else if (npcId == PTEROSAUR) SailrenManager.getInstance().setSailrenSpawnTask(TYRANNOSAURUS); else if (npcId == TYRANNOSAURUS) SailrenManager.getInstance().setSailrenSpawnTask(SAILREN); else if (npcId == SAILREN) SailrenManager.getInstance().setCubeSpawn(); Включая методы: setSailrenSpawnTask(int) setCubeSpawn() В этих местах у тебя ошибка. Думаю разберешься. я плохо знаю яву. только учусь помоги мне если тебе не тяжело. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
CalypsoToolz 451 Опубликовано 8 марта, 2017 Для начала убедиться в наличии зоны с типом "Boss" c привязкой к L2Zone.Boss.Sailren, если зона есть - проверить координаты на валидность. На крайняк - поставить выводы в лог для поиска "нерабочих моментов" скрипта aka System.out.println("It's work!"); Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 8 марта, 2017 Для начала убедиться в наличии зоны с типом "Boss" c привязкой к L2Zone.Boss.Sailren, если зона есть - проверить координаты на валидность. На крайняк - поставить выводы в лог для поиска "нерабочих моментов" скрипта aka System.out.println("It's work!"); ошибок нет. просто спамит 1го моба id 22218 и дальше все. проходит время и тп из логова ( Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
CalypsoToolz 451 Опубликовано 8 марта, 2017 ошибок нет. просто спамит 1го моба id 22218 и дальше все. проходит время и тп из логова ( я и не говорил про ошибки Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 8 марта, 2017 я и не говорил про ошибки если знаешь как исправить помоги. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mangol 101 Опубликовано 14 марта, 2017 SailrenManager Нужен сам менжер. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 18 марта, 2017 SailrenManager Нужен сам менжер. где его найти ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 18 марта, 2017 (изменено) Вот мой файл. адаптируй под себя. Sailren.7z Q00641_AttackSailren.7z Изменено 18 марта, 2017 пользователем zGosu Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 19 марта, 2017 Вот мой файл. адаптируй под себя. и как мне его сделать если там класса не хватает ? у меня сборка it.su Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 19 марта, 2017 и как мне его сделать если там класса не хватает ? у меня сборка it.su Ну адаптировать под свою сборку. Либо взять ее из сборки it.su выше версией. Так же можно вырезать кв сборок, на котором основана эта сборка (ловели, пв, асисы и т.п.). Ну или заказать квест (написать новый, поправить твой или адаптировать мой кв под твой (т.к. мой точно пашет, тестировали на х50)), т.к. судя по теме, мало кто пользуется Вашей сборкой. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 19 марта, 2017 (изменено) Ну адаптировать под свою сборку. Либо взять ее из сборки it.su выше версией. Так же можно вырезать кв сборок, на котором основана эта сборка (ловели, пв, асисы и т.п.). Ну или заказать квест (написать новый, поправить твой или адаптировать мой кв под твой (т.к. мой точно пашет, тестировали на х50)), т.к. судя по теме, мало кто пользуется Вашей сборкой. а что у вас за сборка ? и у ловели тоже не работает. Изменено 19 марта, 2017 пользователем drakola Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 19 марта, 2017 а что у вас за сборка ? и у ловели тоже не работает. лыжа (L2JServer) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
drakola 10 Опубликовано 19 марта, 2017 (изменено) лыжа (L2JServer) да ладно ) блин как мне сделать? ( Изменено 19 марта, 2017 пользователем drakola Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 20 марта, 2017 да ладно ) блин как мне сделать? ( Новая папка (5).7z Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
P1ckw1ck 158 Опубликовано 24 марта, 2017 Люцера2 от туда возьмите. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты