Ir para conteúdo
  • Cadastre-se

(Resolvido)[PEDIDO] Npc que libera venda de items pra x storage


Ir para solução Resolvido por Qwizer,

Posts Recomendados

com o o titulo ja diz queria um npc que venda vários items para quem tiver completado a quest. Djins do global pra tfs 0.4/0.3

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

 Whatsapp: +55 (48) 98815-0709 Discord: Qwizer#5713

 

Global 100% 7.40 com Website

TFS 1.2 10.97-11.00 + GlobalFull OtherWorld ...

 

Link para o post
Compartilhar em outros sites

Vamos lá :3

 

1- Vá em Data/Npc.. Crie um arquivo.xml e Nomeio de brutal.xml, Abra-o e coloque isso.. \/

 

<npc name="{Quest} Seller" script="data/npc/scripts/brutalitens.lua" floorchange="0" access="5" level="1" maglevel="1">
<health now="150" max="150"/>
<look type="302" head="114" body="12" legs="90" feet="115" addons="1" corpse="2212"/>
</npc>

 

 

Em vermelho o nome do npc que você quer...

Em azul a aparência dele...

 

2- Vá em Data/Npc/Scripts.. E crie um arquivo lua com o nome de brutalitens.lua, Abra-o e adicione isso \/

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
 
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 SellItem(cid, message, keywords, parameters, node)
        if(not npcHandler:isFocused(cid)) then
                return false
        end
           if doPlayerRemoveItem(cid,6527,parameters.price) == TRUE then
              doPlayerAddItem(cid,parameters.item,parameters.count)
        else
                npcHandler:say('Desculpe, Você não tem ' .. parameters.price .. ' vip coins!', cid)
        end
        npcHandler:resetNpc()
        return true
end
 
keywordHandler:addKeyword({'trade'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Item ViP a venda : {nimby boots} , {nimby shield} , {nimby helmet} , {nimby cape} , {nimby spellbook} , {nimby shorts} , {nimby armor} , {nimby hat} , {nimby legs} ,.'})
local node1 = keywordHandler:addKeyword({'nimby boots'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar uma nimby boots por 1000 vip coins? '})
node1:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 2644,count = 1000})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
local node2 = keywordHandler:addKeyword({'nimby shield'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar um nimby shield por 1000 vip Coin? '})
node2:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 2537,count = 1})
node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
local node3 = keywordHandler:addKeyword({'nimby helmet'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar um nimby helmet por 1000 vip Coin? '})
node3:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 12617,count = 1})
node3:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
local node4 = keywordHandler:addKeyword({'nimby cape'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar uma nimby cape por 1000 vip Coin? '})
node4:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 12392,count = 1})
node4:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
local node4 = keywordHandler:addKeyword({'nimby spellbook'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar um nimby spellbook por 1000 vip Coin? '})
node4:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 8983,count = 1})
node4:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
local node4 = keywordHandler:addKeyword({'nimby shorts'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar um nimby shorts por 1000 vip Coin? '})
node4:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 11349,count = 1})
node4:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
local node4 = keywordHandler:addKeyword({'nimby armor'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar uma nimby armor por 1000 vip Coin? '})
node4:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 11350,count = 1})
node4:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
local node4 = keywordHandler:addKeyword({'nimby hat'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar um nimby hat por 1000 vip Coin? '})
node4:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 10569,count = 1})
node4:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
local node4 = keywordHandler:addKeyword({'nimby legs'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Você deseja comprar uma nimby legs por 1000 vip Coin? '})
node4:addChildKeyword({'yes'}, SellItem, {price = 1000,item = 11298,count = 1})
node4:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
 
 
 
npcHandler:addModule(FocusModule:new())

 

 

Em Verde o nome do item que ele irá pegar de você

Em Azul o id do item que o npc irá pegar = como é em quest recomendo você botar gold coins mesmo ai você bota esse npc no final da quest !!

Em Vermelho o nome do item que ele irá vender

Em Marrom a quantidade do item que ele irá pegar

Em Roxo o id do item que ele irá vender para você

Em verde escuro a quantidade do item que ele irá vender para você

 

 

    Se ajudei +REP  (y) 

 

                                                                  post-33578-0-05956500-1410893904_thumb.j


Conseguiu ? ;-;

Link para o post
Compartilhar em outros sites

vou testar mais esta bem confuso se aparecer um mais organizado agradeço e de fácil configuração;


alguma outra opção de script?


gente mais ninguém? ajudo todo mundo quando eu preciso ninguém aparece?

 Whatsapp: +55 (48) 98815-0709 Discord: Qwizer#5713

 

Global 100% 7.40 com Website

TFS 1.2 10.97-11.00 + GlobalFull OtherWorld ...

 

Link para o post
Compartilhar em outros sites

ainda não to desde ontem tentando fazer um mais não ta dando certo você fala ele vende o item


local keywordHandler = KeywordHandler:new() 
local npcHandler = NpcHandler:new(keywordHandler) 
NpcSystem.parseParameters(npcHandler) 


-- OTServ event handling functions start 
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 
-- OTServ event handling functions end 


function creatureSayCallback(cid, type, msg)
if getPlayerStorageValue(cid, 1038) == 1 then


local shopModule = ShopModule:new() 
npcHandler:addModule(shopModule) 


shopModule:addSellableItem({'might ring'}, 2164, 250, 'might ring') 
shopModule:addSellableItem({'energy ring'}, 2167, 100, 'energy ring') 
shopModule:addSellableItem({'life ring'}, 2168, 50, 'life ring') 
shopModule:addSellableItem({'time ring'}, 2169, 100, 'time ring') 
shopModule:addSellableItem({'dwarven ring'}, 2213, 100, 'dwarven ring')
shopModule:addSellableItem({'ring of healing'}, 2214, 100, 'ring of healing') 
shopModule:addSellableItem({'strange talisman'}, 2161, 30, 'strange talisman') 
shopModule:addSellableItem({'silver amulet'}, 2170, 50, 'silver amulet') 
shopModule:addSellableItem({'protection amulet'}, 2200, 100, 'protection amulet')  
shopModule:addSellableItem({'dragon necklace'}, 2201, 100, 'dragon necklace') 
shopModule:addSellableItem({'snakebite rod'}, 2182, 100, 'snakebite rod') 
shopModule:addSellableItem({'moonlight rod'}, 2186, 200, 'moonlight rod') 
shopModule:addSellableItem({'volcanic rod'}, 2185, 1000, 'volcanic rod') 
shopModule:addSellableItem({'quagmire rod'}, 2181, 2000, 'quagmire rod') 
shopModule:addSellableItem({'tempest rod'}, 2183, 3000, 'tempest rod') 
shopModule:addSellableItem({'ankh'}, 2193, 100, 'ankh') 
shopModule:addSellableItem({'mysterious fetish'}, 2194, 50, 'mysterious fetish') 


shopModule:addBuyableItem({'might ring'}, 2164, 5000, 'might ring') 
shopModule:addBuyableItem({'energy ring'}, 2167, 2000, 'energy ring') 
shopModule:addBuyableItem({'life ring'}, 2168, 900, 'life ring') 
shopModule:addBuyableItem({'time ring'}, 2169, 2000, 'time ring') 
shopModule:addBuyableItem({'dwarven ring'}, 2213, 2000, 'dwarven ring')
shopModule:addBuyableItem({'ring of healing'}, 2214, 2000, 'ring of healing') 
shopModule:addBuyableItem({'strange talisman'}, 2161, 100, 'strange talisman') 
shopModule:addBuyableItem({'silver amulet'}, 2170, 100, 'silver amulet')
shopModule:addBuyableItem({'protection amulet'}, 2200, 700, 'protection amulet')
shopModule:addBuyableItem({'dragon necklace'}, 2201, 1000, 'dragon necklace') 
else
npcHandler:say("Voce nao tem permissao.")
  return true
end 
end


npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

assim nao funciona nen a pal

 Whatsapp: +55 (48) 98815-0709 Discord: Qwizer#5713

 

Global 100% 7.40 com Website

TFS 1.2 10.97-11.00 + GlobalFull OtherWorld ...

 

Link para o post
Compartilhar em outros sites

Peguei 1 npc de nto aqui e dei uma editada, não testei e não mecho muito com npcs, acho que meu script possa estar errado.
 

local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)

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 shopModule = ShopModule:new()
npcHandler:addModule(shopModule)
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

local X = STORAGE

if(msgcontains(msg, 'trade')) then
if getPlayerStorageValue(cid, X) ~= 1
selfSay('Você precisar ter a storage "..X..".', cid)
talkState[talkUser] = 1
else
shopModule:addBuyableItem({'nome do item'}, id, quantoiragastar,       'nome do item')
shopModule:addBuyableItem({'speed boots'}, 2525, 50000,       'speed boots')
shopModule:addBuyableItem({'chakra boots'}, 7417, 95000,       'chakra boots')
shopModule:addBuyableItem({'elite kunai'}, 2416, 610,       'elite kunai')
shopModule:addBuyableItem({'taijutsu glove'}, 2380, 545,       'taijutsu glove')
shopModule:addBuyableItem({'katana imperium'}, 2376, 50000,       'katana imperium')
shopModule:addBuyableItem({'sound glove'}, 2435, 50000,       'sound glove')

shopModule:addBuyableItem({'chakra armor'},         2397, 5000,       'chakra armor')
shopModule:addBuyableItem({'jounin armor'},         2400, 25000,       'jounin armor')
shopModule:addBuyableItem({'kankuru hat'},                   7438, 2000,       'kankuru hat')
shopModule:addBuyableItem({'leaft jounin protector'},                   7427, 50000,       'leaft jounin protector')
end
return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Editei umas 5x porque vi umas coisas erradas. '-'

Editado por Alencar123 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

vou testar para ver se vai pegar.

 Whatsapp: +55 (48) 98815-0709 Discord: Qwizer#5713

 

Global 100% 7.40 com Website

TFS 1.2 10.97-11.00 + GlobalFull OtherWorld ...

 

Link para o post
Compartilhar em outros sites

Se não der certo tenta esse:

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

function creatureSayCallback(cid, type, msg)
if(not npcHandler:isFocused(cid)) then
return false
end

local shopModule = ShopModule:new()
npcHandler:addModule(shopModule)
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid

local X = STORAGE

if(msgcontains(msg, 'trade')) then
if getPlayerStorageValue(cid, X) ~= 1
selfSay('Você precisar ter a storage "..X..".', cid)
talkState[talkUser] = 1
else
shopModule:addBuyableItem({'nome do item'}, id, quantoiragastar,       'nome do item')
shopModule:addBuyableItem({'speed boots'}, 2525, 50000,       'speed boots')
shopModule:addBuyableItem({'chakra boots'}, 7417, 95000,       'chakra boots')
shopModule:addBuyableItem({'elite kunai'}, 2416, 610,       'elite kunai')
shopModule:addBuyableItem({'taijutsu glove'}, 2380, 545,       'taijutsu glove')
shopModule:addBuyableItem({'katana imperium'}, 2376, 50000,       'katana imperium')
shopModule:addBuyableItem({'sound glove'}, 2435, 50000,       'sound glove')

shopModule:addBuyableItem({'chakra armor'},         2397, 5000,       'chakra armor')
shopModule:addBuyableItem({'jounin armor'},         2400, 25000,       'jounin armor')
shopModule:addBuyableItem({'kankuru hat'},                   7438, 2000,       'kankuru hat')
shopModule:addBuyableItem({'leaft jounin protector'},                   7427, 50000,       'leaft jounin protector')
end
return true 
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Link para o post
Compartilhar em outros sites

ta faltando um end pra fechar o then, nao pega ta complicado esse npc.

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

 Whatsapp: +55 (48) 98815-0709 Discord: Qwizer#5713

 

Global 100% 7.40 com Website

TFS 1.2 10.97-11.00 + GlobalFull OtherWorld ...

 

Link para o post
Compartilhar em outros sites

Testou os dois?

sim, nenhum pegou, seu npc original funciona? se funciona posta ele pra eu ver como ta o script e ve se da pra modificar.

alguém poderia me ajudar?

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

 Whatsapp: +55 (48) 98815-0709 Discord: Qwizer#5713

 

Global 100% 7.40 com Website

TFS 1.2 10.97-11.00 + GlobalFull OtherWorld ...

 

Link para o post
Compartilhar em outros sites

Não sou muito bom com NPC mais testa ai;

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
 
function creatureSayCallback(cid, type, msg)
    if(not npcHandler:isFocused(cid)) then
        return false
    end
 
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
------------------- Configuração dos Itens -----------------------
 
local items = {2164, 2167, 2168, 2169, 2213, 2214, 2161, 2170, 2200, 2201} -- ID dos Itens
local nome = {'might ring', 'energy ring', 'life ring', 'time ring', 'dwarven ring', 'ring of healing', 'strange talisman', 'silver amulet', 'protection amulet', 'dragon necklace'}  -- Nome dos Itens
local valor = {2145, 25} -- id da moeda, quantidade
 
------------------- MESSAGES INICIAIS ----------------------------------------
if msgcontains(msg, nome[1]) then
selfSay('Deseja comprar um {'..getItemNameById(items[1])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 1
 
elseif msgcontains(msg, nome[2]) then
selfSay('Deseja comprar um {'..getItemNameById(items[2])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 2
 
elseif msgcontains(msg, nome[3]) then
selfSay('Deseja comprar um {'..getItemNameById(items[3])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 3
 
elseif msgcontains(msg, nome[4]) then
selfSay('Deseja comprar um {'..getItemNameById(items[4])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 4
 
elseif msgcontains(msg, nome[5]) then
selfSay('Deseja comprar um {'..getItemNameById(items[5])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 5
 
elseif msgcontains(msg, nome[6]) then
selfSay('Deseja comprar um {'..getItemNameById(items[6])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 6
 
elseif msgcontains(msg, nome[7]) then
selfSay('Deseja comprar um {'..getItemNameById(items[7])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 7
 
elseif msgcontains(msg, nome[8]) then
selfSay('Deseja comprar um {'..getItemNameById(items[8])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 8
 
elseif msgcontains(msg, nome[9]) then
selfSay('Deseja comprar um {'..getItemNameById(items[9])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 9
 
elseif msgcontains(msg, nome[10]) then
selfSay('Deseja comprar um {'..getItemNameById(items[10])..'} pagando '..valor[2]..' {'..getItemNameById(valor[1])..'?}', cid)
talkState[talkUser] = 10
 
elseif (msgcontains(msg, 'trade') or msgcontains(msg, 'hi')) then
selfSay(' Digite qual item deseja adquirir.', cid)
selfSay('Atualmente temos {'..getItemNameById(items[1])..'}, {'..getItemNameById(items[2])..'}, {'..getItemNameById(items[3])..'}, {'..getItemNameById(items[4])..'}, {'..getItemNameById(items[5])..'}, {'..getItemNameById(items[6])..'}, {'..getItemNameById(items[7])..'}, {'..getItemNameById(items[8])..'}, {'..getItemNameById(items[9])..'} e {'..getItemNameById(items[10])..'}.', cid)
talkState[talkUser] = 0
 
---------------------- NEGOCIAÇÃO -------------------------------
 
elseif talkState[talkUser] == 1 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[1], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[1])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 2 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[2], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[2])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 3 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[3], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[3])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 4 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[4], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[4])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 5 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[5], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[5])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 6 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[6], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[6])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 7 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[7], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[7])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 8 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[8], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[8])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 9 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[9], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[9])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
elseif talkState[talkUser] == 10 then
if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then
    if getPlayerItemCount(cid, valor[1]) >= valor[2] then
if getPlayerStorageValue(cid, 1038) == 1 then
        doPlayerRemoveItem(cid, valor[1], valor[2])
        doPlayerAddItem(cid, items[10], 1)
        selfSay('Parabens, voce acaba de adquirir um '..getItemNameById(items[10])..'.', cid)
    else
        selfSay('Voce nao tem permissao.', cid)
    talkState[talkUser] = 0
    end
   else
        selfSay('Voce nao tem dinheiro o suficiente..', cid)
    talkState[talkUser] = 0
    end
end
 
end
return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Link para o post
Compartilhar em outros sites
  • Solução
local keywordHandler = KeywordHandler:new() 
local npcHandler = NpcHandler:new(keywordHandler) 
NpcSystem.parseParameters(npcHandler) 




-- OTServ event handling functions start 
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 
-- OTServ event handling functions end 


local shopModule = ShopModule:new() 
npcHandler:addModule(shopModule) 


function creatureSayCallback(cid, type, msg)
if getPlayerStorageValue(cid, 1038) == 1 then
npcHandler:say("No have money.")
else
npcHandler:say("Sorry not possible.")
  return false
end 


shopModule:addSellableItem({'might ring'}, 2164, 250, 'might ring') 
shopModule:addSellableItem({'energy ring'}, 2167, 100, 'energy ring') 
shopModule:addSellableItem({'life ring'}, 2168, 50, 'life ring') 
shopModule:addSellableItem({'time ring'}, 2169, 100, 'time ring') 
shopModule:addSellableItem({'dwarven ring'}, 2213, 100, 'dwarven ring')
shopModule:addSellableItem({'ring of healing'}, 2214, 100, 'ring of healing') 
shopModule:addSellableItem({'strange talisman'}, 2161, 30, 'strange talisman') 
shopModule:addSellableItem({'silver amulet'}, 2170, 50, 'silver amulet') 
shopModule:addSellableItem({'protection amulet'}, 2200, 100, 'protection amulet')  
shopModule:addSellableItem({'dragon necklace'}, 2201, 100, 'dragon necklace') 
shopModule:addSellableItem({'snakebite rod'}, 2182, 100, 'snakebite rod') 
shopModule:addSellableItem({'moonlight rod'}, 2186, 200, 'moonlight rod') 
shopModule:addSellableItem({'volcanic rod'}, 2185, 1000, 'volcanic rod') 
shopModule:addSellableItem({'quagmire rod'}, 2181, 2000, 'quagmire rod') 
shopModule:addSellableItem({'tempest rod'}, 2183, 3000, 'tempest rod') 
shopModule:addSellableItem({'ankh'}, 2193, 100, 'ankh') 
shopModule:addSellableItem({'mysterious fetish'}, 2194, 50, 'mysterious fetish') 




shopModule:addBuyableItem({'might ring'}, 2164, 5000, 'might ring') 
shopModule:addBuyableItem({'energy ring'}, 2167, 2000, 'energy ring') 
shopModule:addBuyableItem({'life ring'}, 2168, 900, 'life ring') 
shopModule:addBuyableItem({'time ring'}, 2169, 2000, 'time ring') 
shopModule:addBuyableItem({'dwarven ring'}, 2213, 2000, 'dwarven ring')
shopModule:addBuyableItem({'ring of healing'}, 2214, 2000, 'ring of healing') 
shopModule:addBuyableItem({'strange talisman'}, 2161, 100, 'strange talisman') 
shopModule:addBuyableItem({'silver amulet'}, 2170, 100, 'silver amulet')
shopModule:addBuyableItem({'protection amulet'}, 2200, 700, 'protection amulet')
shopModule:addBuyableItem({'dragon necklace'}, 2201, 1000, 'dragon necklace')
end




npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 Whatsapp: +55 (48) 98815-0709 Discord: Qwizer#5713

 

Global 100% 7.40 com Website

TFS 1.2 10.97-11.00 + GlobalFull OtherWorld ...

 

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