Вопрос?! - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Работа со скриптами

Работа со скриптами Помощь в редактировании и написании квестов к Java серверам, а так же эвентов.

Ответ
Опции темы
Непрочитано 18.01.2012, 18:51   #1
Пользователь

Автор темы (Топик Стартер) Вопрос?!

Извиняюсь за беспокойства но столкнулся с такой проблемой, самому решить не удалось поэтому попрошу у вас помощи....

Суть проблемы такова, все знают эвент GlitteringMedals в которой за медальки поднимают уровень коллекционера. Когда нажимаешь чтоб поднять уровень выскакивает хтм(ка) в которой надо пройти некую игру (узнать в какой руке) при правильном ответе уровень повышается. Я хочу чтоб этой игры не было.Сколько код не перебирал неполучалось убрать всю эту "игру"

Вот код скрипта

Цитата:
import sys
from net.sf.l2j.gameserver.model.quest import State
from net.sf.l2j.gameserver.model.quest import QuestState
from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest
from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance

qn = "111_HeavyMedal"

#cats
ROY = 51228
WINNIE = 31229
#item
EVENT_GLITTERING_MEDAL = 6393
#marks
RABBIT = 6399
HYENA = 6400
FOX = 6401
WOLF = 6402

CHANCE = 35

PAY = 5


class Quest (JQuest) :

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


if cond == 0 :
if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*1 :
st.takeItems(EVENT_GLITTERING_MEDAL,PAY*1)
st.giveItems(RABBIT,1)
st.set("cond","1")
st.playSound("ItemSound.quest_itemget")
htmltext = "win-1.htm"
else :
htmltext = "less.htm"
elif cond == 1 :
if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*2 :
st.takeItems(EVENT_GLITTERING_MEDAL,PAY*2)
st.takeItems(RABBIT,1)
st.giveItems(HYENA,1)
st.set("cond","2")
st.playSound("ItemSound.quest_itemget")
htmltext = "win-1.htm"
else :
htmltext = "less.htm"
elif cond == 2 :
if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*4 :
st.takeItems(EVENT_GLITTERING_MEDAL,PAY*4)
st.takeItems(HYENA,1)
st.giveItems(FOX,1)
st.set("cond","3")
st.playSound("ItemSound.quest_itemget")
htmltext = "win-1.htm"
else :
htmltext = "less.htm"
elif cond == 3 :
if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*8 :
st.takeItems(EVENT_GLITTERING_MEDAL,PAY*8)
st.takeItems(FOX,1)
st.giveItems(WOLF,1)
st.set("cond","4")
st.playSound("ItemSound.quest_finish")
htmltext = "win.htm"
else :
htmltext = "less.htm"
else:
htmltext = "lose.htm"
if cond == 0 :
st.takeItems(EVENT_GLITTERING_MEDAL,PAY*1)
elif cond == 1:
st.takeItems(EVENT_GLITTERING_MEDAL,PAY*2)
elif cond == 2 :
st.takeItems(EVENT_GLITTERING_MEDAL,PAY*4)
elif cond == 3 :
st.takeItems(EVENT_GLITTERING_MEDAL,PAY*8)
return htmltext


def onTalk (self,npc,player):
st = player.getQuestState(qn)
npcId = npc.getNpcId()
cond = st.getInt("cond")
htmltext = "<html><body>Мне нечего тебе сказать</body></html>"
if not st : return htmltext
if npcId == WINNIE :
if st.getQuestItemsCount(RABBIT) == 0 and st.getQuestItemsCount(HYENA) == 0 and st.getQuestItemsCount(FOX) == 0 and st.getQuestItemsCount(WOLF) == 0 :
htmltext = "5.htm"
st.set("cond","0")
elif cond == 1 :
htmltext = "10.htm"
elif cond == 2 :
htmltext = "20.htm"
elif cond == 3 :
htmltext = "40.htm"
elif st.getQuestItemsCount(WOLF) == 1 :
htmltext = "win.htm"
else: htmltext = "win.htm"

