28-05-2010, 12:56 PM
|
#8 (permalink)
|
|
Membro - General
Registrado em: Mar 2009
Localização: Buteco.
Posts: 226
Agradecido 234 Vezes em 96 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
|
PQP ! Lógico que tem, mano. Como você acha que criam teleports VIP e afins? @_@
Vou colocar a base de um __init__.py aqui e aí você se vira pra fazer. (:
Citação:
#Exemplo de Teleport Custom
import sys
from com.l2scoria.gameserver.model.quest import State
from com.l2scoria.gameserver.model.quest import QuestState
from com.l2scoria.gameserver.model.quest.jython import QuestJython as JQuest
qn = "9958_CustomTeleport"
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
if event:
if st.getQuestItemsCount(6673) >= 1 :
st.takeItems(6673,1)
player.teleToLocation(-119534, 87176, -12583)
return
return event
def onTalk (self,npc,player):
st = player.getQuestState(qn)
if not st :
return ""
return "44002-1.htm"
QUEST = Quest(-1,qn,"Teleports")
QUEST.addStartNpc(44002)
QUEST.addTalkId(44002)
|
Explicações:
qn = "9958_CustomTeleport" ; 9958_CustomTeleport é o nome da quest, ou seja, o nome da pasta que terá este __init__ e as html's de falas do NPC. Caso você não faça a sua quest com esse nome, basta mudar está linha.
if st.getQuestItemsCount(6673) >= 1 / st.takeItems(6673,1) ; 6673 é o ID do item que você vai usar, e 1 é a quantidade. Então, caso você já tenha um item em mente para ser usado no Teleport, é só colocar o ID nessas linhas.
player.teleToLocation(-119534, 87176, -12583) ; Coordenadas do teleport, ou seja, o lugar de spawn quando o Player X teleportar para o Local Y. Muda as coordenadas de acordo com o local desejado.
QUEST.addStartNpc(44002) / QUEST.addTalkId(44002) / return "44002-1.htm" ; 44002 é o ID do seu NPC, caso já tenha um NPC com esse ID no seu servidor, basta mudar aqui. Lembrando, que você pode criar o NPC como L2Npc, L2Teleport basta ter uma html na pasta default/Teleport com um link de redirecionamento para a sua quest.
Exemplo: <a action="bypass -h npc_%objectId%_Quest 9958_CustomTeleport">Teleport Custom .</a>
O ID 44002-1 é a html que tem que ficar na pasta 9958_CustomTeleport.
|
|
|