Postado Janeiro 31, 2015 10 anos 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.
Postado Janeiro 31, 2015 10 anos Amigo, ja tentou fazer 3 scripts? um com cada monstro com cada horário?
Postado Janeiro 31, 2015 10 anos Autor 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.
Postado Janeiro 31, 2015 10 anos 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.
Postado Janeiro 31, 2015 10 anos Autor Cara, eu queria uma modificação no script conforme o meu pedido, mas só por sua contribuição vou te reputar mesmo assim. Obg.
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.