Ir para conteúdo
  • Cadastre-se

(Resolvido)[NPC] Troca tal item por tal item


Ir para solução Resolvido por Rusherzin,

Posts Recomendados

Oque eu quero :

 

Um npc chamado "Vendedor de Small Coins"

 

 

Oque ele vai fazer :

 

Ele vai trocar 100 TD (notas azuis) por 5 Small Coins.

 

Oque o player vai falar :

 

Quando o player dizer : Hi

 

Npc vai dizer : Olá, eu vendo Small Coins, quer comprar? vai te custar 100 TD.

 

Se o player dizer : Yes

 

O NPC vai falar: Você comprou 5 small coins.

 

Se o player dizer: No

 

o NPC vai falar : Ok, deicha para a próxima!

 

Quando o player dizer : Bye

 

o NPC vai falar : Obrigado pela atenção! Boa sorte.

 

Id dos items

 

Small Coins - 2159

 

TD - 2160

 

Quantidade que o npc vai trocar

 

O Npc vai pegar 100 TD do usúario e dar 5 Small Coins

 

 

Aguardando resposta

 

Factur~~

Link para o post
Compartilhar em outros sites

Não testei:
 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vendedor de Small Coins" script="smallcoin.lua" walkinterval="2000" floorchange="0">
          <health now="150" max="150" />
          <look type="134" head="57" body="59" legs="40" feet="76" corpse="2212" />
          <parameters>
                    <parameter key="message_greet" value="Olá |PLAYERNAME|, eu vendo Small Coins, quer comprar? vai te custar 100 TD." />
                    <parameter key="message_farewell" value="Obrigado pela atenção! Boa sorte!" />
          </parameters>
</npc>
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
 
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
 
local items = {
          item1 = {2160, 2159}
}
local counts = {
          count1 = {100, 5}
}
 
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, 'yes') then
                    if getPlayerItemCount(cid, items.item1[1]) >= counts.count1[1] then
                              doPlayerRemoveItem(cid, items.item1[1], counts.count1[1])
                              doPlayerAddItem(cid, items.item1[2], counts.count1[2])
                              selfSay('Você comprou 5 small coins.', cid)
                    else
                              selfSay('Você não tem TD suficiente.', cid)
                    end

          elseif msgcontains(msg, 'no') then
                              selfSay('Ok, deixa para a próxima!', cid)

          end
          return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

                                                                     Ajudei? De nada \o/                                            Att Rusherzin

Link para o post
Compartilhar em outros sites

 

Não testei:

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vendedor de Small Coins" script="smallcoin.lua" walkinterval="2000" floorchange="0">
          <health now="150" max="150" />
          <look type="134" head="57" body="59" legs="40" feet="76" corpse="2212" />
          <parameters>
                    <parameter key="message_greet" value="Olá |PLAYERNAME|, eu vendo Small Coins, quer comprar? vai te custar 100 TD." />
                    <parameter key="message_farewell" value="Obrigado pela atenção! Boa sorte!" />
          </parameters>
</npc>
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
 
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
 
local items = {
          item1 = {2160, 2159}
}
local counts = {
          count1 = {100, 5}
}
 
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, 'yes') then
                    if getPlayerItemCount(cid, items.item1[1]) >= counts.count1[1] then
                              doPlayerRemoveItem(cid, items.item1[1], counts.count1[1])
                              doPlayerAddItem(cid, items.item1[2], counts.count1[2])
                              selfSay('Você comprou 5 small coins.', cid)
                    else
                              selfSay('Você não tem TD suficiente.', cid)
                    end

          elseif msgcontains(msg, 'no') then
                              selfSay('Ok, deixa para a próxima!', cid)

          end
          return TRUE
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

 

Infuncional,

 

da esse erro

 

O3Vi6MF.png

Link para o post
Compartilhar em outros sites

Tente assim então:
 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vendedor de Small Coins" script="smallcoin.lua" walkinterval="2000" floorchange="0">
          <health now="150" max="150" />
          <look type="134" head="57" body="59" legs="40" feet="76" corpse="2212" />
          <parameters>
                    <parameter key="message_greet" value="Ola, eu vendo Small Coins, quer comprar? vai te custar 100 TD." />
                    <parameter key="message_farewell" value="Obrigado pela atençao! Boa sorte!" />
          </parameters>
</npc>
Editado por Rusherzin (veja o histórico de edições)

                                                                     Ajudei? De nada \o/                                            Att Rusherzin

Link para o post
Compartilhar em outros sites

 

Tente assim então:

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Vendedor de Small Coins" script="smallcoin.lua" walkinterval="2000" floorchange="0">
          <health now="150" max="150" />
          <look type="134" head="57" body="59" legs="40" feet="76" corpse="2212" />
          <parameters>
                    <parameter key="message_greet" value="Ola, eu vendo Small Coins, quer comprar? vai te custar 100 TD." />
                    <parameter key="message_farewell" value="Obrigado pela atençao! Boa sorte!" />
          </parameters>
</npc>

 

Da esse erro:

 

[31/08/2014 13:24:24] [Warning - Npc::loadFromXml] Cannot load npc file (data/npc/smallcoin.xml).
[31/08/2014 13:24:24] Line: 6, Info: Input is not proper UTF-8, indicate encoding !
[31/08/2014 13:24:24] Bytes: 0xE1 0x2C 0x20 0x65
 
 
[31/08/2014 13:24:26] [Warning - Npc::loadFromXml] Cannot load npc file (data/npc/smallcoin.xml).
[31/08/2014 13:24:26] Line: 6, Info: Input is not proper UTF-8, indicate encoding !
[31/08/2014 13:24:26] Bytes: 0xE1 0x2C 0x20 0x65
 
 
[31/08/2014 13:24:27] [Warning - Npc::loadFromXml] Cannot load npc file (data/npc/smallcoins.xml).
[31/08/2014 13:24:27] Info: failed to load external entity "data/npc/smallcoins.xml"
 
 
[31/08/2014 13:24:28] [Warning - Npc::loadFromXml] Cannot load npc file (data/npc/smallcoin.xml).
[31/08/2014 13:24:28] Line: 6, Info: Input is not proper UTF-8, indicate encoding !
[31/08/2014 13:24:28] Bytes: 0xE1 0x2C 0x20 0x65
Link para o post
Compartilhar em outros sites
  • Solução

Creio que seja algo com os acentos..
 

<?xml version="1.0"?>
<npc name="Vendedor de Small Coins" script="smallcoin.lua" walkinterval="2000" floorchange="0">
          <health now="150" max="150" />
          <look type="134" head="57" body="59" legs="40" feet="76" corpse="2212" />
          <parameters>
                    <parameter key="message_greet" value="Eu vendo Small Coins quer comprar? Vai te custar 100 TD." />
                    <parameter key="message_farewell" value="Obrigado! Boa sorte!" />
          </parameters>
</npc>

                                                                     Ajudei? De nada \o/                                            Att Rusherzin

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo