> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dopenuis.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Instalação

> Seja bem-vindo ao nosso guia de instalação do script [dope_concessionaria](https://www.youtube.com/watch?v=p0kQSSXO4Bo&t)

<Info>
  **Aviso**: Este tutorial orienta sobre o processo de instalação do arquivo. Após a instalação, será necessário configurar os veículos vendidos e os seus valores.
</Info>

## Primeiros passos

Para instalar a concessionária, siga o mesmo procedimento utilizado para qualquer base.

<ResponseField>
  1. Realize a troca de ip do arquivo em nosso discord na sala de [trocar ip](https://discord.com/channels/731698717131931658/902698986056609823)
  2. Faça download do arquivo `dope_concessionaria` em nosso [discord](https://discord.com/channels/731698717131931658/942281320346820699)
  3. Dentro da sua pasta `resources` crie uma pasta chamada `[DopeNUIs]`
  4. Insira dentro da pasta `[DopeNUIs]` o arquivo `dope_concessionaria` descompactado
  5. Inicie o arquivo em seu `server.cfg` com o comando:

  ```cfg theme={null}
  ensure [DopeNUIs]
  ```

  <Note>Se a sua base já incluir a native `SetRoutingBucketEntityLockdownMode`, por favor, remova-a.</Note>
</ResponseField>

## Verificando adaptações

Inicaremos agora os processos para adaptar a concessionária ao seu servidor.

<ResponseField>
  1. Acesse o arquivo `dope_concessionaria/server-side/Config_server.lua`
  2. Procure pela tabela `config.tableNames = {`
  3. Verifique se as tabelas do SQL estão correspondentes a da sua base

  > Caso utilize Creative/Network recomendamos que deixe assim:

  <Expandable title="Creative/Network">
    ```lua theme={null}
    config.tableNames = {
        vehicles = "vehicles", -- nome da tabela onde salva todos carros
        users = "characters", -- tabela onde salvará a quantidade maxima de carros de cada player
        model = "vehicle", -- nome da coluna com o nome dos veiculos
        identifier = "Passport", -- nome da coluna que registra o id do dono do veiculo
    }
    ```
  </Expandable>

  > Caso utilize o script `nation-garages`:

  <Expandable title="Creative/Network">
    ```lua theme={null}
    config.tableNames = {
        vehicles = "nation_user_vehicles", -- nome da tabela onde salva todos carros
        users = "characters", -- tabela onde salvará a quantidade maxima de carros de cada player
        model = "vehicle", -- nome da coluna com o nome dos veiculos
        identifier = "user", -- nome da coluna que registra o id do dono do veiculo
    }
    ```
  </Expandable>
</ResponseField>

## Cadastro de veículos

Inicaremos agora os processos para adaptar a maneira que o veículo é cadastrado no SQL.

<ResponseField>
  1. Acesse o arquivo `dope_concessionaria/server-side/Config_server.lua`
  2. Procure pela tabela `sqlSetvehicle`
  3. Você poderá alterar a maneira que o veículo é dado ao jogador

  > Caso utilize Creative/Network recomendamos que deixe assim:

  <Expandable title="Creative/Network">
    ```lua theme={null}
    function sqlSetvehicle(user_id, car)
        if user_id and car then
            exports["oxmysql"]:executeSync("INSERT IGNORE INTO "..config['tableNames']['vehicles'].."("..config['tableNames']['identifier']..","..config['tableNames']['model']..",tax,plate) VALUES(@user_id,@vehicle,@tax,@plate)",{user_id = user_id, vehicle = car, tax = os.time(), plate = vRP.GeneratePlate() })
        end
    end 
    ```
  </Expandable>

  > Caso utilize o script `nation-garages`:

  <Expandable title="nation-garages">
    ```lua theme={null}
    function sqlSetvehicle(user_id, car)
        if user_id and car then
            exports["nation-garages"]:addUserVehicle(car, user_id)
        end
    end
    ```
  </Expandable>

  <p />
</ResponseField>

## Adaptando os tunnings

Inicaremos agora os processos para adaptar a tabela onde será salvo os tunnins do veículo

<ResponseField>
  1. Acesse o arquivo `dope_concessionaria/server-side/Config_server.lua`
  2. Procure pelo termo `vrp_srv_data`
  3. Altere todos os `vrp_srv_data` para `entitydata`

  <Note>Esse processo só deverá ser feito caso sua base seja Creative/Network</Note>
</ResponseField>
