Hello guys there is a problem with the npc, i set the st.takeItems(VOTE_COIN,150) but still i can become nobless with 3-4 and so on coins, (when i have 150 the npc is taking normally the coins and i get nob status)
so i can become nob with less than 150 vote coins no matter what (if i have 3+ coins in my inventory)
whats wrong with their script?
import sys
from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance
from com.l2jfrozen.gameserver.model.actor.instance import L2NpcInstance
from java.util import Iterator
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 = "6666_NoblessTrader"
NPC = [66666]
NOBLESS_TIARA = 7694
VOTE_COIN = 7569
QuestId = 6666
QuestName = "NoblessTrade"
QuestDesc = "custom"
InitialHtml = "31739-1.htm"
print "Nobless Trader (66666) Enabled..."
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
def onEvent(self,event,st):
htmltext = "<html><head><body>I have nothing to say you</body></html>"
cond = st.getInt("cond")
count=st.getQuestItemsCount(VOTE_COIN)
if event == "31739-3.htm" :
if cond == 0 and st.getPlayer().isSubClassActive() :
if st.getPlayer().getLevel() >= 70 and count > 1:
htmltext=event
st.set("cond","0")
st.getPlayer().setNoble(True)
st.giveItems(NOBLESS_TIARA,1)
st.playSound("ItemSound.quest_finish")
st.setState(COMPLETED)
st.takeItems(VOTE_COIN,150)
else :
htmltext="31739-2.htm"
st.exitQuest(1)
else :
htmltext="31739-2.htm"
st.exitQuest(1)
return htmltext
def onTalk (self,npc,player):
htmltext = "<html><head><body>I have nothing to say you</body></html>"
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
if id == CREATED :
st.set("cond","0")
htmltext="31739-1.htm"
elif id == COMPLETED :
htmltext = "<html><head><body>This quest have already been completed.</body></html>"
else :
st.exitQuest(1)
return htmltext
QUEST = Quest(6666,qn,"custom")
CREATED = State('Start', QUEST)
STARTING = State('Starting', QUEST)
STARTED = State('Started', QUEST)
COMPLETED = State('Completed', QUEST)
QUEST.setInitialState(CREATED)
for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)
the translation on google is something about discovering a mammoths dick or something
but generally he says that "dick" a lot maybe he likes them
but whats the story behind and what is the truth ..we will never know
Question
One Shot Mario
Hello guys there is a problem with the npc, i set the st.takeItems(VOTE_COIN,150) but still i can become nobless with 3-4 and so on coins, (when i have 150 the npc is taking normally the coins and i get nob status)
so i can become nob with less than 150 vote coins no matter what (if i have 3+ coins in my inventory)
whats wrong with their script?
import sys from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance from com.l2jfrozen.gameserver.model.actor.instance import L2NpcInstance from java.util import Iterator 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 = "6666_NoblessTrader" NPC = [66666] NOBLESS_TIARA = 7694 VOTE_COIN = 7569 QuestId = 6666 QuestName = "NoblessTrade" QuestDesc = "custom" InitialHtml = "31739-1.htm" print "Nobless Trader (66666) Enabled..." class Quest (JQuest) : def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr) def onEvent(self,event,st): htmltext = "<html><head><body>I have nothing to say you</body></html>" cond = st.getInt("cond") count=st.getQuestItemsCount(VOTE_COIN) if event == "31739-3.htm" : if cond == 0 and st.getPlayer().isSubClassActive() : if st.getPlayer().getLevel() >= 70 and count > 1: htmltext=event st.set("cond","0") st.getPlayer().setNoble(True) st.giveItems(NOBLESS_TIARA,1) st.playSound("ItemSound.quest_finish") st.setState(COMPLETED) st.takeItems(VOTE_COIN,150) else : htmltext="31739-2.htm" st.exitQuest(1) else : htmltext="31739-2.htm" st.exitQuest(1) return htmltext def onTalk (self,npc,player): htmltext = "<html><head><body>I have nothing to say you</body></html>" st = player.getQuestState(qn) if not st : return htmltext npcId = npc.getNpcId() id = st.getState() if id == CREATED : st.set("cond","0") htmltext="31739-1.htm" elif id == COMPLETED : htmltext = "<html><head><body>This quest have already been completed.</body></html>" else : st.exitQuest(1) return htmltext QUEST = Quest(6666,qn,"custom") CREATED = State('Start', QUEST) STARTING = State('Starting', QUEST) STARTED = State('Started', QUEST) COMPLETED = State('Completed', QUEST) QUEST.setInitialState(CREATED) for npcId in NPC: QUEST.addStartNpc(npcId) QUEST.addTalkId(npcId)Edited by One Shot Mario7 answers to this question
Recommended Posts