Skip to content
La2Base
Home
DownloadsWikiForumFAQ
ruen
Sign up Login
HomeFilesWikiLogin
  • Home
  • Downloads
  • Wiki
  • FAQ
  • Contact Us
  • About
  • Rules
  • Privacy
  • Terms of Service

© 2026 la2base.com · All rights reserved

ruen
Forum/Квесты/Clan Items
Search

Clan Items

1 replies100 viewsCurrently viewing: 1
Mallorn
Mallorn

Author

Новичок

Posts: 12

На форуме с: 02/12/2008

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

Рейтинг: 0

· 09/21/2008, 10:24 PM

В патч-нотах еще к 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
Войдите или зарегистрируйтесь чтобы ответить