Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Работа со скриптами (https://forum.zone-game.info/forumdisplay.php?f=37)
-   -   NPC LvL Manager (https://forum.zone-game.info/showthread.php?t=3175)

Huk 05.03.2009 18:24

NPC LvL Manager
 
Вот срипт на NPC LvL Manager,который понижает за адену лвл,а как сделать обратное действие чтобы он повышал лвл или сразу 85 давал ? Что нужно поправить ?
Код:

import sys
from com.l2jfree        import L2DatabaseFactory
from com.l2jfree.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from com.l2jfree.gameserver.model.quest import State
from com.l2jfree.gameserver.model.quest import QuestState
from com.l2jfree.gameserver.model.quest.jython import QuestJython as JQuest

qn          = "755_LvLManager"
NPC        = [755]
####################
ID_ITEM_1  = 57  #< Poner el item a gusto ;)
####################
C_ITEM_1    = 1    #< Cantidad requerida del item 1
####################
ID_ITEM_2  = 57  #< Si es q se quiere pedir un 2do item
####################
C_ITEM_2    = 0    #< Cantidad requerida del item 2
####################
C_LVL      = 1    #< Cantidad de levels a bajar
####################
QuestId    = 755
QuestName  = "LvLManager"
QuestDesc  = "custom"
InitialHtml = "1.htm"

print "INFO Loaded: LvLManager"

class Quest (JQuest) :

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

        def onEvent(self,event,st):
                htmltext = event
                level = st.getPlayer().getLevel()
                cdad1 = st.getQuestItemsCount(ID_ITEM_1)
                cdad2 = st.getQuestItemsCount(ID_ITEM_2)

                if cdad1 < C_ITEM_1 :                #Cantidad item 1
                        htmltext = "error1.htm"

                elif cdad2 < C_ITEM_2 :        #Cantidad item 2
                        htmltext = "error2.htm"

                else:
                        st.getPlayer().setTarget(st.getPlayer())

                        #Hawkeye
                        if event == "bajar":
                                delexp = (st.player.getStat().getExp()-st.player.getStat().getExpForLevel(level-C_LVL))
                                st.player.getStat().addExp(-delexp)
                                st.takeItems(ID_ITEM_1,C_ITEM_1)
                                st.takeItems(ID_ITEM_2,C_ITEM_2)
                                st.playSound("ItemSound.quest_finish")
                                  return "Completada.htm"
                                st.exitQuest(1)

                        if htmltext != event:
                                st.exitQuest(1)
                return htmltext


        def onTalk (self,npc,player):
          st = player.getQuestState(qn)
          htmltext = "<html><body>No tengo nada para decirte.</body></html>"
          st.setState(State.STARTED)
          return InitialHtml

QUEST = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)

for npcId in NPC:
 QUEST.addStartNpc(npcId)
 QUEST.addTalkId(npcId)

Заранее спасибо !

tawrus 06.03.2009 10:16

Ответ: NPC LvL Manager
 
Цитата:

Сообщение от Huk (Сообщение 29009)
Вот срипт на NPC LvL Manager,который понижает за адену лвл,а как сделать обратное действие чтобы он повышал лвл или сразу 85 давал ? Что нужно поправить ?

####################
C_LVL = 1 #< Cantidad de levels a bajar
####################
delexp = (st.player.getStat().getExp()-st.player.getStat().getExpForLevel(level-C_LVL))


Заранее спасибо !

судя по этим строкам можно просто изменить значение константы C_LVL = 1 на C_LVL = нужный тебе левел

Hunk 28.07.2009 11:33

Ответ: NPC LvL Manager
 
Поделитесь хтмлками к этому нпс.

glGizma 17.09.2009 20:39

Ответ: NPC LvL Manager
 
Вот вам полный LvL Manager:
http://www.4shared.com/file/66037402...vlManager.html

Tonchi 17.09.2009 21:35

Ответ: NPC LvL Manager
 
кто та делал такое под ребилион?, феникс, или сср??))


Текущее время: 04:51. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot