EngineReplaceModel: Difference between revisions
m (→Example) |
(Cleaned up and added needs checking template) |
||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
{{Client function}} | {{Client function}} | ||
{{Needs Checking|I couldn't reproduce the vehicle collision replace bug in recent MTA versions while using the recommended loading order. Can someone double check this in order to clean up the article? --[[User:AlexTMjugador|AlexTMjugador]] ([[User talk:AlexTMjugador|talk]]) 10:55, 6 July 2016 (UTC)}} | |||
{{Note box|Please note the loading order that is used in the examples as other orders can cause collisions, textures or the DFF not to load due to technical limitations}} | {{Note box|Please note the loading order that is used in the examples as other orders can cause collisions, textures or the DFF not to load due to technical limitations}} | ||
This function replaces | This function replaces the given model ID with the model contained in a DFF file loaded by [[engineLoadDFF]]. {{New items|3.0111|1.1.1|This function supports [[vehicle|vehicles]], [[object|objects]], [[ped|peds]] and [[player|players]].}} | ||
{{Deprecated feature|3.0111|1.1.1|This function does not support ped and weapon models.}} | |||
To replace weapon models you must use their object IDs, not weapon IDs. There is a weapon model list available at [[weapons]]. | |||
{{Note| | |||
* Due to a bug, when replacing models with built in collisions (i.e. vehicles), the collision may not get replaced correctly. The current work around is to load the dff again and do another replace after a short delay. | |||
* Default GTA map objects behave inconsistently when using this function on them. If you want to replace models in the original GTA map, use one of the [[EngineReplaceModel notes|methods shown here]].}} | |||
==Syntax== | ==Syntax== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
Line 19: | Line 23: | ||
===Optional Arguments=== | ===Optional Arguments=== | ||
*'''alphaTransparency:''' Set to true to enable | *'''alphaTransparency:''' Set to true to enable texture transparency within the model | ||
===Returns=== | ===Returns=== |
Revision as of 10:55, 6 July 2016
This article needs checking. | |
Reason(s): I couldn't reproduce the vehicle collision replace bug in recent MTA versions while using the recommended loading order. Can someone double check this in order to clean up the article? --AlexTMjugador (talk) 10:55, 6 July 2016 (UTC) |
This template is no longer in use as it results in poor readability.
This function replaces the given model ID with the model contained in a DFF file loaded by engineLoadDFF. This function supports vehicles, objects, peds and players.
To replace weapon models you must use their object IDs, not weapon IDs. There is a weapon model list available at weapons.
Syntax
bool engineReplaceModel ( dff theModel, int modelID [, bool alphaTransparency = false ] )
OOP Syntax Help! I don't understand this!
- Method: dff:replace(...)
Required Arguments
- theModel: The model to replace the given model ID with
- modelID: The model it to replace the model of
Optional Arguments
- alphaTransparency: Set to true to enable texture transparency within the model
Returns
Returns true if the model was successfully replaced, false if it failed for some reason, ie. the DFF or the model ID is not valid.
Example
Example 1:
Client-Side example for replacing vehicle model and texture with custom ones.
function ReplaceVehicle ( ) outputChatBox ( "> replacing the euros vehicle" ) txd = engineLoadTXD ( "data/euros.txd" ) engineImportTXD ( txd, 587 ) dff = engineLoadDFF ( "data/euros.dff" ) engineReplaceModel ( dff, 587 ) end addEvent ( "replaceVeh", true ) addEventHandler ( "replaceVeh", root, ReplaceVehicle )
Server-side example function for triggering the replace.
function ReplaceCommand ( ) triggerClientEvent( "replaceVeh", root, replaceVeh ) end addCommandHandler( "replace", ReplaceCommand )
Example 2:
Client-Side example for replacing object collision, texture and model with custom ones.
function ReplaceObject ( ) col = engineLoadCOL( "MyModel.col" ) txd = engineLoadTXD( "MyModel.txd" ) dff = engineLoadDFF( "MyModel.dff", 0 ) engineReplaceCOL( col, 1234 ) engineImportTXD( txd, 1234 ) engineReplaceModel( dff, 1234 )-- replace the model at least end addEvent ( "replaceObj", true ) addEventHandler ( "replaceObj", root, ReplaceObject )
Server-side example function for triggering the replace.
function ReplaceCommand ( ) triggerClientEvent( "replaceObj", root, replaceObj ) end addCommandHandler( "replace", ReplaceCommand )
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