AddVehicleUpgrade: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Added template, sections, minor changes)
mNo edit summary
Line 4: Line 4:


==Syntax==
==Syntax==
<section name="Server and Client" class="both" show="true">
<syntaxhighlight lang="lua">bool addVehicleUpgrade ( vehicle theVehicle, int upgrade )</syntaxhighlight>
<syntaxhighlight lang="lua">bool addVehicleUpgrade ( vehicle theVehicle, int upgrade )</syntaxhighlight>


Line 13: Line 12:
==Returns==
==Returns==
Returns ''true'' if the upgrade was successfully added to the vehicle, otherwise ''false''.
Returns ''true'' if the upgrade was successfully added to the vehicle, otherwise ''false''.
</section>


==Example==
==Example==
<section name="Example 1" class="server">
<section name="Example 1" class="server" show="true">
This serverside function allows the user to get an upgrade by typing a command:
This serverside function allows the user to get an upgrade by typing a command:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
Line 24: Line 22:
         if ( isPlayerInVehicle ( thePlayer ) ) then
         if ( isPlayerInVehicle ( thePlayer ) ) then
             -- convert the given ID from a string to a number
             -- convert the given ID from a string to a number
             id = tonumber ( id )
             local id = tonumber ( id )
             -- get the player's vehicle
             -- get the player's vehicle
             local theVehicle = getPlayerOccupiedVehicle ( thePlayer )
             local theVehicle = getPlayerOccupiedVehicle ( thePlayer )
Line 44: Line 42:
</section>
</section>


<section name="Example 2" class="client">
<section name="Example 2" class="client" show="true">
This client-side script gives vehicles a nitro upgrade whenever they pass through a certain collision shape:
This client-side script gives vehicles a nitro upgrade whenever they pass through a certain collision shape:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">

Revision as of 14:49, 21 August 2007

This function adds an upgrade to an existing vehicle, eg: nos, hyrdraulics. These upgrades are listed in San Andreas\data\maps\veh_mods\veh_mods.ide.

Syntax

bool addVehicleUpgrade ( vehicle theVehicle, int upgrade )

Required Arguments

  • theVehicle: The element representing the vehicle you wish to add the upgrade to.
  • upgrade: The id of the upgrade you wish to add. (1000 to 1193)

Returns

Returns true if the upgrade was successfully added to the vehicle, otherwise false.

Example

Click to collapse [-]
Example 1

This serverside function allows the user to get an upgrade by typing a command:

-- define the handler function for our command
function consoleAddUpgrade ( thePlayer, commandName, id )
        -- make sure the player is in a vehicle
        if ( isPlayerInVehicle ( thePlayer ) ) then
            -- convert the given ID from a string to a number
            local id = tonumber ( id )
            -- get the player's vehicle
            local theVehicle = getPlayerOccupiedVehicle ( thePlayer )
            -- add the requested upgrade to the vehicle
            local success = addVehicleUpgrade ( theVehicle, id )
            -- inform the player of whether the upgrade was added successfully
            if ( success ) then
                outputConsole ( getVehicleUpgradeSlotName ( id ) .. " upgrade added.", thePlayer )
            else
                outputConsole ( "Failed to add upgrade.", thePlayer )
            end
        else
            outputConsole ( "You must be in a vehicle!", thePlayer )
        end
end
-- add the function as a handler for the "addupgrade" command
addCommandHandler ( "addupgrade", consoleAddUpgrade )
Click to collapse [-]
Example 2

This client-side script gives vehicles a nitro upgrade whenever they pass through a certain collision shape:

-- create a collision shape
local nitroColShape = createColSphere ( 1337, 100, 12, 2 )

-- attach the collision shape to an 'onClientColShapeHit' event
function onNitroColShapeHit ( hitElement, matchingDimension )
    if ( getElementType ( hitElement ) == "vehicle" ) then
        -- add a nitro upgrade if the element that hit the colshape is a vehicle
        addVehicleUpgrade ( hitElement, 1010 )
    end
end
addEventHandler ( "onClientColShapeHit", nitroColShape, onNitroColShapeHit )

See Also