That looks like the mission related scaleforms.
I once messed around with something similar. It’s probably used incorrectly but take a look at this testing code which I wrote back then:
Citizen.CreateThread(function()
function Initialize(scaleform)
local scaleform = RequestScaleformMovie(scaleform)
while not HasScaleformMovieLoaded(scaleform) do
Citizen.Wait(0)
end
PushScaleformMovieFunction(scaleform, "SET_MISSION_INFO")
PushScaleformMovieFunctionParameterString("Typical ¦ shit, hunting without guns w/ ~r~ <3 ~s~ from ∑")
PushScaleformMovieFunctionParameterString("~g~HUNTING ~t~(Budget cuts edition, no more guns avaialble.)")
PushScaleformMovieFunctionParameterString("0")
PushScaleformMovieFunctionParameterString("")
PushScaleformMovieFunctionParameterString("")
PushScaleformMovieFunctionParameterString("")
PushScaleformMovieFunctionParameterString("")
PushScaleformMovieFunctionParameterString("0")
PushScaleformMovieFunctionParameterString("0")
PushScaleformMovieFunctionParameterString("~r~-1000000$")
-- PushScaleformMovieFunctionParameterString("~y~Objective ~s~Get ~m~5 ~s~kills")
PopScaleformMovieFunctionVoid()
return scaleform
end
scaleform = Initialize("mp_mission_name_freemode")
while true do
Citizen.Wait(0)
local x = 0.5
local y = 0.35
local width = 0.3
local height = width / 0.65
DrawScaleformMovie(scaleform, x, y, width, height)
end
end)
More info about this scaleform: https://scaleform.devtesting.pizza/#mp_mission_name_freemode