ACE3/addons/medical/functions/fnc_onPropagateWound.sqf

38 lines
894 B
Plaintext
Raw Normal View History

/*
* Author: Glowbal
* Adds a new injury to the wounds collection from remote clients. Is used to split up the large collection of injuries broadcasting across network.
*
* Arguments:
* 0: The remote unit <OBJECT>
* 1: injury <ARRAY>
*
* Return Value:
* None <NIL>
*
* Public: No
*/
#include "script_component.hpp"
private ["_unit", "_injury", "_openWounds", "_injuryID", "_exists"];
_unit = _this select 0;
_injury = _this select 1;
if (!local _unit) then {
2015-03-07 12:57:36 +00:00
_openWounds = _unit getvariable[QGVAR(openWounds), []];
_injuryID = _injury select 0;
2015-03-07 12:57:36 +00:00
_exists = false;
{
if (_x select 0 == _injuryID) exitwith {
_exists = true;
_openWounds set [_foreachIndex, _injury];
};
}foreach _openWounds;
2015-03-07 12:57:36 +00:00
if (!_exists) then {
_openWounds pushback _injury;
};
2015-03-21 19:08:52 +00:00
_unit setvariable [QGVAR(openWounds), _openWounds];
};