Pular para o conteúdo

Cores de Texto

Digite um texto com códigos de formatação do GTA V (~r~, ~b~, ~h~, ~n~ …) e veja ao vivo como ele aparece no DrawText, nas notificações e no help text.

Por enquanto, esta ferramenta e as notas dela estão em inglês.

CalculadorasUI, PréviaLer a documentação

Text

101 chars

DrawText options

Mission started. Press E to talk to Lamar.
Reward: $2500 (bonus)

Preview is close, not pixel exact: GTA fonts are replaced with system fonts.

drawtext.lua
AddTextEntry("FIVEMAD_TEXT", "~b~Mission~s~ started. Press ~INPUT_CONTEXT~ to talk to ~y~~a~~s~.~n~Reward: ~g~$~1~~s~ ~h~(bonus)~h~")

CreateThread(function()
    while true do
        Wait(0)
        SetTextFont(4)
        SetTextScale(0.0, 0.5)
        SetTextColour(255, 255, 255, 255)
        SetTextOutline()
        SetTextCentre(true)
        BeginTextCommandDisplayText("FIVEMAD_TEXT")
        AddTextComponentSubstringPlayerName("Lamar")
        AddTextComponentInteger(2500)
        EndTextCommandDisplayText(0.5, 0.8)
    end
end)

Reference (click to insert)

FiveM chat colours

The default chat resource uses caret codes, not tildes. ^0 to ^9 set the colour, ^* bold, ^_ underline, ^~ strikethrough and ^r resets.

Message

Dispatch: [Police] Suspect spotted near Legion Square. All units respond.
chat.lua
-- client side
TriggerEvent("chat:addMessage", {
    color = { 255, 255, 255 },
    multiline = true,
    args = { "Dispatch", "^1[Police]^0 Suspect spotted near ^3Legion Square^0. ^*All units^r respond." }
})

-- server side, to one player (use -1 for everyone)
TriggerClientEvent("chat:addMessage", source, {
    args = { "Dispatch", "^1[Police]^0 Suspect spotted near ^3Legion Square^0. ^*All units^r respond." }
})

How GTA text codes work

Any string that goes through a text command (DrawText, notifications, help text, subtitles, blip names) can carry inline codes wrapped in tildes. A colour code stays active until the next colour code, and~s~ goes back to the default colour (whatever you set with SetTextColour, or white for notifications and help text).

  • ~r~ ~b~ ~g~ ~y~ ~p~ ~q~ ~o~ ~c~ ~m~ ~w~ ~l~: colours. ~HUD_COLOUR_NAME~ works too.
  • ~h~: bold on, then off again. ~n~: new line.
  • ~INPUT_CONTEXT~ and other control names render the button the player has bound, so prompts stay correct on custom keybinds and gamepad.
  • ~a~ and ~1~ are placeholders filled by AddTextComponentSubstringPlayerName and AddTextComponentInteger, in order. Register the string with AddTextEntry first.

Long strings

A single AddTextComponentSubstringPlayerName is cut at 99 characters. For longer text the snippet switches to the built-in CELL_EMAIL_BCON entry and splits your text into chunks, without breaking a code in half.

Notifications and help text

BeginTextCommandThefeedPost("STRING")
AddTextComponentSubstringPlayerName("~g~Saved~s~ your outfit.")
EndTextCommandThefeedPostTicker(false, true)

-- help text has to be drawn every frame
BeginTextCommandDisplayHelp("STRING")
AddTextComponentSubstringPlayerName("Press ~INPUT_CONTEXT~ to open the shop")
EndTextCommandDisplayHelp(0, false, true, -1)

Chat codes

The FiveM chat resource does not understand tildes. It uses ^0 to ^9 for colours plus^*, ^_, ^~, ^= and ^r for formatting. The colours shown are the defaults from the stock chat stylesheet, a custom chat theme can change them.

Colour values for the tilde codes follow Vespura's text colour reference and the game's HUD colours.