SetVehicleComponentPosition: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Created page with "__NOTOC__ {{Client function}} {{New items|3.0151|1.4| This function set component position for vehicle. }} ==Syntax== <syntaxhighlight lang="lua"> bool setVehicleComponentPosition ( vehic...")
 
m (Grammar fixes)
 
(10 intermediate revisions by 8 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
{{Client function}}
{{Client function}}
{{New items|3.0151|1.4|
 
This function set component position for [[vehicle]].
{{New feature/item|3.0131|1.3.1|4715|
This function sets the component position of a [[vehicle]].
}}
}}


==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
bool setVehicleComponentPosition ( vehicle theVehicle, string theComponent, float posX, float posY, float posZ )
bool setVehicleComponentPosition ( vehicle theVehicle, string theComponent, float posX, float posY, float posZ [, string base = "root"] )
</syntaxhighlight>
</syntaxhighlight>
{{OOP||[[vehicle]]:setComponentPosition||getVehicleComponentPosition}}


===Required Arguments===  
===Required Arguments===  
*'''theVehicle:''' The [[vehicle]] you wish to set component position.
*'''theVehicle:''' The [[vehicle]] you wish to set component position.
*'''theComponent:''' A component.
*'''theComponent:''' A [[Vehicle_Components|vehicle component]] (this is the frame name from the model file of the component you wish to modify)
*'''posX:''' The x position of this component from the center of the vehicle.
*'''posX:''' The new x position of this component.
*'''posY:''' The y position of this component from the center of the vehicle.
*'''posY:''' The new y position of this component.
*'''posZ:''' The z position of this component from the center of the vehicle.
*'''posZ:''' The new z position of this component.
 
===Optional Arguments===
{{New feature/item|3.0141|1.4.0|7013|
*'''base''': A string representing what the supplied position (''posX'', ''posY'', ''posZ'') is relative to. It can be one of the following values:
**'''parent''': The position is relative to the parent component.
**'''root''' (default if not specified): The position is relative to the root component.
**'''world''': The position is a world position, relative to the world's center of coordinates.
}}
 
===Returns===
Returns ''true'' if component position was set successfully, ''false'' otherwise.


'''List of components:'''
==Example==
*special_1
'''Example 1:''' This example would set the position of the component.
*special_2
<syntaxhighlight lang="lua">
*special_3
addCommandHandler("scp", -- short for 'set component position'
*special_4
    function()
*special_5
        local theVeh = getPedOccupiedVehicle(localPlayer)
*bonnet
local getComponent = getVehicleComponents(theVeh) -- returns table with all the components of the vehicle
*boot
        if (theVeh) then
*bumper_1
            for k in pairs (getComponent) do
*bumper_2
local x, y, z = getVehicleComponentPosition(theVeh, k) --get the position of the component
*chassis
                setVehicleComponentPosition(theVeh, k, x+1, y+1, z+1) -- increases by 1 unit
*door_1
            end
*door_2
        end
*door_3
    end
*door_4
)
*exhaust
</syntaxhighlight>
*wing_lf
*wing_rf
*extra_1
*extra_2


===Return===  
==Changelog==
Return ''true'' if component position was set successfully, ''false'' otherwise.
{{ChangelogHeader}}
{{ChangelogItem|1.4.0-9.07013|Added '''base''' argument}}


==See Also==
==See Also==
{{Client_vehicle_functions}}
{{Client_vehicle_functions}}
[[Category:Needs Example]]

Latest revision as of 13:59, 5 July 2017

This function sets the component position of a vehicle.

Syntax

bool setVehicleComponentPosition ( vehicle theVehicle, string theComponent, float posX, float posY, float posZ [, string base = "root"] )

OOP Syntax Help! I don't understand this!

Method: vehicle:setComponentPosition(...)
Counterpart: getVehicleComponentPosition


Required Arguments

  • theVehicle: The vehicle you wish to set component position.
  • theComponent: A vehicle component (this is the frame name from the model file of the component you wish to modify)
  • posX: The new x position of this component.
  • posY: The new y position of this component.
  • posZ: The new z position of this component.

Optional Arguments

  • base: A string representing what the supplied position (posX, posY, posZ) is relative to. It can be one of the following values:
    • parent: The position is relative to the parent component.
    • root (default if not specified): The position is relative to the root component.
    • world: The position is a world position, relative to the world's center of coordinates.

Returns

Returns true if component position was set successfully, false otherwise.

Example

Example 1: This example would set the position of the component.

addCommandHandler("scp", -- short for 'set component position'
    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 x, y, z = getVehicleComponentPosition(theVeh, k) --get the position of the component
                setVehicleComponentPosition(theVeh, k, x+1, y+1, z+1) -- increases by 1 unit
            end
        end
    end
)

Changelog

Version Description
1.4.0-9.07013 Added base argument

See Also