Przejdź do treści

Funkcje scaleformów

Przeszukaj movie scaleform z GTA V i funkcje, które możesz na nich wywołać przez BeginScaleformMovieMethod, razem ze znanymi listami parametrów.

To narzędzie i jego opis są na razie po angielsku.

DokumentacjaUI, NativesPrzeczytaj dokumentację
Loading scaleform data…

Calling a scaleform function

Scaleform movies are the Flash (ActionScript 2) UI files GTA V uses for HUD pieces, phones, big messages, computer screens and more. You load a movie, call one of its functions with parameters, then draw it every frame:

local scaleform = RequestScaleformMovie("MIDSIZED_MESSAGE")
while not HasScaleformMovieLoaded(scaleform) do Wait(0) end

-- SHOW_SHARD_MIDSIZED_MESSAGE(bigText, msgText, colID, useDarkerShard, useCondensedShard)
BeginScaleformMovieMethod(scaleform, "SHOW_SHARD_MIDSIZED_MESSAGE")
ScaleformMovieMethodAddParamTextureNameString("MISSION PASSED")
ScaleformMovieMethodAddParamTextureNameString("You delivered the car")
ScaleformMovieMethodAddParamInt(2)
ScaleformMovieMethodAddParamBool(false)
ScaleformMovieMethodAddParamBool(false)
EndScaleformMovieMethod()

while true do
    DrawScaleformMovieFullscreen(scaleform, 255, 255, 255, 255, 0)
    Wait(0)
end

Parameter natives

NativeUse for
ScaleformMovieMethodAddParamIntIntegers, enums, colour ids.
ScaleformMovieMethodAddParamFloatPositions, scales, alpha.
ScaleformMovieMethodAddParamBoolFlags such as isVisible.
ScaleformMovieMethodAddParamTextureNameStringPlain strings, texture dictionary and texture names.
ScaleformMovieMethodAddParamPlayerNameStringPlayer names and short strings.
BeginTextCommandScaleformString + EndTextCommandScaleformStringLong text, text labels and ~r~ style formatting.

Things to know

  • This list is generated from decompiled movies. Not every function does something in-game. UPPERCASE functions are the public API and usually work; lowercase ones are internal but sometimes work too.
  • Parameter types are not in the data, only names. The builder guesses them from the name.
  • Pause menu and other frontend movies can't be drawn with DrawScaleformMovie; they use BeginScaleformMovieMethodOnFrontend and are mostly undocumented.
  • Release a movie you no longer need with SetScaleformMovieAsNoLongerNeeded.
  • The page keeps ?movie= and ?fn= in the URL so you can link a function.

Data: Vespura (tomgrobbe.com), from decompiled scaleform scripts.