Ir para conteúdo

( Npc ) Trocas! ( Resolvido)


Starliks

Posts Recomendados

Estou precisando de 1 npc que faça troca de alguns items !!!

 

exemplo : 10 life crystal que seria "2177" pode ser trocado por 1 items de refinar com chance de falha que seria "8304"

 

Agora o player com 7 items de refinar com falha "8304" pode trocar por 1 items de refinar 100% que seria "8306"

 

e com 5 items de refinar 100% "8306" pode trocar por 1 que de atributos que seria "8300"

 

 

 

e isso ae , se alguem tiver esse npc e puder me passar ou souber fazer 1 ;D

 

+ REP

Editado por Starliks
Link para o comentário
Compartilhar em outros sites

Vai na pasta "data/npc/" duplica um arquivo aew e renomeia para Changer, e nele cole:

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Changer" script="changer.lua" walkinterval="2000" floorchange="0">
<health now="999999" max="999999"/>
<look type="301" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Você pode trocar 10 life crystal por  {1 item de refinar} com chance de falha. Pode trocar 7 itens de refinar com falha por {1 item de refinar 100%}. E 5 itens de refinar 100% por {1 item que consede atributos}."/>
</parameters>
</npc>

 

Agora abre a pasta "data/npc/scripts" duplica um arquivo e nomeia para changer, e nele cola:

--<Script by jhon992>--
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
local pos = {x=2456, y=2462, z=7} -- Posição que player sera teleportado ao terminar consulta.
local efectHeal = 28 -- efeito do heal
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if (msgcontains(msg, '1 item de refinar') or msgcontains(msg, 'item de refinar') or msgcontains(msg, 'refinar')) then
if (doPlayerRemoveItem(cid, 2177, 10)) then
 doPlayerAddItem(cid, 8304, 1)
 return TRUE
else
 selfSay('Você não possui 10 life crystals.', cid)
 return TRUE
end
return TRUE
end
if (msgcontains(msg, '1 item de refinar 100%') or msgcontains(msg, 'item de refinar 100%') or msgcontains(msg, 'refinar 100%') or msgcontains(msg, 'refinar 100')) then
if (doPlayerRemoveItem(cid, 8304, 7)) then
 doPlayerAddItem(cid, 8306, 1)
 return TRUE
else
 selfSay('Você não possui 7 itens de refinar com falha.', cid)
 return TRUE
end
return TRUE
end
if (msgcontains(msg, '1 item que consede atributos') or msgcontains(msg, '1 item que consede atributo') or msgcontains(msg, 'item que consede atributo') or msgcontains(msg, 'item atributo') or msgcontains(msg, 'atributo')) then
if (doPlayerRemoveItem(cid, 8306, 5)) then
 doPlayerAddItem(cid, 8300, 1)
 return TRUE
else
 selfSay('Você não possui 5 itens de refinar 100%.', cid)
 return TRUE
end
return TRUE
end

if (msgcontains(msg, 'no')) then
return true
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Link para o comentário
Compartilhar em outros sites

Vai na pasta "data/npc/" duplica um arquivo aew e renomeia para Changer, e nele cole:

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Changer" script="changer.lua" walkinterval="2000" floorchange="0">
<health now="999999" max="999999"/>
<look type="301" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Você pode trocar 10 life crystal por  {1 item de refinar} com chance de falha. Pode trocar 7 itens de refinar com falha por {1 item de refinar 100%}. E 5 itens de refinar 100% por {1 item que consede atributos}."/>
</parameters>
</npc>

 

Agora abre a pasta "data/npc/scripts" duplica um arquivo e nomeia para changer, e nele cola:

--<Script by jhon992>--
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
local pos = {x=2456, y=2462, z=7} -- Posição que player sera teleportado ao terminar consulta.
local efectHeal = 28 -- efeito do heal
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if (msgcontains(msg, '1 item de refinar') or msgcontains(msg, 'item de refinar') or msgcontains(msg, 'refinar')) then
if (doPlayerRemoveItem(cid, 2177, 10)) then
 doPlayerAddItem(cid, 8304, 1)
 return TRUE
else
 selfSay('Você não possui 10 life crystals.', cid)
 return TRUE
end
return TRUE
end
if (msgcontains(msg, '1 item de refinar 100%') or msgcontains(msg, 'item de refinar 100%') or msgcontains(msg, 'refinar 100%') or msgcontains(msg, 'refinar 100')) then
if (doPlayerRemoveItem(cid, 8304, 7)) then
 doPlayerAddItem(cid, 8306, 1)
 return TRUE
else
 selfSay('Você não possui 7 itens de refinar com falha.', cid)
 return TRUE
end
return TRUE
end
if (msgcontains(msg, '1 item que consede atributos') or msgcontains(msg, '1 item que consede atributo') or msgcontains(msg, 'item que consede atributo') or msgcontains(msg, 'item atributo') or msgcontains(msg, 'atributo')) then
if (doPlayerRemoveItem(cid, 8306, 5)) then
 doPlayerAddItem(cid, 8300, 1)
 return TRUE
else
 selfSay('Você não possui 5 itens de refinar 100%.', cid)
 return TRUE
end
return TRUE
end

if (msgcontains(msg, 'no')) then
return true
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

ACONTECEU O SEGUINTE ERRO SEGUE A IMAGEM !

 

 

erroec.png

 

Vai na pasta "data/npc/" duplica um arquivo aew e renomeia para Changer, e nele cole:

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Changer" script="changer.lua" walkinterval="2000" floorchange="0">
<health now="999999" max="999999"/>
<look type="301" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Você pode trocar 10 life crystal por  {1 item de refinar} com chance de falha. Pode trocar 7 itens de refinar com falha por {1 item de refinar 100%}. E 5 itens de refinar 100% por {1 item que consede atributos}."/>
</parameters>
</npc>

 

Agora abre a pasta "data/npc/scripts" duplica um arquivo e nomeia para changer, e nele cola:

--<Script by jhon992>--
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
local pos = {x=2456, y=2462, z=7} -- Posição que player sera teleportado ao terminar consulta.
local efectHeal = 28 -- efeito do heal
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if (msgcontains(msg, '1 item de refinar') or msgcontains(msg, 'item de refinar') or msgcontains(msg, 'refinar')) then
if (doPlayerRemoveItem(cid, 2177, 10)) then
 doPlayerAddItem(cid, 8304, 1)
 return TRUE
else
 selfSay('Você não possui 10 life crystals.', cid)
 return TRUE
end
return TRUE
end
if (msgcontains(msg, '1 item de refinar 100%') or msgcontains(msg, 'item de refinar 100%') or msgcontains(msg, 'refinar 100%') or msgcontains(msg, 'refinar 100')) then
if (doPlayerRemoveItem(cid, 8304, 7)) then
 doPlayerAddItem(cid, 8306, 1)
 return TRUE
else
 selfSay('Você não possui 7 itens de refinar com falha.', cid)
 return TRUE
end
return TRUE
end
if (msgcontains(msg, '1 item que consede atributos') or msgcontains(msg, '1 item que consede atributo') or msgcontains(msg, 'item que consede atributo') or msgcontains(msg, 'item atributo') or msgcontains(msg, 'atributo')) then
if (doPlayerRemoveItem(cid, 8306, 5)) then
 doPlayerAddItem(cid, 8300, 1)
 return TRUE
else
 selfSay('Você não possui 5 itens de refinar 100%.', cid)
 return TRUE
end
return TRUE
end

if (msgcontains(msg, 'no')) then
return true
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

ACONTECEU O SEGUINTE ERRO SEGUE A IMAGEM !

 

 

erroec.png

 

 

 

Consegui irmão !!! vlw pela ajuda novamente !!!

+ rep pra vc !

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...