Ir para conteúdo
  • Cadastre-se

(SCRIPTING, PEDIDO/DÚVIDA) Edição simples nesse script de invasão de monstros.


Posts Recomendados

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.

Dark Souls Bonfire GIF - Dark Souls Bonfire Rest - Discover & Share GIFs

Link para o post
Compartilhar em outros sites

Amigo, ja tentou fazer 3 scripts? um com cada monstro com cada horário?

 

O problema é que eu não achei nenhum script contendo apenas 1 monstro na invasão, ou seja, uma invasão por script.

Dark Souls Bonfire GIF - Dark Souls Bonfire Rest - Discover & Share GIFs

Link para o post
Compartilhar em outros sites

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.

whatsapp-4in.png (18) 98134-9991

 

icon-skype.png [email protected]

 

Link para o post
Compartilhar em outros sites

Ali no script que eu postei, a invasão ocorre no tempo que tá marcando ali no script em ["12:00"], então a invasão de tal monstro vai ocorrer todos os dias nesse mesmo horário.

Só que eu quero que a invasão não seja diária, e sim por horas.. Exemplo, a cada "x" horas vai nascer o tal monstro em tal coordenada.

 

Mas acho que a ideia do @Matheus Lirou é boa, um script por invasão, pelo menos será mais fácil a configuração do script.

Editado por Baltazar (veja o histórico de edições)

Dark Souls Bonfire GIF - Dark Souls Bonfire Rest - Discover & Share GIFs

Link para o post
Compartilhar em outros sites

Ali no script que eu postei, a invasão ocorre no tempo que tá marcando ali no script em ["12:00"], então a invasão de tal monstro vai ocorrer todos os dias nesse mesmo horário.

Só que eu quero que a invasão não seja diária, e sim por horas.. Exemplo, a cada "x" horas vai nascer o tal monstro em tal coordenada.

 

Mas acho que a ideia do @Matheus Lirou é boa, um script por invasão, pelo menos será mais fácil a configuração do script.

vou fazer aqui maximo 15hrs te mando... estou meio ocupado agora.

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo