EngineReplaceCOL: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(Update load order info)
 
(8 intermediate revisions by 7 users not shown)
Line 2: Line 2:
{{Client function}}
{{Client function}}
This function replaces the collision file of the given model id to the collision file passed. Use [[engineLoadCOL]] to load the collision file first.
This function replaces the collision file of the given model id to the collision file passed. Use [[engineLoadCOL]] to load the collision file first.
 
{{Note|
'''Note:''' Collision libraries (.col files containing multiple collision models) are not supported. See [[COL]] for details. Object models are supported only (no vehicles or players).
* Follow loading order ('''COL''' -> '''TXD''' -> '''DFF''') which is used in the example - as other orders can cause collisions, textures or the DFF not to load due to technical limitations.
* Collision libraries (.col files containing multiple collision models) are not supported. See [[COL]] for details. Object models are supported only (no vehicles or players).}}


==Syntax==  
==Syntax==  
Line 9: Line 10:
bool engineReplaceCOL ( col theCol, int modelID )
bool engineReplaceCOL ( col theCol, int modelID )
</syntaxhighlight>  
</syntaxhighlight>  
 
{{OOP||[[COL|col]]:replace}}
===Required Arguments===  
===Required Arguments===  
*'''theCol:''' The collision file to replace with
*'''theCol:''' The collision file to replace with
Line 17: Line 18:
Returns ''true'' if the collision was successfully replaced, ''false'' or ''nil'' if the collision could not be replaced for a reason.
Returns ''true'' if the collision was successfully replaced, ''false'' or ''nil'' if the collision could not be replaced for a reason.


==Example==  
==Example==
<section name="Client" class="client" show="true">
See [https://wiki.multitheftauto.com/wiki/EngineReplaceModel#Example unified example available in engineReplaceModel.]
Client-Side example for replacing object collision with custom one.
<syntaxhighlight lang="lua">
function ReplaceCollision ( )
outputChatBox ( "> Replacing Collision Data." )
col = engineLoadCOL( "myColFile.col" )
engineReplaceCOL( col, 3356 )
end
 
addEvent ( "collisionReplace", true )
addEventHandler ( "collisionReplace", getRootElement(), ReplaceCollision )
</syntaxhighlight>
</section>
 
 
<section name="Server" class="server" show="true">
Server-side example function for triggering the replace.
<syntaxhighlight lang="lua">
function ReplaceCols ( )
triggerClientEvent ( "collisionReplace", getRootElement(), collisionReplace )
end
addCommandHandler("replacecol", ReplaceCols)
</syntaxhighlight>
</section>


==See Also==
==See Also==
<!-- Change FunctionArea to the area that this function is in on the main function list page, e.g. Server, Player, Vehicle etc -->
<!-- Change FunctionArea to the area that this function is in on the main function list page, e.g. Server, Player, Vehicle etc -->
{{Engine_functions}}
{{Engine_functions}}

Latest revision as of 12:59, 12 December 2024

This function replaces the collision file of the given model id to the collision file passed. Use engineLoadCOL to load the collision file first.

[[{{{image}}}|link=|]] Note:
  • Follow loading order (COL -> TXD -> DFF) which is used in the example - as other orders can cause collisions, textures or the DFF not to load due to technical limitations.
  • Collision libraries (.col files containing multiple collision models) are not supported. See COL for details. Object models are supported only (no vehicles or players).

Syntax

bool engineReplaceCOL ( col theCol, int modelID )

OOP Syntax Help! I don't understand this!

Method: col:replace(...)


Required Arguments

  • theCol: The collision file to replace with
  • modelID: The model ID whose collision file you want to replace

Returns

Returns true if the collision was successfully replaced, false or nil if the collision could not be replaced for a reason.

Example

See unified example available in engineReplaceModel.

See Also