Ir para conteúdo
Banner com Efeitos

Featured Replies

  • Respostas 6
  • Visualizações 646
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Em "Data/npc/scripts", nome_do_arquivo.lua: local t = { keys = {'travel', 'quest', 'sail'}, -- Palavras chave para iniciar o diálogo de transporte. pos = {x = 160, y = 54, z = 7} -- Pos

Postado

Em "Data/npc/scripts", nome_do_arquivo.lua:

local t = {
    keys = {'travel', 'quest', 'sail'}, -- Palavras chave para iniciar o diálogo de transporte.
    pos = {x = 160, y = 54, z = 7}      -- Posição para onde o jogador será levado.
}

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 msg = msg:lower();
    local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
    
    if isInArray(t.keys, msg) then
	selfSay('Deseja ir até "LOCAL"?', cid)
	talkState[talkUser] = 1
    elseif msgcontains(msg, 'yes') then
	if talkState[talkUser] == 1 then
	    doTeleportThing(cid, t.pos)
	    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)
	    talkState[talkUser] = 0
        end
    elseif msgcontains(msg, 'no') then
	if talkState[talkUser] == 1 then
	    selfSay('Caso tenha interesse novamente, é só me dizer!', cid)
	    talkState[talkUser] = 0
	end
    end
end
	
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Em "Data/npc", nome_desejado.xml:

<?xml version="1.0" encoding="UTF-8"?>
<npc name="nome_do_npc" script="data/npc/scripts/nome_do_arquivo.lua" walkinterval="5000" floorchange="0">
    <health now="100" max="100"/>
    <look type="128" head="100" body="100" legs="114" feet="114" addons="2"/>
    <parameters>
	<parameter key="message_greet" value="Ola |PLAYERNAME|!" />
    </parameters>
</npc>

Script testado, funcionando corretamente.

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.7k

Informação Importante

Confirmação de Termo