BIS fnc ambientAnim: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "|= Game version" to "|Game version=")
(Page refresh)
Line 1: Line 1:
{{Function|Comments=
{{Function|Comments=
____________________________________________________________________________________________
____________________________________________________________________________________________
Line 8: Line 7:
____________________________________________________________________________________________
____________________________________________________________________________________________


| Play set of ambient animations on given unit. |DESCRIPTION=
| Play set of ambient animations on given unit. If the unit should react to combat, use [[BIS_fnc_ambientAnimCombat]] instead.
{{Informative | Animations can be cancelled using {{Inline code|_unit [[call]] '''BIS_fnc_ambientAnim__terminate'''}}.}} |DESCRIPTION=
____________________________________________________________________________________________
____________________________________________________________________________________________


| [unit, animationset, equipmentlevel, snaptoObject, interpolate] call '''BIS_fnc_ambientAnim'''
| [unit, animationSet, equipmentLevel, snapTo, interpolate, attachToLogic] call [[BIS_fnc_ambientAnim]] |SYNTAX=
{{note|Animations can be cancelled by calling _unit [[call]] '''BIS_fnc_ambientAnim__terminate'''}}
 
|p1= unit: [[Object]] - unit that will play the animations |PARAMETER1=
 
|p2= animationSet: [[String]] - the animation set to play. Possible values:
{{{!}}
{{!}}+ style="caption-side:bottom" {{!}} ''some values are missing due to duplicate results, e.g "STAND" does the same as "STAND1"''
{{!}}- style="vertical-align: top"
{{!}}
* STAND1
* STAND2
* STAND_U1
* STAND_U2
* STAND_U3
* WATCH
* WATCH2
* GUARD
* LISTEN_BRIEFING
* LEAN_ON_TABLE
* LEAN
{{!}}
* SIT_AT_TABLE
* SIT1
* SIT
* SIT3
* SIT_U1
* SIT_U2
* SIT_U3
* SIT_HIGH1
* SIT_HIGH
* SIT_LOW
* SIT_LOW_U
* SIT_SAD1
* SIT_SAD2
{{!}}
* KNEEL
* REPAIR_VEH_PRONE
* REPAIR_VEH_KNEEL
* REPAIR_VEH_STAND
* PRONE_INJURED_U1
* PRONE_INJURED_U2
* PRONE_INJURED
* KNEEL_TREAT
* KNEEL_TREAT2
* BRIEFING
* BRIEFING_POINT_LEFT
* BRIEFING_POINT_RIGHT
* BRIEFING_POINT_TABLE
{{!}}} |PARAMETER2=
 
|p3= equipmentLevel: [[String]] - the equipment level of the unit. Possible values:
* NONE
* LIGHT
* MEDIUM
* FULL
* ASIS
* RANDOM |PARAMETER3=


|SYNTAX=
|p4= snapTo: [[Object]] - (Optional, default [[objNull]]) the object where the unit will be snapped to |PARAMETER4=


|p1= Unit [[Object]] - Unit where the animations will be played |PARAMETER1=
|p5= interpolate: [[Boolean]] - (Optional, default [[false]]) should try to interpolate into the ambient animation. Works only for some default stances |PARAMETER5=
|p2= Animation-Set [[String]] - The animationset to play <br>
Possible values are: (Some values are missing because some of them do the same animations: "STAND" is the same as "STAND1")
*STAND1
*STAND2
*STAND_U1
*STAND_U2
*STAND_U3
*WATCH
*WATCH2
*GUARD
*LISTEN_BRIEFING
*LEAN_ON_TABLE
*LEAN
*SIT_AT_TABLE
*SIT1
*SIT
*SIT3
*SIT_U1
*SIT_U2
*SIT_U3
*SIT_HIGH1
*SIT_HIGH
*SIT_LOW
*SIT_LOW_U
*SIT_SAD1
*SIT_SAD2
*KNEEL
*REPAIR_VEH_PRONE
*REPAIR_VEH_KNEEL
*REPAIR_VEH_STAND
*PRONE_INJURED_U1
*PRONE_INJURED_U2
*PRONE_INJURED
*KNEEL_TREAT
*KNEEL_TREAT2
*BRIEFING
*BRIEFING_POINT_LEFT
*BRIEFING_POINT_RIGHT
*BRIEFING_POINT_TABLE
|PARAMETER2=
|p3= EquipmentLevel [[String]] - The equipment level of the unit <br>
Possible values:
*NONE
*LIGHT
*MEDIUM
*FULL
*ASIS
*RANDOM
|PARAMETER3=
|p4= snapToObject [[Object]] - Optional - The object where the unit will be snapped to |PARAMETER4=
|p5= interpolate [[Bool]] - Optional - Should try to interpolate into the ambient animation. Works only for some default stances


|p6= attachToLogic: [[Boolean]] - (Optional, default [[true]]) [[true]] to [[attachTo|attach]] the unit to the created logic object, forcing it in one position |PARAMETER6=


| None |RETURNVALUE=
| [[Nothing]] |RETURNVALUE=
____________________________________________________________________________________________
____________________________________________________________________________________________


|x1= <code>[player, "STAND1", "NONE"] [[call]] [[BIS_fnc_ambientAnim]];</code> |EXAMPLE1=
|x1= <code><nowiki>[</nowiki>[[player]], "STAND1", "ASIS"] [[call]] [[BIS_fnc_ambientAnim]];</code> |EXAMPLE1=
|x2= <code>[_unit, "SIT", "NONE"] [[call]] [[BIS_fnc_ambientAnim]];</code>
 
Will search for a chair within 2 meters around the unit and will "place" the unit on it |EXAMPLE2=
|x2= <code>{{cc|will search for a chair within 2 meters around the unit and will place the unit on it}}
[_unit, "SIT", "NONE"] [[call]] [[BIS_fnc_ambientAnim]];</code> |EXAMPLE2=
____________________________________________________________________________________________
____________________________________________________________________________________________


| [[BIS_fnc_ambientAnimCombat]], [[BIS_fnc_ambientAnimGetParams]] |SEEALSO=
| [[BIS_fnc_ambientAnimCombat]], [[BIS_fnc_ambientAnimGetParams]] |SEEALSO=
}}
}}


