thebossofc Posted April 20 Share Posted April 20 (edited) Boa noite, gostaria de ajuda para alterar um script, eu fiz um script para bloquear a entrada de pessoas sem a ACL específica no veículo, porém ele também bloqueia a entrada de pessoas comuns mesmo de passageiro, existe a possibilidade de apenas bloquear que a pessoa que não tem a ACL específica entre de motorista? ou seja, mesmo sem a ACL vai poder ir de passageiro, também, nesse script ele só está configurado para 1 veículo, gostaria de poder ter mais veículos bloqueados, sem a necessidade de duplicar o arquivo do script, fazer tudo por aqui, a seguir vou enviar o script atual: function enterVehicle(player, seat, jacked) local account = getPlayerAccount(player) if (not account or isGuestAccount(account)) then return end local accountName = getAccountName(account) if (getElementModel(source) == 596) and (not isObjectInACLGroup("user.".. accountName,aclGetGroup("Policial"))) then setVehicleLocked(source, true) outputChatBox("Apenas A PM Pode entrar neste veículo.", player) else setVehicleLocked(source, false) end end addEventHandler("onVehicleStartEnter", root, enterVehicle) Aqui ele executa a função, porém bloqueia a entrada total de pessoas sem a ACL, gostaria que mesmo sem ACL a pessoa pudesse ir de passageiro. também, só é possível bloquear 1 veículo, gostaria de poder adicionar mais veículos, nesse mesmo script. Edited April 22 by Lord Henry Script convertido de texto para Lua. Link to comment
Erknneto Posted April 20 Share Posted April 20 (edited) Bom dia, meu amigo! A função getElementModel(source) pega o modelo do veículo que o jogador está tentando entrar. seat == 0 garante que só estamos verificando o motorista. A função cancelEvent() impede a entrada no veículo — bem melhor do que setVehicleLocked, que trava pra todo mundo. O sistema usa uma tabela com o ID do veículo ([596] = true) para facilitar a checagem rápida. Como agradecimento você pode conferir o Claire Anticheat no meu perfi, pode ser útil pro seu servidor -- Lista de modelos que devem ter a entrada do motorista restrita local restrictedVehicles = { [596] = true, -- viatura policial [597] = true, -- outro veículo [598] = true -- e outro se quiser } -- Nome do grupo ACL autorizado local allowedACL = "Policial" function onPlayerAttemptEnterVehicle(player, seat, jacked) -- Só bloquear se for o banco do motorista if seat ~= 0 then return end -- Verifica se o veículo atual está na lista de veículos restritos local model = getElementModel(source) if not restrictedVehicles[model] then return end -- Verifica a conta do jogador e se ele está na ACL permitida local acc = getPlayerAccount(player) if not acc or isGuestAccount(acc) then return end local accName = getAccountName(acc) if not isObjectInACLGroup("user." .. accName, aclGetGroup(allowedACL)) then cancelEvent() -- Impede que ele entre como motorista outputChatBox("Apenas membros da ACL '" .. allowedACL .. "' podem dirigir este veículo.", player, 255, 0, 0) end end addEventHandler("onVehicleStartEnter", root, onPlayerAttemptEnterVehicle) Edited April 20 by Erknneto Link to comment
thebossofc Posted April 20 Author Share Posted April 20 Muito obrigado, agora ficou perfeito!!!!!! Link to comment
Recommended Posts