A parte para o npc dizer que não fala com determinada vocação eu entendi. Mas poderia explicar mais detalhadamente como ocorreria um diálogo do npc com um player com vocação aceitavel?
Tipo, demonstre um diálogo com pelo menos mais de 2 respostas que o npc daria à 2 falas-gatilho do player, etc.
NPC que só fala com certa vocation.
Por gabriel28, 25 de jan. de 2016 em Scripts
info
Grupo: Conde
Registrado: 07/04/15
Posts: 926
Reputação: +335
Gênero: Masculino

info
Grupo: Visconde
Registrado: 26/08/10
Posts: 431
Reputação: +60
Gênero: Masculino
Char no Tibia: Gabriel Rookgaardian

A parte para o npc dizer que não fala com determinada vocação eu entendi. Mas poderia explicar mais detalhadamente como ocorreria um diálogo do npc com um player com vocação aceitavel?
Tipo, demonstre um diálogo com pelo menos mais de 2 respostas que o npc daria à 2 falas-gatilho do player, etc.
Você poderia por qualquer coisa que eu alteraria depois. hahaha
Mas sendo assim:
Player: Hi
NPC: Olá, |PLAYER NAME|. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?
Player: mysterious island
NPC: É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.
Player: second promotion
NPC: Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.
up
info
Grupo: Conde
Registrado: 07/04/15
Posts: 926
Reputação: +335
Gênero: Masculino

Vá em data\npc e crie um arquivo chamado npctalk.xml e coloque isso dentro:
*é nesse script q vc coloca a mensagem de saudação:
<?xml version="1.0"?>
<npc name="NpcX" script="data/npc/scripts/npctalk.lua" walkinterval="0">
<health now="100" max="100"/>
<look typeex="1448"/>
<parameter key="message_greet" value="Olá, |PLAYER NAME|. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?"/>
</npc>
Agora vá em data\npc\scripts e crie um arquivo chamado npctalk.lua e coloque isso dentro:
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
--------------------------
----PARTE CONFIGURAVEL----
--------------------------
local msgs = {
["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.",
["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.",
}
-----------------------------
--FIM DA PARTE CONFIGURAVEL--
-----------------------------
function creatureSayCallback(cid, type, msg)
for k, v in pairs(msgs) do
if msgcontains(msg, v) then
npcHandler:say(msg[v], cid)
end
end
return true
end
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
É nessa parte do script q vc configura o [gatilho] e a mensagem de resposta do npc:
local msgs = {
["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.",
["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.",
}
info
Grupo: Visconde
Registrado: 26/08/10
Posts: 431
Reputação: +60
Gênero: Masculino
Char no Tibia: Gabriel Rookgaardian

Vá em data\npc e crie um arquivo chamado npctalk.xml e coloque isso dentro:
*é nesse script q vc coloca a mensagem de saudação:
<?xml version="1.0"?> <npc name="NpcX" script="data/npc/scripts/npctalk.lua" walkinterval="0"> <health now="100" max="100"/> <look typeex="1448"/> <parameter key="message_greet" value="Olá, |PLAYER NAME|. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?"/> </npc>Agora vá em data\npc\scripts e crie um arquivo chamado npctalk.lua e coloque isso dentro:
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 -------------------------- ----PARTE CONFIGURAVEL---- -------------------------- local msgs = { ["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.", ["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.", } ----------------------------- --FIM DA PARTE CONFIGURAVEL-- ----------------------------- function creatureSayCallback(cid, type, msg) for k, v in pairs(msgs) do if msgcontains(msg, v) then npcHandler:say(msg[v], cid) end end return true end npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())É nessa parte do script q vc configura o [gatilho] e a mensagem de resposta do npc:
Não entendo de script, mas não to vendo a parte que fica o bloqueio de vocações.
info
Grupo: Campones
Registrado: 17/06/13
Posts: 39
Reputação: +13
Gênero: Masculino

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
--------------------------
----PARTE CONFIGURAVEL----
--------------------------
local msgs = {
["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.",
["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.",
}
local voc = 3 -- Voc que ele irá falar.
-----------------------------
--FIM DA PARTE CONFIGURAVEL--
-----------------------------
function creatureSayCallback(cid, type, msg)
if getPlayerVocation(cid) == voc then
for k, v in pairs(msgs) do
if msgcontains(msg, v) then
npcHandler:say(msg[v], cid)
end
end
else
return npcHandler:say("Não falo com "..getPlayerVocationName(cid).."s.", cid)
end
return true
end
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
Editado Janeiro 26 por christopher17288
info
Grupo: Conde
Registrado: 07/04/15
Posts: 926
Reputação: +335
Gênero: Masculino

@, putz, vdd. tinha esquecido que vc queria isso... shauhusa
Caso o do amigo acima ñ funcione, põe assim:
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
--------------------------
----PARTE CONFIGURAVEL----
--------------------------
local msgs = {
["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.",
["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.",
}
local voc = 3
-----------------------------
--FIM DA PARTE CONFIGURAVEL--
-----------------------------
function creatureSayCallback(cid, type, msg)
if getPlayerVocation(cid) == voc then
for k, v in pairs(msgs) do
if msgcontains(msg, v) then
npcHandler:say(msg[v], cid)
end
end
else
npcHandler:say('Eu não falo com '..getVocationInfo(getPlayerVocation(cid)).name..'s.', cid)
return true
end
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
info
Grupo: Visconde
Registrado: 26/08/10
Posts: 431
Reputação: +60
Gênero: Masculino
Char no Tibia: Gabriel Rookgaardian

Nemhum dos dois está funcionando corretamente. Eu gostaria que a checagem fosse feita quando falasse 'Hi', mas só faz depois que o player faz alguma pergunta. Na checagem, ta indo bem. Quando é uma voc que não está liberada no script, ele diz direitinho que não fala com gente daquela vocação, mas quando é um da vocação configurada pra ele falar, ele não ignora mas também não reaponde as perguntas. Não da nenhum erro no console.
info
Grupo: Conde
Registrado: 07/04/15
Posts: 926
Reputação: +335
Gênero: Masculino

Erro meu... Chamei a table errada. Agora deve estar como vc deseja:
npctalk.lua:
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
--------------------------
----PARTE CONFIGURAVEL----
--------------------------
local msgs = {
["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.",
["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.",
}
local msgAccept = "Olá, |PLAYER NAME|. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?"
local msgDenied = "Eu não falo com "..getVocationInfo(getPlayerVocation(cid)).name.."s."
local voc = 3
-----------------------------
--FIM DA PARTE CONFIGURAVEL--
-----------------------------
function greetCallback(cid)
if getPlayerVocation(cid) == voc then
npcHandler:say(msgAccept, cid)
else
npcHandler:say(msgDenied, cid)
end
end
function creatureSayCallback(cid, type, msg)
for k, v in pairs(msgs) do
if msgcontains(msg, v) then
npcHandler:say(msgs[v], cid)
end
end
return true
end
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
npctalk.xml:
<?xml version="1.0"?> <npc name="NpcX" script="data/npc/scripts/NpcX.lua" walkinterval="0"> <health now="100" max="100"/> <look typeex="1448"/> </npc>
#OBS: amigo, se o meu script anterior não deu nenhum erro e vc não o alterou antes de testar, pf, garanta de que está fznd a instalação de forma correta, pois eu identifiquei um erro no meu script anterior: estava faltando um END. Não sei se vc havia percebido e então corrigiu, então.. Atenção aí. ^^
Editado Janeiro 27 por Danihcv
info
Grupo: Visconde
Registrado: 26/08/10
Posts: 431
Reputação: +60
Gênero: Masculino
Char no Tibia: Gabriel Rookgaardian

Eu tinha percebido a falta do 'end' dai testei o seu mesclado com o outro. Kkkk
Agora tem três problemas:
Dando erro bo console;<internationalGetPlayerInfo> Player not found when requeating player info #6
Quando uma voc bloqueada fala 'Hi', ele não responde mais o nome da vocação, ele diz "Não falo com Nones", pra qualquer vocação que tentar.
Quando é a voc permitida, ele manda o Olá, |PLAYER NAME|; sem dizer o nome do player. Além disso, ele só manda a msg e continua caminhando, como se a conversa tivesse acabado.
Editado Janeiro 27 por gabrielvs
info
Grupo: Conde
Registrado: 07/04/15
Posts: 926
Reputação: +335
Gênero: Masculino

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
--------------------------
----PARTE CONFIGURAVEL----
--------------------------
local msgs = {
["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.",
["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.",
}
local msgAccept = 'Olá, '..getCreatureName(cid)..'. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?'
local msgDenied = 'Eu não falo com '..getVocationInfo(getPlayerVocation(cid)).name..'s.'
local voc = 3
-----------------------------
--FIM DA PARTE CONFIGURAVEL--
-----------------------------
local function greetCallback(cid)
if getPlayerVocation(cid) == voc then
npcHandler:say(msgAccept, cid)
npcHandler:addFocus(cid)
else
npcHandler:say(msgDenied, cid)
npcHandler:releaseFocus(cid)
return true
end
return false
end
function creatureSayCallback(cid, type, msg)
if string.lower(msg) == 'bye' then
npcHandler:resetNpc(cid)
return false
end
for k, v in pairs(msgs) do
if msgcontains(msg, v) then
npcHandler:say(msgs[v], cid)
end
end
return true
end
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
info
Grupo: Visconde
Registrado: 26/08/10
Posts: 431
Reputação: +60
Gênero: Masculino
Char no Tibia: Gabriel Rookgaardian

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 -------------------------- ----PARTE CONFIGURAVEL---- -------------------------- local msgs = { ["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.", ["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.", } local msgAccept = 'Olá, '..getCreatureName(cid)..'. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?' local msgDenied = 'Eu não falo com '..getVocationInfo(getPlayerVocation(cid)).name..'s.' local voc = 3 ----------------------------- --FIM DA PARTE CONFIGURAVEL-- ----------------------------- local function greetCallback(cid) if getPlayerVocation(cid) == voc then npcHandler:say(msgAccept, cid) npcHandler:addFocus(cid) else npcHandler:say(msgDenied, cid) npcHandler:releaseFocus(cid) return true end return false end function creatureSayCallback(cid, type, msg) if string.lower(msg) == 'bye' then npcHandler:resetNpc(cid) return false end for k, v in pairs(msgs) do if msgcontains(msg, v) then npcHandler:say(msgs[v], cid) end end return true end npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Quando tento sumonar ele, da esse erro> lua:17: attempt to concatenate a boolean value
info
Grupo: Conde
Registrado: 07/04/15
Posts: 926
Reputação: +335
Gênero: Masculino

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
--------------------------
----PARTE CONFIGURAVEL----
--------------------------
local msgs = {
["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.",
["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.",
}
local voc = 3
-----------------------------
--FIM DA PARTE CONFIGURAVEL--
-----------------------------
local function greetCallback(cid)
if getPlayerVocation(cid) == voc then
npcHandler:say('Olá, '..getCreatureName(cid)..'. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?', cid)
npcHandler:addFocus(cid)
else
npcHandler:say('Eu não falo com '..getVocationInfo(getPlayerVocation(cid)).name..'s.', cid)
npcHandler:releaseFocus(cid)
return true
end
return false
end
function creatureSayCallback(cid, type, msg)
if string.lower(msg) == 'bye' then
npcHandler:resetNpc(cid)
return false
end
for k, v in pairs(msgs) do
if msgcontains(msg, v) then
npcHandler:say(msgs[v], cid)
end
end
return true
end
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
info
Grupo: Visconde
Registrado: 26/08/10
Posts: 431
Reputação: +60
Gênero: Masculino
Char no Tibia: Gabriel Rookgaardian

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 -------------------------- ----PARTE CONFIGURAVEL---- -------------------------- local msgs = { ["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.", ["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.", } local voc = 3 ----------------------------- --FIM DA PARTE CONFIGURAVEL-- ----------------------------- local function greetCallback(cid) if getPlayerVocation(cid) == voc then npcHandler:say('Olá, '..getCreatureName(cid)..'. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?', cid) npcHandler:addFocus(cid) else npcHandler:say('Eu não falo com '..getVocationInfo(getPlayerVocation(cid)).name..'s.', cid) npcHandler:releaseFocus(cid) return true end return false end function creatureSayCallback(cid, type, msg) if string.lower(msg) == 'bye' then npcHandler:resetNpc(cid) return false end for k, v in pairs(msgs) do if msgcontains(msg, v) then npcHandler:say(msgs[v], cid) end end return true end npcHandler:setCallback(CALLBACK_GREET, greetCallback) npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Creio que eateja quase lá.
Quando não é a voc permitida, ele diz que não fala com ela, mas mesmo assim, ele abre o chat e diz também a frase default (Welcome, Teste! I have been expecting you.); e fica esperando o player falar algo, mas não responde nengum gatilho (mysterious island; second promotion), mas responde quando dar bye.
Quando é a voc permitida, ele da as saudaçoes normal, mas não responde nenhum gatilho.
info
Grupo: Conde
Registrado: 07/04/15
Posts: 926
Reputação: +335
Gênero: Masculino

Qual o sript.xml que vc tá usando no npc?
De qqr forma, tenta assim o .lua:
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
--------------------------
----PARTE CONFIGURAVEL----
--------------------------
local msgs = {
["mysterious island"] = "É uma ilha que antigos diziam ficar ao sudoeste de Carlin. Há um teleport que dizem aparecer nos pântanos de Venore, talvez, ele leve a essa ilha.",
["second promotion"] = "Há um NPC que vem de muito longe e fica a caminhas pelos campos de Thais, dizem que ele pode dar a segunda vocação para os aventureiros.",
}
local voc = 3
-----------------------------
--FIM DA PARTE CONFIGURAVEL--
-----------------------------
local function greetCallback(cid)
if getPlayerVocation(cid) == voc then
npcHandler:say('Olá, '..getCreatureName(cid)..'. Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?', cid)
npcHandler:addFocus(cid)
else
npcHandler:say('Eu não falo com '..getVocationInfo(getPlayerVocation(cid)).name..'s.', cid)
npcHandler:releaseFocus(cid)
return true
end
return false
end
function creatureSayCallback(cid, type, msg)
for k, v in pairs(msgs) do
if string.lower(msg) == 'bye' then
npcHandler:resetNpc(cid)
elseif msgcontains(msg, v) then
npcHandler:say(msgs[v], cid)
end
end
return true
end
npcHandler:setCallback(CALLBACK_GREET, greetCallback)
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())



info
Grupo: Visconde
Registrado: 26/08/10
Posts: 431
Reputação: +60
Gênero: Masculino
Char no Tibia: Gabriel Rookgaardian
Gostaria de um NPC que só falasse com certa vocation (que pudesse ser configurado para eu poder adaptar pra outras). O NPC seria um de conversa. Quando o player não tivesse a vocação certa pra falar com ele, ele diria, ex: "Não falo com Sorcerers". Se desse pra colocar uma verificação de vocação pra essa fala condizer com a vocação do player, ficando: "Não falo com Druids"; "Não falo com Paladins"; etc..., agradeceria. A conversa podem por qualquer coisa que eu mudo depois. Uso TFS 0.4 rev 3884.
Agradeço desde já.
Editado Janeiro 25 por gabrielvs