Consegui arrumar , os npcs comos buffs , monumento , mais os npc que tem na jfrozen que migrei pra j knight n tem como comparar porq na jknight não tem tipo :
NPC RANKING DA JFROZEN :
[/b]
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.util.database import L2DatabaseFactory
from com.l2jfrozen.gameserver.model.actor.appearance import PcAppearance
from com.l2jfrozen.gameserver.model.quest import State
from com.l2jfrozen.gameserver.model.actor.appearance import PcAppearance
from com.l2jfrozen.gameserver.model.quest import QuestState
from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest
htmltext_ini = "<html><head><title>Pk Info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Player ***</color></center></td><td><center>*** Kills ***</center></td></tr>"
htmltext_info =""
color =1
pos =0
con = L2DatabaseFactory.getInstance().getConnection()
pks = con.prepareStatement("SELECT char_name,pkkills FROM characters WHERE pkkills>0 and accesslevel=0 order by pkkills desc limit 30")
htmltext ="<html><head><title>PK info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 3000 adenas.</body></html>"
return htmltext
# **********
# PvP info *
# **********
ifevent=="2"and cantidad_pago >=3000:
st.takeItems(Precio_ID,3000)
total_asesinados =0
htmltext_ini ="<html><head><title>PvP info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Player ***</color></center></td><td><center>*** Kills ***</center></td></tr>"
htmltext_info =""
color =1
pos =0
con = L2DatabaseFactory.getInstance().getConnection()
pks = con.prepareStatement("SELECT char_name,pvpkills FROM characters WHERE pvpkills>0 and accesslevel=0 order by pvpkills desc limit 30")
htmltext ="<html><head><title>PK info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 3000 adenas.</body></html>"
return htmltext[/b]
# *************
# Medal Of Victory info *
# *************
if event == "3" and cantidad_pago >= 100000 :
st.takeItems(Precio_ID,100000)
total_cantidad = 0
htmltext_ini = "<html><head><title>Medal Of Victory info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Name ***</color></center></td><td><center>*** Adenas ***</center></td></tr>"
htmltext_info =""
color =1
pos =0
con = L2DatabaseFactory.getInstance().getConnection()
pks = con.prepareStatement("SELECT count,owner_id FROM items WHERE item_id=57 order by count desc limit 50")
rs = pks.executeQuery()
while(rs.next()):
cantidad = rs.getString("count")
pj_id = rs.getString("owner_id")
total_cantidad = total_cantidad +long(cantidad)
pos = pos +1
posstr = str(pos)
charname = con.prepareStatement("SELECT char_name FROM characters WHERE charId="+ pj_id)
htmltext = "You have no enchantable items equiped orin your inventory."
htmltext = "<html><title>Auto-Enchanter</title><body>Seu Item para ser Enchantado Precisa estar +10.<br>Por Favor Selecione Um Item a ser Enchantado na Lista Abaixo:<br><br>" + htmltext + "</body></html>"
elif event.startswith("enchantItem_"):
# get the object id out of the event string
objId = int(event.replace("enchantItem_", ""))
# to avoid exploitation, check if the stored objectId still corresponds to an existing item
if st.getQuestItemsCount(PAYMENT_ITEM_ID) >= PAYMENT_AMOUNT :
if (itemType in weapons and itemEnchant >= ENCHANT_CHECK) or (itemType in armors and itemEnchant >= ENCHANT_CHECK) or (itemType in jewels and itemEnchant >= ENCHANT_CHECK) :
You can post now and register later.
If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.
GOSTARIA DOS ICONES DAS TATTOS , TODOS ICONES , COM ESSE LV , ATÉ O LVL 6 POR FAVOR , PARA INTERLUDE , ESSES DO PRINT NAO SAO INTERLUDE E NAO TENHO ! OBRIGADO!
Olá, seu tópico se encontra com um ou mais links offline. Caso ainda possua o conteúdo, favor postar aqui mesmo no tópico ou mandar MP para algum staff que estaremos normalizando o tópico.
Grato pela atenção!
Voce usar a conta de admin q vc tem no server, vai em accounts e define o acess_level la. e vc entra auto.
Eu tenho uma versão desse votesystem q tentei atualizar e com tutorial so acessar o link na minha assinatura em baixo.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.
Pergunta
Mr.Killer
Consegui arrumar , os npcs comos buffs , monumento , mais os npc que tem na jfrozen que migrei pra j knight n tem como comparar porq na jknight não tem tipo :
NPC RANKING DA JFROZEN :
[/b]
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.util.database import L2DatabaseFactory
from com.l2jfrozen.gameserver.model.actor.appearance import PcAppearance
from com.l2jfrozen.gameserver.model.quest import State
from com.l2jfrozen.gameserver.model.actor.appearance import PcAppearance
from com.l2jfrozen.gameserver.model.quest import QuestState
from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest
qn = "20707_Ranking"
NPC=[20707]
Precio_ID = 57
QuestId = 20707
QuestName = "Ranking"
QuestDesc = "custom"
InitialHtml = "1.htm"
print "============> Ranking: LOADED"
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
# ***********************
# Si hablas con el NPC: *
# ***********************
def onTalk (self,npc,player):
return InitialHtml
# ***********************
# *****************************************************
# Ahora gobernamos los eventos que vienen desde el HTML
# *****************************************************
def onEvent(self,event,st):
htmltext = event
cantidad_pago = st.getQuestItemsCount(Precio_ID)
# *********
# PK info *
# *********
if event == "1" and cantidad_pago >= 3000 :
st.takeItems(Precio_ID,3000)
total_asesinados = 0
htmltext_ini = "<html><head><title>Pk Info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Player ***</color></center></td><td><center>*** Kills ***</center></td></tr>"
htmltext_info =""
color = 1
pos = 0
con = L2DatabaseFactory.getInstance().getConnection()
pks = con.prepareStatement("SELECT char_name,pkkills FROM characters WHERE pkkills>0 and accesslevel=0 order by pkkills desc limit 30")
rs = pks.executeQuery()
while (rs.next()) :
char_name = rs.getString("char_name")
char_pkkills = rs.getString("pkkills")
total_asesinados = total_asesinados + int(char_pkkills)
pos = pos + 1
posstr = str(pos)
if color == 1:
color_text = "<font color =\"00FFFF\">"
color = 2
htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
elif color == 2:
color_text = "<font color =\"FF0000\">"
color = 1
htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
htmltext_end = "</table><center><font color=\"FFFFFF\">" + "A Total of " + str(total_asesinados) + " Pk's.</center></body></html>"
htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
con.close()
return htmltext_pklist
elif event == "1" and cantidad_pago < 3000 :
htmltext = "<html><head><title>PK info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 3000 adenas.</body></html>"
return htmltext
# **********
# PvP info *
# **********
if event == "2" and cantidad_pago >= 3000 :
st.takeItems(Precio_ID,3000)
total_asesinados = 0
htmltext_ini = "<html><head><title>PvP info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Player ***</color></center></td><td><center>*** Kills ***</center></td></tr>"
htmltext_info =""
color = 1
pos = 0
con = L2DatabaseFactory.getInstance().getConnection()
pks = con.prepareStatement("SELECT char_name,pvpkills FROM characters WHERE pvpkills>0 and accesslevel=0 order by pvpkills desc limit 30")
rs = pks.executeQuery()
while (rs.next()) :
char_name = rs.getString("char_name")
char_pkkills = rs.getString("pvpkills")
total_asesinados = total_asesinados + int(char_pkkills)
pos = pos + 1
posstr = str(pos)
if color == 1:
color_text = "<font color =\"00FFFF\">"
color = 2
htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
elif color == 2:
color_text = "<font color =\"FF0000\">"
color = 1
htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + char_pkkills + "</center></td></tr>"
htmltext_end = "</table><center><font color=\"FFFFFF\">" + "A Total of " + str(total_asesinados) + " Kills.</center></body></html>"
htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
con.close()
return htmltext_pklist
elif event == "2" and cantidad_pago < 3000 :
htmltext = "<html><head><title>PK info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 3000 adenas.</body></html>"
return htmltext[/b]
# *************
# Medal Of Victory info *
# *************
if event == "3" and cantidad_pago >= 100000 :
st.takeItems(Precio_ID,100000)
total_cantidad = 0
htmltext_ini = "<html><head><title>Medal Of Victory info Online</title></head><body><table width=300><tr><td><font color =\"FF00FF\">Pos.</td><td><center><font color =\"FFFF00\">*** Name ***</color></center></td><td><center>*** Adenas ***</center></td></tr>"
htmltext_info =""
color = 1
pos = 0
con = L2DatabaseFactory.getInstance().getConnection()
pks = con.prepareStatement("SELECT count,owner_id FROM items WHERE item_id=57 order by count desc limit 50")
rs = pks.executeQuery()
while (rs.next()) :
cantidad = rs.getString("count")
pj_id = rs.getString("owner_id")
total_cantidad = total_cantidad + long(cantidad)
pos = pos + 1
posstr = str(pos)
charname = con.prepareStatement("SELECT char_name FROM characters WHERE charId=" + pj_id)
rs2 = charname.executeQuery()
while (rs2.next()) :
char_name = rs2.getString("char_name")
if color == 1:
color_text = "<font color =\"00FFFF\">"
color = 2
htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + cantidad + "</center></td></tr>"
elif color == 2:
color_text = "<font color =\"FF0000\">"
color = 1
htmltext_info = htmltext_info + "<tr><td><center><font color =\"FF00FF\">" + posstr + "</td><td><center>" + color_text + char_name +"</center></td><td><center>" + cantidad + "</center></td></tr>"
htmltext_end = "</table><center><font color=\"FFFFFF\">" + "Los TOPS suman " + str(total_cantidad) + " adenas.</center></body></html>"
htmltext_pklist = htmltext_ini + htmltext_info + htmltext_end
con.close()
return htmltext_pklist
elif event == "3" and cantidad_pago < 3000 :
htmltext = "<html><head><title>Adenas info Online</title></head><body><font color =\"FF0000\">Primero pagame...!! son 100k adenas.</body></html>"
return htmltext[/b][/color]
[color=#ff0000]QUEST = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)
CREATED=State('Start',QUEST)
STARTED=State('Started',QUEST)
COMPLETED=State('Completed',QUEST)[/b][/color]
[color=#ff0000]QUEST.setInitialState(CREATED)
[color=#ff0000]for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)[/color]
AI PRA COLOCAR ELE NO JKNOGHT COMO FASSO ?
NPC CLAN MANAGER JFRONZE :
import sys
from com.l2jfrozen.gameserver.model.actor.instance import L2PcInstance
from com.l2jfrozen.gameserver.model.actor.instance import L2NpcInstance
from java.util import Iterator
from com.l2jfrozen.util.database import L2DatabaseFactory
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[/b]
qn = "6667_ClanManager"
NPC=[66667]
REQUESTED_ITEM=3470
REQUESTED_AMOUNT=2
NEW_REP_SCORE=3000000
QuestId = 6667
QuestName = "ClanManager"
QuestDesc = "custom"
InitialHtml = "66667-1.htm"
print "Clan Manager (66667) Enabled..."
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
def onEvent(self,event,st):
htmltext = "<html><head><body>I have nothing to say you</body></html>"
count=st.getQuestItemsCount(REQUESTED_ITEM)
if event == "66667-clanOk.htm" :
if st.getPlayer().isClanLeader() and st.getPlayer().getClan().getLevel()<8:
if st.getPlayer().isNoble() and count >= REQUESTED_AMOUNT:
htmltext=event
st.getPlayer().getClan().changeLevel(8)
st.playSound("ItemSound.quest_finish")
st.takeItems(REQUESTED_ITEM,REQUESTED_AMOUNT)
else :
htmltext="66667-no_clan.htm"
st.exitQuest(1)
else :
htmltext="66667-no_clan.htm"
st.exitQuest(1)
elif event == "66667-repOk.htm" :
if st.getPlayer().isClanLeader() and st.getPlayer().getClan().getLevel() >= 5 and st.getPlayer().getClan().getRep***tionScore() < NEW_REP_SCORE :
if st.getPlayer().isNoble() and count > REQUESTED_AMOUNT:
htmltext=event
st.getPlayer().getClan().setRep***tionScore(NEW_REP_SCORE, 1);
st.playSound("ItemSound.quest_finish")
st.takeItems(REQUESTED_ITEM,REQUESTED_AMOUNT)
else :
htmltext="66667-no_points.htm"
st.exitQuest(1)
else :
htmltext="66667-no_points.htm"
st.exitQuest(1)
return htmltext
def onTalk (self,npc,player):
htmltext = "<html><head><body>I have nothing to say you</body></html>"
st = player.getQuestState(qn)
if not st : return htmltext
npcId = npc.getNpcId()
id = st.getState()
if id == CREATED :
htmltext="66667-1.htm"
elif id == COMPLETED :
htmltext = "<html><head><body>This quest have already been completed.</body></html>"
else :
st.exitQuest(1)
return htmltext
QUEST = Quest(6667,qn,"custom")
CREATED = State('Start', QUEST)
STARTING = State('Starting', QUEST)
STARTED = State('Started', QUEST)
COMPLETED = State('Completed', QUEST)
QUEST.setInitialState(CREATED)
for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)
NPC ENCHANT ITENS JFROZEN :
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.util.database import L2DatabaseFactory
from com.l2jfrozen.gameserver.model.actor.appearance import PcAppearance
from com.l2jfrozen.gameserver.model.quest import State
from com.l2jfrozen.gameserver.model.actor.appearance import PcAppearance
from com.l2jfrozen.gameserver.model.quest import QuestState
from com.l2jfrozen.gameserver.model.quest.jython import QuestJython as JQuest[/b]
qn = "99940_SafeEnchant"
print "Importing Custom: Auto-Enchant L2JDot "
QuestId = 99940
QuestName = "SafeEnchant"
QuestDesc = "custom"
ENCHANT_CHECK = 1
AMOUNT_OF_ENCHANT = 10
PAYMENT_ITEM_ID = 57
PAYMENT_AMOUNT = 10000
ENCHANT_NPC = 40009
weapons = ['Sword','Blunt','Dagger','Bow','Pole','Etc','Fist','Dual Sword','Dual Fist','Big Sword','Big Blunt','Ancient','Crossbow','Rapier','Dual Dagger']
armors = ['Light','Heavy','Magic','Shield','Sigil']
jewels = ['None']
acceptableItemTypes = weapons+armors+jewels
class Quest (JQuest) :
def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
def onEvent (self,event,st) :
if event == "choose_item" :
htmltext = ""
for Item in st.getPlayer().getInventory().getItems():
# given an item instance, get the item template to check what type it is
itemType = Item.getItem().getItemType().toString()
itemGrade = Item.getItem().getCrystalType()
if itemType in acceptableItemTypes and itemGrade > 0 :
htmltext += "<a action=\"bypass -h Quest 99940_SafeEnchant enchantItem_" + str(Item.getObjectId()) +"\">" + Item.getItem().getName() + "+" + str(Item.getEnchantLevel()) + "</a><br>"
if htmltext == "":
htmltext = "You have no enchantable items equiped or in your inventory."
htmltext = "<html><title>Auto-Enchanter</title><body>Seu Item para ser Enchantado Precisa estar +10.<br>Por Favor Selecione Um Item a ser Enchantado na Lista Abaixo:<br><br>" + htmltext + "</body></html>"
elif event.startswith("enchantItem_"):
# get the object id out of the event string
objId = int(event.replace("enchantItem_", ""))
# to avoid exploitation, check if the stored objectId still corresponds to an existing item
Item = st.getPlayer().getInventory().getItemByObjectId(objId )
if Item :
itemType = Item.getItem().getItemType().toString()
itemEnchant = Item.getEnchantLevel()
if st.getQuestItemsCount(PAYMENT_ITEM_ID) >= PAYMENT_AMOUNT :
if (itemType in weapons and itemEnchant >= ENCHANT_CHECK) or (itemType in armors and itemEnchant >= ENCHANT_CHECK) or (itemType in jewels and itemEnchant >= ENCHANT_CHECK) :
htmltext = "notPlusZero.htm"
else :
Item.setEnchantLevel(itemEnchant+AMOUNT_OF_ENCHANT)
st.takeItems(PAYMENT_ITEM_ID, PAYMENT_AMOUNT)
htmltext = "Congratulations.htm"
else :
htmltext = "notEnoughItems.htm"
else :
htmltext = "Error.htm"
return htmltext
def onTalk (self,npc,player):
htmltext = "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.</body></html>"
st = player.getQuestState(qn)
if not st : return htmltext
if npc.getNpcId() == ENCHANT_NPC :
htmltext = "Start.htm"
return htmltext
QUEST = Quest(QuestId,str(QuestId) + "_" + QuestName,QuestDesc)
QUEST.addStartNpc(ENCHANT_NPC)
QUEST.addTalkId(ENCHANT_NPC)
ENTRE OUTROS AI NÃO SEI COMO ADAPTALO PARA A JKNIGHT !
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts recomendados
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.