Перейти к содержанию
Авторизация  
MrSunrise1992

Импорты

Рекомендуемые сообщения

меняю импорты для Л2 Дрим

 

квест на крылья...

 

import sys

from l2dream import Config

from l2dream.gameserver.model.quest import State

from l2dream.gameserver.model.quest import QuestState

from l2dream.gameserver.model.quest.jython import QuestJython as JQuest

 

qn = "q902_FeatherGathering"

 

# ID's NPC используемых в квесте #

#########################################################

# ID NPC Для квеста #

NPC = 300301

# ID Мобов, с которых падает квест итем #

MOBS = [22132,22130,22131,22135]

# ID Босса, которого нужно убить по квесту #

BOSS = 25450

#########################################################

 

 

# ID's Items используемых в квест #

#########################################################

# ID Итемов которые будут падать из MOBS #

FEATHER = 2129

# ID Итема которое будет падать из BOSS #

BOSS_ITEM = 2125

#########################################################

 

 

# Награда за квест #

#########################################################

# ID Награды за квест #

WINNER = 7058

# Количество награды Min #

 

class Quest (JQuest) :

 

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

 

def onEvent (self,event,st) :

htmltext = event

count = st.getInt("cond")

if event == "accept.htm":

st.setState(STARTED)

st.playSound("ItemSound.quest_accept")

st.set("cond","1")

elif event == "finish.htm":

if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1:

st.takeItems(FEATHER, -1)

st.takeItems(BOSS_ITEM, -1)

st.giveItems(WINNER, 1)

st.set("cond","0")

st.playSound("ItemSound.quest_finish")

st.setState(COMPLETED)

else:

htmltext = "mobs.htm"

return htmltext

 

def onTalk (self,npc,player):

st = player.getQuestState(qn)

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.</body></html>"

if not st:

return htmltext

npcId = npc.getNpcId()

idd = st.getState()

cond = st.getInt("cond")

if npcId == NPC:

if idd == COMPLETED :

htmltext = "completed.htm"

if idd == CREATED :

htmltext = "hello1.htm"

elif cond == 1:

if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1:

htmltext = "mobs2.htm"

else:

htmltext = "mobs.htm"

return htmltext

 

def onKill(self,npc,player,isPet):

st = player.getQuestState(qn)

if not st or st.getInt("cond") != 1:

return

npcId = npc.getNpcId()

reward = 0

limit = 1

chance = 100

count = 1

if npcId in MOBS:

reward = FEATHER

limit = FEATHER_NEED

chance = FEATHER_CHANCE

count = st.getInt(не знаю что ставить тут) # на этом месте ошибка (SyntaxError: ('invalid syntax', ('__init__.py', 91, 10, '\t count = st.getInt("cond")')))

 

if npcId == BOSS:

reward = BOSS_ITEM

limit = 1

count = 1

if reward > 0:

party = player.getParty()

if party:

for member in party.getPartyMembers():

if not member.isAlikeDead():

st = member.getQuestState("q902_FeatherGathering")

if st and st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance:

st.giveItems(reward, count)

st.playSound("ItemSound.quest_itemget")

if st.getQuestItemsCount(reward) >= limit:

st.playSound("ItemSound.quest_middle")

else:

if st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance:

st.giveItems(reward, count)

st.playSound("ItemSound.quest_itemget")

return

 

QUEST = Quest(902, qn, "Feather Gathering")

 

CREATED = State('Start', QUEST)

STARTED = State('Started', QUEST)

COMPLETED = State('Completed', QUEST)

 

QUEST.setInitialState(CREATED)

QUEST.addStartNpc(NPC)

QUEST.addTalkId(NPC)

QUEST.addKillId(BOSS)

 

for m in MOBS:

QUEST.addKillId(m)

 

Помогите пожалуйста... сменя +

Изменено пользователем MrSunrise1992

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А если оставить

count = st.getInt(не знаю что ставить тут)

count = st.getInt()

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А если оставить

count = st.getInt(не знаю что ставить тут)

count = st.getInt()

 

SyntaxError: ('invalid syntax', ('__init__.py', 91, 10, '\t count = st.getInt()'))

 

опять ошибка...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А если оставить

count = st.getInt(не знаю что ставить тут)

count = st.getInt()

 

мб там не "st.getInt" ставить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...