Scaleform e HUD

INFO

Scaleform è la tecnologia UI nativa di GTA V (flash-based). Viene usata per HUD, messaggi di sistema e menu nativi. Su FiveM si usa soprattutto per notifiche native e HUD.

ObiettivoDettagli
Cosa imparerai• Notifiche/messaggi nativi
• Mostrare testo e istruzioni
• Quando usare Scaleform vs NUI
Prerequisiti• Lua base

1. Messaggi di Sistema Nativo

-- client.lua
-- Mostra "missione" in alto a sinistra (flash)
BeginTextCommandThefeedPost('STRING')
AddTextComponentSubstringPlayerName('Benvenuto nel server!')
EndTextCommandThefeedPostTicker(true, true)
-- Testo al centro schermo
SetTextScale(1.0, 1.0)
SetTextColour(255, 255, 255, 255)
SetTextCentre(true)
SetTextFont(4)
SetTextEntry('STRING')
AddTextComponentSubstringPlayerName('Attendi...')
DrawText(0.5, 0.4)

NOTE

Questi nativi disegnano testo nativo del gioco (non HTML). Su FiveM la maggior parte delle UI moderne usa NUI/ox_lib; Scaleform serve per messaggi rapidi che “sembrano di gioco”.


2. Istruzioni (Instructional Buttons)

-- client.lua
-- Mostra un hint con le istruzioni (es. "Premi E")
CreateThread(function()
    while true do
        Wait(100)
        local hint = IsControlJustPressed(0, 38)  -- E
        if hint then
            TriggerServerEvent('some:action')
        end
    end
end)

TIP

Per hint di interazione moderni usa ox_lib (lib.showTextUI) come visto nel modulo 10/07 — più semplice e coerente.


3. Quando Usare Cosa

NecessitàScelta consigliata
Notificalib.notify (ox_lib)
Testo a schermolib.showTextUI
Menulib.registerContext / lib.inputDialog
Messaggio nativo “in stile GTA”nativi Scaleform (BeginTextCommand…)
HUD personalizzatoNUI (HTML/CSS/JS)
Blip/minimapnativi AddBlipForCoord

4. Blip (Minimap)

-- client.lua
local blip = AddBlipForCoord(250.0, -150.0, 29.5)
SetBlipSprite(blip, 110)          -- icona arma
SetBlipColour(blip, 1)            -- rosso
SetBlipScale(blip, 0.8)
SetBlipDisplay(blip, 4)
BeginTextCommandSetBlipName('STRING')
AddTextComponentSubstringPlayerName('Armeria')
EndTextCommandSetBlipName(blip)
Blip spriteIcona
1Cerchio
52Auto
56Casa
110Arma
326Concessionaria
566Workshop

Verifica

  • Messaggi nativi usati dove servono
  • Blip impostati con sprite/colore
  • UI moderne preferiscono ox_lib/NUI
  • Nessun DrawText in loop stretto quando basta un testoUI

TIP

Prossimo passo: 04 - Animazioni ed Emote


Torna alla: Indice Generale