SetVehicleColor: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 89: | Line 89: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</section> | </section> | ||
<section name="Example 3" class="server" show="true"> | |||
For version 1.1 and higher | |||
This example implements a serverside ''random_color'' console command. | |||
<syntaxhighlight lang="lua"> | |||
addCommandHandler( 'random_color', | |||
function( uPlayer ) | |||
if isPedInVehicle( uPlayer ) then | |||
local uVehicle = getPedOccupiedVehicle( uPlayer ) | |||
if uVehicle then | |||
local r, g, b = math.random( 255 ), math.random( 255 ), math.random( 255 ) | |||
setVehicleColor( uVehicle, r, g, b ) | |||
end | |||
end | |||
end | |||
) | |||
</syntaxhighlight> | |||
==See Also== | ==See Also== | ||
{{Vehicle_functions}} | {{Vehicle_functions}} |
Revision as of 16:27, 29 February 2012
This function will set the color of a vehicle. Each vehicle can have up to 4 colors, for different aspects of the vehicle. Most vehicles only use two of the colors.
Syntax
bool setVehicleColor ( vehicle theVehicle, int color1, int color2, int color3, int color4 )
Required Arguments
- theVehicle: The vehicle that you wish to set the color of.
- color1: An integer indicating the first (main) color for the vehicle
- color2: An integer indicating the second color for the vehicle
- color3: An integer indicating the third color for the vehicle
- color4: An integer indicating the fourth color for the vehicle
The table below shows valid color ids:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 |
40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 |
60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 |
80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 |
100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 |
120 | 121 | 122 | 123 | 124 | 125 | 126 |
From 1.1, as well as the above syntax, any RGB color can also be used to set a vehicle's colour
Syntax
bool setVehicleColor ( vehicle theVehicle, int r1, int g1, int b1, [int r2, int g2, int b2,] [int r3, int g3, int b3,] [int r4, int g4, int b4] )
Required Arguments
- theVehicle: The vehicle that you wish to set the color of.
- r1, g1, b1: Three integers indicating the red, green and blue components of the first (main) color for the vehicle
Optional Arguments
- r2, g2, b2: Three integers indicating the red, green and blue components of the second color for the vehicle
- r3, g3, b3: Three integers indicating the red, green and blue components of the third color for the vehicle
- r4, g4, b4: Three integers indicating the red, green and blue components of the fourth color for the vehicle
Returns
Returns true if vehicle's color was set, false if an invalid vehicle or invalid colors were specified.
Example
Click to collapse [-]
Example 1This example implements a serverside set_vehicle_color console command.
-- Define our function that will handle the command function consoleSetVehicleColor ( playerSource, commandName, col1, col2, col3, col4 ) -- If a player triggered this in-game if ( playerSource ) then -- Get the player's vehicle playerVehicle = getPlayerOccupiedVehicle ( playerSource ) -- If the player is in a vehicle and we've got at least 1 parameter if ( playerVehicle and col1 ) then -- Get the vehicle's existing color and use it if fewer than 4 arguments were passed exCol1, exCol2, exCol3, exCol4 = getVehicleColor ( playerVehicle ) if not col2 then col2 = exCol2 end if not col3 then col3 = exCol3 end if not col4 then col4 = exCol4 end -- Set the vehicle's color setVehicleColor ( playerVehicle, col1, col2, col3, col4 ) else -- If we didn't get at least 1 parameter or the player doesn't have a vehicle, display some help text outputConsole ( "This function will set your current vehicle's colors. A vehicle can have up to 4 colors.", playerSource ) outputConsole ( "Syntax: set_vehicle_color color1 [ color2 color3 color4 ]", playerSource ) outputConsole ( "You must be in a vehicle to use this function.", playerSource ) end end end -- Register the command handler and attach it to the consoleSetVehicleColor function addCommandHandler ( "set_vehicle_color", consoleSetVehicleColor )
Click to collapse [-]
Example 2This example changes all vehicles color to random every 0.5 sec.
function randomVehColors() for i, car in ipairs( getElementsByType( "vehicle" ) ) do local color = {} color[1] = math.random(0,126) -- random from 0 to 126, because colors is from 0 to 126 color[2] = math.random(0,126) color[3] = math.random(0,126) color[4] = math.random(0,126) -- we take 4 random numbers because setVehicleColor have parameters with 4 colors setVehicleColor ( car, color[1], color[2], color[3], color[4] ) -- setting color to vehicle end end setTimer( randomVehColors, 500, 0 ) -- timer changes all vehicles colors to random every 0.5 sec.
<section name="Example 3" class="server" show="true"> For version 1.1 and higher This example implements a serverside random_color console command.
addCommandHandler( 'random_color', function( uPlayer ) if isPedInVehicle( uPlayer ) then local uVehicle = getPedOccupiedVehicle( uPlayer ) if uVehicle then local r, g, b = math.random( 255 ), math.random( 255 ), math.random( 255 ) setVehicleColor( uVehicle, r, g, b ) end end end )
See Also
- 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