Ir para conteúdo

[Globalevents] Invasão


meubk

Posts Recomendados

fwwkjh591cu7jnj1ferumbras.jpg

 

Olá depois de um tempo, afastado voltei, e trouxe um script bem legal e interessante é um script para fazer invasões.

 

Instalando

 

Entre na pasta data/globalevents/scripts e crie um arquivo com o nome de inv.lua e cole o seguinte código:

 

local i = {
["00:00"] = {nome = "Demon Invasões", pos = {x=1000, y=1000, z=7}, monster = {"40 Demon", "50 Fire Devil", "4 Orshabaal"}},
["21:00"] = {nome = "Dragon Invasões", pos = {x=1000, y=1000, z=7}, monster = {"100 Dragon"}},
}

function onThink(interval, lastExecution)
hours = tostring(os.date("%X")):sub(1, 5)
tb = i[hours]
if tb then
	doBroadcastMessage(hours .. " - " .. tb.nome .. " Iníciou.")
	for _,x in pairs(tb.monster) do
		for s = 1, tonumber(x:match("%d+")) do
			doSummonCreature(x:match("%s(.+)"), tb.pos)
		end
	end
end
return true
end

 

Depois vá na pasta data/globalevents e procure pelo arquivo globalevents.xml e adicione a seguinte tag:

 

<globalevent name="Invasao" interval="60" event="script" value="inv.lua"/>

 

Adicionando Invasões

 

No arquivo inv.lua vc segue a seguinte tabela:

 

local i = {
["00:00"] = {nome = "Demon Invasões", pos = {x=1000, y=1000, z=7}, monster = {"40 Demon", "50 Fire Devil", "4 Orshabaal"}},
["21:00"] = {nome = "Dragon Invasões", pos = {x=1000, y=1000, z=7}, monster = {"100 Dragon"}},
}

 

Para adicionar mais eventos é simples, somente configurar:

["HORA DA INVASÃO"] = {nome = "NOME DA INVASÃO", pos = {POSIÇÃO X, Y, Z}, monster = {"MONSTROS"}},

 

Á hora da invasão é colocada entre " " e somente a hora e minuto, segundos não precisa exemplo:

"15:00"

 

Á Posição está entre { } adicionando as posições x, y e z, exemplo:

{x=1688, y=1445, z=7}

 

Os monters tem um modo especial de configurar, vc coloca entre { }, e cada monstro entre " ", e entre as " " vc adiciona "QUANTIDADE MONSTRO", e para adicionar mais tipos de monstro se separa por virgulas, exemplo:

{"40 Water Elemental", "5 Cyclops"}

 

E no final de cada invasão não esqueça a virgula, exemplo:

["21:00"] = {nome = "Dragon Invasões", pos = {x=1000, y=1000, z=7}, monster = {"100 Dragon"}},

 

 

Então é isso, qualquer erro só falar.

Fui.

Editado por xotservx
Link para o comentário
Compartilhar em outros sites

  • 2 months later...
  • 3 months later...
  • 3 months later...

por dia:

 


local days = {
["Sunday"] = {
["00:00"] = {nome = "Demon Invasões", pos = {x=185, y=54, z=7}, monster = {"40 Demon", "50 Fire Devil", "4 Orshabaal"}},
["21:00"] = {nome = "Dragon Invasões", pos = {x=185, y=54, z=7}, monster = {"100 Dragon"}}
},
["Wednesday"] = {
["00:00"] = {nome = "Demon Invasões", pos = {x=185, y=54, z=7}, monster = {"40 Demon", "50 Fire Devil", "4 Orshabaal"}},
["12:48"] = {nome = "Dragon Invasões", pos = {x=185, y=57, z=7},monster = {"100 Dragon"}}
}
}
function onThink(interval, lastExecution)
function getDayName()
local days = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}
return days[os.date("*t")["wday"]]
end
hours = tostring(os.date("%X")):sub(1, 5)	  
	tb = days[getDayName()][hours]
	if tb then
			doBroadcastMessage(hours .. " - " .. tb.nome .. " Iníciou.")
			for _,x in pairs(tb.monster) do
					for s = 1, tonumber(x:match("%d+")) do
							doSummonCreature(x:match("%s(.+)"), tb.pos)
					end
			end
	end
	return true
end

 

só configurar o dia que você quer,adicionar + dias e configurar as horas...

 

no caso eu coloquei para executar domingo e quarta

Editado por Vodkart
Link para o comentário
Compartilhar em outros sites

  • 7 months later...
  • 4 weeks later...
×
×
  • Criar Novo...