Ir para conteúdo

[Ajuda] Com Npc


canico11

Posts Recomendados

Fiz um Npc de 7.81 para vip e tipo, quero que ele venda os itens por 3 vip coins, maas eu n consegui bota pra ele vende por 3, soh ta dando por uma 1 vip coin, ai gostaria de saber se alguem poderia me ajudar,,, agradeço desde já. valeu xtibia :D

 

 

-- Respawn position set

--ox = 44

--oy = 5

--oz = 6

 

focus = 0

talk_start = 0

target = 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('Good bye then.')

focus = 0

talk_start = 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, type, msg)

msg = string.lower(msg)

 

if ((string.find(msg, '(%a*)hi(%a*)')) and (focus == 0)) and getDistanceToCreature(cid) < 4 then

if getPlayerStorageValue(cid,854) < 1 then

selfSay('Oi ' .. creatureGetName(cid) .. '! eu vendo armor vip, legs vip, shield vip, boots vip, helmet vip e sword vip.cada um por 1 VIP COINS')

focus = cid

talk_start = os.clock()

else

selfSay('Hey! Leave out of there! You are a renegade ninja!')

focus = 0

talk_start = 0

end

 

elseif string.find(msg, '(%a*)hi(%a*)') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then

selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.')

 

elseif focus == cid then

talk_start = os.clock()

 

 

 

if msgcontains(msg, 'armor vip') and focus == cid then

if doPlayerRemoveIten(cid,2143) == 0 then

selfSay('Voce nao tem VIP COINS suficientes !')

else

buy(cid,2508,1,0)

end

end

 

if msgcontains(msg, 'legs vip') and focus == cid then

if doPlayerRemoveItem(cid,2143) == -1 then

selfSay('Voce nao tem VIP COINS suficientes !')

else

buy(cid,2478,1,0)

end

end

 

if msgcontains(msg, 'shield vip') and focus == cid then

buy(cid,2515,1,0)

sellPrem(cid, 3)

talk_start = os.clock()

end

 

if msgcontains(msg, 'boots vip') and focus == cid then

buy(cid,2640,1,0)

sellPrem(cid, 3)

talk_start = os.clock()

end

 

if msgcontains(msg, 'helmet vip') and focus == cid then

buy(cid,2498,1,0)

sellPrem(cid, 3)

talk_start = os.clock()

end

if msgcontains(msg, 'sword vip') and focus == cid then

buy(cid,2451,1,0)

sellPrem(cid, 3)

talk_start = os.clock()

end

 

if string.find(msg, '(%a*)bye(%a*)') and focus == cid and getDistanceToCreature(cid) < 4 then

selfSay('Good bye, ' .. creatureGetName(cid) .. '!')

focus = 0

talk_start = 0

end

end

 

 

function onCreatureChangeOutfit(creature)

 

end

 

 

function onThink()

if focus == 0 then

randmove = math.random(1,50)

if randmove == 1 then

selfMove(0)

end

if randmove == 2 then

selfMove(1)

end

if randmove == 3 then

selfMove(2)

end

if randmove == 4 then

selfMove(3)

end

end

if (os.clock() - talk_start) > 30 then

if focus > 0 then

selfSay('Next Please...')

end

focus = 0

end

if focus ~= 0 then

if getDistanceToCreature(focus) > 5 then

selfSay('Good bye then.')

focus = 0

end

end

end

end

Link para o comentário
Compartilhar em outros sites

Olá canico11

 

Bom não posso afirmar que seria o problema.

 

Procure as linhas:

if doPlayerRemoveIten(cid,2143) == 0 then

 

Troque por:

if doPlayerRemoveIten(cid,2143,X) == 0 then

 

No lugar do X seria a quantidade que irá retirar.

 

Caso não funcionar , peço desculpas.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...