Marshmello 270 Postado Abril 10, 2018 Share Postado Abril 10, 2018 (editado) Fala MelloGang Blz ? Hoje vim trazer um NPC de evento , onde o player precisa trazer um pokemon(configuravel) por outro pokemon entao vamos la Em NPC crie um NPC.xml e cole isso Spoiler <?xml version="1.0" encoding="UTF-8"?> <npc name="NPC NAME" script="EventoNPC.lua" walkinterval="0" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="2144" head="90" body="97" legs="114" feet="94"/> <parameters> <parameter key="message_greet" value="Ola, |PLAYERNAME|. estou aqui para lhe dar uma missao, eu erei precisar pikachu para completar minha colecao, voce tem esses items? diga {missao}."/> <!-- <parameter key="message_greet" value="Ola, |PLAYERNAME|. Safari ainda nao esta aberta"/> --> </parameters> </npc> Dps Vá em npc/script e crie um arquivo.lua e cole isso Spoiler - --Marshmello local cfg = { btype = "Cherish", --Type Da ball pokemonida = "Pikachu", -- Pokemon que o NPc vai pedir a troca pokemonVolta = "Pikachu Fly", -- Pokemon que o player vai ganhar palavra = "missao", -- Palavra para completar mensagem = "Preciso que me traga um pikachu.", -- msg quando n tiver o pokemon concluir = "Parabéns você cosegui completar minha missão, receba seus premios.", -- msg quando completar a quest completa = "você ja completou essa missão", -- msg quanto tentar fazer novamente sto = 9876574 , -- STORAGE -- OBS: Voce precisa ta com pokemon fora da ball para fazer a troca } 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 playerHaveItems(cid, itemid) local items = type(itemid) == "table" and itemid or {itemid} for i = 1, #items do if getPlayerItemCount(cid, items) <= 0 then return false end end return true end function doPlayerRemoveItems(cid, itemid, count) local items = type(itemid) == "table" and itemid or {itemid} for i = 1, #items do doPlayerRemoveItem(cid, items, count ~= nil and count or 1) end return nil end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end if msgcontains(msg, cfg.palavra) then if getPlayerStorageValue(cid,cfg.sto) == -1 then if getCreatureName(getCreatureSummons(cid)[1]) == cfg.pokemonida then setPlayerStorageValue(cid, cfg.sto, 1) doRemoveItem(getPlayerSlotItem(cid, 8).uid, 1) doRemoveCreature(getCreatureSummons(cid)[1]) addPokeToPlayer(cid, cfg.pokemonVolta, 0, nil, cfg.btype) selfSay(cfg.concluir) else selfSay(cfg.mensagem) end else selfSay(cfg.completa) end return true end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) --Marshmello e só configurar e pronto Então e isso galera gostou deixe seu REP+ Editado Junho 28, 2018 por Marshmello DarkWore, vinicius231, Onwly e 5 outros reagiu a isso 8 Link para o comentário Compartilhar em outros sites More sharing options...
DarkWore 112 Postado Abril 10, 2018 Share Postado Abril 10, 2018 Código Perfeito, Mais a indentação ta complicado, haha. Link para o comentário Compartilhar em outros sites More sharing options...
Marshmello 270 Postado Abril 10, 2018 Autor Share Postado Abril 10, 2018 6 minutos atrás, DarkWore disse: Código Perfeito, Mais a indentação ta complicado, haha. Fiz na express Onwly reagiu a isso 1 Link para o comentário Compartilhar em outros sites More sharing options...
Sammy 50 Postado Abril 14, 2018 Share Postado Abril 14, 2018 Curti, se possível traz mais sistemas assim Link para o comentário Compartilhar em outros sites More sharing options...
Tungs 249 Postado Abril 14, 2018 Share Postado Abril 14, 2018 Em 10/04/2018 at 17:58, DarkWore disse: Código Perfeito, Mais a indentação ta complicado, haha. a identação de lua é assim ! Link para o comentário Compartilhar em outros sites More sharing options...
DarkWore 112 Postado Abril 14, 2018 Share Postado Abril 14, 2018 31 minutos atrás, Jair Kevick disse: a identação de lua é assim ! Foi corrigido, oque eu tinha visto antes estava mal organizado, de qualquer forma é um colega meu foi apenas um comentário. Link para o comentário Compartilhar em outros sites More sharing options...
sidneivascao 1 Postado Junho 27, 2018 Share Postado Junho 27, 2018 deu erro [Error - LuaScriptInterface::loadFile] data/npc/scripts/EventoNPC.lua:10: '}' expected (to close '{' at line 2) near 'sto' [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/EventoNPC.lua data/npc/scripts/EventoNPC.lua:10: '}' expected (to close '{' at line 2) near 'sto' Link para o comentário Compartilhar em outros sites More sharing options...
Marshmello 270 Postado Junho 28, 2018 Autor Share Postado Junho 28, 2018 Em 26/06/2018 em 23:49, sidneivascao disse: deu erro [Error - LuaScriptInterface::loadFile] data/npc/scripts/EventoNPC.lua:10: '}' expected (to close '{' at line 2) near 'sto' [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/EventoNPC.lua data/npc/scripts/EventoNPC.lua:10: '}' expected (to close '{' at line 2) near 'sto' Corrigido topico atualizado Link para o comentário Compartilhar em outros sites More sharing options...
sidneivascao 1 Postado Junho 29, 2018 Share Postado Junho 29, 2018 (editado) 23 horas atrás, Marshmello disse: Corrigido topico atualizado deu certo , so tem um pequeno problema , se o player nao tiver o pokemon , e ele falar Hi missao e aparecer akela msg 01:33 NPC NAME: Preciso que me traga um Divine Arceus. da esse erro na distro http://prntscr.com/k0nnxl Acontece porque o player nao tem o pokemon , se o player tiver , o npc funciona e troca de boa e tbm se nao tiver usando pokemon e falar "missao" da erro tbm e fala que precisa do pokemon , fora isso sistema ta perfeito , se puder me ajuda resolver, fico grato hehe Editado Junho 29, 2018 por sidneivascao Link para o comentário Compartilhar em outros sites More sharing options...
Marshmello 270 Postado Junho 29, 2018 Autor Share Postado Junho 29, 2018 10 horas atrás, sidneivascao disse: deu certo , so tem um pequeno problema , se o player nao tiver o pokemon , e ele falar Hi missao e aparecer akela msg 01:33 NPC NAME: Preciso que me traga um Divine Arceus. da esse erro na distro http://prntscr.com/k0nnxl Acontece porque o player nao tem o pokemon , se o player tiver , o npc funciona e troca de boa e tbm se nao tiver usando pokemon e falar "missao" da erro tbm e fala que precisa do pokemon , fora isso sistema ta perfeito , se puder me ajuda resolver, fico grato hehe Isso acontece , pois ele n acha a creatura spawn, ai da esse erro, tipico do PDA Link para o comentário Compartilhar em outros sites More sharing options...
sidneivascao 1 Postado Junho 30, 2018 Share Postado Junho 30, 2018 Em 29/06/2018 em 11:59, Marshmello disse: Isso acontece , pois ele n acha a creatura spawn, ai da esse erro, tipico do PDA Nao e pda minha distro , mais como resolveria? Link para o comentário Compartilhar em outros sites More sharing options...
caique8921 0 Postado Julho 23, 2018 Share Postado Julho 23, 2018 aqui da o seguinte erro [22/07/2018 23:08:33] [Error - Npc interface] [22/07/2018 23:08:33] data/npc/scripts/safftroca.lua:onCreatureSay [22/07/2018 23:08:33] Description: [22/07/2018 23:08:33] data/npc/scripts/safftroca.lua:55: attempt to call global 'addPokeToPlayer' (a nil value) [22/07/2018 23:08:33] stack traceback: [22/07/2018 23:08:33] data/npc/scripts/safftroca.lua:55: in function 'callback' [22/07/2018 23:08:33] data/npc/lib/npcsystem/npchandler.lua:390: in function 'onCreatureSay' [22/07/2018 23:08:33] data/npc/scripts/safftroca.lua:22: in function <data/npc/scripts/safftroca.lua:22> ele apenas remove o poke do player na hora de entregar da esse erro =/ Link para o comentário Compartilhar em outros sites More sharing options...
Marshmello 270 Postado Julho 23, 2018 Autor Share Postado Julho 23, 2018 4 horas atrás, caique8921 disse: aqui da o seguinte erro [22/07/2018 23:08:33] [Error - Npc interface] [22/07/2018 23:08:33] data/npc/scripts/safftroca.lua:onCreatureSay [22/07/2018 23:08:33] Description: [22/07/2018 23:08:33] data/npc/scripts/safftroca.lua:55: attempt to call global 'addPokeToPlayer' (a nil value) [22/07/2018 23:08:33] stack traceback: [22/07/2018 23:08:33] data/npc/scripts/safftroca.lua:55: in function 'callback' [22/07/2018 23:08:33] data/npc/lib/npcsystem/npchandler.lua:390: in function 'onCreatureSay' [22/07/2018 23:08:33] data/npc/scripts/safftroca.lua:22: in function <data/npc/scripts/safftroca.lua:22> ele apenas remove o poke do player na hora de entregar da esse erro =/ Sistema funcional apenas para PDA tfs 0.3.6 Link para o comentário Compartilhar em outros sites More sharing options...
caique8921 0 Postado Julho 23, 2018 Share Postado Julho 23, 2018 12 horas atrás, Marshmello disse: Sistema funcional apenas para PDA tfs 0.3.6 Ah entendi... Obg! Link para o comentário Compartilhar em outros sites More sharing options...
Marshmello 270 Postado Julho 23, 2018 Autor Share Postado Julho 23, 2018 14 minutos atrás, caique8921 disse: Ah entendi... Obg! Qual base você usa? Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados