SetObjectScale: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
mNo edit summary
(Improve example.)
 
(4 intermediate revisions by 4 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
{{Server client function}}
{{Server client function}}
This function changes the visible size of an object. It is '''very important''' to note that this '''does not''' affect the collision models for the object, as such this is unsuitable for use for interaction with players, vehicles or other objects.
This function changes the visible size of an object.
 
{{Note|setObjectScale '''does not''' affect the collision models for the object, as such is unsuitable for use for interaction with players, vehicles or other objects.}}
==Syntax==
==Syntax==
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
bool setObjectScale ( object theObject, float scale [, float scaleY, float scaleZ ] )
bool setObjectScale ( object theObject, float scale [, float scaleY = scale, float scaleZ = scale ] )
</syntaxhighlight>
</syntaxhighlight>
 
{{OOP||[[object]]:setScale|scale|getObjectScale}}
===Required Arguments===
===Required Arguments===
*'''theObject''': The object you wish to change the scale of.
*'''theObject''': the [[object]] you wish to change the scale of.
*'''scale''': a float containing the new scale. 1.0 is the standard scale, with 0.5 being half the size and 2.0 being twice the size. If the scaleY is set, this will be scaleX.
*'''scale''': a float containing the new scale. 1.0 is the standard scale, with 0.5 being half the size and 2.0 being twice the size. If the scaleY is set, this will be scaleX.


Line 17: Line 17:


===Returns===
===Returns===
Returns ''true'' if the scale was set properly, ''false'' otherwise.
* ''true'' if the scale was set properly.
* ''false'' otherwise.


==Example==
==Example==
Line 23: Line 24:
<section name="Client" class="client" show="true">
<section name="Client" class="client" show="true">
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
-- get the position of the player
-- Get the position of the player
local x, y, z = getElementPosition(getLocalPlayer())
 
-- create the object
local x, y, z = getElementPosition(localPlayer)
antenna = createObject (1595, x + 2, y, z )
 
if ( antenna ) then -- if it was created
-- Create the object
-- set the scale to half the normal scale
 
setObjectScale ( antenna, 0.5)
local antennaObject = createObject(1595, x + 2, y, z)
-- remove the collision
 
        setElementCollisionsEnabled (antenna, false)
if antennaObject then -- If it was created
-- Set the scale to half the normal scale
 
setObjectScale(antennaObject, 0.5)
 
-- Remove the collision
 
setElementCollisionsEnabled(antennaObject, false)
end
end
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 14:37, 2 September 2022

This function changes the visible size of an object.

[[{{{image}}}|link=|]] Note: setObjectScale does not affect the collision models for the object, as such is unsuitable for use for interaction with players, vehicles or other objects.

Syntax

bool setObjectScale ( object theObject, float scale [, float scaleY = scale, float scaleZ = scale ] )

OOP Syntax Help! I don't understand this!

Method: object:setScale(...)
Variable: .scale
Counterpart: getObjectScale


Required Arguments

  • theObject: the object you wish to change the scale of.
  • scale: a float containing the new scale. 1.0 is the standard scale, with 0.5 being half the size and 2.0 being twice the size. If the scaleY is set, this will be scaleX.

Optional Arguments

  • scaleY: a float containing the new scale on the Y axis
  • scaleZ: a float containing the new scale on the Z axis

Returns

  • true if the scale was set properly.
  • false otherwise.

Example

This example creates an antenna, and changes the size of it.

Click to collapse [-]
Client
-- Get the position of the player

local x, y, z = getElementPosition(localPlayer)

-- Create the object

local antennaObject = createObject(1595, x + 2, y, z)

if antennaObject then -- If it was created
	-- Set the scale to half the normal scale

	setObjectScale(antennaObject, 0.5)

	-- Remove the collision

	setElementCollisionsEnabled(antennaObject, false)
end

See Also