Snoopy 0 Опубликовано 25 марта, 2013 (изменено) Ребята подскажите кто знает как сделать бафера что бы бафал стандартные бафы за адену а например резисты за колы !? Вот я пробовал но не получается, когда есть колы снимает когда нету бафает без колов. Помогитееее) import sys from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance from java.util import Iterator from com.l2jfrozen.gameserver.datatables import SkillTable from com.l2jfrozen.util.database import L2DatabaseFactory from com.l2jfrozen.gameserver.model.quest import State from com.l2jfrozen.gameserver.model.quest import QuestState from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest qn = "70004_NPCBuffer" NPC=[70004] ADENA_ID=57 COIN_ID=4037 QuestId = 70004 QuestName = "NPCBuffer" QuestDesc = "custom" InitialHtml = "1.htm" print "==================> NPC Buffer: Iniciado" class Quest (JQuest) : def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr) def onEvent(self,event,st): htmltext = event count=st.getQuestItemsCount(ADENA_ID) if count < 0 or st.getPlayer().getLevel() < 1 : htmltext = "Voce nao tem Adena, Ou esta com level muito baixo. Tem que ter level 40 ou mais." else: st.takeItems(ADENA_ID,0) st.getPlayer().setTarget(st.getPlayer()) #War Chant if event == "92": st.takeItems(ADENA_ID,0) SkillTable.getInstance().getInfo(1390,3).getEffects(st.getPlayer(),st.getPlayer()) return "5.htm" st.setState(COMPLETED) #Earth Chant if event == "93": st.takeItems(ADENA_ID,0) SkillTable.getInstance().getInfo(1391,3).getEffects(st.getPlayer(),st.getPlayer()) return "5.htm" st.setState(COMPLETED) #Blessing of Queen if event == "2" st.takeItems(COIN_ID,10) SkillTable.getInstance().getInfo(4699,3).getEffects(st.getPlayer(),st.getPlayer()) return "7.htm" st.setState(COMPLETED) #Gift of Queen if event == "95": st.takeItems(COIN_ID,10) SkillTable.getInstance().getInfo(4700,3).getEffects(st.getPlayer(),st.getPlayer()) return "7.htm" st.setState(COMPLETED) Изменено 25 марта, 2013 пользователем Snoopy Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wollfens 119 Опубликовано 25 марта, 2013 Тут проверка идет def onEvent(self,event,st): htmltext = event count=st.getQuestItemsCount(ADENA_ID) if count < 0 or st.getPlayer().getLevel() < 1 : htmltext = "Voce nao tem Adena, Ou esta com level muito baixo. Tem que ter level 40 ou mais." else: st.takeItems(ADENA_ID,0) st.getPlayer().setTarget(st.getPlayer()) Добавь еще проверку на COIN_ID Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Snoopy 0 Опубликовано 25 марта, 2013 Тут проверка идет def onEvent(self,event,st): htmltext = event count=st.getQuestItemsCount(ADENA_ID) if count < 0 or st.getPlayer().getLevel() < 1 : htmltext = "Voce nao tem Adena, Ou esta com level muito baixo. Tem que ter level 40 ou mais." else: st.takeItems(ADENA_ID,0) st.getPlayer().setTarget(st.getPlayer()) Добавь еще проверку на COIN_ID Можешь рассказать подробней как ?) Я уже как только не пробовал, я то знаю что надо добавить но как ? Помоги плиз Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
wollfens 119 Опубликовано 25 марта, 2013 Надо пробовать на примере counts=st.getQuestItemsCount(COIN_ID) if counts < 0 : htmltext = "У Вас нет коинов" else: st.takeItems(COIN_ID,0) Но там нужно почитать мануалы насчет переменной count, как бы с ней не было проблем Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Golden 74 Опубликовано 25 марта, 2013 Вот пример, по аналогии думаю сделаешь. if event == "530": if st.getQuestItemsCount(9888) < 15 : #htmltext = "<html><body>no item</body></html>" #return htmltext return "noitem.htm" else: st.getPlayer().getEffect(4554,4) st.takeItems(9888,15) return "buff.htm" st.setState(COMPLETED) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Snoopy 0 Опубликовано 25 марта, 2013 Блин мужики ничего не получается Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Snoopy 0 Опубликовано 25 марта, 2013 Может я что то не так делаю, я просто новичок в этом деле. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
la2store 11 Опубликовано 25 марта, 2013 Хз попробуй так) import sys from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance from java.util import Iterator from com.l2jfrozen.gameserver.datatables import SkillTable from com.l2jfrozen.util.database import L2DatabaseFactory from com.l2jfrozen.gameserver.model.quest import State from com.l2jfrozen.gameserver.model.quest import QuestState from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest qn = "70004_NPCBuffer" NPC=[70004] ADENA_ID=57 COIN_ID=4037 QuestId = 70004 QuestName = "NPCBuffer" QuestDesc = "custom" InitialHtml = "1.htm" print "==================> NPC Buffer: Iniciado" class Quest (JQuest) : def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr) def onEvent(self,event,st): htmltext = event count=st.getQuestItemsCount(ADENA_ID) if count < 0 or st.getPlayer().getLevel() < 1 : htmltext = "Voce nao tem Adena, Ou esta com level muito baixo. Tem que ter level 40 ou mais." else: st.takeItems(ADENA_ID,0) st.getPlayer().setTarget(st.getPlayer()) def onEvent(self,event,st): htmltext = event count=st.getQuestItemsCount(COIN_ID) if count < 0 or st.getPlayer().getLevel() < 1 : htmltext = "Voce nao tem Coin, Ou esta com level muito baixo. Tem que ter level 40 ou mais." else: st.takeItems(COIN_ID,0) st.getPlayer().setTarget(st.getPlayer()) #War Chant if event == "92": st.takeItems(ADENA_ID,0) SkillTable.getInstance().getInfo(1390,3).getEffects(st.getPlayer(),st.getPlayer()) return "5.htm" st.setState(COMPLETED) #Earth Chant if event == "93": st.takeItems(ADENA_ID,0) SkillTable.getInstance().getInfo(1391,3).getEffects(st.getPlayer(),st.getPlayer()) return "5.htm" st.setState(COMPLETED) #Blessing of Queen if event == "2" st.takeItems(COIN_ID,10) SkillTable.getInstance().getInfo(4699,3).getEffects(st.getPlayer(),st.getPlayer()) return "7.htm" st.setState(COMPLETED) #Gift of Queen if event == "95": st.takeItems(COIN_ID,10) SkillTable.getInstance().getInfo(4700,3).getEffects(st.getPlayer(),st.getPlayer()) return "7.htm" st.setState(COMPLETED) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Snoopy 0 Опубликовано 25 марта, 2013 нее чувак не помогло( Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
la2store 11 Опубликовано 25 марта, 2013 Какая ошибка ГС? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Snoopy 0 Опубликовано 25 марта, 2013 Failed executing script: D:\fro\gameserver\data\scripts\custom\70004_NPCBuffer\_ _init__.py. See __init__.py.error.log for details. ВОТ Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
la2store 11 Опубликовано 25 марта, 2013 __init__.py.error.log что там? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Snoopy 0 Опубликовано 26 марта, 2013 Error on: D:\fro\gameserver\data\scripts\custom\70004_NPCBuffer\__init__.py.error.log Line: -1 - Column: -1 Traceback (innermost last): (no code object) at line 0 SyntaxError: ('invalid syntax', ('__init__.py', 28, 1, 'htmltext = event')) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
la2store 11 Опубликовано 26 марта, 2013 import sys from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance from java.util import Iterator from com.l2jfrozen.gameserver.datatables import SkillTable from com.l2jfrozen.util.database import L2DatabaseFactory from com.l2jfrozen.gameserver.model.quest import State from com.l2jfrozen.gameserver.model.quest import QuestState from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest qn = "70004_NPCBuffer" NPC=[70004] ADENA_ID=57 COIN_ID=4037 QuestId = 70004 QuestName = "NPCBuffer" QuestDesc = "custom" InitialHtml = "1.htm" print "==================> NPC Buffer: Iniciado" class Quest (JQuest) : def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr) def onEvent(self,event,st): htmltext = event count=st.getQuestItemsCount(ADENA_ID) if count < 0 or st.getPlayer().getLevel() < 1 : htmltext = "Voce nao tem Adena, Ou esta com level muito baixo. Tem que ter level 40 ou mais." else: st.takeItems(ADENA_ID,0) st.getPlayer().setTarget(st.getPlayer()) def onEvent(self,event,st): htmltext = event1 count=st.getQuestItemsCount(COIN_ID) if count < 0 or st.getPlayer().getLevel() < 1 : htmltext = "Voce nao tem Coin, Ou esta com level muito baixo. Tem que ter level 40 ou mais." else: st.takeItems(COIN_ID,0) st.getPlayer().setTarget(st.getPlayer()) #War Chant if event == "92": st.takeItems(ADENA_ID,0) SkillTable.getInstance().getInfo(1390,3).getEffects(st.getPlayer(),st.getPlayer()) return "5.htm" st.setState(COMPLETED) #Earth Chant if event == "93": st.takeItems(ADENA_ID,0) SkillTable.getInstance().getInfo(1391,3).getEffects(st.getPlayer(),st.getPlayer()) return "5.htm" st.setState(COMPLETED) #Blessing of Queen if event1 == "2" st.takeItems(COIN_ID,10) SkillTable.getInstance().getInfo(4699,3).getEffects(st.getPlayer(),st.getPlayer()) return "7.htm" st.setState(COMPLETED) #Gift of Queen if event1 == "95": st.takeItems(COIN_ID,10) SkillTable.getInstance().getInfo(4700,3).getEffects(st.getPlayer(),st.getPlayer()) return "7.htm" st.setState(COMPLETED) Попробуй так, но я конечно хз, если есть скинь настроенный рдп в личку, я попробую посмотреть. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Snoopy 0 Опубликовано 26 марта, 2013 Та же хрень Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Snoopy 0 Опубликовано 26 марта, 2013 Ребята помогите плизззззз Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Golden 74 Опубликовано 26 марта, 2013 Глянь мои контакты в профиле, авторизируй. Приду домой, постараюсь помочь. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты