Ir para conteúdo

Npc Que Conta Historia E Teletransporta


Fazeer

Posts Recomendados

Bom, não consigo fazer um NPC que conte uma historia e te teletransporta pra um lugar, se alguem poder me ajudar vou por o dialogo e a cordenada pra onde vai

 

Você - Hi

Diabo - CALE-SE mortal! Eu dou as ordens aqui, quer ouvir o que tenho para te contar?

Você - Contar

Diabo - Há muitos anos vim para esse lugar...

Diabo - *Aquele anjo maldito ainda me paga*

Diabo - A cada dia ele manda mais um para este horrivel lugar

Diabo - Vejo um odio em seu coração

Diabo - Estou certo?

Você - Certo

Diabo - Você pode me ajudar a me vingar e libertar todos desse maldito lugar?

Você - Ajudar

Diabo - Boatos dizem que esse Anjo Querubim aparece raramente nas redondezas da Sorlavin (cidade), se você matar esse anjo, todos do inferno poderão voltar a vida e você ganhara uma recompensa matando-o, aceita essa missão?

Você - Yes

Diabo - Lembre-se, ele é uma criatura muito forte!

 

Ai o diabo te teletransporta pro local que seria x=1031 y=1022 z=7

 

É só isso, penso que não seja tão complicado ( Se você achar melhor pode unir algumas falas do diabo ) apesar de ser comprido, quem poder ajudar estarei agradecido!

Link para o comentário
Compartilhar em outros sites

Como acho que você sabe registrar NPCs, vou apenas passar o script abaixo,

 

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 msgCallback(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, 'contar')) then
	npcHandler:say("Há muitos anos vim para esse lugar...", cid)
	addEvent(selfSay, 2000, "*Aquele anjo maldito ainda me paga*", cid)
	addEvent(selfSay, 4000, "A cada dia ele manda um para este horrível lugar...", cid)
	addEvent(selfSay, 8000, "Vejo um ódio em seu coração, estou {certo}?", cid)
	talkState[talkUser] = 1
end

if(msgcontains(msg, 'certo') and talkState[talkUser] == 1) then
	npcHandler:say("Você pode me {ajudar} a me vingar e libertar todos desse maldito lugar?", cid)
	talkState[talkUser] = 2
end

if(msgcontains(msg, 'ajudar') and talkState[talkUser] == 2) then
	npcHandler:say("Boatos dizem que esse Querubim aparece raramente nas redondezas de Sorlavin.\nSe você matar esse anjo, todos do inferno poderão voltar a vida e você ganhará uma recompensa por matar-lo, aceita a missão?", cid)
	talkState[talkUser] = 3
end

if(msgcontains(msg, 'yes') and talkState[talkUser] == 3) then
	npcHandler:say("Lembre-se, ele é uma criatura muito forte!", cid)
	addEvent(doTeleportThing, 1000, cid, {x=1031, y=1022, z=7})
end

return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, msgCallback)
npcHandler:setMessage(MESSAGE_GREET, "CALE-SE mortal! Eu dou as ordens aqui, quer ouvir o que eu tenho para te {contar}?")
npcHandler:addModule(FocusModule:new())

 

Detalhe: Você não precisa atribuir uma mensagem de boas-vindas (Quando o jogador fala Hi) no arquivo XML.

Editado por Oneshot
Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...