Ir para conteúdo

[Resolvido] [Pedido] NPC que da item ao dizer x palavra

Featured Replies

Postado

Olá, estou precisando de um Script de um NPC, que ao dizer x palavra para ele você vai receber uma recompensa, e que possa dar uma quantidade de itens por que eu quero colocar um NPC, que da um item mais só que em certa quantidade! obrigado.

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

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

Top Posters In This Topic

Most Popular Posts

  • GiovaniRodrigo
    GiovaniRodrigo

    Crie um arquivo chamado Fance.lua na pasta data/npc/scripts e cole isso local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHan

Postado

Crie um arquivo chamado Fance.lua na pasta data/npc/scripts e cole isso

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
 
local cfg = {
          mensage = "item", -- Mensagem que o jogador irá falar para ganhar o item.
          storage = 40001, -- Storage para o jogador não ganhar o item mais de uma vez.
          count = 1, -- Quantidade do item que o jogador irá receber.
          item = 1234 -- ID do item que o jogador irá receber.
}
 
function creatureSayCallback(cid, type, msg)
          if(not npcHandler:isFocused(cid)) then
                    return false
          end
 
          local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
 
          if msgcontains(msg, cfg.mensage) then
                    if getPlayerStorageValue(cid, cfg.storage) <= 0 then
                              selfSay("You have found ".. cfg.count .." ".. cfg.item ..".", cid)
                              doPlayerAddItem(cid, cfg.item, cfg.count)
                              setPlayerStorageValue(cid, cfg.storage, 1)
                    else
                              selfSay("Have you received your item.", cid)
                    end
          end
end
 
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Crie um arquivo chamado Fance.lua na pasta data/npc e cole isso

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Fance" script="data/npc/scripts/Fance.lua" walkinterval="25" floorchange="0" access="5" level="1" maglevel="1">
          <health now="150" max="150"/>
          <look type="128" head="97" body="100" legs="115" feet="114" corpse="2212"/>
 
          <parameters>
                    <parameter key="message_greet" value="Hey |PLAYERNAME|!"/>
                    <parameter key="message_walkaway" value="Hey Hey, where you go ?"/>
                    <parameter key="message_farewell" value="Bye bye."/>
          </parameters>
</npc>

Att.

Giovani Rodrigo

Postado
  • Autor

Da erro, quando eu abro o executavel fiz algumas alterações, nele para ficar do meu jeito as alterações que eu fiz foram no id do item e na quantidade do item, mais como você, esta vendo a baixo não ta legal o Script se tiver como concertar.

 

 

infos40x40.png

 

[12/07/2013
14:17:07] [Error - LuaScriptInterface::loadFile] data/npc/scripts/Tibia.lua:13:
'}' expected (to close '{' at line 11) near 'storage'
[12/07/2013 14:17:07]
[Warning - NpcScript::NpcScript] Cannot load script:
data/npc/scripts/Tibia.lua
[12/07/2013 14:17:07]
data/npc/scripts/Tibia.lua:13: '}' expected (to close '{' at line 11) near
'storage'

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

Postado

Não sei se estou certo.
Mas aparentemente, esta faltando "}" o fechamento da declaração.

 

local cfg = {
          mensage = "item", -- Mensagem que o jogador irá falar para ganhar o item.
          storage = 40001, -- Storage para o jogador não ganhar o item mais de uma vez.
          count = 1, -- Quantidade do item que o jogador irá receber.
          item = 1234 -- ID do item que o jogador irá receber.
}

 

 

 

Att..

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