Ir para conteúdo

Featured Replies

Postado

alguem da uma maozinha ai talkaction ou num npc de troca de items

coloquei um sistema de forja no ot, vc corre atras dos itens e depois troca no npc

prefiro npc mas pode ser talkaction tambem

no total sao 5 items

o npc ou talk remove os 5 items e te da 1

ot 8.60

Editado por roach95 (veja o histórico de edições)

Resolvido por Rafaelgaspar

Ir para solução
  • Respostas 5
  • Visualizações 973
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Rafaelgaspar
    Rafaelgaspar

    vou fazer... se puder dá REP+ la.... =) ja ja mando o codigo atualizado   atualizando.... local distancia_minima=4-- distancia minima para falar com NPC local itemid1=5001--ID do primeiro item

  • Rafaelgaspar
    Rafaelgaspar

    entao.... ficou pouco claro... mas tenta colocar esse codigo no teu NPC:   local frase='hi'-- aqui voce escolhe o que dizer para falr com NPC local distMin=4-- distancia minima para falar com NP

  • Rafaelgaspar
    Rafaelgaspar

    =) se der problema manda MP

Postado

alguem da uma maozinha ai talkaction ou num npc de troca de items

coloquei um sistema de forja no ot, vc corre atras dos itens e depois troca no npc

prefiro npc mas pode ser talkaction tambem

no total sao 5 items

o npc ou talk remove os 5 items e te da 1

ot 8.60

entao.... ficou pouco claro...

mas tenta colocar esse codigo no teu NPC:

 

local frase='hi'-- aqui voce escolhe o que dizer para falr com NPC
local distMin=4-- distancia minima para falar com NPC
local itemid1=5001--ID do primeiro item
local itemid2=5002--ID do segundo item
local itemid3=5003--ID do terceiro item
local itemid4=5004--ID do quarto item
local itemid5=5005--ID do quinto item
local itemidADD=5006--ID do item q vai ganhar
 
function onCreatureSay(cid, tipo, msg)
local msg = string.lower(msg)
if msgcontains(msg, frase) and getDistanceToCreature(cid) <= distMin and getPlayerItemCount(cid, itemid1)>0 and getPlayerItemCount(cid, itemid2)>0 and getPlayerItemCount(cid, itemid3)>0 and getPlayerItemCount(cid, itemid4)>0 and getPlayerItemCount(cid, itemid5)>0 then
doPlayerRemoveItem(cid, itemid1,1)
doPlayerRemoveItem(cid, itemid2,1)
doPlayerRemoveItem(cid, itemid3,1)
doPlayerRemoveItem(cid, itemid4,1)
doPlayerRemoveItem(cid, itemid5,1)
doPlayerAddItem(cid, itemidADD,1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce ganhou o item: "..(getItemNameById(itemidADD))..".")
return true
end
end

 

lembra de colocar os valores corretos de ID para os itens q deseja remover e adicionar

espero ter ajudado...

SE GOSTOU, REP+

=)

GOSTOU!?!?

REP ++

=)

Postado
  • Autor

vou testar agora, jaja edito

#edit: entao funcionou, valeu ai, mas tem como colocar um dialogo? tipo

player: hi

npc: hi, eu troco os seguintes itens x, y, z por um addon doll

player: addon doll

npc: vc tem os itens x y z para trocar comigo?

player: yes

npc: aqui esta seu addon doll

Editado por roach95 (veja o histórico de edições)

Postado
  • Solução

vou testar agora, jaja edito

#edit: entao funcionou, valeu ai, mas tem como colocar um dialogo? tipo

player: hi

npc: hi, eu troco os seguintes itens x, y, z por um addon doll

player: addon doll

npc: vc tem os itens x y z para trocar comigo?

player: yes

npc: aqui esta seu addon doll

vou fazer...

se puder dá REP+ la.... =)

ja ja mando o codigo atualizado

 

atualizando....

local distancia_minima=4-- distancia minima para falar com NPC
local itemid1=5001--ID do primeiro item
local itemid2=5002--ID do segundo item
local itemid3=5003--ID do terceiro item
local itemid4=5004--ID do quarto item
local itemid5=5005--ID do quinto item
local itemidADD=5006--ID do item q vai ganhar
local distancia_minima=3
local mintempo=30
local frase01=" hi, eu troco os seguintes itens x, y, z por um addon doll."
local frase02="Sorry, I'm busy at this moment. Wait your turn."
local frase03=" vc tem os itens x y z para trocar comigo?"
local frase03=" parabens, tome seu item. Tchau"
local frase03=" lamento, voce nao tem os itens necessarios. Volte qndo tiver, tchau"
local frase97="Tchau."
local frase98="Até mais"
local focus = 0
local talk_start = 0
local estado=0
following = false
attacking = false
 
function onThingMove(creature, thing, oldpos, oldstackpos)
end
function onCreatureAppear(creature)
end
function onCreatureDisappear(cid, pos)
if focus == cid then
selfSay(frase98) 
focus = 0
talk_start = 0
estado=0
end
end
function onCreatureTurn(creature)
end
function msgcontains(txt, str)
return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))
end
 
function onCreatureSay(cid, tipo, msg)
msg = string.lower(msg)
if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < distancia_minima then
selfSay(frase01,cid) 
focus = cid
talk_start = os.clock()
estado=1
elseif (msgcontains(msg, 'bye') and focus == cid) then
selfSay(frase97) 
focus = 0
talk_start = 0
estado=0
elseif (msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < distancia_minima) then
selfSay(frase02,cid) 
elseif (msgcontains(msg, 'addon doll') and (focus == cid) and (estado==1)) then
selfSay(frase03,focus)  
talk_start = os.clock()
estado=2
elseif msgcontains(msg, 'yes') then
if getPlayerItemCount(cid, itemid1)>0 and getPlayerItemCount(cid, itemid2)>0 and getPlayerItemCount(cid, itemid3)>0 and getPlayerItemCount(cid, itemid4)>0 and getPlayerItemCount(cid, itemid5)>0 then
doPlayerRemoveItem(cid, itemid1,1)
doPlayerRemoveItem(cid, itemid2,1)
doPlayerRemoveItem(cid, itemid3,1)
doPlayerRemoveItem(cid, itemid4,1)
doPlayerRemoveItem(cid, itemid5,1)
doPlayerAddItem(cid, itemidADD,1)
selfSay(frase04,focus)
else 
selfSay(frase05,focus)
end 
focus = 0
talk_start = 0
estado=0
end
end
 
function onCreatureChangeOutfit(creature)
end
function onThink()
if focus > 0 then
if (((os.clock() - talk_start) > mintempo) or (getDistanceToCreature(focus) >= distancia_minima)) then
selfSay(frase98) -- ate mais
focus = 0
estado=0
end
end

 

 

GOSTOU?? REP+

=)

Editado por Rafaelgaspar (veja o histórico de edições)

GOSTOU!?!?

REP ++

=)

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo