GetVehicleComponentPosition: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (Changed syntax from OOP to POP) |
||
(15 intermediate revisions by 9 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
{{Client function}} | {{Client function}} | ||
This function gets the component position of a [[vehicle]]. The vehicle must be streamed in. | |||
This function | |||
==Syntax== | ==Syntax== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
float, float, float getVehicleComponentPosition ( vehicle theVehicle, string theComponent ) | float, float, float getVehicleComponentPosition ( vehicle theVehicle, string theComponent [, string base = "root" ] ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{OOP||[[vehicle]]:getComponentPosition||setVehicleComponentPosition}} | |||
===Required Arguments=== | ===Required Arguments=== | ||
*'''theVehicle:''' The [[vehicle]] you wish to get component position. | *'''theVehicle:''' The [[vehicle]] you wish to get component position of. | ||
*'''theComponent:''' A vehicle component | *'''theComponent:''' A [[Vehicle_Components|vehicle component]] (this is the frame name from the model file of the component you wish to modify) | ||
===Optional Arguments=== | |||
{{New feature/item|3.0141|1.4.0|7013| | |||
*'''base:''' A string representing what the returned position is relative to. It can be one of the following values: | |||
**'''parent:''' The position is relative to the parent component. | |||
**''' | **'''root:''' The position is relative to the root component. | ||
**''' | **'''world:''' The position is a world position. | ||
**''' | }} | ||
===Returns=== | ===Returns=== | ||
Line 37: | Line 25: | ||
==Example== | ==Example== | ||
<section class="client" show="true" name="This example gets the name and the position of the components and outputs it in the chat."> | |||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
-- | addCommandHandler("vcp", -- short for 'vehicle 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) | |||
outputChatBox("Position of "..k.." is"..x.." "..y.." "..z) | |||
end | |||
end | |||
end | |||
) | |||
</syntaxhighlight> | </syntaxhighlight> | ||
</section> | |||
<section class="client" show="true" name="This example shows every components name in 3D(Only for streamedin vehicles)"> | |||
<syntaxhighlight lang="lua"> | |||
local showComponents = false | |||
bindKey("F5", "down", function() showComponents = not showComponents end) | |||
addEventHandler("onClientRender", root, function() | |||
if not showComponents then return end | |||
for _, veh in pairs(getElementsByType("vehicle", root, true)) do | |||
for compname in pairs(getVehicleComponents(veh)) do | |||
local x, y = getScreenFromWorldPosition(getVehicleComponentPosition(veh, compname, "world")) | |||
if x then | |||
dxDrawText(compname, x, y, 0, 0) | |||
end | |||
end | |||
end | |||
end) | |||
</syntaxhighlight> | |||
</section> | |||
==Changelog== | |||
{{ChangelogHeader}} | |||
{{ChangelogItem|1.4.0-9.07013|Added '''base''' argument}} | |||
==See Also== | ==See Also== | ||
{{Client_vehicle_functions}} | {{Client_vehicle_functions}} | ||
Latest revision as of 08:38, 11 June 2024
This function gets the component position of a vehicle. The vehicle must be streamed in.
Syntax
float, float, float getVehicleComponentPosition ( vehicle theVehicle, string theComponent [, string base = "root" ] )
OOP Syntax Help! I don't understand this!
- Method: vehicle:getComponentPosition(...)
- Counterpart: setVehicleComponentPosition
Required Arguments
- theVehicle: The vehicle you wish to get component position of.
- theComponent: A vehicle component (this is the frame name from the model file of the component you wish to modify)
Optional Arguments
- base: A string representing what the returned position is relative to. It can be one of the following values:
- parent: The position is relative to the parent component.
- root: The position is relative to the root component.
- world: The position is a world position.
Returns
Returns three floats indicating the position of the component, x, y and z respectively.
Example
Click to collapse [-]
This example gets the name and the position of the components and outputs it in the chat.addCommandHandler("vcp", -- short for 'vehicle 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) outputChatBox("Position of "..k.." is"..x.." "..y.." "..z) end end end )
Click to collapse [-]
This example shows every components name in 3D(Only for streamedin vehicles)local showComponents = false bindKey("F5", "down", function() showComponents = not showComponents end) addEventHandler("onClientRender", root, function() if not showComponents then return end for _, veh in pairs(getElementsByType("vehicle", root, true)) do for compname in pairs(getVehicleComponents(veh)) do local x, y = getScreenFromWorldPosition(getVehicleComponentPosition(veh, compname, "world")) if x then dxDrawText(compname, x, y, 0, 0) end end end end)
Changelog
Version | Description |
---|
1.4.0-9.07013 | Added base argument |
See Also
- areVehicleLightsOn
- getHeliBladeCollisionsEnabled
- getHelicopterRotorSpeed
- getVehicleAdjustableProperty
- getVehicleComponentPosition
- getVehicleComponentRotation
- getVehicleComponents
- getVehicleComponentScale
- getVehicleComponentVisible
- getVehicleCurrentGear
- getVehicleDummyPosition
- getVehicleGravity
- getVehicleLandingGearDown
- getVehicleModelDummyDefaultPosition
- getVehicleModelDummyPosition
- getVehicleModelExhaustFumesPosition
- getVehicleModelWheelSize
- getVehicleNitroCount
- getVehicleNitroLevel
- getVehicleWheelFrictionState
- getVehicleWheelScale
- isTrainChainEngine
- isVehicleNitroActivated
- isVehicleNitroRecharging
- isVehicleOnGround
- isVehicleWheelOnGround
- isVehicleWindowOpen
- resetVehicleComponentPosition
- resetVehicleComponentRotation
- resetVehicleComponentScale
- resetVehicleDummyPositions
- setHeliBladeCollisionsEnabled
- setHelicopterRotorSpeed
- setVehicleAdjustableProperty
- setVehicleComponentPosition
- setVehicleComponentRotation
- setVehicleComponentScale
- setVehicleComponentVisible
- setVehicleDummyPosition
- setVehicleGravity
- setVehicleLandingGearDown
- setVehicleModelDummyPosition
- setVehicleModelExhaustFumesPosition
- setVehicleModelWheelSize
- setVehicleNitroActivated
- setVehicleNitroCount
- setVehicleNitroLevel
- setVehicleWheelScale
- setVehicleWheelStates
- setVehicleWindowOpen
- Shared
- addVehicleUpgrade
- attachTrailerToVehicle
- blowVehicle
- createVehicle
- detachTrailerFromVehicle
- fixVehicle
- getOriginalHandling
- getTrainDirection
- getTrainPosition
- getTrainSpeed
- getTrainTrack
- getVehicleColor
- getVehicleCompatibleUpgrades
- getVehicleController
- getVehicleDoorOpenRatio
- getVehicleDoorState
- getVehicleEngineState
- getVehicleHandling
- getVehicleHeadLightColor
- getVehicleLandingGearDown
- getVehicleLightState
- getVehicleMaxPassengers
- getVehicleModelFromName
- getVehicleName
- getVehicleNameFromModel
- getVehicleOccupant
- getVehicleOccupants
- getVehicleOverrideLights
- getVehiclePaintjob
- getVehiclePanelState
- getVehiclePlateText
- getVehicleSirenParams
- getVehicleSirens
- getVehicleSirensOn
- getVehicleTowedByVehicle
- getVehicleTowingVehicle
- getVehicleTurretPosition
- getVehicleType
- getVehicleUpgradeOnSlot
- getVehicleUpgradeSlotName
- getVehicleUpgrades
- getVehicleVariant
- getVehicleWheelStates
- isTrainDerailable
- isTrainDerailed
- isVehicleBlown
- isVehicleDamageProof
- isVehicleFuelTankExplodable
- isVehicleLocked
- isVehicleOnGround
- isVehicleTaxiLightOn
- removeVehicleUpgrade
- setTrainDerailable
- setTrainDerailed
- setTrainDirection
- setTrainPosition
- setTrainSpeed
- setTrainTrack
- setVehicleColor
- setVehicleDamageProof
- setVehicleDoorOpenRatio
- setVehicleDoorState
- setVehicleDoorsUndamageable
- setVehicleEngineState
- setVehicleFuelTankExplodable
- setVehicleHandling
- setVehicleHeadLightColor
- setVehicleLandingGearDown
- setVehicleLightState
- setVehicleLocked
- setVehicleOverrideLights
- setVehiclePaintjob
- setVehiclePanelState
- setVehiclePlateText
- setVehicleSirens
- setVehicleSirensOn
- setVehicleTaxiLightOn
- setVehicleTurretPosition
- setVehicleVariant
- setVehicleWheelStates