Line 86: Line 91:
<!-- Note Section BEGIN -->
<!-- Note Section BEGIN -->
<dd class="notedate">Posted on February 19, 2016 - 04:24
<dd class="notedate">Posted on February 19, 2016 - 04:24
<dt class="note">'''[[User:Pierre MGI|Pierre MGI]]'''
<dt class="note">[[User:Pierre MGI|Pierre MGI]]
<dd class="note">In 3den editor, place a blufor unit (B_soldier_A_F) near a camping chair (land_campingChair_V2_F).<br>
<dd class="note">In 3den editor, place a blufor unit (B_soldier_A_F) near a camping chair (land_campingChair_V2_F).<br>
In init field of the unit:<br>
In init field of the unit:<br>
<code>[this,"SIT2"] [[call]] [[BIS_fnc_ambientAnim]];<br>0 = this [[spawn]] {[[waitUntil]] {[[behaviour]] _this == "combat"};
<code>[this, "SIT2"] [[call]] [[BIS_fnc_ambientAnim]];<br>0 = this [[spawn]] {[[waitUntil]] {[[behaviour]] _this == "combat"};
_this [[call]] BIS_fnc_ambientAnim__terminate;}</code>
_this [[call]] BIS_fnc_ambientAnim__terminate;}</code>
When this unit is aware of a threat, he will quit the "ambient animation" and will able to return fire.<br>
When this unit is aware of a threat, he will quit the "ambient animation" and will able to return fire.<br>
Note: Bis_fnc_ambientAnimCombat doesn't need this script but the list of animations is limited.
Note: [[BIS_fnc_ambientAnimCombat]] doesn't need this script but the list of animations is limited.
<br><br>
 
<dd class="notedate">Posted on August 08, 2016 - 01:37
<dd class="notedate">Posted on August 08, 2016 - 01:37
<dt class="note">'''[[User:Pierre MGI|Pierre MGI]]'''
<dt class="note">[[User:Pierre MGI|Pierre MGI]]
<dd class="note">To make this command working in MP (hosted server tested)
<dd class="note">To make this command working in MP (hosted server tested)
<code>[this,"SIT2"] [[call]] [[BIS_fnc_ambientAnim]]; // Wrong! the first JIP will throw the unit to position [0,0,0]
<code>[this, "SIT2"] [[call]] [[BIS_fnc_ambientAnim]]; {{cc|wrong! the first JIP will throw the unit to position [0,0,0]}}
[[if]] ([[isServer]]) [[then]] {[this,"SIT2"] [[call]] [[BIS_fnc_ambientAnim]]} // Wrong! only player located on server<br>will see the animation
[[if]] ([[isServer]]) [[then]] { [this, "SIT2"] [[call]] [[BIS_fnc_ambientAnim]]; }; {{cc|wrong! only player located on server will see the animation}}
[[if]] ([[local]] this) [[then]] {[this,"SIT2"] [[call]] [[BIS_fnc_ambientAnim]]} // OK, best way  
[[if]] ([[local]] this) [[then]] { [this, "SIT2"] [[call]] [[BIS_fnc_ambientAnim]]; }; {{cc|OK, best way}}
[[if]] ([[isServer]]) [[then]] { [[this,"SIT2"],[[BIS_fnc_ambientAnim]] ] [[remoteExec]] ["call"] }; // OK </code><br> <br>
[[if]] ([[isServer]]) [[then]] { <nowiki>[</nowiki>[this, "SIT2"], [[BIS_fnc_ambientAnim]]] [[remoteExec]] ["call"]; }; {{cc|OK}}</code>




Line 110: Line 115:
[[Category:Functions|{{uc:ambientAnim}}]]
[[Category:Functions|{{uc:ambientAnim}}]]
[[Category:{{Name|arma3}}: Functions|{{uc:ambientAnim}}]]
[[Category:{{Name|arma3}}: Functions|{{uc:ambientAnim}}]]
<!-- CONTINUE Notes -->
<dl class="command_description">
<dd class="notedate">Posted on July 28, 2016 - 19:14 (UTC)</dd>
<dt class="note">[[User:TheBlueFire|TheBlueFire]]</dt>
<dd class="note">
If the unit should react to combat use [[BIS_fnc_ambientAnimCombat]] instead
</dd>
</dl>
<!-- DISCONTINUE Notes -->


