BIS fnc unpackStaticWeapon: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(see also)
(description)
Line 8: Line 8:
____________________________________________________________________________________________
____________________________________________________________________________________________


| <pre>/*
| This function will move given support team to the given position. The weapon crew will unpack carried weapon and start watching given position. Requires three personnel in the team: Team Leader, Gunner and Asst. Gunner. This function is MP compatible.
File: fn_unpackStaticWeapon.sqf
<br><br>
 
When weapon is unpacked, scripted EH "StaticWeaponUnpacked" is called with the following params:  
Description:
* [group, leader, gunner, assistant, weapon]
Function which uses a weapon team to pack a static weapon such
<br>
as the HMG or Mortar. Requires three personnel in the team as
'''NOTE''': If a unit flees, all bets are off and the function will exit leaving units on their own. To guarantee weapon assembly, make sure the group has maximum courage <tt>_group [[allowFleeing]] 0</tt>|= Description
a minimum (leader, gunner, assistant).
 
Parameter(s):
_this select 0: the support team group (group)
_this select 1: location to place gun (position)
_this select 2: location of target (position)
*/
</pre><small>''(Placeholder description extracted from the function header by [[BIS_fnc_exportFunctionsToWiki]])''</small> |= Description
____________________________________________________________________________________________
____________________________________________________________________________________________


| <!-- [] call [[BIS_fnc_unpackStaticWeapon]]; --> |= Syntax
| [group, weaponPos, targetPos, leaderPos] call [[BIS_fnc_unpackStaticWeapon]]; |= Syntax
 
|p1= |= Parameter 1


| [[BIS_fnc_packStaticWeapon]]|= Return value
|p1= group: [[Group]] or [[Object]] - the support team group or a unit from this group |= Parameter 1
|p2= weaponPos: [[Array]], [[String]] or [[Object]] - weapon placement position, object position or marker |= Parameter 1
|p3= targetPos: [[Array]], [[String]] or [[Object]] - target position, object position to watch or marker  |= Parameter 1
|p4= leaderPos (Optional):  [[Array]], [[String]] or [[Object]] - position, object or marker group leader should move to|= Parameter 1
| [[Nothing]]|= Return value
____________________________________________________________________________________________
____________________________________________________________________________________________


|x1= <code></code> |=  
|x1= <code>[leader1, "weapon_mrk", "target_mrk"] [[call]] [[BIS_fnc_unpackStaticWeapon]];</code> |=
|x2= <code>group1 [[allowFleeing]] 0;
[group1, "weapon_mrk", tank1, "leader_mrk"] [[call]] [[BIS_fnc_unpackStaticWeapon]];</code> |=  
____________________________________________________________________________________________
____________________________________________________________________________________________


| |= See also
| [[BIS_fnc_packStaticWeapon]], [[BIS_fnc_addScriptedEventHandler]]|= See also


}}
}}

Revision as of 00:58, 7 January 2017


Hover & click on the images for description

Description

Description:
This function will move given support team to the given position. The weapon crew will unpack carried weapon and start watching given position. Requires three personnel in the team: Team Leader, Gunner and Asst. Gunner. This function is MP compatible.

When weapon is unpacked, scripted EH "StaticWeaponUnpacked" is called with the following params:
  • [group, leader, gunner, assistant, weapon]

NOTE: If a unit flees, all bets are off and the function will exit leaving units on their own. To guarantee weapon assembly, make sure the group has maximum courage _group allowFleeing 0
Execution:
call
Groups:
Uncategorised

Syntax

Syntax:
[group, weaponPos, targetPos, leaderPos] call BIS_fnc_unpackStaticWeapon;
Parameters:
group: Group or Object - the support team group or a unit from this group
weaponPos: Array, String or Object - weapon placement position, object position or marker
targetPos: Array, String or Object - target position, object position to watch or marker
leaderPos (Optional): Array, String or Object - position, object or marker group leader should move to
Return Value:
Nothing

Examples

Example 1:
[leader1, "weapon_mrk", "target_mrk"] call BIS_fnc_unpackStaticWeapon;
Example 2:
group1 allowFleeing 0; [group1, "weapon_mrk", tank1, "leader_mrk"] call BIS_fnc_unpackStaticWeapon;

Additional Information

See also:
BIS_fnc_packStaticWeaponBIS_fnc_addScriptedEventHandler

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

Bottom Section

Posted on January 6, 2017 - 23:10 (UTC)
Killzone Kid
The following script will create a group consisting of a Team Leader, Gunner and Asst. Gunner and give the group 2 random MOVE waypoints. After the group reached the 1st waypoint, waypoint statement will execute BIS_fnc_unpackStaticWeapon and the group will stop and unpack static weapon, while leader is given random position to go to. After 7 seconds the BIS_fnc_packStaticWeapon is executed and the group packs and heads to 2nd waypoint. private _group = createGroup west; private _pos = player getRelPos [20, 0]; private _randomDir = random 360; private _wp1 = _group addWaypoint [_pos getPos [20, _randomDir], 10]; _wp1 setWaypointType "MOVE"; _wp1 setWaypointStatements ["true", " group this allowFleeing 0; [group this, 'StaticWeaponUnpacked', { _this spawn { sleep 7; [_this select 0] call BIS_fnc_packStaticWeapon; }; }] call BIS_fnc_addScriptedEventHandler; [ this, this, this getPos [1000, random 360], this getPos [10, 0] ] call BIS_fnc_unpackStaticWeapon; "]; private _wp2 = _group addWaypoint [_pos getPos [20, _randomDir - 180], 10]; _wp2 setWaypointType "MOVE"; private _leader = _group createUnit ["B_Soldier_TL_F", _pos, [], 0, "NONE"]; private _gunner = _group createUnit ["B_Support_GMG_F", _pos, [], 0, "NONE"]; private _assistant = _group createUnit ["B_Support_AMG_F", _pos, [], 0, "NONE"]; units _group doFollow _leader;