Ir para conteúdo

Featured Replies

Postado
  • Autor
15 minutos atrás, So volto tarde disse:

Tive de mudar o nome de "refiner" para "normal refiner", também corrigi alguns erros que deixei passar.

 

  Ocultar conteúdo

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:lower())   end
function onThink()                  npcHandler:onThink()                  end
local talkState = {}
 
function creatureSayCallback(cid, type, msg)
   if(not npcHandler:isFocused(cid)) then
      return false
   end
 
   local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
   local config = {
        refinerid = 8301,
        qtdrefinerid = 100,
        
        grefinerid = 8303,
        qtdgrefinerid = 125,
        
        urefinerid = 8299,
        qtdurefinerid = 150,
        
        coinref = 9970,
        coingref = 2147,
        coinuref = 2144
    }
    
    if (msgcontains(msg, "normal refiner")) then
        selfSay('msg confirmação refiner? {yes}', cid)
        talkState[talkUser] = 1
    elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then
    if (getPlayerItemCount(cid, config.coinref) >= config.qtdrefinerid) then
            doPlayerRemoveItem(cid, config.coinref, config.qtdrefinerid)
            doPlayerAddItem(cid, config.refinerid, 1)
            talkState[talkUser] = 0
            selfSay('troca completa msg refiner', cid)
        else
            selfSay('voce nao tem '..config.qtdrefinerid..' '..getItemNameById(config.coinref), cid)
            talkState[talkUser] = 0
        end
        end
        
    if (msgcontains(msg, "great refiner")) then
        selfSay('msg confirmação great refiner? {yes}', cid)
        talkState[talkUser] = 2
    elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 2) then
    if (getPlayerItemCount(cid, config.coingref) >= config.qtdgrefinerid) then
            doPlayerRemoveItem(cid, config.coingref, config.qtdgrefinerid)
            doPlayerAddItem(cid, config.grefinerid, 1)
            talkState[talkUser] = 0
            selfSay('troca completa msg great refiner', cid)
        else
            selfSay('voce nao tem '..config.qtdgrefineridf..' '..getItemNameById(config.coingref), cid)
            talkState[talkUser] = 0
        end
        end
        
    if (msgcontains(msg, "ultra refiner")) then
        selfSay('msg confirmação refiner? {yes}', cid)
        talkState[talkUser] = 3
    elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 3) then
    if (getPlayerItemCount(cid, config.coinuref) >= config.qtdurefinerid) then
            doPlayerRemoveItem(cid, config.coinuref, config.qtdurefinerid)
            doPlayerAddItem(cid, config.urefinerid, 1)
            talkState[talkUser] = 0
            selfSay('troca completa msg refiner', cid)
        else
            selfSay('voce nao tem '..config.qtdurefinerid..' '..getItemNameById(config.coinuref), cid)
            talkState[talkUser] = 0
        end
        end
        
        
   return true
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

Funcionou perfeitamente! Era exatamente o que eu queira. XD rep+

  • Respostas 10
  • Visualizações 861
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • So volto tarde
    So volto tarde

    Tive de mudar o nome de "refiner" para "normal refiner", também corrigi alguns erros que deixei passar.    

Posted Images

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.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo