Skip to content

[Help]how to Change script for more payments IDs

Featured Replies

Hello i have this hero manager

qn = "8204_NpcHero"

NPC=[7202]
GOLDBAR = 3470
DESTINY_CIRCLET = 6842
QuestId     = 8204
QuestName   = "NpcHero"
QuestDesc   = "custom"
InitialHtml = "1.htm"

print "--INFO Loaded: Custom Hero Seller--"

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(GOLDBAR)
	if count < 10  and st.getPlayer().getLevel() < 80 :
		htmltext = "<html><head><body>You dont have enough items to use this Action NOOB.</body></html>"

	elif st.getPlayer().isHero() == 1 :
		htmltext = "<html><head><body> Sorry, You Have Already Hero Status!</body></html>"

	elif st.getQuestItemsCount(GOLDBAR) < 20 :	
                        htmltext = "<html><head><body>You dont have enough items to use this Action.</body></html>"

	else:
		st.getPlayer().setTarget(st.getPlayer())

		if event == "2":
			st.takeItems(GOLDBAR,20)
                                st.getPlayer().setHero(True)
                                st.giveItems(DESTINY_CIRCLET,1)
                                st.playSound("ItemSound.quest_finish")
			st.setState(State.COMPLETED)
			return "HeroFinish.htm"
                                st.exitQuest(1)	


		if htmltext != event:
			st.setState(State.COMPLETED)
			st.exitQuest(1)
	return htmltext


def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   htmltext = "<html><head><body>I have nothing to say to you</body></html>"
   st.setState(State.STARTED)
   return InitialHtml

QUEST       = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)

for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)

And i want instead of GOLDBAR  this ids:    i have try a lot of edits but i can't  succeed.

H = 3880

E = 3877

R= 3885

O = 3884

 

I don't think that is something difficult just spend 3 min and i will appreciate it.

you mean, to get hero status they must have those ids?

anyway never been a developer or something, but..

 

 

Hello i have this hero manager

qn = "8204_NpcHero"

NPC=[7202]
name1 = 3880
name2 = 3877
name3= 3885
name4 = 3884

DESTINY_CIRCLET = 6842
QuestId     = 8204
QuestName   = "NpcHero"
QuestDesc   = "custom"
InitialHtml = "1.htm"

print "--INFO Loaded: Custom Hero Seller--"

class Quest (JQuest) :

def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)


def onEvent(self,event,st):
	htmltext = event
[color=red]	count=st.getQuestItemsCount("name1", "name2", "name3", "name4")[/color]
	if count < 10  and st.getPlayer().getLevel() < 80 :
		htmltext = "<html><head><body>You dont have enough items to use this Action NOOB.</body></html>"

	elif st.getPlayer().isHero() == 1 :
		htmltext = "<html><head><body> Sorry, You Have Already Hero Status!</body></html>"

        elif st.getQuestItemsCount("name1", "name2", "name3", "name4") < 1 :	
                        htmltext = "<html><head><body>You dont have enough items to use this Action.</body></html>"

	else:
		st.getPlayer().setTarget(st.getPlayer())

		if event == "2":
			st.takeItems("name1", "name2", "name3", "name4", 1)
                                st.getPlayer().setHero(True)
                                st.giveItems(DESTINY_CIRCLET,1)
                                st.playSound("ItemSound.quest_finish")
			st.setState(State.COMPLETED)
			return "HeroFinish.htm"
                                st.exitQuest(1)	


		if htmltext != event:
			st.setState(State.COMPLETED)
			st.exitQuest(1)
	return htmltext


def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   htmltext = "<html><head><body>I have nothing to say to you</body></html>"
   st.setState(State.STARTED)
   return InitialHtml

QUEST       = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)

for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)

though wait for a real developer to make it, i have no idea about developing  :D

 

  • Author

I got this error :

SyntaxError: ('inconsistent dedent', ('__init__.py', 35, 15, '\t      count=st.getQuestItemsCount("name1", "name2", "name3", "name4")'))

 

I tried this and before post :)

 

Any dev to answer?

  • Author

What i NEED now

 

		count=st.getQuestItemsCount(FIRST )

I WANT TO PUT THERE MORE ITEMS BUT IF I PUT (FIRST,SECOND,THIRD) I GET SYNTAX ERROR ETC

IF I PUT AND AGAIN SYNTAX ERROR

 

So noone in this forum don't know ?...

I can, but with quest done with java.

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.