DetachTrailerFromVehicle: Difference between revisions
Jump to navigation
Jump to search
m (→Example) |
(→Example: added an example, corrected the existing one) |
||
| Line 15: | Line 15: | ||
==Example== | ==Example== | ||
'''Example 1:''' | '''Example 1:''' A command for players to detach a trailer detached to their vehicle: | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
function | -- the handler function for the "unhook" console command | ||
function unhookTrailer(playerSource, commandName) | |||
-- check if a player triggered this command and that they are in a vehicle | |||
if (playerSource and isPlayerInVehicle(playerSource)) then | |||
local theVehicle = getPlayerOccupiedVehicle(playerSource) -- get the vehicle the player is in | |||
local success = detachTrailerFromVehicle(theVehicle) -- attempt to detach a trailer from this vehicle | |||
-- report whether the operation waa a success | |||
if (success) then | |||
outputConsole("Trailer detached!", playerSource) | |||
else | |||
outputConsole("Failed to detach trailer.", playerSource) | |||
end | |||
end | |||
end | |||
-- make the function above handle the "unhook" command | |||
addCommandHandler("unhook", unhookTrailer) | |||
</syntaxhighlight> | |||
'''Example 2:''' This example attaches a trailer to a truck, and detaches it if the trailer is damaged: | |||
<syntaxhighlight lang="lua"> | |||
function onTruckDamage ( loss ) | |||
if ( loss > 50 ) then --if the health loss was more than 50 | if ( loss > 50 ) then --if the health loss was more than 50 | ||
detachTrailerFromVehicle ( source ) --detach the truck from the trailer | detachTrailerFromVehicle ( source ) --detach the truck from the trailer | ||
| Line 30: | Line 51: | ||
attachTrailerToVehicle ( theTruck, theTrailer ) -- attach them | attachTrailerToVehicle ( theTruck, theTrailer ) -- attach them | ||
-- add an event handler for when the trailer is damaged | -- add an event handler for when the trailer is damaged | ||
addEventHandler ( "onVehicleDamage", | addEventHandler ( "onVehicleDamage", theTruck, onTruckDamage ) | ||
end | end | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 03:41, 29 July 2007
This function detaches an already attached trailer from a vehicle.
Syntax
bool detachTrailerFromVehicle ( vehicle theVehicle, [vehicle theTrailer] )
Required Arguments
- theVehicle: The vehicle you wish to detach a trailer from.
Optional Arguments
- theTrailer: The trailer you wish to be detached.
Note: If 'theTrailer' is specified, it will only detach if this matches. If it is not specified, any trailer attached to 'theVehicle' will be detached.
Returns
Returns 'true' if the vehicle's were successfully detached, 'false' otherwise.
Example
Example 1: A command for players to detach a trailer detached to their vehicle:
-- the handler function for the "unhook" console command
function unhookTrailer(playerSource, commandName)
-- check if a player triggered this command and that they are in a vehicle
if (playerSource and isPlayerInVehicle(playerSource)) then
local theVehicle = getPlayerOccupiedVehicle(playerSource) -- get the vehicle the player is in
local success = detachTrailerFromVehicle(theVehicle) -- attempt to detach a trailer from this vehicle
-- report whether the operation waa a success
if (success) then
outputConsole("Trailer detached!", playerSource)
else
outputConsole("Failed to detach trailer.", playerSource)
end
end
end
-- make the function above handle the "unhook" command
addCommandHandler("unhook", unhookTrailer)
Example 2: This example attaches a trailer to a truck, and detaches it if the trailer is damaged:
function onTruckDamage ( loss )
if ( loss > 50 ) then --if the health loss was more than 50
detachTrailerFromVehicle ( source ) --detach the truck from the trailer
-- remove the event handler so that this function is no longer called when the trailer is damaged
removeEventHandler ( "onVehicleDamage", source, onTrailerDamage )
end
end
function createVehiclesAndAttachThem ()
local theTruck = createVehicle ( 515, 500, 500, 40 ) -- create a trailer-tower (roadtrain)
local theTrailer = createVehicle ( 435, 500, 505, 40 ) -- create a trailer
attachTrailerToVehicle ( theTruck, theTrailer ) -- attach them
-- add an event handler for when the trailer is damaged
addEventHandler ( "onVehicleDamage", theTruck, onTruckDamage )
end
See Also
- addVehicleUpgrade
- addVehicleSirens
- attachTrailerToVehicle
- blowVehicle
- createVehicle
- detachTrailerFromVehicle
- fixVehicle
- getOriginalHandling
- getTrainDirection
- getTrainPosition
- getTrainSpeed
- getVehicleColor
- getVehicleCompatibleUpgrades
- getVehicleController
- getVehicleDoorOpenRatio
- getVehicleDoorState
- getVehicleEngineState
- getVehicleHandling
- getVehicleHeadLightColor
- getVehicleLandingGearDown
- getVehicleLightState
- getVehicleMaxPassengers
- getVehicleModelFromName
- getVehicleName
- getVehicleNameFromModel
- setVehicleNitroActivated
- 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
- removeVehicleSirens
- setTrainDerailable
- setTrainDerailed
- setTrainDirection
- setTrainPosition
- setTrainSpeed
- setVehicleColor
- setVehicleDamageProof
- setVehicleDoorOpenRatio
- setVehicleDoorState
- setVehicleDoorsUndamageable
- setVehicleEngineState
- setVehicleFuelTankExplodable
- setVehicleHandling
- setVehicleHeadLightColor
- setVehicleLandingGearDown
- setVehicleLightState
- setVehicleLocked
- setVehicleOverrideLights
- setVehiclePaintjob
- setVehiclePanelState
- setVehiclePlateText
- setVehicleSirens
- setVehicleSirensOn
- setVehicleTaxiLightOn
- setVehicleTurretPosition
- setVehicleVariant
- setVehicleWheelStates