
Rental
Noleggio veicoli: nelle stazioni di noleggio il giocatore sceglie veicolo, colore e durata del noleggio, paga al minuto e riceve il veicolo direttamente al punto di ritiro – auto, barche o velivoli. Allo scadere del tempo il veicolo sparisce; chi finisce prima lo restituisce in anticipo.
- ESX Legacy (
es_extended) - OneSync
Funzionalità
- Più stazioni con NPC o marker, punto di ritiro proprio e, a scelta, una selezione di veicoli propria.
- Tre tipi di stazione: noleggio auto, noleggio barche (punto di ritiro in acqua) e noleggio velivoli (pista o eliporto) – ognuno con la propria lista di veicoli, il proprio blip e i propri testi nel menu.
- Prezzo al minuto, pagamento in contanti o con la banca, indicatore del tempo rimanente con avvisi prima della scadenza.
- Restituzione anticipata: se il veicolo è utilizzabile e si trova nel punto di ritiro, una parte dei minuti non usati viene rimborsata. Altrimenti il noleggio termina senza rimborso. Log Discord di ogni restituzione.
- Un noleggio per giocatore. Se lo spawn non riesce, i soldi vengono restituiti.
Installazione
- Metti la cartella
off_rentalnella tua cartellaresources. - Nel
server.cfg– dopo ESX:
ensure es_extended
ensure off_rental- Facoltativo: inserisci il webhook delle restituzioni in
config/settings/config.server.lua.
Configurazione
config/settings/config.lua
| Opzione | Predefinito | Descrizione |
|---|---|---|
serverInfo.name | 'OFF SCRIPTS' | Nome del server, mostrato nell'interfaccia al posto di «OFF SCRIPTS» |
serverInfo.locale | 'de' | Lingua: de, en, pl, fr, es, it o nl |
serverInfo.color | { 155, 89, 255 } | Colore della UI (RGB) |
serverInfo.design | 3 | Design dell'interfaccia: 1 = Classico, 2 = Scontrino, 3 = Storefront |
blur | true | Sfondo sfocato finché il menu è aperto |
payment | 'both' | 'cash', 'bank' o 'both' (sceglie il giocatore) |
rentalMinutes | 1–120, passo 5, inizio 30 | min, max, step e default della durata del noleggio in minuti |
warningMinutes | { 5, 1 } | Tanti minuti prima della scadenza arriva un avviso |
refundPercent | 50 | Restituzione anticipata: questa percentuale dei minuti non usati viene rimborsata, 0 = nessun rimborso |
platePrefix | 'RENT' | Inizio della targa (max. 4 caratteri), es. RENT4821 |
ped / marker / blip | Meccanico / disco, 2 m / attivo | Aspetto di NPC, marker e blip – marker.size è anche l'area per E, blip.sprite si imposta per tipo (car, boat, aircraft) |
config/settings/config.stations.lua – Stazioni di noleggio
| Campo | Descrizione |
|---|---|
label | Nome nel menu |
type | Opzionale: 'car' (predefinito), 'boat' o 'aircraft' – stabilisce lista veicoli, blip e testi |
interactionType | 'ped' (NPC, position = vec4 con direzione) o 'marker' (cerchio, position = vec3) |
spawn | vec4 – punto di ritiro e di restituzione. Deve essere libero: strada o parcheggio, in acqua per boat, su pista o eliporto per aircraft |
vehicles | Opzionale: quali model della lista del tipo sono disponibili qui. Omesso = tutti |
config/settings/config.vehicles.lua – Veicoli e colori
Config.vehiclesha una lista per tipo:car,boateaircraft.- Per veicolo:
model,label,category(scheda nel menu),price(prezzo al minuto) eseats. - Se manca l'immagine di un veicolo (es. veicoli addon), mettila in
web/dist/assets/vehicles/<model>.png. Config.colors:label= nome nel menu,rgb= colore della vernice ({ r, g, b }, ciascuno 0–255).
config/functions.lua
| Funzione | A cosa serve |
|---|---|
Notify(message, type) | Notify personalizzato (avvisi, fine noleggio …) · Server: Notify(source, message, type) |
HelpNotify(text) | Testo di aiuto alla stazione |
ClientVehicleRented(vehicle, plate) | Dopo lo spawn – es. chiavi o carburante |
Log Discord
Il webhook lo inserisci in config/settings/config.server.lua (solo lato server): returns registra ogni restituzione anticipata con veicolo, stazione, minuti non usati e rimborso. Un url vuoto ('') disattiva il log. In più ci sono name (nome del bot), color (RGB) e anche avatar e image (URL immagine, '' = nessuna).
Lingue
Tutti i testi si trovano in config/locales/<lingua>.json. Per una tua lingua copia un file, traducilo e imposta serverInfo.locale – lascia i segnaposto come %d e {price}.
In gioco
Alla stazione premi E, scegli veicolo, colore e durata del noleggio e paga in contanti o con la banca – sei subito seduto nel veicolo. Il noleggio termina quando scade il tempo, quando il giocatore lascia il server o quando il veicolo viene eliminato. I noleggi non vengono salvati: al riavvio dello script tutti i veicoli a noleggio spariscono senza rimborso.
Restituzione anticipata – solo in una stazione dello stesso tipo:
- Porta il veicolo sul punto di ritiro segnato, fermati e premi E.
- Oppure premi E alla stazione: il menu mostra il noleggio attivo, il tempo rimasto e il rimborso. Restituisci veicolo termina il noleggio.
Rimborso = minuti interi non usati × prezzo al minuto × refundPercent, sullo stesso conto del pagamento. Se il veicolo non è nel punto di ritiro, è distrutto o sparito, il noleggio si può terminare solo dal menu – dopo una conferma e senza rimborso. Poi il veicolo viene eliminato; con le barche il giocatore torna a terra.
Problemi comuni
| Problema | Soluzione |
|---|---|
[ERROR] nella console del server | Lo script controlla la configurazione all'avvio. Leggi il messaggio, correggi, riavvia lo script. |
| “Il punto di ritiro è occupato al momento” | C'è qualcosa su spawn. Libera lo spazio o sposta spawn – non viene addebitato nulla. |
| “Questo veicolo non è disponibile qui” | model errato, non installato, non presente nella lista del tipo o in vehicles della stazione. |
| La barca o il velivolo appare male | spawn non è in acqua o non è libero su pista o eliporto – registra di nuovo la posizione. |
| La restituzione non è possibile | Solo in una stazione dello stesso type; nel veicolo fermati prima. |
| Nessuna chiave per il veicolo a noleggio | Inserisci il tuo script chiavi in ClientVehicleRented. |
| L'NPC è nel muro o fluttua | Adatta position – z è l'altezza su cui sta il giocatore. |
Non l’hai ancora acquistato?
Vedi Rental nel negozio