Postado Novembro 7, 2016 8 anos 11 horas atrás, KotZletY disse: @dissolima Você pediu, está ae! xD Perfeito cara. REP+ mds. kkkk mas tipo, meu servidor é de DBO e irei fazer 1 npc para cada vocação."para não ter dor de cabeça" problema q tem a parada de Reborn. ai quando o player ja Rebornado compra a vocation ele volta pra vocation antes do reborn tendeu? tem como por tipo se tiver o player for voca id 1 vira voca id 2, e se for voca id 3 vira voca id 4? ou se o player for voca id 1 vira voca id 2, más se o player tiver tal Storage "ou seja voca id 3" ele em vez de virar voca id 2, virasse voca id 4. sei que é meio complicado de tender, pq é para Server de DBO. mas se possivel dar essa forcinha tbm. dou outro Rep+ vlw Haa tipo pra facilitar, tenho esse Script. ele faz isso que te pedi, problema q é em item. ai caso tenha algo important no Script para vc arrancar e editar pra min. agradeceria. function onThink(cid, interval) local itemid = 13490 -- é o item que se o player tivesse na BP, automaticamente mudaria de vocation local outfit = {lookType = 363} -- looktype da nova vocação caso o player seja não rebornado if isPlayer(cid) then if getPlayerItemCount(cid, itemid) >= 1 then if getPlayerStorageValue(cid,30023) == 4 then doPlayerSetVocation(cid, 454) -- Vocation ID da vocação já Rebornada else doPlayerSetVocation(cid, 449) -- Vocation ID da vocação não Rebornada end doPlayerRemoveItem(cid, itemid, 1) doCreatureChangeOutfit(cid, outfit) addEvent(doRemoveCreature, 1, cid) end end return true end Editado Novembro 7, 2016 8 anos por dissolima achei um script para ajudar. (veja o histórico de edições)
Postado Novembro 7, 2016 8 anos Autor Entendo, não deve ser difícil de fazer que já o Reborn usa uma Storage para dizer que é rebornado, mas terei que te chamar pm, pedi algumas informações e fazer uma modificação pequena no meu Sistema. E acredite, eu faria se eu não estivesse numa preguiça do! Kkk xD
Postado Novembro 7, 2016 8 anos 3 minutos atrás, KotZletY disse: Entendo, não deve ser difícil de fazer que já o Reborn usa uma Storage para dizer que é rebornado, mas terei que te chamar pm, pedi algumas informações e fazer uma modificação pequena no meu Sistema. E acredite, eu faria se eu não estivesse numa preguiça do! Kkk xD intendo. mas assim que possivel, e vc tiver um tempinho me ajuda nessa questão msm. só preciso msm que o Npc faça mesma coisa que o script que mostrei. que ele reconheça se o player é reborn ou não. Obs: só para 1 vocação msm. kk mas vlw aew
Postado Novembro 18, 2016 8 anos Autor @Tópico Atualizado, sistema melhorado e mais fácil de configurar, e muito mais simples. Alteração adicionada ao Tópico! Agora basta configurar o nome da vocação e o Id dela, e simples assim! xD Veja um exemplo: Spoiler local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 tempo = 20 -- Tempo para falar com o NPC e evitar Spam, caso não tenha os pontos. local storage = 115818 -- Não mude essa Storage local pontos = 25 -- Quantidade de pontos no site que precisa para comprar a vocação, essa quantidade vale para todas vocações serem compradas local vocs = { ["minato"] = 16, -- nome e id da vocação, lembrando sempre em letra minuscúla o nome ["madara"] = 21, ["obito"] = 15 } if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para falar com o NPC novamente.") return false end for voc, id in pairs(vocs) do if msgcontains(msg, voc) then if getPoints(cid) < pontos then doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você não tem a quantidade de Pontos para comprar uma Vocação vip") exhaustion.set(cid, storage, tempo) return false else doPlayerSetVocation(cid, id) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens, voce agora e um ".. voc:gsub("^%l", string.upper)..", relogue seu Char e Bom Jogo! xD") doPlayerRemovePoints(cid, pontos) addEvent(doRemoveCreature, 1000, cid) end return true end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Postado Novembro 20, 2016 8 anos Em 18/11/2016 ás 17:23, KotZletY disse: @Tópico Atualizado, sistema melhorado e mais fácil de configurar, e muito mais simples. Alteração adicionada ao Tópico! Agora basta configurar o nome da vocação e o Id dela, e simples assim! xD Veja um exemplo: Ocultar conteúdo local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 tempo = 20 -- Tempo para falar com o NPC e evitar Spam, caso não tenha os pontos. local storage = 115818 -- Não mude essa Storage local pontos = 25 -- Quantidade de pontos no site que precisa para comprar a vocação, essa quantidade vale para todas vocações serem compradas local vocs = { ["minato"] = 16, -- nome e id da vocação, lembrando sempre em letra minuscúla o nome ["madara"] = 21, ["obito"] = 15 } if exhaustion.check(cid, storage) then doPlayerSendCancel(cid, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para falar com o NPC novamente.") return false end for voc, id in pairs(vocs) do if msgcontains(msg, voc) then if getPoints(cid) < pontos then doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, "Você não tem a quantidade de Pontos para comprar uma Vocação vip") exhaustion.set(cid, storage, tempo) return false else doPlayerSetVocation(cid, id) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens, voce agora e um ".. voc:gsub("^%l", string.upper)..", relogue seu Char e Bom Jogo! xD") doPlayerRemovePoints(cid, pontos) addEvent(doRemoveCreature, 1000, cid) end return true end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) REP+ irei testar o Script. vlw pela ajuda novamente
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.