elif npcId == ROY :
if st.getQuestItemsCount(RABBIT) == 0 and st.getQuestItemsCount(HYENA) == 0 and st.getQuestItemsCount(FOX) == 0 and st.getQuestItemsCount(WOLF) == 0 :
htmltext = "roy.htm"
elif st.getQuestItemsCount(RABBIT) == 1 :
htmltext = "roy-1.htm"
elif st.getQuestItemsCount(HYENA) == 1 :
htmltext = "roy-2.htm"
elif st.getQuestItemsCount(FOX) == 1 :
htmltext = "roy-3.htm"
elif st.getQuestItemsCount(WOLF) == 1 :
htmltext = "roy-4.htm"
return htmltext

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

# Quest NPC starter initialization
QUEST.addStartNpc(ROY)
QUEST.addStartNpc(WINNIE)
QUEST.addTalkId(ROY)
QUEST.addTalkId(WINNIE)

сам эвент

Добавлено через 1 час 20 минут
Не как не могу найти что удалить что бы убрать эту "дурную" игру!!!!

Или новый уровень не даст либо вообще не работает нечего!!!

Добавлено через 1 час 36 минут
Убираю запрос на игру он уровень не дает! Пытаюсь редактировать чтоб уровень давал без игры не работает! Наведите на мысль что здесь и как

Добавлено через 1 час 56 минут
На словах просто объясните что нужно врезать что бы убрать игру

Последний раз редактировалось ncc; 18.01.2012 в 20:47. Причина: Добавлено сообщение
ncc вне форума Ответить с цитированием
Непрочитано 23.01.2012, 11:39   #2
Аватар для LestatL
Пользователь

По умолчанию Re: Вопрос?!

сборку бы указали

Добавлено через 1 минуту
а в целом - можно хтмлку переделать просто - самое простое решение
__________________
Улыбаемся и машем

Последний раз редактировалось LestatL; 23.01.2012 в 11:40. Причина: Добавлено сообщение
LestatL вне форума Ответить с цитированием
Непрочитано 23.01.2012, 12:07   #3
Аватар для ExLite
.

По умолчанию Re: Вопрос?!

Вроде так:
Код:
import sys
from net.sf.l2j.gameserver.model.quest import State
from net.sf.l2j.gameserver.model.quest import QuestState
from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest
from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance

qn = "111_HeavyMedal"

#cats
ROY = 51228
WINNIE = 31229
#item
EVENT_GLITTERING_MEDAL = 6393
#marks
RABBIT = 6399
HYENA = 6400
FOX = 6401
WOLF = 6402

CHANCE = 35

PAY = 5


class Quest (JQuest) :

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


        if cond == 0 :
           if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*1 :
              st.takeItems(EVENT_GLITTERING_MEDAL,PAY*1)
              st.giveItems(RABBIT,1)
              st.set("cond","1")
              st.playSound("ItemSound.quest_itemget")
              htmltext = "win-1.htm"
           else :
              htmltext = "less.htm" 
        elif cond == 1 :
           if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*2 :
              st.takeItems(EVENT_GLITTERING_MEDAL,PAY*2)
              st.takeItems(RABBIT,1)
              st.giveItems(HYENA,1)
              st.set("cond","2")
              st.playSound("ItemSound.quest_itemget")
              htmltext = "win-1.htm"
           else :
              htmltext = "less.htm"             
        elif cond == 2 :
           if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*4 :
              st.takeItems(EVENT_GLITTERING_MEDAL,PAY*4)
              st.takeItems(HYENA,1)
              st.giveItems(FOX,1)
              st.set("cond","3")
              st.playSound("ItemSound.quest_itemget")
              htmltext = "win-1.htm"
           else :
              htmltext = "less.htm"               
        elif cond == 3 :
           if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*8 :
              st.takeItems(EVENT_GLITTERING_MEDAL,PAY*8)
              st.takeItems(FOX,1)
              st.giveItems(WOLF,1)
              st.set("cond","4")
              st.playSound("ItemSound.quest_finish")
              htmltext = "win.htm"
           else :
              htmltext = "less.htm" 
      else: 
        htmltext = "win.htm"
        if cond == 0 :
            if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*1 :
              st.takeItems(EVENT_GLITTERING_MEDAL,PAY*1)
              st.giveItems(RABBIT,1)
              st.set("cond","1")
              st.playSound("ItemSound.quest_itemget")
              htmltext = "win-1.htm"
           else :
              htmltext = "less.htm" 
        elif cond == 1:
           if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*2 :
              st.takeItems(EVENT_GLITTERING_MEDAL,PAY*2)
              st.takeItems(RABBIT,1)
              st.giveItems(HYENA,1)
              st.set("cond","2")
              st.playSound("ItemSound.quest_itemget")
              htmltext = "win-1.htm"
           else :
              htmltext = "less.htm"      
        elif cond == 2 :
             if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*4 :
              st.takeItems(EVENT_GLITTERING_MEDAL,PAY*4)
              st.takeItems(HYENA,1)
              st.giveItems(FOX,1)
              st.set("cond","3")
              st.playSound("ItemSound.quest_itemget")
              htmltext = "win-1.htm"
           else :
              htmltext = "less.htm"        
        elif cond == 3 :
            if st.getQuestItemsCount(EVENT_GLITTERING_MEDAL) >= PAY*8 :
              st.takeItems(EVENT_GLITTERING_MEDAL,PAY*8)
              st.takeItems(FOX,1)
              st.giveItems(WOLF,1)
              st.set("cond","4")
              st.playSound("ItemSound.quest_finish")
              htmltext = "win.htm"
           else :
              htmltext = "less.htm" 
    return htmltext


 def onTalk (self,npc,player):
   st = player.getQuestState(qn)
   npcId = npc.getNpcId()
   cond = st.getInt("cond")
   htmltext = "<html><body>Мне нечего тебе сказать</body></html>"
   if not st : return htmltext
   if npcId == WINNIE :
     if st.getQuestItemsCount(RABBIT) == 0 and st.getQuestItemsCount(HYENA) == 0 and st.getQuestItemsCount(FOX) == 0 and st.getQuestItemsCount(WOLF) == 0 :
       htmltext = "5.htm"
       st.set("cond","0")
     elif cond == 1 :
       htmltext = "10.htm"
     elif cond == 2 :
       htmltext = "20.htm"
     elif cond == 3 :
       htmltext = "40.htm"
     elif st.getQuestItemsCount(WOLF) == 1 :
       htmltext = "win.htm"
     else: htmltext = "win.htm"
   
   elif npcId == ROY :
     if st.getQuestItemsCount(RABBIT) == 0 and st.getQuestItemsCount(HYENA) == 0 and st.getQuestItemsCount(FOX) == 0 and st.getQuestItemsCount(WOLF) == 0 :
       htmltext = "roy.htm"
     elif st.getQuestItemsCount(RABBIT) == 1 :
       htmltext = "roy-1.htm"
     elif st.getQuestItemsCount(HYENA) == 1 :
       htmltext = "roy-2.htm"
     elif st.getQuestItemsCount(FOX) == 1 :
       htmltext = "roy-3.htm"
     elif st.getQuestItemsCount(WOLF) == 1 :
       htmltext = "roy-4.htm"
   return htmltext

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

# Quest NPC starter initialization
QUEST.addStartNpc(ROY)
QUEST.addStartNpc(WINNIE)
QUEST.addTalkId(ROY)
QUEST.addTalkId(WINNIE)

Последний раз редактировалось ExLite; 23.01.2012 в 12:34.
ExLite вне форума Отправить сообщение для ExLite с помощью ICQ Отправить сообщение для ExLite с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по ОС Hard Курилка / Yak floor 26 10.11.2011 18:21
Вопрос по htm NightAngel Lineage II 7 17.08.2011 01:57
Вопрос по Яве.. KOMPoT Серверная часть 4 16.03.2011 13:00
Вопрос nikitawasa Работа со скриптами 5 02.10.2010 20:08


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 16:34. Часовой пояс GMT +3.

Вверх