GetObjectRotation: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
 
(11 intermediate revisions by 6 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
{{Server client function}}
{{Deprecated|getElementRotation|}}
Object rotation can be retrieved from objects in mapfiles or objects that are created in scripts.  
Object rotation can be retrieved from objects in mapfiles or objects that are created in scripts.  


==Syntax==  
==Syntax==
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
float float float getObjectRotation ( object theObject )       
float float float getObjectRotation ( object theObject )       
Line 11: Line 14:


===Returns===
===Returns===
Returns ''true'' if object exists, ''false'' otherwise.
Returns three ''float''s if object exists, ''false'' in the first variable and ''nil'' in the other two if it's invalid.


==Example==  
==Example==  
In this example, I refer to an object in the mapfile with the ID "pirateship":
If a player points at an object with a gun, its rotation will appear in the chat box.
<syntaxhighlight lang="xml">
<section name="Server" class="server" show="true">
<object id="Pirate Ship" posX="-1627.319092" posY="128.543411" posZ="6.581001" rotX="-0.760854" rotY="2.421000" rotZ="0.851000" model="8493"/>
<syntaxhighlight lang="lua">
function onPlayerTargeted ( targetElem )
    if ( isElement(targetElem) and getElementType(targetElem) == "object" ) then
        local x,y,z = getObjectRotation ( targetElem )
        outputChatBox ( "Object rotation: " .. x .. " " .. y .. " " .. z, source )
    end
end
addEventHandler ( "onPlayerTarget", root, onPlayerTargeted )
</syntaxhighlight>
</syntaxhighlight>
The following code gets the object element by ID and outputs it's rotation:
</section>
<section name="Client" class="client">
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
root = getRootElement ()
function onPlayerTargeted ( targetElem )
 
    if ( isElement(targetElem) and getElementType (targetElem) == "object" ) then
addEventHandler ( "onMapLoad", root, "mapStart" )
        local x,y,z = getObjectRotation ( targetElem )
function mapStart ( name ) -- this function gets called when the map starts
        outputChatBox ( "Object rotation: " .. x .. " " .. y .. " " .. z )
  pirateship = getElementByID ( "Pirate Ship" ) -- get the object element
    end
  if ( pirateship ) then
      rx, ry, rz = getObjectRotation ( pirateship ) -- get the rotation of the object
      outputChatBox ( "Ship RX = "..rx.." SHIP RY = "..ry.." SHIP RZ = "..rz )
      -- output: Ship RX = 316.40628051758 SHIP RY = 2.421000 SHIP RZ = 0.851000
  else
      outputChatBox ( "Couldn't find the object, 'Pirate Ship!'" )
  end
end
end
addEventHandler ( "onClientPlayerTarget", root, onPlayerTargeted )
</syntaxhighlight>
</syntaxhighlight>
</section>


==See Also==
==See Also==
{{Object functions}}
{{Object functions}}

Latest revision as of 08:06, 4 November 2020

Emblem-important.png This function is deprecated. This means that its use is discouraged and that it might not exist in future versions.

Please use getElementRotation instead.


Object rotation can be retrieved from objects in mapfiles or objects that are created in scripts.

Syntax

float float float getObjectRotation ( object theObject )       

Required Arguments

  • theObject: The object whose rotation will be retrieved

Returns

Returns three floats if object exists, false in the first variable and nil in the other two if it's invalid.

Example

If a player points at an object with a gun, its rotation will appear in the chat box.

Click to collapse [-]
Server
function onPlayerTargeted ( targetElem )
    if ( isElement(targetElem) and getElementType(targetElem) == "object" ) then
        local x,y,z = getObjectRotation ( targetElem )
        outputChatBox ( "Object rotation: " .. x .. " " .. y .. " " .. z, source )
    end
end
addEventHandler ( "onPlayerTarget", root, onPlayerTargeted )
Click to expand [+]
Client

See Also

Shared