Aircraft Company Garage é o recurso de HJDCZY para hangares de companhia e frota limitada, originalmente publicado para o servidor de voo CNAT. O repositório original é HJDCZY/fivem-airport_company_garage. O código revisado no commit 5cb950464ce8e0ebba8258ac43c73513caed8d54 declara a versão 1.0.0. A RPCrate não criou esse script; a antiga alegação de autoria em primeira pessoa estava incorreta.
Prepare as dependências antigas e os registros do banco
O manifesto importa es_extended, mysql-async, menuv e PolyZone. Os dois arquivos Lua principais usam o evento antigo esx:getSharedObject; adapte a integração à sua versão ESX. Mantenha o recurso diretamente em resources, pois o registro em arquivo monta esse caminho. garage.sql seleciona um banco chamado es_extended antes de criar aircraft_company_garage e aircraft_company; confira o destino e faça backup do banco de teste antes da importação. Adicione explicitamente aeronaves da companhia e coordenadas dos quatro cantos do hangar. school.sql insere aeronaves de exemplo, não uma configuração completa para produção.
Corrija o acesso da companhia e as reservas da frota
Vários manipuladores do servidor aceitam companhia, ID do jogador de destino, placa ou modelo enviados pelo cliente sem vincular a solicitação ao emprego e ao hangar atuais do solicitante. As mudanças de estado não reservam atomicamente uma aeronave disponível dessa companhia. Valide solicitante, companhia configurada, posição no servidor, veículo e disponibilidade antes da alteração ou resposta de criação. A trava compartilhada do menu e seu tempo limite também precisam de revisão: as funções de tempo usam outra variável menuinuse, diferente da trava local declarada depois. Teste solicitações simultâneas e desconexões para que um menu travado não bloqueie todas as companhias.
Confira os controles e o estado salvo
Os atalhos revisados usam F6 para abrir e F3 para o comando de guardar cs; jogadores podem alterá-los. config.lua está vazio e não é carregado pelo manifesto. A configuração acontece principalmente em SQL e Lua. A coluna damage não constitui uma implementação completa de persistência de danos. Teste disponibilidade da frota, devolução, troca de emprego, reconexões, modelos e representação do estado no banco. Esta é uma revisão específica do código, não um pacote corrigido nem uma certificação em jogo.