import sys
from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from net.sf.l2j.gameserver.datatables import SkillTable
from net.sf.l2j import L2DatabaseFactory
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
Вот у меня такие импорты сначало были но он сними не грузился
сейчас сделал вот такие:
import sys
from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from com.l2jfrozen.gameserver.datatables import SkillTable
from com.l2jfrozen.gameserver.model.quest import State
from com.l2jfrozen.gameserver.model.quest import QuestState
from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest
Стал грузится вижу окно с именами баффов нажимию например на БЕРС а бафер ноль эмоций(
Мож чёт я недогоняю подскажите плиз=)
Полный скрипт:
import sys
from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from com.l2jfrozen.gameserver.datatables import SkillTable
from com.l2jfrozen.gameserver.model.quest import State
from com.l2jfrozen.gameserver.model.quest import QuestState
from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest
qn = "99_NPCBuffer"
NPC=[99]
ADENA_ID=57
QuestId = 99
QuestName = "NPCBuffer"
QuestDesc = "custom"
InitialHtml = "1.htm"
print "importing custom: 99: NPCBuffer"
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
def onEvent(self,event,st):
htmltext = event
#Acumen
if event == "1":
SkillTable.getInstance().getInfo(1085,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Advanced Block
if event == "2":
SkillTable.getInstance().getInfo(1304,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Agility
if event == "3":
SkillTable.getInstance().getInfo(1087,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Arcane Protection
if event == "4":
SkillTable.getInstance().getInfo(1354,1).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Berserker Spirit
if event == "5":
SkillTable.getInstance().getInfo(1062,2).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Bless Shield
if event == "6":
SkillTable.getInstance().getInfo(1243,6).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Blessed Body
if event == "7":
SkillTable.getInstance().getInfo(1045,6).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Blessed Soul
if event == "8":
SkillTable.getInstance().getInfo(1048,6).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Clarity
if event == "9":
SkillTable.getInstance().getInfo(1397,3).getEffects(st.getPlayer(),st.getPlayer())
return "2.htm"
st.setState(COMPLETED)
#Chant of Protection
if event == "10":
SkillTable.getInstance().getInfo(1461,1).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Chant of Victory
if event == "11":
SkillTable.getInstance().getInfo(1363,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Concentration
if event == "12":
SkillTable.getInstance().getInfo(1078,6).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Death whisper
if event == "13":
SkillTable.getInstance().getInfo(1242,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Divine Protection
if event == "14":
SkillTable.getInstance().getInfo(1353,1).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Elemental Protection
if event == "15":
SkillTable.getInstance().getInfo(1352,1).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Empower
if event == "16":
SkillTable.getInstance().getInfo(1059,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Focus
if event == "17":
SkillTable.getInstance().getInfo(1077,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Greater Might
if event == "18":
SkillTable.getInstance().getInfo(1388,3).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Greater Shield
if event == "19":
SkillTable.getInstance().getInfo(1389,3).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Guidance
if event == "20":
SkillTable.getInstance().getInfo(1240,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Haste
if event == "21":
SkillTable.getInstance().getInfo(1086,2).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Holy Resistance
if event == "22":
SkillTable.getInstance().getInfo(1392,3).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Holy Weapon
if event == "23":
SkillTable.getInstance().getInfo(1043,1).getEffects(st.getPlayer(),st.getPlayer())
return "2.htm"
st.setState(COMPLETED)
#Invigor
if event == "24":
SkillTable.getInstance().getInfo(1032,3).getEffects(st.getPlayer(),st.getPlayer())
return "2.htm"
st.setState(COMPLETED)
#Magic Barrier
if event == "25":
SkillTable.getInstance().getInfo(1036,2).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Magnus' Chant
if event == "26":
SkillTable.getInstance().getInfo(1413,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Mental Shield
if event == "28":
SkillTable.getInstance().getInfo(1035,4).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Might
if event == "29":
SkillTable.getInstance().getInfo(1068,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Prophecy of Fire
if event == "30":
SkillTable.getInstance().getInfo(1356,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Prophecy of Water
if event == "31":
SkillTable.getInstance().getInfo(1355,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Prophecy of Wind
if event == "32":
SkillTable.getInstance().getInfo(1357,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Regeneration
if event == "33":
SkillTable.getInstance().getInfo(1044,3).getEffects(st.getPlayer(),st.getPlayer())
return "2.htm"
st.setState(COMPLETED)
#Resist Aqua
if event == "34":
SkillTable.getInstance().getInfo(1182,3).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Resist Fire
if event == "35":
SkillTable.getInstance().getInfo(1191,3).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Resist Poison
if event == "36":
SkillTable.getInstance().getInfo(1033,3).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Resist Shock
if event == "37":
SkillTable.getInstance().getInfo(1259,4).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Resist Wind
if event == "38":
SkillTable.getInstance().getInfo(1189,3).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Shield
if event == "39":
SkillTable.getInstance().getInfo(1040,3).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Unholy Resistance
if event == "40":
SkillTable.getInstance().getInfo(1393,3).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
#Vampiric Rage
if event == "41":
SkillTable.getInstance().getInfo(1268,4).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Wild Magic
if event == "42":
SkillTable.getInstance().getInfo(1303,2).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Dance of Aqua Guard
if event == "44":
SkillTable.getInstance().getInfo(307,1).getEffects(st.getPlayer(),st.getPlayer())
return "3.htm"
st.setState(COMPLETED)
#Dance of Concentration
if event == "45":
SkillTable.getInstance().getInfo(276,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Dance of Earth Guard
if event == "46":
SkillTable.getInstance().getInfo(309,1).getEffects(st.getPlayer(),st.getPlayer())
return "3.htm"
st.setState(COMPLETED)
#Dance of Fire
if event == "47":
SkillTable.getInstance().getInfo(274,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Dance of Fury
if event == "48":
SkillTable.getInstance().getInfo(275,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Dance of Inspiration
if event == "49":
SkillTable.getInstance().getInfo(272,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Dance of Light
if event == "50":
SkillTable.getInstance().getInfo(277,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Dance of Protection
if event == "51":
SkillTable.getInstance().getInfo(311,1).getEffects(st.getPlayer(),st.getPlayer())
return "3.htm"
st.setState(COMPLETED)
#Dance of the Mystic
if event == "52":
SkillTable.getInstance().getInfo(273,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Dance of the Vampire
if event == "53":
SkillTable.getInstance().getInfo(310,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Dance of the Warrior
if event == "54":
SkillTable.getInstance().getInfo(271,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Siren's Dance
if event == "55":
SkillTable.getInstance().getInfo(365,1).getEffects(st.getPlayer(),st.getPlayer())
return "3.htm"
st.setState(COMPLETED)
#Song of Champion
if event == "56":
SkillTable.getInstance().getInfo(364,1).getEffects(st.getPlayer(),st.getPlayer())
return "4.htm"
st.setState(COMPLETED)
#Song of Earth
if event == "57":
SkillTable.getInstance().getInfo(264,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Song of Flame Guard
if event == "59":
SkillTable.getInstance().getInfo(306,1).getEffects(st.getPlayer(),st.getPlayer())
return "4.htm"
st.setState(COMPLETED)
#Song of Hunter
if event == "60":
SkillTable.getInstance().getInfo(269,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Song of Invocation
if event == "61":
SkillTable.getInstance().getInfo(270,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Song of Life
if event == "62":
SkillTable.getInstance().getInfo(265,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Song of Meditation
if event == "63":
SkillTable.getInstance().getInfo(363,1).getEffects(st.getPlayer(),st.getPlayer())
return "4.htm"
st.setState(COMPLETED)
#Song of Renewal
if event == "64":
SkillTable.getInstance().getInfo(349,1).getEffects(st.getPlayer(),st.getPlayer())
return "4.htm"
st.setState(COMPLETED)
#Song of Storm Guard
if event == "65":
SkillTable.getInstance().getInfo(308,1).getEffects(st.getPlayer(),st.getPlayer())
return "4.htm"
st.setState(COMPLETED)
#Song of Vengeance
if event == "66":
SkillTable.getInstance().getInfo(305,1).getEffects(st.getPlayer(),st.getPlayer())
return "4.htm"
st.setState(COMPLETED)
#Song of Vitality
if event == "67":
SkillTable.getInstance().getInfo(304,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Song of Warding
if event == "68":
SkillTable.getInstance().getInfo(267,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Song of Water
if event == "69":
SkillTable.getInstance().getInfo(266,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Song of Wind
if event == "70":
SkillTable.getInstance().getInfo(268,1).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Heal
if event == "71":
st.takeItems
st.getPlayer().setCurrentCp(st.getPlayer().getMaxCp())
st.getPlayer().setCurrentHp(st.getPlayer().getMaxHp())
st.getPlayer().setCurrentMp(st.getPlayer().getMaxMp())
return "buffer.htm"
st.setState(COMPLETED)
#Cancel Buffs
if event == "72":
st.getPlayer().stopAllEffects()
return "buffer.htm"
st.setState(COMPLETED)
#Wind Walk
if event == "73":
SkillTable.getInstance().getInfo(1204,2).getEffects(st.getPlayer(),st.getPlayer())
return "buffer.htm"
st.setState(COMPLETED)
#Malaria
if event == "74":
SkillTable.getInstance().getInfo(4554,4).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Flu
if event == "75":
SkillTable.getInstance().getInfo(4553,4).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Rheumatismo
if event == "76":
SkillTable.getInstance().getInfo(4551,4).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Nobles
if event == "77":
SkillTable.getInstance().getInfo(1323,1).getEffects(st.getPlayer(),st.getPlayer())
return "1.htm"
st.setState(COMPLETED)
#Blessing of Queen
if event == "78":
SkillTable.getInstance().getInfo(4699,13).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Blessing of Seraphim
if event == "79":
SkillTable.getInstance().getInfo(4702,13).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Gift of Seraphim
if event == "80":
SkillTable.getInstance().getInfo(4703,13).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Gift of Queen
if event == "81":
SkillTable.getInstance().getInfo(4700,13).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Chant of Victory
if event == "82":
SkillTable.getInstance().getInfo(1363,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Chant of Magnus
if event == "83":
SkillTable.getInstance().getInfo(1413,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Prophecy of Fire
if event == "84":
SkillTable.getInstance().getInfo(1356,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Prophecy of Wind
if event == "85":
SkillTable.getInstance().getInfo(1357,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Prochecy of Water
if event == "86":
SkillTable.getInstance().getInfo(1355,1).getEffects(st.getPlayer(),st.getPlayer())
return "5.htm"
st.setState(COMPLETED)
#Greater Might
if event == "87":
SkillTable.getInstance().getInfo(1388,3).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Greater Shield
if event == "88":
SkillTable.getInstance().getInfo(1389,3).getEffects(st.getPlayer(),st.getPlayer())
return "7.htm"
st.setState(COMPLETED)
#Chant of Spirit
if event == "89":
SkillTable.getInstance().getInfo(1362,1).getEffects(st.getPlayer(),st.getPlayer())
return "6.htm"
st.setState(COMPLETED)
if htmltext != event:
st.setState(COMPLETED)
st.exitQuest(1)
return htmltext
def onTalk (self,npc,player):
st = player.getQuestState(qn)
htmltext = "<html><head><body>I have nothing to say to you</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)