Ir para conteúdo

Featured Replies

Postado

@Luzetti

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


local config = {
      level = 50, -- Level necessario
      storage = 234123, -- Storage
      item = 2150, -- Id do item 
      count = 50, -- Count do item
      new = 15, -- ID da nova outfit
      old = 10, -- ID da outfit antiga
      voc = 4 -- ID da nova voc
} 

local outfit = {lookType = config.new}

if msgcontains(msg, 'yes') or msgcontains(msg, 'sim') then
   selfSay("Traga para mim ".. config.count .." ".. getItemInfo(config.item).name .." para completar essa missao", cid)
   talkState[talkUser] = 1
end
   if msgcontains(msg, 'itens') or msgcontains(msg, 'items') and talkState[talkUser] == 1 then
      if getPlayerLevel(cid) >= config.level then
         if getCreatureStorage(cid, config.storage) == -1 then
            if doPlayerRemoveItem(cid, config.item, config.count) then
               doCreatureSetStorage(cid, config.storage, 1)     
               doPlayerRemoveOutfitId(cid, config.old) 
               doPlayerAddOutfitId(cid, config.new, 0)
               doCreatureChangeOutfit(cid, outfit)
               doPlayerSetVocation(cid, config.voc)
          	   addEvent(doRemoveCreature, 5000, cid)
               selfSay("Parabens , voce completou a missão", cid)                     
            else
                selfSay("Traga para mim ".. config.count .." ".. getItemInfo(config.item).name .." para completar essa missao", cid)
                talkState[talkUser] = 0
            end
         else
             selfSay("voce ja completou essa missão", cid)
             talkState[talkUser] = 0
         end
      else
          selfSay("Voce precisa ser level ".. config.level .." para iniciar essa missão.", cid)
          talkState[talkUser] = 0
      end
   
   
   end
return true
end
            
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

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

  • Respostas 10
  • Visualizações 1k
  • Created
  • Última resposta

Top Posters In This Topic

Posted Images

Postado
  • Autor
1 minuto atrás, Sttorm disse:

@Luzetti


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


local config = {
      level = 50, -- Level necessario
      storage = 234123, -- Storage
      item = 2150, -- Id do item 
      count = 50, -- Count do item
      new = 15, -- ID da nova outfit
      old = 10, -- ID da outfit antiga
      voc = 4 -- ID da nova voc
} 

local outfit = {lookType = config.new}

if msgcontains(msg, 'yes') or msgcontains(msg, 'sim') then
   selfSay("Traga para mim ".. config.count .." ".. getItemInfo(config.item).name .." para completar essa missao", cid)
   talkState[talkUser] = 1
end
   if msgcontains(msg, 'itens') or msgcontains(msg, 'items') and talkState[talkUser] == 1 then
      if getPlayerLevel(cid) >= config.level then
         if getCreatureStorage(cid, config.storage) == -1 then
            if doPlayerRemoveItem(cid, config.item, config.count) then
               doCreatureSetStorage(cid, config.storage, 1)     
               doPlayerRemoveOutfitId(cid, config.old) 
               doPlayerAddOutfitId(cid, config.new, 0)
               doCreatureChangeOutfit(cid, outfit)
               doPlayerSetVocation(cid, config.voc)
               selfSay("Parabens , voce completou a missão", cid)                     
            else
                selfSay("Traga para mim ".. config.count .." ".. getItemInfo(config.item).name .." para completar essa missao", cid)
                talkState[talkUser] = 0
            end
         else
             selfSay("voce ja completou essa missão", cid)
             talkState[talkUser] = 0
         end
      else
          selfSay("Voce precisa ser level ".. config.level .." para iniciar essa missão.", cid)
          talkState[talkUser] = 0
      end
   
   
   end
return true
end
            
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

ta pra kikar com 5 segundos? após dar a vocacao?

5 minutos atrás, Sttorm disse:

@Luzetti


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


local config = {
      level = 50, -- Level necessario
      storage = 234123, -- Storage
      item = 2150, -- Id do item 
      count = 50, -- Count do item
      new = 15, -- ID da nova outfit
      old = 10, -- ID da outfit antiga
      voc = 4 -- ID da nova voc
} 

local outfit = {lookType = config.new}

if msgcontains(msg, 'yes') or msgcontains(msg, 'sim') then
   selfSay("Traga para mim ".. config.count .." ".. getItemInfo(config.item).name .." para completar essa missao", cid)
   talkState[talkUser] = 1
end
   if msgcontains(msg, 'itens') or msgcontains(msg, 'items') and talkState[talkUser] == 1 then
      if getPlayerLevel(cid) >= config.level then
         if getCreatureStorage(cid, config.storage) == -1 then
            if doPlayerRemoveItem(cid, config.item, config.count) then
               doCreatureSetStorage(cid, config.storage, 1)     
               doPlayerRemoveOutfitId(cid, config.old) 
               doPlayerAddOutfitId(cid, config.new, 0)
               doCreatureChangeOutfit(cid, outfit)
               doPlayerSetVocation(cid, config.voc)
               selfSay("Parabens , voce completou a missão", cid)                     
            else
                selfSay("Traga para mim ".. config.count .." ".. getItemInfo(config.item).name .." para completar essa missao", cid)
                talkState[talkUser] = 0
            end
         else
             selfSay("voce ja completou essa missão", cid)
             talkState[talkUser] = 0
         end
      else
          selfSay("Voce precisa ser level ".. config.level .." para iniciar essa missão.", cid)
          talkState[talkUser] = 0
      end
   
   
   end
return true
end
            
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

[30/05/2018 16:26:57] [Error - LuaScriptInterface::loadFile] data/npc/scripts/vampiro.lua:44: unexpected symbol near 'ï'
[30/05/2018 16:26:57] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/vampiro.lua
[30/05/2018 16:26:57] data/npc/scripts/vampiro.lua:44: unexpected symbol near 'ï'

Postado
  • Autor
6 minutos atrás, Sttorm disse:


Esqueci , código editado.

nao tem como a parte de entrega ser mais pratica? Blza ele mando eu buscar os itens, ai na volta...eu vou ter que fala itens? nao tem algum jeito mais facil? em vez de fala itens?  ele perguntar de novo? 

 

NPC, CONSEGUIU OQ LHE PEDI?

PLR: SIM

OKAY VEJO QUE É DIGNO DE SER ESSE GUERREIRO. 

 

nao tem como ser assim?

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