Ir para conteúdo
  • Cadastre-se

(Resolvido)[Pedido] Npc que dá uma Mensagem de boas vindas!


Ir para solução Resolvido por olokomeu,

Posts Recomendados

Gostaria de um Npc que funcionasse da seguinte maneira: Você chega fala hi e ele fala uma mensagem, ao afastar dele ele dá good bye!

 

Resumindo: Queria um Npc que apenas falasse uma mensagem e não tivesse ação alguma!

 

Rep+

Link para o post
Compartilhar em outros sites
  • Solução

Vá em data>npc> e crie um arquivo Xml e cole isso dentro dele:

 

 

<npc name="Nome do Npc" script="data/npc/scripts/default.lua" walkinterval="1200" floorchange="0" access="5" level="1" maglevel="1">

<health now="150" max="150"/>
<look type="252" head="0" body="19" legs="0" feet="38" addons="3" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Hello |PLAYERNAME|. Welcome." />
</parameters>
</npc>

 

Em Vermelho é o nome que será do Npc.

 

Vá em data>npc>script e crie um arquivo lua chamado default e coloque isso dentro dele:

 

 

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
 
npcHandler:addModule(FocusModule:new())
 

 

:)

Eu te Ajudei? Então solta aquele REP+ !!

Meus Tutoriais [Tutorial] Bug "Temple position is wrong" (MySql)

Outros:    [Meu Show OFF | Mapa próprio 8.6] 

Link para o post
Compartilhar em outros sites

Vá em data>npc> e crie um arquivo Xml e cole isso dentro dele:

 

 

Em Vermelho é o nome que será do Npc.

 

Vá em data>npc>script e crie um arquivo lua chamado default e coloque isso dentro dele:

 

 

:)

Já tem um arquivo chamado default aqui, posso colocar mensagem.lua?

Link para o post
Compartilhar em outros sites

Se já tiver, e for a mesma coisa que tem no deafaut que lhe enviei. Não precisa criar um novo arquivo.lua default, apenas crie o Xml do Npc :).

Eu te Ajudei? Então solta aquele REP+ !!

Meus Tutoriais [Tutorial] Bug "Temple position is wrong" (MySql)

Outros:    [Meu Show OFF | Mapa próprio 8.6] 

Link para o post
Compartilhar em outros sites

Se já tiver, e for a mesma coisa que tem no deafaut que lhe enviei. Não precisa criar um novo arquivo.lua default, apenas crie o Xml do Npc :).

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
 
npcHandler:addModule(FocusModule:new())
Link para o post
Compartilhar em outros sites

Já que tá diferente. Crie um nome diferente para o arquivo.lua coloque o que te disse para por. E no xml do npc você altera essa parte:

 

 

 

<npc name="Nome do Npc" script="data/npc/scripts/default.lua" walkinterval="1200" floorchange="0" access="5" level="1" maglevel="1">

 

Onde está em Verde, para o novo nome do arquivo.lua que você irá criar.

Eu te Ajudei? Então solta aquele REP+ !!

Meus Tutoriais [Tutorial] Bug "Temple position is wrong" (MySql)

Outros:    [Meu Show OFF | Mapa próprio 8.6] 

Link para o post
Compartilhar em outros sites

Já que tá diferente. Crie um nome diferente para o arquivo.lua coloque o que te disse para por. E no xml do npc você altera essa parte:

 

 

Onde está em Verde, para o novo nome do arquivo.lua que você irá criar.

Ta dando um erro aqui quando tento adicionar ao remeres: Invalid Format Receptionist.xml!

Link para o post
Compartilhar em outros sites

Coloque o xml do Npc que você ta utilizando e o aquivo.lua dele, Aqui para eu ver.

Eu te Ajudei? Então solta aquele REP+ !!

Meus Tutoriais [Tutorial] Bug "Temple position is wrong" (MySql)

Outros:    [Meu Show OFF | Mapa próprio 8.6] 

Link para o post
Compartilhar em outros sites

Coloque o xml do Npc que você ta utilizando e o aquivo.lua dele, Aqui para eu ver.

<npc name="Receptionist" script="data/npc/scripts/recepcao.lua" walkinterval="1200" floorchange="0" access="5" level="1" maglevel="1">
<health now="150" max="150"/>
<look type="162" head="116" body="86" legs="86" feet="0" addons="3" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Olá |PLAYERNAME|. Seja bem vindo ao Saffron Market, aqui você encontrará várias lojas com muitos itens que não podem ser encontrado em outros lugares!" />
</parameters>
</npc>
 
Link para o post
Compartilhar em outros sites

Olá, posso te dar uma ideia? Que tal um Npc que fala mensagens no chat default como players normais? assim ele pode dizer mensagens a mais e o player não precisa falar hi. 

 

Se lhe for útil, aqui está:

Em data\npc copie um outro arquivo.xml e renomeie para Welcome e dentro coloque:

<?xml version="1.0" encoding="UTF-8"?> 
<npc name="Welcome" script="data/npc/scripts/welcome.lua" access="1" lookdir="4">
               <health now="100" max="100"/> 
    
<look type="134" head="59" body="113" legs="128" feet="113" addons="3"/>
 
</npc> 

 

Em data data\npc\scripts crie um arquivo chamado welcome.lua e dentro coloque:

------------------- Npc ------------------



local focus = 0
local talk_start = 0
local target = 0
local following = false
local attacking = false

stime = 35 -- Tempo entre as falas do npc (em segundos)
time = os.clock()
function onThink()
if (time + stime) < os.clock() then
time = os.clock()
var = math.random(1,10)
if var == 1 then
selfSay("Seja Bem Vindo!")
end
if var == 2 then
selfSay("Bom Jogo a todos!")
end
if var == 3 then
selfSay("Good  Morning")
end
if var == 4 then
selfSay("Nice game to all")
end
end

end

 

Para criar mais mensagens é só você adicionar uma tag dessas e modificar o número:

if var == 5 then
selfSay("MENSAGEM")
end

Obs: Não esqueça que só a ultima mensagem tem dois end:

selfSay("Nice game to all")
end
end
Editado por eviltox (veja o histórico de edições)

                                                                                                230x230.jpg

 

Link para o post
Compartilhar em outros sites

 

Olá, posso te dar uma ideia? Que tal um Npc que fala mensagens no chat default como players normais? assim ele pode dizer mensagens a mais e o player não precisa falar hi. 

 

Se lhe for útil, aqui está:

Em data\npc copie um outro arquivo.xml e renomeie para Welcome e dentro coloque:

<?xml version="1.0" encoding="UTF-8"?> 
<npc name="Welcome" script="data/npc/scripts/welcome.lua" access="1" lookdir="4">
               <health now="100" max="100"/> 
    
<look type="134" head="59" body="113" legs="128" feet="113" addons="3"/>
 
</npc> 

 

Em data data\npc\scripts crie um arquivo chamado welcome.lua e dentro coloque:

------------------- Npc ------------------

local focus = 0

local talk_start = 0

local target = 0

local following = false

local attacking = false

stime = 35 -- Tempo entre as falas do npc (em segundos)

time = os.clock()

function onThink()

if (time + stime) < os.clock() then

time = os.clock()

var = math.random(1,10)

if var == 1 then

selfSay("Seja Bem Vindo!")

end

if var == 2 then

selfSay("Bom Jogo a todos!")

end

if var == 3 then

selfSay("Good  Morning")

end

if var == 4 then

selfSay("Nice game to all")

end

end

end

 

Para criar mais mensagens é só você adicionar uma tag dessas e modificar o número:

if var == 5 then
selfSay("MENSAGEM")
end

Obs: Não esqueça que só a ultima mensagem tem dois end:

selfSay("Nice game to all")
end
end

Eu gostei desse que você me passou! Porém eu não gostaria que o Npc falasse automaticamente, gostaria que para o Npc falar a mensagem o player tem que dizer hi! Se você conseguir modifica-lo pra mim eu ficaria agradecido!

Link para o post
Compartilhar em outros sites

@ducb

 

O método que lhe mostrei no primeiro poste meu. É exatamente o que você procura. Refaça o que eu lhe disse, que dará certo. Se o seu Ot já tem o arquivo default, crie outro arquivo com outro nome, não tem problema. Espero ter ajudado.

Eu te Ajudei? Então solta aquele REP+ !!

Meus Tutoriais [Tutorial] Bug "Temple position is wrong" (MySql)

Outros:    [Meu Show OFF | Mapa próprio 8.6] 

Link para o post
Compartilhar em outros sites

@ducb

 

O método que lhe mostrei no primeiro poste meu. É exatamente o que você procura. Refaça o que eu lhe disse, que dará certo. Se o seu Ot já tem o arquivo default, crie outro arquivo com outro nome, não tem problema. Espero ter ajudado.

Eu fiz isso, criei outro arquivo com o script que você me passou e ta dando erro ao importar no remeres!

Link para o post
Compartilhar em outros sites

Você está errando no XML do npc você colocou assim:

 

 

 

<npc name="Receptionist" script="data/npc/scripts/recepcao.lua" walkinterval="1200" floorchange="0" access="5" level="1" maglevel="1">
<health now="150" max="150"/>
<look type="162" head="116" body="86" legs="86" feet="0" addons="3" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Olá |PLAYERNAME|. Seja bem vindo ao Saffron Market, aqui você encontrará várias lojas com muitos itens que não podem ser encontrado em outros lugares!" />
</parameters>
</npc>

 

você esqueceu do:

 

 

<?xml version="1.0" encoding="UTF-8"?>

que fica em cima do <npc, com isso, ficando assim:

 

 

<?xml version="1.0" encoding="UTF-8"?>

<npc name="Receptionist" script="data/npc/scripts/recepcao.lua" walkinterval="1200" floorchange="0" access="5" level="1" maglevel="1">
<health now="150" max="150"/>
<look type="162" head="116" body="86" legs="86" feet="0" addons="3" corpse="2212"/>
<parameters>
<parameter key="message_greet" value="Olá |PLAYERNAME|. Seja bem vindo ao Saffron Market, aqui você encontrará várias lojas com muitos itens que não podem ser encontrado em outros lugares!" />
</parameters>
</npc>

Eu te Ajudei? Então solta aquele REP+ !!

Meus Tutoriais [Tutorial] Bug "Temple position is wrong" (MySql)

Outros:    [Meu Show OFF | Mapa próprio 8.6] 

Link para o post
Compartilhar em outros sites

Você está errando no XML do npc você colocou assim:

 

 

você esqueceu do:

 

que fica em cima do <npc, com isso, ficando assim:

Continua dando invalid format!

Edit: Consegui arrumar!

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