SetElementFrozen: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
Line 2: Line 2:
{{Server client function}}
{{Server client function}}
This function freezes an element (stops it in its position and disables movement) or unfreezes it.
This function freezes an element (stops it in its position and disables movement) or unfreezes it.
{{Warning|This function cancels any animation set by setPedAnimation if you freeze the ped.}}


==Syntax==
==Syntax==

Revision as of 01:03, 20 May 2019

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

[[|link=|]] Warning: This function cancels any animation set by setPedAnimation if you freeze the ped.

Syntax

bool setElementFrozen ( element theElement, bool freezeStatus )

OOP Syntax Help! I don't understand this!

Method: element:setFrozen(...)
Variable: .frozen
Counterpart: isElementFrozen


Required Arguments

  • theElement: The element whose freeze status we want to change.
  • freezeStatus: A boolean denoting whether we want to freeze (true) or unfreeze (false) it.

Returns

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

Example

Click to collapse [-]
Serverside 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 getPedOccupiedVehicle ( thePlayer ) then
		-- get the vehicle element
		local playerVehicle = getPlayerOccupiedVehicle ( thePlayer )
		-- get the current freeze status
		local currentFreezeStatus = isElementFrozen ( playerVehicle )
		-- get the new freeze status (the opposite of the previous state)
		local newFreezeStatus = not currentFreezeStatus
		-- set the new freeze status
		setElementFrozen ( 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

Issues

Issue ID Description
#9522 Freezing a ped or player whilst occupying a jetpack will remove their jetpack, but not the jetpack sound

See Also