Skip to main content
O crons mantém uma lista de “Jobs” em memória, cada um com um horário de disparo (Timer, timestamp Unix). Uma thread verifica a lista a cada 10 minutos (Wait(600000)) e executa/remove os Jobs vencidos. É usado pelo admin para permissões e veículos temporários que expiram sozinhos.

Funcionalidades

A função Execute suporta três modos de agendamento.

RemovePermission

vRP.RemovePermission(Passport, Params.Permission).

WipePermission

vRP.RemSrvData("Permissions:"..Params.Permission).

RemoveVehicle

Localiza o veículo pelo Params.Model via five-vehicles, apaga o baú e remove o veículo.
A verificação é a cada 10 min, então a expiração pode atrasar até esse intervalo.

Dependências

vrp

five-vehicles

Apenas para o modo RemoveVehicle.

Exports

Todos recebem o Passport e gravam em config.json ao final.
Agenda um Job. Timer em minutos (convertido para segundos). Se já existir Job idêntico, o tempo é somado ao existente.
Remove Job(s) que casem Mode e o valor Param (Params.Permission ou Params.Model).
Transfere todos os Jobs de um passaporte para outro (troca de personagem).
Retorna o tempo restante em segundos (Timer - os.time()), ou false.

Eventos

Este recurso não registra eventos próprios. A integração é feita apenas pelos exports (Insert, Remove, Swap, Check).

Banco de Dados

Não usa banco. A persistência fica em arquivo config.json (raiz do recurso) via SaveResourceFile/LoadResourceFile.

Customização

Intervalo de verificação

Wait(600000) em server-side/core.lua (ms; padrão 10 min).

Novos modos

Adicione condições na função Execute e nas comparações de Params.

Reset

Zere config.json para [] para limpar todos os agendamentos.