Показать сообщение отдельно
Непрочитано 19.07.2009, 22:49   #1
Аватар для Aristocrat
Мастер

Автор темы (Топик Стартер) Телепорт за определеный итем: EMU-RT 482

В Таблицах SQL сборки 482, в родных ТП указанна только требуемое количество итемов, а не их ID. Мне нужно сделать так, чтобы при наличии определенного итема, НПС телепортировал в определенную точку карты и забирал итем.
Пробовал переделать квест 1104_NewbieTravelToken

[SPOILER]# Newbie Travel Token Teleport - by DrLecter
import sys
from net.l2emuproject.gameserver.model.quest import State
from net.l2emuproject.gameserver.model.quest import QuestState
from net.l2emuproject.gameserver.model.quest.jython import QuestJython as JQuest

qn = "1104_NewbieTravelToken"

DATA={
30600:[ 12111, 16686,-4584], #DE
30601:[115632,-177996, -896], #DW
30599:[ 45475, 48359,-3056], #EV
30602:[-45032,-113598, -192], #OV
30598:[-84081, 243227,-3728], #TI
32135:[-119697, 44532, 360] #KM
}

class Quest (JQuest) :

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

def onEvent (self,event,st):
if event.isdigit() :
dest = int(event)
if dest in DATA.keys() :
x,y,z = DATA[dest]
if x and y and z :
st.getPlayer().teleToLocation(x,y,z)
st.exitQuest(1)
return

def onTalk (Self,npc,player):
st = player.getQuestState(qn)
npcId = npc.getNpcId()
if player.getLevel() >= 20 :
htmltext = "1.htm"
st.exitQuest(1)
else:
htmltext = str(npcId)+".htm"
return htmltext

QUEST = Quest(1104,qn,"Teleports")

for i in DATA.keys() :
QUEST.addStartNpc(i)
QUEST.addTalkId(i)[/SPOILER]

, для себя, но неполучилось. НПС просто игнорит. Помогите пожалуйста разобраться как самому сделать ТП за определенные итемы.
Aristocrat вне форума Ответить с цитированием