Você não é registrado, por favor registre-se para ter acesso ao conteúdo completo.
Caso seja registrado, efetue login.
Esqueceu sua senha? Clique aqui
Recomendamos o uso do Mozilla Firefox para uma melhor visualização.    


Início Postados Hoje Marcar Fóruns Como Lidos Álbums Banidos SE Team Medalhas
Voltar   Secret Experience > Área L2J > [L2J] Dúvidas
Registrar Loteria VIPStaff SERegras do fórum Membros Arcade Pesquisar Postados Hoje Marcar Fóruns Como Lidos Experience
   

Secret Experience.NET   Secret Experience Corporation - Welcome To The Real World
     Anúncios SE

Resposta
 
LinkBack Ferramentas do Tópico Modos de Exibição
Antigo 11-08-2013, 03:19 PM   #1 (permalink)
Membro - Soldado
 
Avatar de poseidom69
 
Registrado em: Jul 2013
Posts: 19
Agradeceu: 4
Agradecido 1 Vez em 1 Post
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Pontos: 1,122, Nível: 18
Pontos: 1,122, Nível: 18 Pontos: 1,122, Nível: 18 Pontos: 1,122, Nível: 18
Atividade: 50%
Atividade: 50% Atividade: 50% Atividade: 50%

Inventório de poseidom69

Padrão Bloqeuar Enchant de capaS.

Como bloquear ou remover enchant de capas do npc enchanter.

__init__.py do npc
Spoiler

import sys
from gameserver import Config
from gameserver.model.quest import State
from gameserver.model.quest import QuestState
from gameserver.model.quest.jython import QuestJython as JQuest

qn = "99940_SafeEnchant"

QuestId = 99940
QuestName = "SafeEnchant"
QuestDesc = "custom"

ENCHANT_CHECK = 1
AMOUNT_OF_ENCHANT = 6
PAYMENT_ITEM_ID = 3470
PAYMENT_AMOUNT = 10
ENCHANT_NPC = 80007
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 = "Você não tem itens encantáveis equipados ou em sua mochila."
htmltext = "<html><title>Npc Enchanter</title><body>Para que seu item seja encantado é preciso que o mesmo esteja +0.<br>Por favor selecione um item a ser encantado 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(ob jId )
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>Houve algum problema relacionado a este Npc, reporte ao administrador.</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)

poseidom69 está offline   Responder com Citação
Links Patrocinados
Antigo 11-08-2013, 06:28 PM   #2 (permalink)
Membro - Coronel
 
Avatar de WilliamFS
 
Registrado em: Oct 2010
Posts: 180
Agradeceu: 60
Agradecido 134 Vezes em 61 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Sistema
Meu Estado:
Pontos: 4,181, Nível: 41
Pontos: 4,181, Nível: 41 Pontos: 4,181, Nível: 41 Pontos: 4,181, Nível: 41
Atividade: 16%
Atividade: 16% Atividade: 16% Atividade: 16%

Nome Real: William Felix Da Silva

Inventório de WilliamFS

Padrão

Mas você quer que as capas não sejam encantáveis ou que não sejam encantáveis apenas no npc?

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
  <item id="13890" name="Holy Spirit's Cloak">
    <set name="icon" val="icon.vesper_cloack_i00"/>
    <set name="type2" val="accessory"/>
    <cond msgId="2453">
      <player cloakStatus="1"/>
    </cond>
    <set name="bodypart" val="back"/>
    <set name="weight" val="220"/>
    <set name="material" val="cloth"/>
    <set name="crystal_type" val="s84"/>
    <set name="price" val="28671000"/>
    <for>
      <add order="0x40" stat="darkRes" val="30"/> <!-- Dark Attribute Defense +30 -->
      <add order="0x10" stat="pDef" val="20"/>
    </for>
  </item>
Acrescente:

Código: [Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]
  <item id="13890" name="Holy Spirit's Cloak">
    <set name="icon" val="icon.vesper_cloack_i00"/>
    <set name="type2" val="accessory"/>
    <cond msgId="2453">
      <player cloakStatus="1"/>
    </cond>
    <set name="bodypart" val="back"/>
    <set name="weight" val="220"/>
    <set name="material" val="cloth"/>
    <set name="crystal_type" val="s84"/>
    <set name="price" val="28671000"/>
    <set name="enchantable" val="false"/>
    <for>
      <add order="0x40" stat="darkRes" val="30"/> <!-- Dark Attribute Defense +30 -->
      <add order="0x10" stat="pDef" val="20"/>
    </for>
  </item>
No Npc requer mudar várias coisas no código, a capa é armor, precisa adicionar uma exceção...


Última edição por WilliamFS; 11-08-2013 às 06:41 PM..
WilliamFS está offline   Responder com Citação
O seguinte membro ao lado disse Obrigado(a) a : WilliamFS por gostar deste Post :
poseidom69 (11-08-2013)
Antigo 11-08-2013, 07:46 PM   #3 (permalink)
Membro - Soldado
 
Avatar de poseidom69
 
Registrado em: Jul 2013
Posts: 19
Agradeceu: 4
Agradecido 1 Vez em 1 Post
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Estado:
Pontos: 1,122, Nível: 18
Pontos: 1,122, Nível: 18 Pontos: 1,122, Nível: 18 Pontos: 1,122, Nível: 18
Atividade: 50%
Atividade: 50% Atividade: 50% Atividade: 50%

Inventório de poseidom69

Padrão

Sim sim, na minha rev fica <set name="is_enchantable" val="false"/>

Mas mesmo assim aparecem no npc e da pra enchantar...

Tem como me explicar como bloqueia pelo npc? que o npc n possa enchantar as capas?

poseidom69 está offline   Responder com Citação
Antigo 11-08-2013, 08:31 PM   #4 (permalink)
Membro - Coronel
 
Avatar de WilliamFS
 
Registrado em: Oct 2010
Posts: 180
Agradeceu: 60
Agradecido 134 Vezes em 61 Posts
Achei Ruim:
Acharam ruim Vezes em Posts
Meu Sistema
Meu Estado:
Pontos: 4,181, Nível: 41
Pontos: 4,181, Nível: 41 Pontos: 4,181, Nível: 41 Pontos: 4,181, Nível: 41
Atividade: 16%
Atividade: 16% Atividade: 16% Atividade: 16%

Nome Real: William Felix Da Silva

Inventório de WilliamFS

Padrão

Eu não entendo nada de pyton ou java, lamento :(

EDIT:

Tente o anexo abaixo!!!

Faça backup do seu!!!!!

Arquivos Anexados
Tipo de Arquivo: zip __init__.zip (1.4 KB, 1 visualizações) Baixar

Última edição por WilliamFS; 11-08-2013 às 09:48 PM..
WilliamFS está offline   Responder com Citação
O seguinte membro ao lado disse Obrigado(a) a : WilliamFS por gostar deste Post :
poseidom69 (12-08-2013)
Resposta

Ferramentas do Tópico
Modos de Exibição

Regras para Posts
Você não pode postar novos tópicos
Você não pode postar respostas
Você não pode postar anexos
Você não pode editar seus posts

Código [IMG] Sim
Código HTML Não
Trackbacks are Sim
Pingbacks are Sim
Refbacks are Sim



Horários baseados na GMT -3. Agora são 04:09 AM.
 



Search Engine Optimization by vBSEO 3.3.0