Scheduling (Cron)
Execute eventos em horários específicos
O sistema de scheduling permite executar código em horários específicos, similar ao cron em sistemas Unix.
Eventos Diários
every day at 12:00:
broadcast "&aNoon announcement!"
every day at 00:00:
broadcast "&7Server daily reset..."
# Reset diário
delete {daily_quests::*}Eventos Semanais
every monday at 09:00:
broadcast "&aWeekly reset completed!"
# Reset semanal
every friday at 17:00:
broadcast "&6Weekend is here! Double XP enabled!"
set {double_xp} to true
every sunday at 23:59:
set {double_xp} to falseEventos por Hora
every hour at :00:
broadcast "&7Hourly tip: Use /help!"
every hour at :30:
# Verifica players AFK a cada meia hora
loop all players:
if {afk::%loop-player's uuid%} is set:
kick loop-player for "AFK timeout"Eventos Mensais
every month on 1 at 00:00:
broadcast "&a&lMonthly rewards reset!"
# Reset mensal de rewards
delete {monthly_rewards::*}
every month on 15 at 12:00:
broadcast "&6Mid-month bonus event started!"Exemplo: Sistema de Eventos
eventos-programados.lzl
# Sistema de eventos programados
# === DIÁRIO ===
every day at 06:00:
broadcast "&e☀ Good morning! The server is waking up!"
every day at 12:00:
broadcast "&6🌞 It's noon! Lunch break bonus active for 1 hour!"
set {lunch_bonus} to true
every day at 13:00:
set {lunch_bonus} to false
every day at 18:00:
broadcast "&e🌅 Evening time! Relaxed gameplay hours."
every day at 00:00:
# Daily reset
loop all players:
set {daily_login::%loop-player's uuid%} to false
broadcast "&7🔄 Daily challenges have been reset!"
# === SEMANAL ===
every saturday at 14:00:
broadcast "&a&l🎉 WEEKEND EVENT STARTED!"
broadcast "&7Double drops for the next 24 hours!"
set {weekend_event} to true
every sunday at 14:00:
set {weekend_event} to false
broadcast "&7Weekend event has ended. See you next week!"
# === MANUTENÇÃO ===
every day at 04:00:
broadcast "&c⚠ Server restart in 5 minutes for maintenance..."
wait 4 minutes
broadcast "&c⚠ Server restart in 1 minute!"
wait 50 seconds
broadcast "&c⚠ Server restart in 10 seconds!"
wait 10 seconds
execute console command "stop"Fuso Horário
Os horários são baseados no fuso horário do servidor. Certifique-se de configurar o fuso horário correto no seu servidor.
Combinando com Variáveis
# Track login diário
on join:
if {daily_login::%player's uuid%} is not set:
set {daily_login::%player's uuid%} to true
add 1 to {daily_streak::%player's uuid%}
set {_streak} to {daily_streak::%player's uuid%}
send "&a🔥 Daily streak: %{_streak}% days!" to player
# Bonus por streak
if {_streak} >= 7:
give 10 diamond to player
send "&6Weekly streak bonus: 10 diamonds!" to player
every day at 00:00:
# Reset daily login para todos
loop all players:
if {daily_login::%loop-player's uuid%} is not set:
# Player não logou hoje, quebra streak
set {daily_streak::%loop-player's uuid%} to 0
set {daily_login::%loop-player's uuid%} to falseDica
Use scheduling para tarefas que precisam acontecer em horários específicos. Para intervalos regulares, use
every X seconds/minutes em eventos periódicos.