SetVehicleComponentRotation: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Add OOP syntax)
mNo edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
{{Client function}}
{{Client function}}
This function set component rotation for [[vehicle]].
This function sets the component rotation of a [[vehicle]].
{{Note|Before r6974 the component rotations went the wrong way (i.e. opposite to the vehicle rotations). This has been corrected, so you'll have to modify any scripts written before r6974 that use this function.}}
{{Note|Before r6974 the component rotations went the wrong way (i.e. opposite to the vehicle rotations). This has been corrected, so you'll have to modify any scripts written before r6974 that use this function.}}
==Syntax==  
==Syntax==  
Line 10: Line 10:


===Required Arguments===  
===Required Arguments===  
*'''theVehicle:''' The [[vehicle]] you wish to set component rotation.
*'''theVehicle:''' The [[vehicle]] you wish to set component rotation of.
*'''theComponent:''' A vehicle component (this is the frame name from the model file of the component you wish to modify)  
*'''theComponent:''' A [[Vehicle_Components|vehicle component]] (this is the frame name from the model file of the component you wish to modify)  
*'''rotX:''' The component's rotation around the x axis in degrees.
*'''rotX:''' The component's rotation around the x axis in degrees.
*'''rotY:''' The component's rotation around the y axis in degrees.
*'''rotY:''' The component's rotation around the y axis in degrees.
Line 18: Line 18:
===Optional Arguments===  
===Optional Arguments===  
{{New feature/item|3.0141|1.4.0|7013|
{{New feature/item|3.0141|1.4.0|7013|
*'''base:''' A string representing what the supplied rotation is relative to. It can be one of the following values:
*'''base:''' A string representing what the supplied rotation (''rotX'', ''rotY'', ''rotZ'') is relative to. It can be one of the following values:
**'''parent:''' The rotation is relative to the parent component.
**'''parent:''' The rotation is relative to the parent component.
**'''root:''' The rotation is relative to the root component.
**'''root:''' The rotation is relative to the root component.
**'''world:''' The rotation is a world rotation.
**'''world:''' The rotation is a world rotation, relative to the world's coordinates axes.
}}
}}


===Returns===  
===Returns===  
Return ''true'' if component rotation was set successfully, ''false'' otherwise.
Returns ''true'' if the component rotation was set successfully, ''false'' otherwise.


==Example==  
==Example==  

Latest revision as of 11:57, 4 September 2024

This function sets the component rotation of a vehicle.

[[{{{image}}}|link=|]] Note: Before r6974 the component rotations went the wrong way (i.e. opposite to the vehicle rotations). This has been corrected, so you'll have to modify any scripts written before r6974 that use this function.

Syntax

bool setVehicleComponentRotation ( vehicle theVehicle, string theComponent, float rotX, float rotY, float rotZ [, string base = "parent"] )

OOP Syntax Help! I don't understand this!

Method: vehicle:setComponentRotation(...)
Counterpart: getVehicleComponentRotation


Required Arguments

  • theVehicle: The vehicle you wish to set component rotation of.
  • theComponent: A vehicle component (this is the frame name from the model file of the component you wish to modify)
  • rotX: The component's rotation around the x axis in degrees.
  • rotY: The component's rotation around the y axis in degrees.
  • rotZ: The component's rotation around the z axis in degrees.

Optional Arguments

  • base: A string representing what the supplied rotation (rotX, rotY, rotZ) is relative to. It can be one of the following values:
    • parent: The rotation is relative to the parent component.
    • root: The rotation is relative to the root component.
    • world: The rotation is a world rotation, relative to the world's coordinates axes.

Returns

Returns true if the component rotation was set successfully, false otherwise.

Example

Example 1: This example would change the roatation of the component when the player enters a vehicle.

addEventHandler("onClientVehicleEnter", getRootElement(),
    function()
        local theVeh = getPedOccupiedVehicle(localPlayer)
        local getComponent = getVehicleComponents(theVeh) -- returns table with all the components of the vehicle
        if (theVeh) then
	    for k in pairs (getComponent) do
	        local rx, ry, rz = getVehicleComponentRotation(theVeh, k) --get the rotation of the component
                setVehicleComponentRotation(theVeh, k, rx+10, ry+10, rz+10) -- increases by 10 unit
	    end
        end
    end
)

Changelog

Version Description
1.4.0-9.07013 Added base argument

See Also