Salta ai contenuti

Personalizzazione

Il comportamento si configura in config.lua. Tutto ciò che tocca il tuo framework, le tue notifiche o quello che fa concretamente un effetto si trova nella cartella bridge/, lasciata aperta esattamente per questo motivo.


File o cartellaCosa decideAperto?
config.luaOgni impostazione presente in questa pagina e l’elenco delle vapeAperto
locales/*.luaTesti delle notifiche, un file per linguaAperto
bridge/client_bridge.luaRilevamento del framework lato client, notifiche, barra di progresso e cosa fa ogni effettoAperto
bridge/server_bridge.luaRilevamento del framework lato server, rimozione di una vape scarica, controllo inventario e l’hook dello stress OnVapePuffAperto
bridge/stress.luaUna vecchia copia dell’hook dello stress. Non viene caricata dal manifest; modifica invece server_bridge.luaAperto
client/client.luaImpugnare la vape, il tiro, il fumo e la sua sincronizzazioneEscrowed
server.luaRegistra ogni vape come oggetto utilizzabile e ritrasmette il fumoEscrowed
html/La barra di progresso: index.html, style.css, script.jsFile normali
stream/I dieci modelli di vape e def_props.ytypAsset
inventory_items/Definizioni di oggetti pronte per ESX, ox_inventory e QBCoreRiferimento
inventory_images/Un’icona per ogni oggettoAsset

OpzioneCosa faPredefinito
Config.LocaleLingua delle notificheen
Config.ShowNotificationsMostra o meno le notifiche. Disattivato significa nessun messaggio per “impugnata”, “in recupero”, “scarica” o poterifalse
Config.EnableMaxPuffsLe vape si esauriscono dopo aver raggiunto il loro numero di puffstrue
Config.RemoveVapeCommandComando chat che ripone la vapevape
Config.PuffKeyTasto predefinito per fare un tiroE
Config.DisableCombatButtonsBlocca i tasti di combattimento (attacco e mira) mentre esce il fumotrue
Config.StressChiama l’hook dello stress a ogni tiro (vedi Stress)true

Config.PuffKey è un valore predefinito. Il tiro è un’assegnazione tasti di FiveM chiamata “Vape Puff”, quindi ogni giocatore può cambiarla in Impostazioni › Assegnazione tasti › FiveM, e una volta che un giocatore ha salvato il tasto, modificare Config.PuffKey non lo cambierà più per lui.


OpzioneCosa faPredefinito
Config.SpeedVapeInfiniteStaminaLa stamina non si consuma durante l’effetto di velocitàtrue
Config.StaticHealthfalse: ogni tiro di vita aggiunge Config.Health. true: un tiro porta la vita a Config.Health se è inferiorefalse
Config.HealthQuantità aggiunta, oppure il livello a cui portarla. Con l’impostazione statica usa 101–200, la scala della vita del gioco10
Config.StaticArmorStessa logica per l’armatura: aggiungi oppure porta al valorefalse
Config.ArmorQuantità aggiunta, oppure il livello a cui portarla (fino a 100)10

La vita viene sempre mantenuta tra 100 e 200, l’armatura a 100 o meno.


OpzioneCosa faPredefinito
Config.VapeExhaleDimensione della particella di fumo0.4
Config.SmokeOpacityDensità del fumo, da 0.0 a 1.01.0
Config.SmokeDelaySecondi tra l’animazione del tiro e la comparsa del fumo1.5
Config.ParticleQuale particella viene usata: un dict e un name. Di base usa il fumo di burnout di scr_recartheftscr_recartheft / scr_wheel_burnout
Config.SmokeOffsetPunto di partenza del fumo rispetto alla testa: PosX, PosY, PosZ, RotX, RotY, RotZ0.05, 0.0, 0.5, 0, 0, 0

Ogni nuvola dura 1,5 secondi ed è visibile ai giocatori entro 30 metri.


Ogni voce è nome oggetto → impostazioni. L’elenco completo fornito di base si trova in 🎒 Oggetti.

CampoCosa fa
propQuale modello viene impugnato: mic_black, mic_blue, mic_green, mic_lightblue, mic_orange, mic_pink, mic_purple, mic_red, mic_white, mic_yellow
LabelNome utilizzato sulla barra di progresso
SmokeColorUn colore R, G, B, oppure la parola Rainbow per colori a rotazione
CooldownSecondi prima che questa vape possa essere usata per un altro tiro
puffsTiri prima che si esaurisca e che un’unità venga rimossa dall’inventario
EffectDurationSecondi di durata del potere. 0 per i gusti normali
ShowProgressMostra la barra di progresso mentre dura il potere. Disattivato su tutte le vape predefinite
SpeedMultiplierSolo per speed_vape (scatto) e carspeed_vape (motore)
powerOpzionale. Un elenco di effetti da eseguire insieme, ciascuno con il proprio valore numerico (vedi sotto)

Il nome dell’oggetto decide l’effetto. invisibility_vape ti rende invisibile perché si chiama invisibility_vape; qualsiasi altro nome senza un elenco power è un semplice gusto.

I nomi degli effetti riconosciuti dal bridge: invisibility_vape, speed_vape, superjump_vape, teleport_vape, invincibility_vape, health_vape (o health), armor_vape (o armor), carspeed_vape, freeze_vape, gravity_vape — più random_vape, che ne sceglie uno tra gli altri.

Assegna a una vape un elenco power ed eseguirà tutti gli effetti al suo interno a ogni tiro, qualunque sia il nome della vape. Il numero accanto a ciascun effetto indica la sua durata in secondi, tranne per health e armor, dove indica la quantità. vape_custom nella configurazione è un esempio funzionante: vita 10, armatura 10, velocità per 10 secondi.

  1. Copia una voce esistente in Config.Vapes e assegnale un nuovo nome oggetto.
  2. Scegli un prop, uno SmokeColor, puffs e Cooldown. Per un potere, usa uno dei nomi effetto qui sopra come nome dell’oggetto oppure aggiungi un elenco power.
  3. Aggiungi l’oggetto al tuo inventario nello stesso modo degli altri, con un’icona.
  4. Esegui refresh, poi restart mic_vape.

freeze_vape (non puoi muoverti) e gravity_vape (gravità ridotta, movimento più lento) sono gestiti in bridge/client_bridge.lua, e le loro definizioni oggetto sono già in inventory_items/, ma non hanno una voce in Config.Vapes. Aggiungi una voce per ciascuno — copia superjump_vape e rinominalo — e funzioneranno.

Anche transform_vape è nei file degli oggetti, ma richiede un elenco Config.TransformAnimals che la configurazione predefinita non include. Tralascialo a meno che tu non sia pronto a scrivere quell’elenco e testarlo.


Con Config.Stress = true, ogni tiro chiama OnVapePuff in bridge/server_bridge.lua passando l’ID server del giocatore. Di base quella funzione stampa solo una riga nella console del server. Al suo interno si trovano esempi commentati per i metadati QBCore e per esx_status: decommenta quello adatto a te, oppure chiama lì la tua risorsa di HUD o stress.

Se non usi un sistema di stress, imposta Config.Stress = false e la console rimarrà silenziosa.


Nove file sono inclusi in locales/: en, de, es, fr, it, pl, pt, ru, tr. Scegline uno con Config.Locale.

La riga car_speed — mostrata quando entra in funzione la vape per la velocità dell’auto — riporta “No waypoint set!” nei file predefiniti. Riformulala nel file della tua lingua.

Per aggiungere una lingua: copia locales/en.lua, cambia la chiave in cima con il tuo codice, traduci e aggiungi il file sia a client_scripts che a server_scripts in fxmanifest.lua. Imposta Config.Locale, esegui refresh e riavvia.


Tutto ciò che dipende dal tuo server si trova in bridge/.

FileCosa modificare lì
bridge/client_bridge.luaShowNotification — indirizza i messaggi alla tua risorsa di notifiche. Il codice degli effetti — cambia cosa fa un potere o aggiungi un nuovo nome effetto. ShowProgressBar / HideProgressBar per la barra
bridge/server_bridge.luaOnVapePuff per lo stress. Rimozione di una vape scarica e controllo se il giocatore la possiede ancora — adatta queste due funzioni per un inventario che non passa dalle funzioni oggetto native di ESX o QBCore

Entrambi i file rilevano il framework nello stesso modo: es_extended se è avviato, altrimenti qb-core — che è anche il modo in cui viene rilevato QBox, tramite la sua compatibilità QBCore. Per un altro framework, aggiungi un ramo lì e nelle due funzioni oggetto accanto.


Comando o tastoCosa faImpostato in
Usa l’oggettoImpugna la vape; usarlo di nuovo la riponeInventario
E (“Vape Puff”)Fa un tiroConfig.PuffKey, poi nelle assegnazioni tasti di ogni giocatore
/vapeRipone la vapeConfig.RemoveVapeCommand

Una vape viene riposta anche quando il giocatore non ha più l’oggetto nell’inventario; la risorsa effettua un controllo ogni 2,5 secondi.