EngineLoadIFP: Difference between revisions
m (→Example) |
Tag: Undo |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 7: | Line 7: | ||
==Syntax== | ==Syntax== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
ifp engineLoadIFP ( string | ifp engineLoadIFP ( string ifp_file / string raw_data, string custom_block_name ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===Required Arguments=== | ===Required Arguments=== | ||
*''' | *'''ifp_file / raw_data:''' the [[filepath|filepath]] to the IFP file you want to load or whole data buffer of the IFP file. | ||
*''' | *'''custom_block_name:''' the new block name for the IFP file. You cannot use the GTA default [[Animations|internal block]] names. '''You should namespace this name''' using a string like ''resource.blockname'' | ||
===Returns=== | ===Returns=== | ||
Line 34: | Line 34: | ||
-- you can choose any name you want, do not choose a default GTA:SA block name | -- you can choose any name you want, do not choose a default GTA:SA block name | ||
local customBlockName = "myNewBlock" | -- Remember to namespace your block. That's why it starts with `test.` | ||
local customBlockName = "test.myNewBlock" | |||
-- load the IFP file | -- load the IFP file |
Latest revision as of 14:49, 21 December 2019
This function loads an animation library (IFP) file into GTA with a custom block name. All three IFP formats are supported ANPK, ANP2, and ANP3. Unfortunately, GTA 3 animations are not supported, however, you can load GTA:VC IFP files using this function. You don't have to replace any animation to play a custom one, to play a custom animation, load the IFP file using this function, then use setPedAnimation.
If you wish to replace a GTA internal animation with a custom one, you can use engineReplaceAnimation. To unload the IFP file, use destroyElement, restarting or stopping the resource can also unload the IFP file automatically.
Syntax
ifp engineLoadIFP ( string ifp_file / string raw_data, string custom_block_name )
Required Arguments
- ifp_file / raw_data: the filepath to the IFP file you want to load or whole data buffer of the IFP file.
- custom_block_name: the new block name for the IFP file. You cannot use the GTA default internal block names. You should namespace this name using a string like resource.blockname
Returns
Returns an IFP element if the IFP file loaded, false otherwise.
Tip: If you want to synchronize animations, you can check [ifp_demo] resource |
Example
This example loads a custom IFP file (parkour.ifp), adds a command "animation" that takes 1 parameter as animation name for playing animations within that IFP.
--[[ credits to Paul_Cortez for the IFP file. parkour.ifp has following animations: BckHndSpingBTuck BckHndSping CartWheel FrntHndSpring HandPlant ]] -- you can choose any name you want, do not choose a default GTA:SA block name -- Remember to namespace your block. That's why it starts with `test.` local customBlockName = "test.myNewBlock" -- load the IFP file local IFP = engineLoadIFP( "parkour.ifp", customBlockName ) -- let us know if IFP failed to load if not IFP then outputChatBox( "Failed to load 'parkour.ifp'" ) end -- execute the command using /animation <NameOfCustomAnimation> -- for example, /animation CartWheel function setanimation( _, animationName ) -- check if IFP file has loaded if IFP then -- now play our custom animation setPedAnimation( localPlayer, customBlockName, animationName ) end end addCommandHandler( "animation", setanimation )
See Also
- engineAddImage
- engineApplyShaderToWorldTexture
- engineFreeModel
- engineGetModelFlags
- engineGetModelIDFromName
- engineGetModelLODDistance
- engineGetModelNameFromID
- engineGetModelPhysicalPropertiesGroup
- engineGetModelTextureNames
- engineGetModelTextures
- engineGetModelTXDID
- engineGetModelVisibleTime
- engineGetObjectGroupPhysicalProperty
- engineGetSurfaceProperties
- engineGetVisibleTextureNames
- engineImageGetFilesCount
- engineImageGetFiles
- engineImageGetFile
- engineImageLinkDFF
- engineImageLinkTXD
- engineImportTXD
- engineLoadCOL
- engineLoadDFF
- engineLoadIMG
- engineLoadIFP
- engineLoadTXD
- engineRemoveImage
- engineRemoveShaderFromWorldTexture
- engineReplaceAnimation
- engineReplaceCOL
- engineReplaceModel
- engineRequestModel
- engineResetModelFlags
- engineResetModelLODDistance
- engineResetSurfaceProperties
- engineRestoreAnimation
- engineRestoreCOL
- engineRestoreDFFImage
- engineRestoreModel
- engineRestoreModelPhysicalPropertiesGroup
- engineRestoreObjectGroupPhysicalProperties
- engineRestoreTXDImage
- engineRestreamWorld
- engineSetAsynchronousLoading
- engineSetModelFlag
- engineSetModelFlags
- engineSetModelLODDistance
- engineSetModelPhysicalPropertiesGroup
- engineSetModelVisibleTime
- engineSetObjectGroupPhysicalProperty
- engineSetSurfaceProperties
- engineStreamingFreeUpMemory
- engineStreamingGetUsedMemory