GetPedAnimation: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(getPedAnimation is client side only, that example was for server.)
m (Fix variable name I missed in my last edit)
 
(16 intermediate revisions by 9 users not shown)
Line 3: Line 3:


Gets the animation of a player or ped that was set using [[setPedAnimation]].
Gets the animation of a player or ped that was set using [[setPedAnimation]].
{{Note|Use [[getPedTask]] to monitor what movements the player is currently doing.''}}


''Note: Use [[getPedTask]] to monitor what movements the player is currently doing.''
==Syntax==
{{Deprecated items|3.0158|1.5.7|<syntaxhighlight lang="lua">string, string getPedAnimation ( ped thePed )</syntaxhighlight>|20450}}
{{New feature/item|3.0158|1.5.7|20450|<syntaxhighlight lang="lua"> string, string, int, int, bool, bool, bool, int, bool getPedAnimation ( ped thePed )</syntaxhighlight>}}


==Syntax==
{{OOP||[[ped]]:getAnimation||setPedAnimation}}
<syntaxhighlight lang="lua">
string string getPedAnimation ( ped thePed )
</syntaxhighlight>


===Required Arguments===
===Required Arguments===
*'''thePed:''' the player or ped you want to get the animation of.
*'''thePed:''' the [[player]] or [[ped]] you want to get the [[animations|animation]] of.


===Returns===
===Returns===
Returns two ''strings'': the first is the name of the block, the second is the name of the animation. Returns ''false'' if there was an error or if the ped is not doing an animation.
{{Deprecated items|3.0158|1.5.7|Returns two [[string|strings]]: the first is the name of the block, the second is the name of the animation. Returns ''false'' if there was an error or if the ped is not doing an animation.|20450}}
 
{{New feature/item|3.0158|1.5.7|20450|The function returns 9 values in the same order as required by [[setPedAnimation]]:
<syntaxhighlight lang="lua">string block, string anim, int time, bool loop, bool updatePosition, bool interruptable, bool freezeLastFrame, int blendTime, bool restoreTaskOnAnimEnd</syntaxhighlight>
}}


==Example==
==Example==
Line 23: Line 27:
if thePlayer then -- If a player name entered then
if thePlayer then -- If a player name entered then
thePlayerToCopyFrom = getPlayerFromName(thePlayer) -- get player from his name
thePlayerToCopyFrom = getPlayerFromName(thePlayer) -- get player from his name
Block, Anim = getPedAnimation(thePlayerToCopyFrom) -- get the player animation
block, anim = getPedAnimation(thePlayerToCopyFrom) -- get the player animation
if Block then -- if got the animation successfully then
if block then -- if got the animation successfully then
setPedAnimation(localPlayer, Block, Anim) -- set my animation the same
setPedAnimation(localPlayer, block, anim) -- set my animation the same
outputChatBox("* Copied Successfully !") -- output chat message
outputChatBox("* Copied Successfully !") -- output chat message
end
end
Line 33: Line 37:
end
end
addCommandHandler("copyanim", CopyAnimation) --  adding the Command Handler
addCommandHandler("copyanim", CopyAnimation) --  adding the Command Handler
</syntaxhighlight>
==Example 2==
This example shows what block and animation your player is currently performing. Note this will return "N/A" if you did not set an animation with [[setPedAnimation]]. If you want to see what the player ped is doing as you control them that is [[getPedTask]].
<syntaxhighlight lang="lua">
addEventHandler("onClientPreRender",root,
function ()
    local block, animation = getPedAnimation(localPlayer)
dxDrawText ( "CURRENT ANIMATION INFO...", 100, 300 )
if not block then block = "N/A" end
if not animation then animation = "N/A" end
dxDrawText ( "Block = "..block.." Animation = "..animation, 100, 315 )
end )
</syntaxhighlight>
</syntaxhighlight>


==See Also==
==See Also==
{{Ped_functions}}
{{Client_ped_functions}}
[[Category:Needs Example]]
 
[[hu:getPedAnimation]]

Latest revision as of 04:38, 6 March 2022

Gets the animation of a player or ped that was set using setPedAnimation.

[[{{{image}}}|link=|]] Note: Use getPedTask to monitor what movements the player is currently doing.

Syntax

BEFORE VERSION 1.5.7 r20450:
string, string getPedAnimation ( ped thePed )
 string, string, int, int, bool, bool, bool, int, bool getPedAnimation ( ped thePed )


OOP Syntax Help! I don't understand this!

Method: ped:getAnimation(...)
Counterpart: setPedAnimation


Required Arguments

Returns

BEFORE VERSION 1.5.7 r20450:
Returns two strings: the first is the name of the block, the second is the name of the animation. Returns false if there was an error or if the ped is not doing an animation.

The function returns 9 values in the same order as required by setPedAnimation:

string block, string anim, int time, bool loop, bool updatePosition, bool interruptable, bool freezeLastFrame, int blendTime, bool restoreTaskOnAnimEnd

Example

This example adds a command that allows you to copy the animation being used by another player using /copyanim theirName

function CopyAnimation(theCommand, thePlayer) -- The Command Function
	if thePlayer then -- If a player name entered then
		thePlayerToCopyFrom = getPlayerFromName(thePlayer) -- get player from his name
		block, anim = getPedAnimation(thePlayerToCopyFrom) -- get the player animation
		if block then -- if got the animation successfully then
			setPedAnimation(localPlayer, block, anim) -- set my animation the same
			outputChatBox("* Copied Successfully !") -- output chat message
		end
	else	
		outputChatBox("* Please Enter a Player Name To Copy From !") -- if you didnt entered a player name , then output a chat box message
	end
end
addCommandHandler("copyanim", CopyAnimation) --  adding the Command Handler

Example 2

This example shows what block and animation your player is currently performing. Note this will return "N/A" if you did not set an animation with setPedAnimation. If you want to see what the player ped is doing as you control them that is getPedTask.

addEventHandler("onClientPreRender",root,
	function ()
    local block, animation = getPedAnimation(localPlayer)
	dxDrawText ( "CURRENT ANIMATION INFO...", 100, 300 )
	if not block then block = "N/A" end
	if not animation then animation = "N/A" end
	dxDrawText ( "Block = "..block.." Animation = "..animation, 100, 315 )
end )

See Also