Перейти к содержимому
La2Base
Главная
ЗагрузкиВикиФорумFAQ
ruen
Регистрация Войти
ГлавнаяФайлыВикиВойти
  • Главная
  • Загрузки
  • Вики
  • FAQ
  • Обратная связь
  • О проекте
  • Правила
  • Конфиденциальность
  • Условия использования

© 2026 la2base.com · Все права защищены

ruen
Форум/Квесты/Clan Items
Поиск

Clan Items

1 ответов97 просмотровСейчас просматривают: 1
Mallorn
Mallorn

Автор

Новичок

Постов: 12

На форуме с: 12.02.2008

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

Рейтинг: 0

· 21.09.2008, 22:24

В патч-нотах еще к CT1 было сообщение, что эполеты рыцаря, которые, к слову, дропаются во время осад замков и крепостей с гуардов и командеров, могут быть потрачены на покупку экслюзивных талисманов и рубашек. Или же их можно обменять у Clan Traders Ilia и Mulia (стоят в Адене и Руне). В разработке java-серверов пока реализации я не встречал. Решил написать сам, но вот как нарочно - ничего не выходит. Вот текст, поправьте или скажите что неверно здесь:

Код
# Created by L2Emu Team, changed by Mallorn
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
from net.l2emuproject.gameserver.network.serverpackets      import PledgeShowInfoUpdate
from net.l2emuproject.gameserver.network.serverpackets      import SystemMessage
from net.l2emuproject.tools.random import Rnd

qn = "7001_ClanItems"

# Vars
CLAN_POINTS_REWARD = 1000
EPAULETTE = 9912

class Quest (JQuest) :

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

def onFirstTalk (Self,npc,player):
   st = player.getQuestState(qn)
   npcId = npc.getNpcId()
   if npcId in [32024,32025] :
     if player.isClanLeader() :
       htmltext = str(npcId) + ".htm"
     else :
       htmltext = str(npcId) + "-no.htm"
   return htmltext

def onAdvEvent (self,event,npc,player) :
   st = player.getQuestState(qn)
   if not st : return
   clan = player.getClan()
   npcId = npc.getNpcId()
   htmltext = event
   if event == epaulettes :
     if clan == None or player.isClanLeader() == 0 :
       htmltext = str(npcId) + "-no.htm"
     elif player.getClan().getLevel() < 5 :
       htmltext = str(npcId) + "-level.htm"
     else :
       count = st.getQuestItemsCount(EPAULETTE)
       if not count :
          htmltext = str(npcId) + "-bad.htm"
       elif count >= 1000 :
          htmltext = str(npcId) + "-success.htm"
          st.takeItems(EPAULETTE,1000)
          clan.setReputationScore(clan.getReputationScore()+CLAN_POINTS_REWARD,True)
          player.sendPacket(SystemMessage(1777).addNumber(CLAN_POINTS_REWARD))
          clan.broadcastToOnlineMembers(PledgeShowInfoUpdate(clan))
   return htmltext

QUEST = Quest(7001,qn,"custom")

QUEST.addStartNpc(32024)
QUEST.addStartNpc(32025)

QUEST.addFirstTalkId(32024)
QUEST.addFirstTalkId(32025)

QUEST.addTalkId(32024)
QUEST.addTalkId(32025)


При вызове события epaulettes из хтмл просто закрывается окно с текстом, и тишина. Никаких ерроров в сервере, никаких проблем в тексте сервер на старте не находит. В чем дело, кто как думает?
Господа, давайте доделаем, будет очень полезная штука.

0
Войдите или зарегистрируйтесь чтобы ответить