SetObjectRotation: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
No edit summary  | 
				No edit summary  | 
				||
| Line 4: | Line 4: | ||
==Syntax==    | ==Syntax==    | ||
<syntaxhighlight lang="lua">  | <syntaxhighlight lang="lua">  | ||
bool setObjectRotation ( element object, float   | bool setObjectRotation ( element object, float rotX, float rotY, float rotZ )           | ||
</syntaxhighlight>    | </syntaxhighlight>    | ||
===Required Arguments===    | ===Required Arguments===    | ||
*'''Object:''' The object to be rotated  | *'''Object:''' The object to be rotated  | ||
*'''  | *'''rotX:''' Rotation X value  | ||
*'''  | *'''rotY:''' Rotation Y value  | ||
*'''  | *'''rotZ:''' Rotation Z value  | ||
===Returns===  | ===Returns===  | ||
| Line 17: | Line 17: | ||
==Example==    | ==Example==    | ||
In this example, I refer to an object in the   | In this example, I refer to an object in the map file with the ID "pirateship":  | ||
<syntaxhighlight lang="xml">  | <syntaxhighlight lang="xml">  | ||
<object id="  | <object id="pirateshi[" posX="-1627.319092" posY="128.543411" posZ="6.581001" rotX="-0.760854" rotY="2.421000" rotZ="0.851000" model="8493"/>  | ||
</syntaxhighlight>  | </syntaxhighlight>  | ||
<syntaxhighlight lang="lua">  | <syntaxhighlight lang="lua">  | ||
function   | function onResourceStart ( name, root )  | ||
rotX = 0  | |||
rotY = 0  | |||
rotZ = 0 -- predefined varibles, needed for the math code below  | |||
pirateship = getElementByID ( "pirateship" ) --assign element named 'pirateship' in map file to varible   | pirateship = getElementByID ( "pirateship" ) -- assign element named 'pirateship' in map file to varible               | ||
end  | end  | ||
function chatboxShipRotateLeft ( playerSource, commandName ) -- On console command 'increaserotations'  | |||
outputChatBox ( "Rotational values increased" )  | outputChatBox ( "Rotational values increased" )  | ||
rotX = rotX + 10  | |||
rotY = rotY + 10  | |||
rotZ = rotZ + 10 -- rotations = rotations + 10  | |||
setObjectRotation ( pirateship,   | setObjectRotation ( pirateship, rotX, rotY, rotZ ) -- Changed rotation is applied  | ||
end   | end       | ||
function chatboxShipRotateRight ( playerSource, commandName )  | function chatboxShipRotateRight ( playerSource, commandName ) -- On console command 'decreaserotations'  | ||
outputChatBox ( "Rotational values decreased" )    | outputChatBox ( "Rotational values decreased" )  | ||
rotX = rotX - 10  | |||
rotY = rotY - 10  | |||
rotZ = rotZ - 10 -- rotations = rotations - 10  | |||
setObjectRotation ( pirateship,   | setObjectRotation ( pirateship, rotX, rotY, rotZ ) -- Changed rotation is applied  | ||
end  | end  | ||
addEventHandler ( "onResourceStart", getRootElement(), onResourceStart )  | |||
addCommandHandler ( "increaserotations", chatboxShipRotateLeft )  | |||
addCommandHandler ( "decreaserotations", chatboxShipRotateRight )  | |||
</syntaxhighlight>  | </syntaxhighlight>  | ||
==See Also==  | ==See Also==  | ||
{{Object functions}}  | {{Object functions}}  | ||
Revision as of 05:04, 5 August 2007
Allows you to change an objects rotation while playing a map. The object can be from the map file or created in a script.
Syntax
bool setObjectRotation ( element object, float rotX, float rotY, float rotZ )
Required Arguments
- Object: The object to be rotated
 - rotX: Rotation X value
 - rotY: Rotation Y value
 - rotZ: Rotation Z value
 
Returns
Returns true if successful, false otherwise.
Example
In this example, I refer to an object in the map file with the ID "pirateship":
<object id="pirateshi[" posX="-1627.319092" posY="128.543411" posZ="6.581001" rotX="-0.760854" rotY="2.421000" rotZ="0.851000" model="8493"/>
function onResourceStart ( name, root ) rotX = 0 rotY = 0 rotZ = 0 -- predefined varibles, needed for the math code below pirateship = getElementByID ( "pirateship" ) -- assign element named 'pirateship' in map file to varible end function chatboxShipRotateLeft ( playerSource, commandName ) -- On console command 'increaserotations' outputChatBox ( "Rotational values increased" ) rotX = rotX + 10 rotY = rotY + 10 rotZ = rotZ + 10 -- rotations = rotations + 10 setObjectRotation ( pirateship, rotX, rotY, rotZ ) -- Changed rotation is applied end function chatboxShipRotateRight ( playerSource, commandName ) -- On console command 'decreaserotations' outputChatBox ( "Rotational values decreased" ) rotX = rotX - 10 rotY = rotY - 10 rotZ = rotZ - 10 -- rotations = rotations - 10 setObjectRotation ( pirateship, rotX, rotY, rotZ ) -- Changed rotation is applied end addEventHandler ( "onResourceStart", getRootElement(), onResourceStart ) addCommandHandler ( "increaserotations", chatboxShipRotateLeft ) addCommandHandler ( "decreaserotations", chatboxShipRotateRight )
See Also