SetElementCollisionsEnabled: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
m (Server only -> client only)
mNo edit summary
Line 16: Line 16:


==Example==  
==Example==  
<section name="Client" class="client" show="false">
This example enables collisions for all vehicles within a certain radius of a player:
This example enables collisions for all vehicles within a certain radius of a player:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
Line 33: Line 32:
end
end
</syntaxhighlight>
</syntaxhighlight>
</section>


==See Also==
==See Also==
{{Element_functions}}
{{Element_functions}}

Revision as of 03:24, 13 August 2007

This function can disable or enable an element's collisions. An element without collisions does not interact with the physical environment and remains static.

Syntax

bool setElementCollisionsEnabled ( element theElement, bool enabled ) 

Required Arguments

  • theElement: The element you wish to set the collisions of
  • enabled: A boolean to indicate whether collisions are enabled (true) or disabled (false)

Returns

Returns true if the collisions were set succesfully, false otherwise.

Example

This example enables collisions for all vehicles within a certain radius of a player:

function enableVehicleCollisionsNearPlayer(player, maxDistance)
	local playerX, playerY, playerZ = getElementPosition(player)
	local vehicles = getElementsByType("vehicle")
	for k,v in ipairs(vehicles) do
		local vehicleX, vehicleY, vehicleZ = getElementPosition(v)
		-- get the distance between the player and the vehicle:
		local distance = math.sqrt((vehicleX - playerX)^2 + (vehicleY - playerY)^2 + (vehicleZ - playerZ)^2)
		if (distance <= maxDistance) then
			-- enable collisions for the vehicle
			setElementCollisionsEnabled(v, true)
		end
	end
end

See Also