SetVehicleFrozen: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
__NOTOC__  
__NOTOC__
{{Server client function}}
This function freezes a vehicle (stops it in its position and disables movement) or unfreezes it.
This function freezes a vehicle (stops it in its position and disables movement) or unfreezes it.


Line 17: Line 18:
This example binds the "p" key to a function to freeze/unfreeze the player's current vehicle.
This example binds the "p" key to a function to freeze/unfreeze the player's current vehicle.
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
-- we store all players in a table
-- This function freezes the specified player's vehicle, if he's in one
local connectedPlayers = getElementsByType ( "player" )
-- for each one in it,
for i, aPlayer in ipairs(connectedPlayers) do
-- bind the player's "p" key to the toggleFreezeStatus function
bindKey ( aPlayer, "p", "down", "toggleFreezeStatus" )
end
 
-- this function freezes the specified player's vehicle, if he's in one
function toggleFreezeStatus ( thePlayer )
function toggleFreezeStatus ( thePlayer )
-- if he is in a vehicle,
-- if he is in a vehicle,
Line 38: Line 31:
setVehicleFrozen ( playerVehicle, newFreezeStatus )
setVehicleFrozen ( playerVehicle, newFreezeStatus )
end
end
end
-- now bind a key to this function for all players.
-- first get a list of all players
local connectedPlayers = getElementsByType ( "player" )
-- then, for each player,
for i, aPlayer in ipairs(connectedPlayers) do
-- bind the player's "p" key to the toggleFreezeStatus function
bindKey ( aPlayer, "p", "down", "Toggle freeze status", toggleFreezeStatus )
end
end
</syntaxhighlight>
</syntaxhighlight>

Revision as of 20:38, 15 August 2007

This function freezes a vehicle (stops it in its position and disables movement) or unfreezes it.

Syntax

bool setVehicleFrozen ( vehicle theVehicle, bool freezeStatus )

Required Arguments

  • theVehicle: the vehicle whose freeze status we want to change.
  • freezeStatus: whether we want to freeze or unfreeze it.

Returns

  • Returns true if the vehicle was frozen, false if it wasn't or if invalid arguments are passed.

Example

This example binds the "p" key to a function to freeze/unfreeze the player's current vehicle.

-- This function freezes the specified player's vehicle, if he's in one
function toggleFreezeStatus ( thePlayer )
	-- if he is in a vehicle,
	if isPlayerInVehicle ( thePlayer ) then
		-- get the vehicle element
		local playerVehicle = getPlayerOccupiedVehicle ( thePlayer )
		-- get the current freeze status
		local currentFreezeStatus = isVehicleFrozen ( playerVehicle )
		-- get the new freeze status (the opposite of the previous)
		local newFreezeStatus = not currentFreezeStatus
		-- set the new freeze status
		setVehicleFrozen ( playerVehicle, newFreezeStatus )
	end
end

-- now bind a key to this function for all players.
-- first get a list of all players
local connectedPlayers = getElementsByType ( "player" )
-- then, for each player,
for i, aPlayer in ipairs(connectedPlayers) do
	-- bind the player's "p" key to the toggleFreezeStatus function
	bindKey ( aPlayer, "p", "down", "Toggle freeze status", toggleFreezeStatus )
end

See Also