Kuro o Shiniga 87 Postado Maio 5, 2019 Share Postado Maio 5, 2019 O NPC caminha junto com o player ate a hunt. Esse sistema é bem SIMPLES, um amigo me pediu, desenvolvi para ele e vim compartilhar com vocês Crie um arquivo lua em npcs e adicione : 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 talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local possnpc = { --- poss que o npc vai andar {x=81 ,y=339, z=7}, {x=82 ,y=339, z=7}, {x=83 ,y=339, z=7}, {x=84 ,y=339, z=7}, {x=85 ,y=339, z=7}, {x=86 ,y=339, z=7}, {x=79, y=340, z=7} } local possplayer = { -- poss que o player vai andar {x=81 ,y=339, z=7}, {x=82 ,y=339, z=7}, {x=83 ,y=339, z=7}, {x=84 ,y=339, z=7}, {x=85 ,y=339, z=7}, {x=86 ,y=339, z=7} } local pid = getNpcId() -- não mexa local config = { -- não mexa str = 150729, tempo = 30, } function andarnpc() for i, pos in ipairs(possnpc) do addEvent(doTeleportThing, 1000+400*(i-1), pid, pos) end end function andarplayer(cid) for i, posdois in ipairs(possplayer) do if isCreature(cid) then addEvent(doTeleportThing, 1000+500*(i-1), cid, posdois) end end end for _, player in pairs(getPlayersOnline()) do if msgcontains(msg, "hunt") and getPlayerStorageValue(player, config.str) >= os.time() then selfSay("Não posso atender você agora!", cid) break end if msgcontains(msg, "hunt") and getPlayerStorageValue(player, config.str) < os.time() then setPlayerStorageValue(cid, config.str, os.time() + config.tempo) selfSay("Vou te levar ate a caverna misteriosa !", cid) andarnpc() andarplayer(cid) break end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Configuração : Aqui é aonde o npc vai andar, são as mesma poss que o player vai andar, porem você tem que por uma ultima poss para o npc, nessa ultima poss você coloca a posição aonde o npc estava antes do jogador falar com ele ! local possnpc = { --- poss que o npc vai andar {x=81 ,y=339, z=7}, {x=82 ,y=339, z=7}, {x=83 ,y=339, z=7}, {x=84 ,y=339, z=7}, {x=85 ,y=339, z=7}, {x=86 ,y=339, z=7}, {x=79, y=340, z=7} } Essa é a poss do inicio, aonde o npc vai aparecer quando ele levar o jogador, não esqueca de colocar a posição correta, se não o npc vai ficar dentro da hunt com o player, e outros players não vão conseguir encontrar o npc. {x=79, y=340, z=7} -- poss aonde o npc tava antes de levar o player para a hunt OBS: Existe um tempo para poder falar com o NPC, caso o npc esteja levando algum player para a hunt, outro jogador não pode conversar com ele, ate que ele complete a caminhada, caso queira mudar o tempo edite aqui : tempo = 30, -- 30 = 30 segundos Yan Liima, FlamesAdmin, Walox e 3 outros reagiu a isso 6 Link para o comentário Compartilhar em outros sites More sharing options...
Walox 46 Postado Maio 7, 2019 Share Postado Maio 7, 2019 Nice bro muito bom parabéns Link para o comentário Compartilhar em outros sites More sharing options...
GOD Vitor 66 Postado Maio 11, 2019 Share Postado Maio 11, 2019 Muito bom! Dá para criar muita coisa bacana a partir disso, basta usar a criatividade Link para o comentário Compartilhar em outros sites More sharing options...
Kuro o Shiniga 87 Postado Maio 11, 2019 Autor Share Postado Maio 11, 2019 17 horas atrás, GOD Vitor disse: Muito bom! Dá para criar muita coisa bacana a partir disso, basta usar a criatividade Sim ^^ Link para o comentário Compartilhar em outros sites More sharing options...
gabriel28 60 Postado Maio 11, 2019 Share Postado Maio 11, 2019 3 horas atrás, Kuro o Shiniga disse: Sim ^^ O que acontece se tiver algo no caminho -outro player ou um monstro-? Link para o comentário Compartilhar em outros sites More sharing options...
Kuro o Shiniga 87 Postado Maio 12, 2019 Autor Share Postado Maio 12, 2019 (editado) 2 horas atrás, gabriel28 disse: O que acontece se tiver algo no caminho -outro player ou um monstro-? Não acontece nada, o player vai de poss em poss com doTeleportThing Editado Maio 12, 2019 por Kuro o Shiniga Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados