This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..
Question
hakerboy
exw to exis problima, xrisimopoio gracia part 2 l2j compiled kai dn mporo na fix ta premium caravan certification, ta alla ta pernei kanonika, basic kai standar alla to premium dn to pairnei enw exa ta ilika p xreiazonte, exei kaneis ti __init__.py tou caravan relation? an mporei na me help 8a me efxaristouse poly :)
EDIT afto einai to __init__.py p xrisimopoio, mono to prenium exei problima
import sys from net.sf.l2j.gameserver.model.quest import State from net.sf.l2j.gameserver.model.quest import QuestState from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest from net.sf.l2j import L2DatabaseFactory qn = "9950_CaravanRelations" # NPC FALK = 32297 KIEF = 32354 HUDE = 32298 QuestNpcs = [ 32297,32354,32298 ] Chimeras = [ 22349,22350,22351,22352 ] Celtus = 22353 # Items BasicCertif = 9850 StandardCertif = 9851 PremiumCertif = 9852 DarionBadge = 9674 MagicBottle = 9672 ScorpionSting = 10012 LifeForce = 9681 ContainedLife = 9682 MarkBetrayal = 9676 class Quest (JQuest) : def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr) def onAdvEvent (self, event, npc, player) : st = player.getQuestState(qn) if not st: return cond = st.getInt("cond") if event == "32264-03.htm": htmltext = "32264-03.htm" return htmltext elif event == "32298-02.htm": if st.getQuestItemsCount(MarkBetrayal) >= 30 and st.getQuestItemsCount(ScorpionSting) >= 60 : st.set("cond","2") st.takeItems(MarkBetrayal,30) st.takeItems(ScorpionSting,60) st.takeItems(BasicCertif,1) st.giveItems(StandardCertif,1) st.playSound("ItemSound.quest_middle") htmltext = "32298-01.htm" return htmltext else : htmltext = "32298-00a.htm" return htmltext elif event == "32298-05.htm": if st.getQuestItemsCount(LifeForce) >= 80 and st.getQuestItemsCount(ContainedLife) >= 20 : st.set("cond","4") htmltext = "32298-04.htm" st.takeItems(LifeForce,80) st.takeItems(ContainedLife,20) st.takeItems(MagicBottle,1) st.takeItems(StandardCertif,1) st.giveItems(PremiumCertif,1) st.playSound("ItemSound.quest_middle") return htmltext else : htmltext = "32298-00a.htm" return htmltext elif event == "TrustIncrease": con=L2DatabaseFactory.getInstance().getConnection() trigger=con.prepareStatement("SELECT zonesLevel FROM hellbound WHERE name=8000") trigger1=trigger.executeQuery() while (trigger1.next()): zones=trigger1.getInt("zonesLevel") trigger=con.prepareStatement("SELECT trustLevel FROM hellbound WHERE name=8000") trigger1=trigger.executeQuery() while (trigger1.next()): trust=trigger1.getInt("trustLevel") trust = int(trust) + 200 insertion = con.prepareStatement("DELETE FROM hellbound WHERE name=8000") insertion.executeUpdate() insertion.execute() insertion.close(); insertion = con.prepareStatement("INSERT INTO hellbound (name,trustLevel,zonesLevel,unlocked,dummy) VALUES (?,?,?,?,?)") insertion.setInt(1, 8000) insertion.setInt(2, trust) insertion.setInt(3, zoneslevel) insertion.setInt(4, 1) insertion.setInt(5, 0) insertion.executeUpdate() insertion.close(); con.close() def onTalk (self,npc,player) : npcId = npc.getNpcId() LevelText = "<html><body>Hellbound has not reached a high enough level to speak to this NPC</body></html>" 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>" st = player.getQuestState(qn) if not st : return htmltext cond = st.getInt("cond") con=L2DatabaseFactory.getInstance().getConnection() trigger=con.prepareStatement("SELECT zonesLevel FROM hellbound WHERE name=8000") trigger1=trigger.executeQuery() while (trigger1.next()): zones=trigger1.getInt("zonesLevel") con.close() # if zones >= 3 : if npcId == FALK and cond == 0: if st.getQuestItemsCount(DarionBadge) >= 20 : if st.getQuestItemsCount(BasicCertif) == 0 : st.set("cond","1") st.takeItems(DarionBadge,20) st.giveItems(BasicCertif,1) st.playSound("ItemSound.quest_accept") htmltext = "32297-01.htm" else : htmltext = "32297-00a.htm" else : htmltext = "32297-00.htm" # if zones >= 6 : if npcId == HUDE and cond == 1 : if st.getQuestItemsCount(BasicCertif) >= 1 : htmltext = "32298-02.htm" else : htmltext = "32298-00.htm" if npcId == KIEF and cond == 2 : if st.getQuestItemsCount(StandardCertif) >= 1 : if st.getQuestItemsCount(MagicBottle) == 0 : if st.getQuestItemsCount(ScorpionSting) >= 20 : st.set("cond","3") htmltext = "32354-01.htm" st.takeItems(DarionBadge,20) st.giveItems(MagicBottle,1) st.playSound("ItemSound.quest_middle") else : htmltext = "32354-00b.htm" else : htmltext = "32354-00a.htm" else : htmltext = "32354-00.htm" if npcId == HUDE and cond == 3 : if st.getQuestItemsCount(StandardCertif) >= 1 : htmltext = "32298-03.htm" else : htmltext = "32298-00.htm" if npcId == HUDE and cond >= 4 : htmltext = "32298-05.htm" # if zones >= 7 : #this part not finished yet # if npcId == JUDE and cond == 4 : # if st.getQuestItemsCount(PremiumCertif) >= 1 : # htmltext = "32356-01.htm" # else : # htmltext = "32356-00.htm" return htmltext def onKill(self,npc,player,isPet): st = player.getQuestState(qn) if not st : return npcId = npc.getNpcId() if st.getQuestItemsCount(MagicBottle) >= 1: if npcId == Celtus and st.getQuestItemsCount(9682) < 20: st.giveItems(9682,1) else: if st.getQuestItemsCount(9681) < 80: st.giveItems(9681,1) else: return else: return QUEST = Quest(9950,qn,"Custom") QUEST.addStartNpc(32297) for i in QuestNpcs: QUEST.addTalkId(i) for i in Chimeras: QUEST.addKillId(i) QUEST.addKillId(22353)0 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now