Ir para conteúdo

Pesquisar na Comunidade

Mostrando resultados para as tags ''0.3.x''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • xTibia - Notícias e Suporte
    • Regras
    • Noticias
    • Soluções
    • Projetos Patrocinados
    • Tutoriais para Iniciantes
    • Imprensa
  • OTServ
    • Notícias e Debates
    • OTServlist
    • Downloads
    • Recursos
    • Suporte
    • Pedidos
    • Show-Off
    • Tutoriais
  • OFF-Topic
    • Barzinho do Éks
    • Design
    • Informática

Encontrar resultados em...

Encontrar resultados que contenham...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


Sou

Encontrado 1 registro

  1. Opa, xTibianos. hoje venho lhes trazer um npc simples que eu havia feito um tempo atrás pra um membro aqui do fórum. Só fiz dar uma completada nele hoje... E adicionar 2 tipos de restrições (opicionais): restringir para apenas X vocações poderem falar com o npc; ou apenas para jogadores com X level conseguirem falar com ele. Este npc funciona da seguinte maneira: o player fala uma palavra(s)-gatilho que fará(ão) com que o npc dê uma resposta à essa(s) palavra(s). No próprio título deste tópico eu citei 2 exemplos que servem para esse npc: dar informações sobre certo item, certa localidade, etc; ou mesmo contar histórias: numa frase do npc ele pode citar um macaco dourado (palavra-gatilho), aí quando o player falar "macaco dourado" o npc descreverá o que está por trás deste macaco dourado, podendo até mesmo citar uma localidade onde ele foi visto pela última vez, e quando o player falar essa localidade o npc pode descrever a rota para se chegar nela, etc. Bom, vai da imaginação de cada um. sahusahusasah Agora seguiremos para a instalação: Vá até a pasta data\npc e crie um arquivo chamado informante.xml e coloque isso dentro: <?xml version="1.0" encoding="UTF-8"?><npc name="Informante" script="data/npc/scripts/informante.lua" walkinterval="1500" speed="100" walkradius="2" floorchange="0"><health max="100" now="100"/><look type="130" head="19" body="47" legs="132" feet="114" addons="0" mount="0"/><parameters> <parameter key="message_farewell" value="Até a próxima, |PLAYERNAME|."/></parameters></npc> Agora vá até a pasta data\npc\scripts e crie um arquivo chamado informante.lua e coloque isso dentro: ----------------------------------------------------------NPC feito por: Danihcv ; para: xTibia.com----------------------------------------------------------local keywordHandler = KeywordHandler:new()local npcHandler = NpcHandler:new(keywordHandler)NpcSystem.parseParameters(npcHandler)function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) endfunction onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) endfunction onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) endfunction onThink() npcHandler:onThink() end------------------------------PARTE CONFIGURAVEL------------------------------local msgs = { --["AQUI VOCÊ PÕE AS PALAVRAS-GATILHO QUE FARÃO O NPC DAR UMA RESPOSTA"] = "AQUI VOCÊ PÕE A FRASE À PALAVRA-GATILHO"["informacoes"] = "Sobre o que você quer saber? Sobre a {mysterious island} ou sobre a {second promotion}?",["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 vocs = {} --vocações que podem falar com o npc. Caso vc queira deixar sem restrição de vocação, deixe vaziolocal levelMin = 0 --caso vc queira definir um nivel minimo para falar com o npc coloque o nivel, caso não, deixe em 0-------------------------------FIM DA PARTE CONFIGURAVEL-------------------------------function greetCallback(cid)--------------------------------PARTE 2 CONFIGURAVEL--------------------------------local msgGreet = 'Olá, '..getCreatureName(cid)..'. O que você procura? {Informacoes}?' --mensagem de boas-vindaslocal msgBye = 'Até a próxima, '..getCreatureName(cid)..'.' --mensagem de despedida---------------------------------FIM DA PARTE 2 CONFIGURAVEL--------------------------------- if #vocs > 0 then if not isInArray(vocs, getPlayerVocation(cid)) then npcHandler:say('Eu não falo com '..getVocationInfo(getPlayerVocation(cid)).name..'s.', cid) npcHandler:releaseFocus(cid) npcHandler:resetNpc(cid) return false end end if getPlayerLevel(cid) < levelMin then npcHandler:say('Eu não falo com jogadores com nivel menor que '..levelMin..'.', cid) npcHandler:releaseFocus(cid) npcHandler:resetNpc(cid) return false end npcHandler:say(msgGreet, cid) npcHandler:addFocus(cid) return falseendfunction creatureSayCallback(cid, type, msg) if #vocs > 0 then if not isInArray(vocs, getPlayerVocation(cid)) then npcHandler:say('Eu ja disse que não falo com '..getVocationInfo(getPlayerVocation(cid)).name..'s.', cid) npcHandler:releaseFocus(cid) npcHandler:resetNpc(cid) return false end end if getPlayerLevel(cid) < levelMin then npcHandler:say('Eu já disse que não falo com jogadores com nivel menor que '..levelMin..'.', cid) npcHandler:releaseFocus(cid) npcHandler:resetNpc(cid) return false end for k, v in pairs(msgs) do if msgcontains(msg, k) then npcHandler:say(msgs[k], cid) elseif msgcontains(msg, 'bye') or msgcontains(msg, 'goodbye') or msgcontains(msg, 'xau') or msgcontains(msg, 'tchau') then npcHandler:say(msgBye, cid) npcHandler:releaseFocus(cid) npcHandler:resetNpc(cid) return false end end return trueendnpcHandler:setCallback(CALLBACK_GREET, greetCallback)npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)npcHandler:addModule(FocusModule:new()) ***ATENÇÃO NESSE SCRIPT /\ Pois ele possui 2 partes para configurar. Uma logo abaixo da outra. Por hoje é tudo, pessoal! Espero que gostem e façam bom uso. Abraços, Danihcv!
×
×
  • Criar Novo...