GetVehicleComponentPosition: Difference between revisions
Jump to navigation
Jump to search
m (Changed syntax from OOP to POP) |
|||
(3 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
{{Client function}} | {{Client function}} | ||
This function gets the component position of a [[vehicle]]. | This function gets the component position of a [[vehicle]]. The vehicle must be streamed in. | ||
==Syntax== | ==Syntax== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
float, float, float getVehicleComponentPosition ( vehicle theVehicle, string theComponent [, string base = "root"] ) | float, float, float getVehicleComponentPosition ( vehicle theVehicle, string theComponent [, string base = "root" ] ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{OOP||[[vehicle]]:getComponentPosition||setVehicleComponentPosition}} | {{OOP||[[vehicle]]:getComponentPosition||setVehicleComponentPosition}} | ||
Line 25: | Line 25: | ||
==Example== | ==Example== | ||
<section class=" | <section class="client" show="true" name="This example gets the name and the position of the components and outputs it in the chat."> | ||
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' | addCommandHandler("vcp", -- short for 'vehicle component position' | ||
Line 44: | Line 43: | ||
<section class=" | <section class="client" show="true" name="This example shows every components name in 3D(Only for streamedin vehicles)"> | ||
This example shows every components name in 3D(Only for streamedin vehicles) | |||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
local showComponents = false | local showComponents = false | ||
bindKey(" | 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 | ||
end | end | ||
) | end) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</section> | </section> |
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