BIS fnc animateFlag: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|seealso= ([^ ]+)(\]\]|\}\}), *(\[\[|\{\{)" to "|seealso= $1$2 $3")
m (Some wiki formatting)
 
(3 intermediate revisions by the same user not shown)
Line 10: Line 10:
|eff= global
|eff= global


|descr= Smoothly animates given flag from current position on the flag pole to the given position. When flag animation is done, the scripted event handler "FlagAnimationDone" is called.
|descr= Smoothly animates given flag from current position on the flag pole to the given position. When flag animation is done, the {{Link|Arma 3: Scripted Event Handlers|scripted event handler}} {{Link|Arma 3: Scripted Event Handlers#BIS_fnc_animateFlag|"FlagAnimationDone"}} is called.


{{Feature | important | '''Never''' place this function into an object's init field.}}
|mp= The effect is global, MP compatible and its effect is persistent.
 
|mp= The effect is global, MP compatible and its effect is persistent. |MP info=


|s1= [flag, phase, instant] call [[BIS_fnc_animateFlag]]
|s1= [flag, phase, instant] call [[BIS_fnc_animateFlag]]
Line 20: Line 18:
|p1= flag: [[Object]] - [[flag]] object of the type "FlagCarrier"
|p1= flag: [[Object]] - [[flag]] object of the type "FlagCarrier"


|p2= phase: [[Number]] - desired animation phase 0...1 (0 - bottom of the flag pole, 1 - top of the flag pole)
|p2= phase: [[Number]] - desired animation phase 0..1 (0 - bottom of the flag pole, 1 - top of the flag pole)


|p3= instant (Optional, default [[false]]):  
|p3= instant (Optional, default [[false]]):  
Line 35: Line 33:
</sqf>
</sqf>


|seealso= [[flag]] [[flagOwner]] [[setFlagOwner]] [[setFlagSide]] [[setFlagTexture]] [[flagSide]] [[flagTexture]], [[setFlagAnimationPhase]], [[flagAnimationPhase]], [[Arma 3: Flag Textures]]
|seealso= [[flag]] [[flagOwner]] [[setFlagOwner]] [[setFlagSide]] [[setFlagTexture]] [[flagSide]] [[flagTexture]] [[setFlagAnimationPhase]] [[flagAnimationPhase]] [[Arma 3: Flag Textures]]
}}
}}
<dl class="command_description">


{{Note
{{Note

Latest revision as of 23:39, 30 May 2024

Hover & click on the images for description

Description

Description:
Smoothly animates given flag from current position on the flag pole to the given position. When flag animation is done, the scripted event handler "FlagAnimationDone" is called.
Execution:
call
Multiplayer:
The effect is global, MP compatible and its effect is persistent.
Groups:
Object Manipulation

Syntax

Syntax:
[flag, phase, instant] call BIS_fnc_animateFlag
Parameters:
flag: Object - flag object of the type "FlagCarrier"
phase: Number - desired animation phase 0..1 (0 - bottom of the flag pole, 1 - top of the flag pole)
instant (Optional, default false):
  • Boolean - when true, animation is instant ("FlagAnimationDone" EH is not called in this case)
  • Number - animation duration multiplier
Return Value:
Nothing

Examples

Example 1:
[flag1, 0] call BIS_fnc_animateFlag;
Example 2:
// Adding the "FlagAnimationDone" EH private _eh = [<yourflag>, "FlagAnimationDone", { /* your code */ }] call BIS_fnc_addScriptedEventHandler;

Additional Information

See also:
flag flagOwner setFlagOwner setFlagSide setFlagTexture flagSide flagTexture setFlagAnimationPhase flagAnimationPhase Arma 3: Flag Textures

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
Killzone_Kid - c
Posted on Dec 12, 2016 - 20:02 (UTC)
Flag Demo (https://www.youtube.com/watch?v=sJtQfRML0cc)
fnc_addFlagAction = { _this addAction [ "Pull The Cord", { player playAction "PutDown"; sleep 0.5; [_this select 0, flagAnimationPhase (_this select 0) + 0.2, 0.2] call BIS_fnc_animateFlag; _this select 0 removeAction (_this select 2); }, "", 10, true, true, "", "_this distance2D _target < 2" ]; }; private _flag = createVehicle ["Flag_BI_F", player getRelPos [10, 0], [], 0, "CAN_COLLIDE"]; [_flag, 0, true] call BIS_fnc_animateFlag; _flag call fnc_addFlagAction; [ _flag, "FlagAnimationDone", { if (_this select 1 > 0.9) exitWith { [_this select 0, "FlagAnimationDone"] call BIS_fnc_removeAllScriptedEventHandlers; removeAllActions (_this select 0); }; _this select 0 call fnc_addFlagAction; } ] call BIS_fnc_addScriptedEventHandler;