animate

From Bohemia Interactive Community
Revision as of 15:47, 8 November 2023 by Lou Montana (talk | contribs) (Text replacement - "(\|[pr][0-9]+ *= *[^- ]*) *- *R([a-z ])" to "$1 - r$2")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Hover & click on the images for description

Description

Description:
Activates given object animation. Animation is defined in CfgModels animations class. Class names listed in CfgVehicles AnimationSources bound to "Proxy" controller can also be animated with animate command (see Arma 3: createVehicle/vehicles).
Arma 3
  • It is recommended that animateSource command is used instead of animate whenever is possible, as it is more efficient and optimised for multiplayer
  • Since Arma 3 v1.58 animation names can be obtained with animationNames
Mixing animateSource command with animate command to animate the same part may produce some undefined behaviour.
Groups:
Animations

Syntax

Syntax:
object animate [animationName, phase, speed]
Parameters:
object: Object
animationName: String - name of the animation. This is the class-name of the animation defined in the config
phase: Number - range 0 (start point of the animation) to 1 (end point of the animation). The speed, in which the animation is processed, is defined in the addon's config.cpp and cannot be changed during running missions
speed: Boolean or (since Arma 3 logo black.png1.66) Number - (Optional, default false) when true animation is instant; Number > 0 is treated as config speed value multiplier
Return Value:
Nothing

Examples

Example 1:
_building animate ["maindoor", 1];
Example 2:
_building animate ["Door_1_rot", 1, true];
Example 3:
Create Offroad and add flashing police light bar:
offroad = "C_Offroad_01_F" createVehicle (player getRelPos [5, 0]); offroad animate ["HidePolice", 0]; offroad animate ["BeaconsStart", 1];

Additional Information

See also:
animationPhase setFaceAnimation animateSource animationSourcePhase animateDoor doorPhase animationNames

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Mikero - c
Posted on Aug 23, 2007 - 22:50 (UTC)
Animations can be used on existing game models such as houses that have doors eg. The general syntax is
house animate ["dvere1", 1]
to 'open' the door and
house animate ["dvere1", 0]
to 'close' it. Whether used on Oem addons, or official ones, an internal working knowledge (via config.cpp) of the model's animated name(s) is required.

'open' and 'close' are visual perceptions of the state of the model, and are a design decision of the p3d. Open does not, necessarily mean, 1, and close does not mean 0.
'0' and '1' are better seen as FULLY_OFF and FULLY_ON
If a door is initially closed in the model, FULLY_ON, will open it. If it is initialy OPEN visually, in the model, FULLY_ON will close it.

initphase = 1; (in config cpp) does not alter open and close meanings, all it does is set the model to the 'on' (rather than 'off') state to begin with. Whether on means open or close visually is a p3d design decision.
Tyger - c
Posted on Dec 06, 2008 - 08:23 (UTC)
Also, to animate the object called "Bar Gate" in ArmA, use the following:
myGate animate ["Bargate",1]
to close it, and
myGate animate ["Bargate", 0]
to open it.
RageBone - c
Posted on Feb 16, 2016 - 21:33 (UTC)
"Bargate" was exchanged with "Door_1_rot" at one point:
object animate ["Bargate", 0]; // doesn't work
object animate ["Door_1_rot", 0]; // works
Killzone_Kid - c
Posted on Mar 14, 2016 - 00:34 (UTC)
To animate bargate use animateSource:
bargate animateSource ["Door_1_source", 1];
SteveStevenson - c
Posted on Nov 25, 2017 - 20:55 (UTC)
For pop-up targets, you can keep the target down (until you tell it to pop up) with:
target1 animate ["terc", 1];
When you're ready for the target to pop up, you can use:
target1 animate ["terc", 0];
With this setting, the target will return to its usual behavior of going down when hit and automatically popping back up again. To make the target stay down after being hit, add the following line:
target1 addEventHandler ["HitPart", { target1 animate ["terc", 1]; }];