Skip to content
La2Base
Home
DownloadsWikiForumFAQ
Search
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Форум для новичков[JAVA]/питон
Search

питон

3 replies58 viewsCurrently viewing: 1
Саша
Саша

User

Новичок

Posts: 11

На форуме с: 03/20/2008

Репутация: +1

Рейтинг: 0

· 01/13/2010, 05:35 PM

Сборка: Interlude RT 1.3.1.4

Краткое изложение СУТИ проблемы: Проблема с дороботкой скрипта на питоне

Вопрос: Что и где нужно дописать чтобы НПС с данным скриптом менял предмет на предмет к примеру самое популярное кол на адену, но менял все что есть в инвентаре сразу тоесть к примеру 1КоЛ=1кк аден, у персонажа в инвентоде допустим 5КоЛов он подходит к НПЦ жмёт по диалогу НПЦ заберает колы и даёт 5кк аден

Вот сам скрипт (на данный момент он меняет только по одному КоЛу)



Цитата
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

qn = "99999_Adena"

class Quest (JQuest) :

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

def onEvent (self,event,st) :
htmltext = event

if event == "1":
if st.getQuestItemsCount(4037) >= 1:
st.takeItems(4037,1)
st.giveItems(57,1000000)
htmltext = "80006-3.htm"
else:
htmltext = "80006-2.htm"
if htmltext != event:
st.setState(COMPLETED)
st.exitQuest(1)

return htmltext


def onTalk (self,npc,player):
st = player.getQuestState(qn)
if not st : return
npcId = npc.getNpcId()
if npcId == 80006 :
htmltext = "80006-1.htm"
st.setState(STARTED)
return htmltext



QUEST = Quest(99999,qn,"custom")
CREATED = State('Start', QUEST)
STARTED = State('Started', QUEST)
COMPLETED = State('Completed', QUEST)

QUEST.setInitialState(CREATED)

QUEST.addStartNpc(80006)
QUEST.addTalkId(80006)


заранее спасибо

0
V
VlLight
· 01/13/2010, 09:26 PM

было

Код
st.takeItems(4037,1)
st.giveItems(57,1000000)


стало
Код
count = st.getQuestItemsCount(4037)
st.takeItems(4037,count)
st.giveItems(57,1000000*count)


Это же просто :)

0
Саша
Саша

User

Новичок

Posts: 11

На форуме с: 03/20/2008

Репутация: +1

Рейтинг: 0

· 01/14/2010, 08:46 AM

спасибо огромное!!!

0
Topic is closed for replies