<!-- CONTINUE Notes -->
<!-- CONTINUE Notes -->
Line 126: Line 121:
<dt class="note">[[User:Icaruk|Icaruk]]</dt>
<dt class="note">[[User:Icaruk|Icaruk]]</dt>
<dd class="note">
<dd class="note">
Be careful using this function multiple times on MP, it uses [[createUnit]] (global).<br>
Be careful using this function multiple times on MP, it creates a Logic using [[createUnit]] (which is global).<br>
If you use it on 20 units, 20 additional units (logics) will be created.
If you use it on 20 units, 20 additional logics will be created.
</dd>
</dd>
</dl>
</dl>
<!-- DISCONTINUE Notes -->
<!-- DISCONTINUE Notes -->

Revision as of 00:59, 8 September 2019

Hover & click on the images for description

Description

Description:
Play set of ambient animations on given unit. If the unit should react to combat, use BIS_fnc_ambientAnimCombat instead.
Animations can be cancelled using _unit call BIS_fnc_ambientAnim__terminate.
Execution:
call
Groups:
Uncategorised

Syntax

Syntax:
[unit, animationSet, equipmentLevel, snapTo, interpolate, attachToLogic] call BIS_fnc_ambientAnim
Parameters:
unit: Object - unit that will play the animations
animationSet: String - the animation set to play. Possible values:
some values are missing due to duplicate results, e.g "STAND" does the same as "STAND1"
  • STAND1
  • STAND2
  • STAND_U1
  • STAND_U2
  • STAND_U3
  • WATCH
  • WATCH2
  • GUARD
  • LISTEN_BRIEFING
  • LEAN_ON_TABLE
  • LEAN
  • SIT_AT_TABLE
  • SIT1
  • SIT
  • SIT3
  • SIT_U1
  • SIT_U2
  • SIT_U3
  • SIT_HIGH1
  • SIT_HIGH
  • SIT_LOW
  • SIT_LOW_U
  • SIT_SAD1
  • SIT_SAD2
  • KNEEL
  • REPAIR_VEH_PRONE
  • REPAIR_VEH_KNEEL
  • REPAIR_VEH_STAND
  • PRONE_INJURED_U1
  • PRONE_INJURED_U2
  • PRONE_INJURED
  • KNEEL_TREAT
  • KNEEL_TREAT2
  • BRIEFING
  • BRIEFING_POINT_LEFT
  • BRIEFING_POINT_RIGHT
  • BRIEFING_POINT_TABLE
equipmentLevel: String - the equipment level of the unit. Possible values:
  • NONE
  • LIGHT
  • MEDIUM
  • FULL
  • ASIS
  • RANDOM
snapTo: Object - (Optional, default objNull) the object where the unit will be snapped to
interpolate: Boolean - (Optional, default false) should try to interpolate into the ambient animation. Works only for some default stances
attachToLogic: Boolean - (Optional, default true) true to attach the unit to the created logic object, forcing it in one position
Return Value:
Nothing

Examples

Example 1:
[player, "STAND1", "ASIS"] call BIS_fnc_ambientAnim;
Example 2:
// will search for a chair within 2 meters around the unit and will place the unit on it [_unit, "SIT", "NONE"] call BIS_fnc_ambientAnim;

Additional Information

See also:
BIS_fnc_ambientAnimCombatBIS_fnc_ambientAnimGetParams

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

Notes

Posted on February 19, 2016 - 04:24
Pierre MGI
In 3den editor, place a blufor unit (B_soldier_A_F) near a camping chair (land_campingChair_V2_F).
In init field of the unit:
[this, "SIT2"] call BIS_fnc_ambientAnim;
0 = this spawn {waitUntil {behaviour _this == "combat"}; _this call BIS_fnc_ambientAnim__terminate;}
When this unit is aware of a threat, he will quit the "ambient animation" and will able to return fire.
Note: BIS_fnc_ambientAnimCombat doesn't need this script but the list of animations is limited.
Posted on August 08, 2016 - 01:37
Pierre MGI
To make this command working in MP (hosted server tested) [this, "SIT2"] call BIS_fnc_ambientAnim; // wrong! the first JIP will throw the unit to position [0,0,0] if (isServer) then { [this, "SIT2"] call BIS_fnc_ambientAnim; }; // wrong! only player located on server will see the animation if (local this) then { [this, "SIT2"] call BIS_fnc_ambientAnim; }; // OK, best way if (isServer) then { [[this, "SIT2"], BIS_fnc_ambientAnim] remoteExec ["call"]; }; // OK

Bottom Section

Posted on September 11, 2016 - 16:33 (UTC)
Icaruk
Be careful using this function multiple times on MP, it creates a Logic using createUnit (which is global).
If you use it on 20 units, 20 additional logics will be created.