Mensagem ao spawnar um pokémon lendario

Sh4DoW GR
em Resolvidos

Sh4DoW GR

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 09/03/16Posts: 24

Alguém por favor pode fazer um script que quando um adm spawnasse um pokémon lendario aparecesse uma mensagem para todos os player online?

 

Dou Rep++

 

:D

atakashi

avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 11/12/07Posts: 332

já pensou em um sistema de invasão?

tipo, tal hora do dia nasce tal lendário ai avisa o servidor todo.

ou se quer que avise toda hora que nascer?

pokepro.gif

   Pokemon PRO, Profissionais em diversão.

 

Servidor 24 Horas
Uptime: 100%

 

 

 

Sh4DoW GR

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 09/03/16Posts: 24

Um sistema de invasão seria dahora tbm

atakashi

avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 11/12/07Posts: 332

vou te passar um que utilizo.
 

globalevents: cria um arquivo, raid.lua
nele se vai editar,
name = 'nomedaraid'

type = 'weekly'

days = 'diadasemana'

hour = 'horaquevaiativar'

--[[- hora deve ser exata SERVER- para fazer o raid tera que ser ex: 00 hour(horas) e 00 minu (minutos)- para fazer a raid na data e hora no tempo exato, uso "exact"- para fazer a raid ocorrer todas as semanas (pelo menos 1x na semana) uso "weekly"- o nome dos dias sao ultilizados apenas para o tipo semanal que devera ser- "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"- tambem devem estar dentro de uma matriz-> {}]]local raids =	{		[1] =			{				name = 'Genesect',				type = 'weekly',				days = {'monday'},				hour = 19,				minu = 00			},		[2] =			{				name = 'Heatran',				type = 'weekly',				days = {'tuesday'},				hour = 19,				minu = 00			}			}	local last_execsutes = {}function onThink(interval, lastExecution, thinkInterval)	local static_time = os.time()	for k, raid in ipairs(raids) do		if (raid.type == 'weekly') then			local day = os.date("%A", static_time):lower()			if isInArray(raid.days, day) then				local hour = tonumber(os.date("%H", static_time))				if (raid.hour == hour) then					local minute = tonumber(os.date("%M", static_time))					if (raid.minu == minute) then						local day_number = tonumber(os.date("%d", static_time))						if (last_execsutes[k] ~= day_number) then							last_execsutes[k] = day_number							doExecuteRaid(raid.name)						end					end				end			end		elseif (raid.type == 'exact') then			local month = tonumber(os.date("%m", static_time))			if (raid.date.month == month) then				local day = tonumber(os.date("%d", static_time))				if (raid.date.day == day) then					local hour = tonumber(os.date("%H", static_time))					if (raid.hour == hour) then						local minute = tonumber(os.date("%M", static_time))						if (raid.minu == minute) then							if (last_execsutes[k] ~= day) then								last_execsutes[k] = day								doExecuteRaid(raid.name)							end						end					end				end			end		end	end	return trueend

tag em globalevents.xml

 

<globalevent name="raid" interval="60" script="raid.lua"/>

em raids, cria um arquivo invasaosegunda.xml

 

<raid><announce delay="1000" type="event" message="Sistema de Invasao Informa, Heatran Esta Ressurgindo no Porao do Templo Flower." /><announce delay="60000" type="event" message="Sistema de Invasao Informa, Corra Para Ajudar a Conter a Invasao do Templo Flower." /><announce delay="120000" type="event" message="Sistema de Invasao Informa, Os Pokemons estao surgindo, ja avistei o primeiro." /><areaspawn delay="1001" fromx="1032" fromy="1118" fromz="8" tox="1059" toy="1142" toz="8"><monster name="Jirachi" amount="2" /><monster name="Lugia" amount="2" /><monster name="Genesect" amount="2" /><monster name="Heatran" amount="2" /><monster name="Reuniclus" amount="2" /><monster name="Xerneas" amount="2" /><monster name="Yveltal" amount="2" /><monster name="Charizard Ultra" amount="10" /><monster name="Meganium Power" amount="15" /><monster name="Mega Tyranitar" amount="2" /><monster name="Mega Lucario" amount="5" /><monster name="Mega Gengar" amount="15" /><monster name="Mega Blastoise" amount="15" /><monster name="Heatran Boss" amount="1" /></areaspawn></raid>

