Ir para conteúdo

Featured Replies

Postado

Olá programadores, blz?

 

Bom, eu tenho um script aqui que a função dele é invocar tal monstro em tal coordenada no mapa, porem é por hora marcada. Exemplo, todos os dias as 12:00.

 

Mas eu gostaria que o evento fosse por Internal, que ele se repetisse a cada "x" horas (cada invasão diferente, não todas).

 

Script:

local i = {
["12:00"] = {nome = "Invasion of King of Rotworm", pos = {x=4997, y=4996, z=8}, monster = {"1 King of Rotworm"}},
["13:00"] = {nome = "Shukaku Invasion", pos = {x=1033, y=923, z=7}, monster = {"1 Shukaku"}},
["14:00"] = {nome = "Kyuubi Invasion", pos = {x=1033, y=923, z=7}, monster = {"1 Kyuubi"}},
}
 
function onThink(interval, lastExecution)
hours = tostring(os.date("%X")):sub(1, 5)
tb = i[hours]
if tb then
doBroadcastMessage(hours .. "\n" .. tb.nome .. " has just been started.")
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

Agradeço pela ajuda, obrigado.

  • Respostas 8
  • Visualizações 310
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • fiz uma modificação, funcionara assim agora, ele vai continuar executando normal nas horas q tem no script, porém se tiver mais de uma invasão com o mesmo horario ele escolhe uma aleátória local i =

Postado

fiz uma modificação, funcionara assim agora, ele vai continuar executando normal nas horas q tem no script, porém se tiver mais de uma invasão com o mesmo horario ele escolhe uma aleátória

local i = {
	["12:00"] = {nome = "Invasion of King of Rotworm", pos = {x=4997, y=4996, z=8}, monster = {"1 King of Rotworm"}},
	["12:00"] = {nome = "Shukaku Invasion", pos = {x=1033, y=923, z=7}, monster = {"1 Shukaku"}},
	["14:00"] = {nome = "Kyuubi Invasion", pos = {x=1033, y=923, z=7}, monster = {"1 Kyuubi"}},
}
 
function onThink(interval, lastExecution)
	local hours = tostring(os.date("%X")):sub(1, 5)
	local invasions = {}
	for hour, invasion in pairs(i) do
		if hour == hours then
			table.insert(invasions, invasion)
		end
	end
	local tb = #invasions > 0 and invasions[math.random(1, #invasions)] or false
	if tb then
		doBroadcastMessage(hours .. "\n" .. tb.nome .. " has just been started.")
		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

por exemplo:

local i = {
	["12:00"] = {nome = "Invasion of King of Rotworm", pos = {x=4997, y=4996, z=8}, monster = {"1 King of Rotworm"}},
	["12:00"] = {nome = "Shukaku Invasion", pos = {x=1033, y=923, z=7}, monster = {"1 Shukaku"}},
	["14:00"] = {nome = "Kyuubi Invasion", pos = {x=1033, y=923, z=7}, monster = {"1 Kyuubi"}},
}

as invasão q são ao 12h sera aleátório pode vir uma ou a outra, enquanto a das 14h vai executar normal.

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.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo