Решил поставить квест Noob farmZona на Frozen
Но не могу понять почему он не работает!
# -*- coding: cp1251 -*-
import sys
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 = "50000_NewbieZone"
#НПЦ Старт квеста - указан ИД в строке.
Starter = 70012
#Приз за успешное убийство монстра.указать ИД.
ItemID = 1167
#Количество вещей дающихся за успешное убийство монстра. Указать количество - Внимание, не указывайте слишком высокие цифры если дело идет
о вещах которые не складываются в одну ячейку, это может повредить серверу!
Item_AMOUNT = 1
#IУкажите ИД вещей запрещенных на вход в евент.
#Пример указывания ИД запрещенных вещей:
# RI = [ ID, ID2, ID3...]
class Quest (JQuest):
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
def onKill (self,npc,player,isPet):
npcId = npc.getNpcId()
st = player.getQuestState(qn)
if npc.getNpcId() in [Monsters] :
#Выставляем ИД вещей которые НЕЛЬЗЯ использовать на квесте.
if st.getQuestItemsCount(9300) >= 1 or st.getQuestItemsCount(9302) >= 1 or st.getQuestItemsCount(9304) >= 1 or st.getQuestItemsCount(9306) >= 1:
return
else:
st.giveItems(ItemID,Item_AMOUNT)
else :
return
def onTalk (self,npc,player):
htmltext = "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.by Xenos_xp</body></html>"
st = player.getQuestState(qn)
if st:
npcId = npc.getNpcId()
id = st.getState()
cond = st.getInt("cond")
#Выставляем ИД вещей которые НЕЛЬЗЯ использовать на квесте.
if st.getQuestItemsCount(9300) >= 1 or st.getQuestItemsCount(9302) >= 1 or st.getQuestItemsCount(9304) >= 1 or st.getQuestItemsCount(9306) >= 1:
#Введите хтмл файл который будет отображать что требования для входа в евент не подходящие.
htmltext = "2.htm"
else :
#Введите координаты х,у,z на зону телепорта, координаты можно узнать из игры командой /loc
st.getPlayer().teleToLocation(154336,121232,-3809)
#Текст который будет появляться после успешного телепорта в локацию.
htmltext = "3.htm"
return htmltext
def onAttack (self,npc,player,damage,isPet):
st = player.getQuestState(qn)
npcId = npc.getNpcId()
#Выставляем ИД моба который будет участвовать в евенте, нет зависимости от конфигов.
if npcId == 21089:
if st.getQuestItemsCount(9300) >= 1 or st.getQuestItemsCount(9302) >= 1 or st.getQuestItemsCount(9304) >= 1 or st.getQuestItemsCount(9306) >= 1:
#Введите координаты х,у,z на которых будет перемещаться игрок, если он пробует бить монстра с не разреженным еквиптом.
st.getPlayer().teleToLocation(17152,170144,-3490)
#Выставляем циферку кармы, которая прибавляется при попытке наебать систему.
st.getPlayer().setKarma(st.getPlayer().getKarma() +500)
return
QUEST = Quest(50000, qn, "NewbieZone")
QUEST.addStartNpc(Starter)
QUEST.addTalkId(Starter)
#Монстры которые участвует в квесте, указать ИД.
#Таблица монстров, пример вноса ИД в таблицу:
#[1234, 33345, 3435]
for Monsters in [21089]:
QUEST.addKillId(Monsters)
QUEST.addAttackId(21089)