se não souber editar esse script ai de cima se fala que eu te explico, ele é bem facil.

agora a tag em raids.xml

<raid name="Segunda" file="Inavasaosegunda.xml" interval2="5" margin="0" enabled="0"/>

 

prontinho seu sistema de invasão.

pokepro.gif

   Pokemon PRO, Profissionais em diversão.

 

Servidor 24 Horas
Uptime: 100%

 

 

 

Josegvb

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 23/09/12Posts: 1041Gênero: Masculino

a pergunta seria onde editar a posiçao que os bixos irao nascer oO

Luga03

Gabriel Lucena :D
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 14/04/15Posts: 956Gênero: Masculino

Me explique melhor isso, você está dizendo um Pokémon, no caso todos lendários?, Colocado no mapa (Pelo RME), ao spawnar aparece um broadcast anunciando que ele spawno, certo? Ou você quer que ele seja spawnada por tal ação? Por exemplo, ao clicar em tal item, ou subir em tal tile ou algo do tipo ele spawna um pokémon lendário?

Hello! How are you? It's fine? 

 

Okay, so you like my helps? if yes, then do you can like my post, give-me a reputation, you can't?

 

Good morning for everyone! And have a good day!

kaleudd

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 15/06/15Posts: 729
53 minutos atrás, Josegvb disse:

a pergunta seria onde editar a posiçao que os bixos irao nascer oO

<areaspawn delay="1001" fromx="1032" fromy="1118" fromz="8" tox="1059" toy="1142" toz="8">

lado esquerdo em cima da area,e lado de baixo direito da area,tipo um quadrado,e os summons iriam ser spawnados dentro deste quadrado.

Josegvb

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 23/09/12Posts: 1041Gênero: Masculino
41 minutos atrás, kaleudd disse:
<areaspawn delay="1001" fromx="1032" fromy="1118" fromz="8" tox="1059" toy="1142" toz="8">

lado esquerdo em cima da area,e lado de baixo direito da area,tipo um quadrado,e os summons iriam ser spawnados dentro deste quadrado.

 

obg, nao tinha olhado essa linha do codigo kk 

Sh4DoW GR

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 09/03/16Posts: 24
4 horas atrás, Drazyn disse:

Me explique melhor isso, você está dizendo um Pokémon, no caso todos lendários?, Colocado no mapa (Pelo RME), ao spawnar aparece um broadcast anunciando que ele spawno, certo? Ou você quer que ele seja spawnada por tal ação? Por exemplo, ao clicar em tal item, ou subir em tal tile ou algo do tipo ele spawna um pokémon lendário?

Ao sumonar um lendario iria aparecer um broadcast para todos os player online avisando q um lendario deu spawn tipo no tibia qnd algum boss nasce tlg

Luga03

Gabriel Lucena :D
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 14/04/15Posts: 956Gênero: Masculino

No seu servidor tem a função onSpawn? Caso não saiba, me diga qual sua base.

 

Hello! How are you? It's fine? 

 

Okay, so you like my helps? if yes, then do you can like my post, give-me a reputation, you can't?

 

Good morning for everyone! And have a good day!

Sh4DoW GR

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 09/03/16Posts: 24
Em 26/12/2016 at 21:28, Drazyn disse:

No seu servidor tem a função onSpawn? Caso não saiba, me diga qual sua base.

 

Eu acho que não tem. Minha base é a Cyan

DuuhCarvalho

:)
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 19/01/12Posts: 988Gênero: MasculinoChar no Tibia: Xerife Woody
13 horas atrás, Sh4DoW GR disse:

Eu acho que não tem. Minha base é a Cyan

 

acho que tem.

 

vá em creaturescripts cria um arquivo lua e coloca isso dentro:

 

local lend = {"Mew","Mewtwo",              -- adicione o nome de todos os pokemons lendarios."Articuno"}function onSpawn(cid)for i = 1, #lend do	if getCreatureName(cid) == lend[i] then		doBroadcastMessage("Monster "..lend[i].." was created.")	endendreturn trueend

 

vá em creaturescripts.xml e coloca a tag

 

Citar

<event type="spawn" name="monsterLend" registerTo ="monster" event="script" value="NomeDoArquivo.lua"/>

 

Luga03

Gabriel Lucena :D
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 14/04/15Posts: 956Gênero: Masculino

 

17 horas atrás, Sh4DoW GR disse:

Eu acho que não tem. Minha base é a Cyan

Caso for o PDA (Sem source), você poderá utilizar o código que irei lhe mandar, porém se for o com source, recomendo verificar se tem instalado o creatureevent onSpawn, caso não tiver, pegue um tutorial da internet e instale-o.

 

Coloque isso no creaturescripts.xml:

<event type="spawn" name="Spawn" event="script" value="NomeDoArquivo.lua"/>

E no arquivo que você criou coloque isso:

--{name = "Pokemon Name"} -- Em name você coloca o nome do pokémon.-- Caso você queira que aparece a mensagem default, pode deixar assim:-- {name = "Moltres"},-- Caso queira uma mensagem difente faça assim:-- {name = "Zapdos", msg = "Um deus majestoso do céu, com poderes de trovão acaba de aparecer."},local pokes = {	{name = "Moltres"},	{name = "Articuno", msg = "Um poderoso mew acaba de aparecer!"},	{name = "Zapdos", msg = "Um deus majestoso do céu, com poderes de trovão acaba de aparecer."},}local defaultMessage = "Um POKENAME acaba de aparecer!" -- Aqui você define a mensagem padrão, em POKENAME será substituido pelo nome da criatura.function onSpawn(cid) -- By Drazyn	local mensagem = ""	for _, b in pairs(pokes) do		if getCreatureName(cid):find(b.name) then			mensagem = b.msg or defaultMessage:gsub("POKENAME", b.name)			doBroadcastMessage(mensagem)		end	end	return trueend

Ele tem a função de ao spawnar ele envia uma mensagem para o servidor inteiro. Essa mensagem pode ser a padrão, ou você pode customizar para cada lendário ter sua própria mensagem. Deixei tudo explicado no código, alguma dúvida só comentar.

 

Não esqueça de registrar o evento no monstro, você pode fazer isso indo no XML do monstro e logo abaixo da tabela onde você define o loot, você coloca isso:

    <script>        <event name="Spawn"/>    </script>

 

Hello! How are you? It's fine? 

 

Okay, so you like my helps? if yes, then do you can like my post, give-me a reputation, you can't?

 

Good morning for everyone! And have a good day!

Sh4DoW GR

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 09/03/16Posts: 24
24 minutos atrás, Drazyn disse:

 

Caso for o PDA (Sem source), você poderá utilizar o código que irei lhe mandar, porém se for o com source, recomendo verificar se tem instalado o creatureevent onSpawn, caso não tiver, pegue um tutorial da internet e instale-o.

 

Coloque isso no creaturescripts.xml:

<event type="spawn" name="Spawn" event="script" value="NomeDoArquivo.lua"/>

E no arquivo que você criou coloque isso:

--{name = "Pokemon Name"} -- Em name você coloca o nome do pokémon.-- Caso você queira que aparece a mensagem default, pode deixar assim:-- {name = "Moltres"},-- Caso queira uma mensagem difente faça assim:-- {name = "Zapdos", msg = "Um deus majestoso do céu, com poderes de trovão acaba de aparecer."},local pokes = {	{name = "Moltres"},	{name = "Articuno", msg = "Um poderoso mew acaba de aparecer!"},	{name = "Zapdos", msg = "Um deus majestoso do céu, com poderes de trovão acaba de aparecer."},}local defaultMessage = "Um POKENAME acaba de aparecer!" -- Aqui você define a mensagem padrão, em POKENAME será substituido pelo nome da criatura.function onSpawn(cid) -- By Drazyn	local mensagem = ""	for _, b in pairs(pokes) do		if getCreatureName(cid):find(b.name) then			mensagem = b.msg or defaultMessage:gsub("POKENAME", b.name)			doBroadcastMessage(mensagem)		end	end	return trueend

Ele tem a função de ao spawnar ele envia uma mensagem para o servidor inteiro. Essa mensagem pode ser a padrão, ou você pode customizar para cada lendário ter sua própria mensagem. Deixei tudo explicado no código, alguma dúvida só comentar.

 

Não esqueça de registrar o evento no monstro, você pode fazer isso indo no XML do monstro e logo abaixo da tabela onde você define o loot, você coloca isso:

    <script>        <event name="Spawn"/>    </script>

 

 

Funcionou aqui mt obg ^^