Ir para conteúdo

Featured Replies

Postado
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 por dissolima
achei um script para ajudar. (veja o histórico de edições)

  • Respostas 22
  • Visualizações 2.4k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • @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 ass

Posted Images

Postado
  • 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 docaes.jpg!

 

 

Kkk xD

Postado
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 docaes.jpg!

 

 

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

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo