Revision Difference
Vehicle:SetVehicleParams#529227
<function name="SetVehicleParams" parent="Vehicle" type="classfunc">
<description>
Sets the vehicle parameters for given vehicle.
<note>Not all variables from the <page>Structures/VehicleParams</page> can be set.</note>
<bug issue="2625">Because this method uses miles per hour but <page>Vehicle:GetVehicleParams</page> returns Hammer units per second, this method incorrectly modifies the vehicle engine's "boostMaxSpeed", "maxRevSpeed" and "maxSpeed" even when not explicitly set in a call to this method.
**Workaround**: In order to retain the original values for these fields, call <page>Vehicle:GetVehicleParams</page> yourself, convert the mentioned fields from Hammer units per second to miles per hour (1 MPH ≈ 17.6 HU/s in this case) and add them to the table passed into the call to this setter. Avoid doing this repeatedly to avoid floating point inaccuracies over time (store the ready-calculated value for next time if possible).</bug>⤶
**Workaround**: In order to retain the original values for these fields, call <page>Vehicle:GetVehicleParams</page> yourself, convert the mentioned fields from Hammer units per second to miles per hour (1 MPH ≈ 17.6 HU/s in this case) and add them to the table passed into the call to this setter. Avoid doing this repeatedly to avoid floating point inaccuracies over time (store the ready-calculated value for next time if possible).⤶
⤶
**This is fixed in the next update.**</bug>⤶
</description>
<realm>Server</realm>
<args>
<arg name="params" type="table">The new new vehicle parameters. See <page>Structures/VehicleParams</page></arg>⤶
<arg name="params" type="table">The new new vehicle parameters. See <page>Structures/VehicleParams</page>.</arg>⤶
</args>
</function>
<example>
<description>Adds 25 horsepower to every vehicle spawned.</description>
<code>
hook.Add("PlayerSpawnedVehicle", "VehicleParamsExample", function(ply, ent)
local params = ent:GetVehicleParams()
⤶
⤶
params.engine.horsepower = params.engine.horsepower + 25⤶
⤶
⤶
ent:SetVehicleParams(params)⤶
hook.Add("PlayerSpawnedVehicle", "VehicleParamsExample", function(ply, entity)
local params = entity:GetVehicleParams()
⤶
params.engine.horsepower = params.engine.horsepower + 25⤶
⤶
entity:SetVehicleParams(params)⤶
end)
</code>
⤶
</example></example>