Jump to content

Recommended Posts

Olá, meu objetivo com este script é simplesmente desligar todos os veículos que estão no server quando o script for iniciado, não somente o do player local, mas de todos no server..

Entre tanto, não consegui faze-lo.. Desde já obrigado pela a ajuda!

function resetarVeiculos ()
    for i,v in pairs(getElementsByType("vehicle")) do
        if i and  getVehicleEngineState (i) == true then
            setVehicleEngineState (i, false )
            setVehicleOverrideLights (i, 1)
        else
            return false
        end
    end
end
addEventHandler("onResourceStart", resourceRoot, resetarVeiculos)

 

Link to comment
  • Other Languages Moderators

E aí, @Guilherme Mendes!

Primeiramente, remova aquele else e return false. Segundamente, o i é referência de cada entrada da tabela de veículos, enquanto o v é o elemento do veículo. Um exemplo mais prático:

-- A função getElementsByType retorna uma tabela ordenada de elementos. Ela é semelhante a esta:

local vehicles = {
    [1] = vehicle,
    [2] = vehicle,
    [3] = vehicle
}

-- E assim por diante, dependendo de quantos veículos há no servidor.
-- Então, quando fazemos um for loop, a primeira coisa que ele irá pegar é o índice (index), enquanto a segunda é o seu valor.

for index, value in pairs(vehicles) do
    -- Index: 1, 2, 3...
    -- Value: cada elemento 'vehicle' mostrado naquela tabela de exemplo.
    -- Como boas práticas de programação, é bom deixar claro o que cada coisa recebe. Então em vez de 'value', eu colocaria 'vehicle'.
    -- Já que é um carro.
end

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...