Skip to main content
O five-laundry é o sistema de lavagem de dinheiro da base. Cada máquina converte dinheiro sujo em dinheiro limpo cobrando uma taxa, consumindo itens de limpeza e levando um tempo proporcional ao valor lavado. As máquinas não são cadastradas no config: um administrador cria, posiciona e edita cada uma pelo painel in-game, e tudo fica salvo no banco de dados.

Funcionalidades

Máquinas dinâmicas

Criadas, movidas, editadas e removidas pelo painel administrativo, com posicionamento visual no mundo.

Lavagem com taxa

O jogador informa o valor, a máquina desconta a taxa configurada e devolve o restante em dinheiro limpo.

Limpadores

Cada lavagem consome itens de limpeza, abastecidos previamente na máquina pelos jogadores.

Upgrades

Eficiência aumenta o teto por lavagem; Potência reduz o tempo. Cinco níveis cada, pagos em dinheiro.

Prop animada

A máquina usa a secadora bkr_prop_prtmachine_dryer, que troca de modelo enquanto liga e enquanto lava.

Permissão por máquina

Cada máquina pode exigir uma permissão vRP específica para ser aberta.

Painel em NUI

Interface React com telas de lavagem e de administração, cor de destaque configurável por máquina.

Logs completos

Início, cancelamento, coleta, upgrades, limpadores e alterações de máquina, via five_logs ou webhook.
O recurso cria as próprias tabelas no MySQL ao iniciar. Não é necessário rodar SQL manualmente.

Dependências

vrp

Framework base (@vrp/lib/utils.lua, @vrp/config/Global.lua).

oxmysql

Persistência das máquinas, do estado das lavagens e das configurações (@oxmysql/lib/MySQL.lua).

sleepless_interact

Interação padrão com a máquina. Pode ser trocada por marcador no client-side/thread.lua.

five_logs

Opcional. Sem ele, os logs caem automaticamente no fallback por webhook do Discord.

Configuração

config/config.lua

Arquivo enxuto: define apenas visual, moeda e o acesso ao painel administrativo.
Não adicione máquinas manualmente em Laundry.Laundries. Elas vivem na tabela five_laundry_laundries e são criadas pelo painel admin.

Valores da lavagem

Os números da lavagem são padrões no server-side/core.lua e podem ser alterados em jogo pelo painel administrativo, ficando persistidos na tabela five_laundry_settings.
Como cada valor entra na conta
Com os valores padrão, lavar R100.000consome10limpadores,devolveR 100.000 consome 10 limpadores, devolve R 90.000 e leva 50 segundos em uma máquina sem upgrade de potência.

Upgrades

Os upgrades são pagos com dinheiro do jogador (Functions.Payment) e pertencem à máquina, não a quem pagou.

Interação (client-side/thread.lua)

O modo de interação é escolhido no topo do arquivo client-side/thread.lua.
Os dois modos terminam chamando LaundryBridge.Open(id). Para plugar outro sistema de target, troque apenas a porta de entrada e mantenha essa chamada.

Comandos


Painel administrativo

1

Criar a máquina

No painel, use Criar e escolha se a máquina terá objeto físico. O jogo entra em modo de posicionamento para você fixar o local e a rotação.
2

Configurar

Defina nome, permissão exigida e cor de destaque da máquina. Sem permissão definida, qualquer jogador pode abrir.
3

Ajustar os números

Ainda no painel, altere itens, taxa, tempo, custo em limpadores e regras de cancelamento. As mudanças são salvas em five_laundry_settings.
4

Gerenciar

O painel também permite editar, teleportar até a máquina, atualizar a lista e remover máquinas.

Fluxo de uma lavagem

1

Abastecer

Um jogador adiciona limpadores à máquina (item Cleaner). Eles ficam na máquina, disponíveis para qualquer lavagem seguinte.
2

Iniciar

O jogador informa o valor. O sistema valida o teto da eficiência, o dinheiro sujo em posse e os limpadores da máquina, cobra tudo e inicia a contagem.
3

Aguardar

A prop entra em animação e a máquina fica travada até o fim. Cancelar devolve o dinheiro sujo conforme RefundPercent.
4

Coletar

Ao terminar, alguém precisa coletar o dinheiro limpo antes que a máquina aceite uma nova lavagem.
A lavagem é vinculada à máquina, não ao jogador: qualquer um com acesso à máquina pode coletar o resultado de uma lavagem finalizada.

Banco de dados


Integração

O arquivo config/functions.lua é a ponte com o framework. Para portar o recurso, reescreva o corpo das funções mantendo nome, parâmetros e retorno.

Categorias de log

LAVAGEM-INICIOU, LAVAGEM-CANCELOU, LAVAGEM-COLETOU, LAVAGEM-UPGRADE, LAVAGEM-LIMPADORES, CRIOU-LAVAGEM, EDITOU-LAVAGEM, REMOVEU-LAVAGEM e LAVAGEM-CONFIG. Cada categoria tem um webhook próprio em config/webhooks.lua, usado apenas quando o five_logs não está rodando.

Customização

Altere Laundry.Items pelo painel administrativo. DirtyMoney é consumido, CleanMoney é entregue e Cleaner é o insumo abastecido na máquina. Os três precisam existir no Item.lua do vRP.
Suba WashTime para aumentar o tempo por BaseValue, CleanerCost para exigir mais limpadores e TaxPercent para reduzir o retorno. Para limitar o giro, baixe o DefaultLimit da eficiência.
Ao criar ou editar a máquina, informe a permissão vRP no campo correspondente. Jogadores sem ela não conseguem abrir o painel daquela máquina.
Troque Interaction para "marker" em client-side/thread.lua. O bloco Marker controla distância, tecla, tipo, tamanho, cor e texto flutuante.