From d09ca9ec8be5ce1102f740ae524b90fb8d16c2fa Mon Sep 17 00:00:00 2001 From: jokoho48 Date: Sat, 22 Aug 2015 16:25:10 +0200 Subject: [PATCH] Code Cleanup Medical Module (Part 1). --- .../fnc_actionCheckBloodPressure.sqf | 7 +- .../fnc_actionCheckBloodPressureLocal.sqf | 11 ++- .../functions/fnc_actionCheckPulse.sqf | 7 +- .../functions/fnc_actionCheckPulseLocal.sqf | 7 +- .../functions/fnc_actionCheckResponse.sqf | 14 ++-- .../medical/functions/fnc_actionDiagnose.sqf | 7 +- .../medical/functions/fnc_actionLoadUnit.sqf | 13 ++-- .../functions/fnc_actionPlaceInBodyBag.sqf | 3 +- .../functions/fnc_actionRemoveTourniquet.sqf | 8 +-- .../functions/fnc_actionUnloadUnit.sqf | 11 ++- .../functions/fnc_addHeartRateAdjustment.sqf | 9 +-- .../functions/fnc_addToInjuredCollection.sqf | 16 ++--- addons/medical/functions/fnc_addToLog.sqf | 23 +++--- .../medical/functions/fnc_addToTriageCard.sqf | 11 ++- .../functions/fnc_addUnconsciousCondition.sqf | 7 +- .../functions/fnc_addUnloadPatientActions.sqf | 5 +- .../medical/functions/fnc_adjustPainLevel.sqf | 2 +- .../fnc_canAccessMedicalEquipment.sqf | 7 +- addons/medical/functions/fnc_canTreat.sqf | 31 ++++---- .../medical/functions/fnc_canTreatCached.sqf | 3 +- addons/medical/functions/fnc_copyDeadBody.sqf | 7 +- addons/medical/functions/fnc_createLitter.sqf | 50 +++++++------ .../functions/fnc_determineIfFatal.sqf | 26 +++---- .../fnc_displayPatientInformation.sqf | 71 +++++++++---------- .../functions/fnc_displayTriageCard.sqf | 29 ++++---- .../functions/fnc_dropDownTriageCard.sqf | 8 +-- addons/medical/functions/fnc_getBloodLoss.sqf | 9 ++- .../functions/fnc_getBloodPressure.sqf | 19 +++-- .../functions/fnc_getBloodVolumeChange.sqf | 10 ++- .../functions/fnc_getCardiacOutput.sqf | 3 +- .../functions/fnc_getHeartRateChange.sqf | 11 ++- .../medical/functions/fnc_getTriageStatus.sqf | 8 ++- .../medical/functions/fnc_getTypeOfDamage.sqf | 32 ++++----- .../functions/fnc_getUnconsciousCondition.sqf | 6 +- .../functions/fnc_handleBandageOpening.sqf | 30 +++----- .../functions/fnc_handleCreateLitter.sqf | 32 ++++++--- addons/medical/functions/fnc_handleDamage.sqf | 11 +-- .../functions/fnc_handleDamage_advanced.sqf | 11 +-- .../fnc_handleDamage_advancedSetDamage.sqf | 6 +- .../functions/fnc_handleDamage_airway.sqf | 10 +-- .../functions/fnc_handleDamage_basic.sqf | 17 ++--- .../functions/fnc_handleDamage_caching.sqf | 28 ++++---- .../functions/fnc_handleDamage_fractures.sqf | 8 +-- .../fnc_handleDamage_internalInjuries.sqf | 10 +-- .../functions/fnc_handleDamage_wounds.sqf | 17 ++--- .../functions/fnc_handleDamage_woundsOld.sqf | 14 ++-- addons/medical/functions/fnc_handleKilled.sqf | 4 +- addons/medical/functions/fnc_handleLocal.sqf | 4 +- .../functions/fnc_handleUnitVitals.sqf | 10 ++- addons/medical/functions/fnc_hasItem.sqf | 12 ++-- addons/medical/functions/fnc_hasItems.sqf | 6 +- .../functions/fnc_hasMedicalEnabled.sqf | 32 +++++---- .../functions/fnc_hasTourniquetAppliedTo.sqf | 4 +- addons/medical/functions/fnc_init.sqf | 5 +- .../medical/functions/fnc_isBeingCarried.sqf | 2 +- .../medical/functions/fnc_isBeingDragged.sqf | 2 +- .../functions/fnc_isInMedicalFacility.sqf | 8 +-- .../functions/fnc_isInMedicalVehicle.sqf | 5 +- .../functions/fnc_isInStableCondition.sqf | 6 +- addons/medical/functions/fnc_isMedic.sqf | 5 +- .../functions/fnc_isMedicalVehicle.sqf | 3 +- addons/medical/functions/fnc_itemCheck.sqf | 5 +- .../functions/fnc_modifyMedicalAction.sqf | 9 +-- .../fnc_moduleAdvancedMedicalSettings.sqf | 7 +- .../functions/fnc_moduleAssignMedicRoles.sqf | 14 ++-- .../fnc_moduleAssignMedicalFacility.sqf | 8 +-- .../fnc_moduleAssignMedicalVehicle.sqf | 14 ++-- .../functions/fnc_moduleMedicalSettings.sqf | 7 +- .../functions/fnc_moduleReviveSettings.sqf | 7 +- .../functions/fnc_onMedicationUsage.sqf | 40 ++++------- .../functions/fnc_onPropagateWound.sqf | 7 +- .../functions/fnc_onWoundUpdateRequest.sqf | 7 +- .../functions/fnc_parseConfigForInjuries.sqf | 29 ++++---- .../functions/fnc_playInjuredSound.sqf | 6 +- .../functions/fnc_setCardiacArrest.sqf | 4 +- addons/medical/functions/fnc_setDead.sqf | 4 +- .../fnc_treatmentTourniquetLocal.sqf | 4 +- .../medical/functions/fnc_unconsciousPFH.sqf | 6 +- 78 files changed, 428 insertions(+), 543 deletions(-) diff --git a/addons/medical/functions/fnc_actionCheckBloodPressure.sqf b/addons/medical/functions/fnc_actionCheckBloodPressure.sqf index e8e03bb4c0..96c9740b5d 100644 --- a/addons/medical/functions/fnc_actionCheckBloodPressure.sqf +++ b/addons/medical/functions/fnc_actionCheckBloodPressure.sqf @@ -7,14 +7,11 @@ * 1: The patient * * Return Value: -* NONE +* None * * Public: No */ #include "script_component.hpp" -private ["_caller","_target"]; -_caller = _this select 0; -_target = _this select 1; -[[_caller, _target], QUOTE(DFUNC(actionCheckBloodPressureLocal)), _target] call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */ +[_this, QUOTE(DFUNC(actionCheckBloodPressureLocal)), _target] call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */ diff --git a/addons/medical/functions/fnc_actionCheckBloodPressureLocal.sqf b/addons/medical/functions/fnc_actionCheckBloodPressureLocal.sqf index 82edd1749f..c7b444de73 100644 --- a/addons/medical/functions/fnc_actionCheckBloodPressureLocal.sqf +++ b/addons/medical/functions/fnc_actionCheckBloodPressureLocal.sqf @@ -7,24 +7,21 @@ * 1: The patient * * Return Value: - * NONE + * None * * Public: No */ #include "script_component.hpp" -private ["_caller","_target","_bloodPressure","_bloodPressureHigh","_bloodPressureLow", "_logOutPut", "_output"]; -_caller = _this select 0; -_target = _this select 1; +private ["_bloodPressure", "_logOutPut", "_output"]; +params ["_caller", "_target"]; _bloodPressure = [_target] call FUNC(getBloodPressure); if (!alive _target) then { _bloodPressure = [0,0]; }; - -_bloodPressureHigh = _bloodPressure select 1; -_bloodPressureLow = _bloodPressure select 0; +_bloodPressure params ["_bloodPressureLow", "_bloodPressureLow"]; _output = ""; _logOutPut = ""; if ([_caller] call FUNC(isMedic)) then { diff --git a/addons/medical/functions/fnc_actionCheckPulse.sqf b/addons/medical/functions/fnc_actionCheckPulse.sqf index fd96321e8f..1861195a04 100644 --- a/addons/medical/functions/fnc_actionCheckPulse.sqf +++ b/addons/medical/functions/fnc_actionCheckPulse.sqf @@ -7,14 +7,11 @@ * 1: The patient * * Return Value: -* NONE +* None * * Public: No */ #include "script_component.hpp" -private ["_caller","_target"]; -_caller = _this select 0; -_target = _this select 1; -[[_caller, _target], QUOTE(DFUNC(actionCheckPulseLocal)), _target] call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */ +[_this, QUOTE(DFUNC(actionCheckPulseLocal)), _target] call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */ diff --git a/addons/medical/functions/fnc_actionCheckPulseLocal.sqf b/addons/medical/functions/fnc_actionCheckPulseLocal.sqf index d759bf1bc8..74f9fc5eb5 100644 --- a/addons/medical/functions/fnc_actionCheckPulseLocal.sqf +++ b/addons/medical/functions/fnc_actionCheckPulseLocal.sqf @@ -7,16 +7,15 @@ * 1: The patient * * Return Value: - * NONE + * None * * Public: No */ #include "script_component.hpp" -private ["_caller", "_unit", "_heartRateOutput", "_heartRate", "_logOutPut"]; -_caller = _this select 0; -_unit = _this select 1; +private ["_heartRateOutput", "_heartRate", "_logOutPut"]; +params ["_caller", "_unit"]; _heartRate = _unit getvariable [QGVAR(heartRate), 80]; diff --git a/addons/medical/functions/fnc_actionCheckResponse.sqf b/addons/medical/functions/fnc_actionCheckResponse.sqf index b5df63047e..7db4fe0a5d 100644 --- a/addons/medical/functions/fnc_actionCheckResponse.sqf +++ b/addons/medical/functions/fnc_actionCheckResponse.sqf @@ -7,22 +7,20 @@ * 1: The patient * * Return Value: - * NONE + * None * * Public: No */ #include "script_component.hpp" -private ["_caller","_target", "_output"]; -_caller = _this select 0; -_target = _this select 1; +private ["_output"]; +params ["_caller", "_target"]; -_output = ""; -if ([_target] call EFUNC(common,isAwake)) then { - _output = LSTRING(Check_Response_Responsive); +_output = if ([_target] call EFUNC(common,isAwake)) then { + LSTRING(Check_Response_Responsive) } else { - _output = LSTRING(Check_Response_Unresponsive); + LSTRING(Check_Response_Unresponsive) }; ["displayTextStructured", [_caller], [[_output, [_target] call EFUNC(common,getName)], 2, _caller]] call EFUNC(common,targetEvent); diff --git a/addons/medical/functions/fnc_actionDiagnose.sqf b/addons/medical/functions/fnc_actionDiagnose.sqf index 243edbdef8..5cc0d307da 100644 --- a/addons/medical/functions/fnc_actionDiagnose.sqf +++ b/addons/medical/functions/fnc_actionDiagnose.sqf @@ -7,16 +7,15 @@ * 1: The patient * * Return Value: -* NONE +* None * * Public: No */ #include "script_component.hpp" -private ["_caller", "_target", "_genericMessages"]; -_caller = _this select 0; -_target = _this select 1; +private "_genericMessages"; +params ["_caller", "_target"]; _genericMessages = [LSTRING(diagnoseMessage)]; diff --git a/addons/medical/functions/fnc_actionLoadUnit.sqf b/addons/medical/functions/fnc_actionLoadUnit.sqf index 03d9a3ef54..f4b941383f 100644 --- a/addons/medical/functions/fnc_actionLoadUnit.sqf +++ b/addons/medical/functions/fnc_actionLoadUnit.sqf @@ -7,26 +7,25 @@ * 1: The patient * * Return Value: - * NONE + * None * * Public: No */ #include "script_component.hpp" -private ["_caller", "_target","_vehicle"]; -_caller = _this select 0; -_target = _this select 1; +private "_vehicle"; +params ["_caller", "_target"]; if ([_target] call EFUNC(common,isAwake)) exitwith { // TODO localization ["displayTextStructured", [_caller], [["This person (%1) is awake and cannot be loaded", [_target] call EFUNC(common,getName)], 1.5, _caller]] call EFUNC(common,targetEvent); }; if ([_target] call FUNC(isBeingCarried)) then { - [_caller, _target] call EFUNC(dragging,dropObject_carry); + _this call EFUNC(dragging,dropObject_carry); }; if ([_target] call FUNC(isBeingDragged)) then { - [_caller, _target] call EFUNC(dragging,dropObject); + _this call EFUNC(dragging,dropObject); }; -_vehicle = [_caller, _target] call EFUNC(common,loadPerson); +_vehicle = _this call EFUNC(common,loadPerson); diff --git a/addons/medical/functions/fnc_actionPlaceInBodyBag.sqf b/addons/medical/functions/fnc_actionPlaceInBodyBag.sqf index 73f9eeca4d..f416535701 100644 --- a/addons/medical/functions/fnc_actionPlaceInBodyBag.sqf +++ b/addons/medical/functions/fnc_actionPlaceInBodyBag.sqf @@ -14,9 +14,8 @@ #include "script_component.hpp" -PARAMS_2(_caller,_target); - private ["_position", "_headPos", "_spinePos", "_dirVect", "_direction", "_bodyBag"]; +params ["_caller", "_target"]; if (alive _target) then { [_target, true] call FUNC(setDead); diff --git a/addons/medical/functions/fnc_actionRemoveTourniquet.sqf b/addons/medical/functions/fnc_actionRemoveTourniquet.sqf index a14dbc3bcd..778042e9a6 100644 --- a/addons/medical/functions/fnc_actionRemoveTourniquet.sqf +++ b/addons/medical/functions/fnc_actionRemoveTourniquet.sqf @@ -8,17 +8,15 @@ * 2: SelectionName * * Return Value: - * NONE + * None * * Public: Yes */ #include "script_component.hpp" -private ["_caller", "_target", "_part", "_selectionName", "_tourniquets", "_output"]; -_caller = _this select 0; -_target = _this select 1; -_selectionName = _this select 2; +private ["_part", "_tourniquets", "_output"]; +params ["_caller", "_target", "_selectionName"]; // grab the required data _part = [_selectionName] call FUNC(selectionNameToNumber); diff --git a/addons/medical/functions/fnc_actionUnloadUnit.sqf b/addons/medical/functions/fnc_actionUnloadUnit.sqf index a73f32265a..6bb4f5beed 100644 --- a/addons/medical/functions/fnc_actionUnloadUnit.sqf +++ b/addons/medical/functions/fnc_actionUnloadUnit.sqf @@ -5,23 +5,20 @@ * Arguments: * 0: The medic * 1: The patient - * 2: Drag after unload + * 2: Drag after unload (default: false) * * Return Value: - * NONE + * None * * Public: No */ #include "script_component.hpp" -private ["_caller", "_target", "_drag"]; -_caller = _this select 0; -_target = _this select 1; -_drag = if (count _this > 2) then {_this select 2} else {false}; +params ["_caller", "_target", ["_drag", false]]; // cannot unload a unit not in a vehicle. if (vehicle _target == _target) exitwith {}; if (([_target] call EFUNC(common,isAwake))) exitwith {}; -["unloadPersonEvent", _target, [_target, vehicle _target]] call EFUNC(common,targetEvent) \ No newline at end of file +["unloadPersonEvent", _target, [_target, vehicle _target]] call EFUNC(common,targetEvent) diff --git a/addons/medical/functions/fnc_addHeartRateAdjustment.sqf b/addons/medical/functions/fnc_addHeartRateAdjustment.sqf index f4516a100c..7171eee275 100644 --- a/addons/medical/functions/fnc_addHeartRateAdjustment.sqf +++ b/addons/medical/functions/fnc_addHeartRateAdjustment.sqf @@ -9,18 +9,15 @@ * 3: callback * * Return Value: - * nil + * None * * Public: Yes */ #include "script_component.hpp" -private ["_unit", "_value", "_time", "_adjustment", "_callBack"]; -_unit = [_this, 0, objNull, [objNull]] call BIS_fnc_Param; -_value = [_this, 1, 0, [0]] call BIS_fnc_Param; -_time = [_this, 2, 1, [0]] call BIS_fnc_Param; -_callBack = [_this, 3, {}, [{}]] call BIS_fnc_Param; + +params [["_unit", objNull, [objNull]], ["_value", 0, [0]], ["_time", 1, [0]], ["_callBack", {}, [{}]]]; _adjustment = _unit getvariable [QGVAR(heartRateAdjustments), []]; _adjustment pushback [_value, _time, _callBack]; diff --git a/addons/medical/functions/fnc_addToInjuredCollection.sqf b/addons/medical/functions/fnc_addToInjuredCollection.sqf index 083f949d9d..66433a5ed0 100644 --- a/addons/medical/functions/fnc_addToInjuredCollection.sqf +++ b/addons/medical/functions/fnc_addToInjuredCollection.sqf @@ -6,16 +6,14 @@ * 0: The Unit * * ReturnValue: - * + * None * * Public: Yes */ #include "script_component.hpp" -private ["_unit", "_force"]; -_unit = _this select 0; -_force = if (count _this > 1) then {_this select 1} else {false}; +params ["_unit", ["_force", false]]; if ([_unit] call FUNC(hasMedicalEnabled) || _force) then { @@ -27,13 +25,13 @@ if ([_unit] call FUNC(hasMedicalEnabled) || _force) then { _unit setvariable [QGVAR(addedToUnitLoop), true, true]; [{ - private ["_unit", "_interval"]; - _unit = (_this select 0) select 0; - _interval = ACE_time - ((_this select 0) select 1); + params ["_args", "_idPFH"]; + _args params ["_unit", "_interval"]; + _interval = ACE_time - _interval; (_this select 0) set [1, ACE_time]; - + if (!alive _unit || !local _unit) then { - [_this select 1] call CBA_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; if (!local _unit) then { if (GVAR(level) >= 2) then { _unit setvariable [QGVAR(heartRate), _unit getvariable [QGVAR(heartRate), 80], true]; diff --git a/addons/medical/functions/fnc_addToLog.sqf b/addons/medical/functions/fnc_addToLog.sqf index af7d9f3170..54a685611a 100644 --- a/addons/medical/functions/fnc_addToLog.sqf +++ b/addons/medical/functions/fnc_addToLog.sqf @@ -9,27 +9,26 @@ * 3: The arguments for localization * * Return Value: - * nil + * None * * Public: Yes */ #include "script_component.hpp" -private ["_unit", "_type", "_message", "_arguments", "_lastNumber", "_moment", "_logVarName", "_log","_newLog", "_logs"]; -_unit = _this select 0; -_type = _this select 1; -_message = _this select 2; -_arguments = _this select 3; +private ["_moment", "_logVarName", "_log","_newLog", "_logs"]; +params ["_unit", "_type", "_allMapMarkers", "_arguments"]; if (!local _unit) exitwith { [_this, QUOTE(DFUNC(addToLog)), _unit] call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */ }; -_lastNumber = date select 4; -_moment = format["%1:%2",date select 3, _lastNumber]; -if (_lastNumber < 10) then { - _moment = format["%1:0%2",date select 3, _lastNumber]; +date params ["_minute", "_hour"]; + +_moment = if (_minute < 10) then { + format["%1:0%2", _hour, _minute] +} else { + format["%1:%2", _hour, _minute] }; _logVarName = format[QGVAR(logFile_%1), _type]; @@ -41,10 +40,10 @@ if (count _log >= 8) then { if (_foreachIndex > 0) then { _newLog pushback _x; }; - }foreach _log; + } foreach _log; _log = _newLog; }; -_log pushback [_message,_moment,_type, _arguments]; +_log pushback [_message, _moment, _type, _arguments]; _unit setvariable [_logVarName, _log, true]; ["medical_onLogEntryAdded", [_unit, _type, _message, _arguments]] call EFUNC(common,localEvent); diff --git a/addons/medical/functions/fnc_addToTriageCard.sqf b/addons/medical/functions/fnc_addToTriageCard.sqf index 7495c04a8a..1869340ad8 100644 --- a/addons/medical/functions/fnc_addToTriageCard.sqf +++ b/addons/medical/functions/fnc_addToTriageCard.sqf @@ -7,16 +7,15 @@ * 1: The new item classname * * Return Value: - * nil + * None * * Public: Yes */ #include "script_component.hpp" - -private ["_unit", "_newItem", "_log", "_inList", "_amount"]; -_unit = _this select 0; -_newItem = _this select 1; +d +private ["_log", "_inList", "_amount"]; +params ["_unit", "_newItem"]; if (!local _unit) exitwith { [_this, QUOTE(DFUNC(addToTriageList)), _unit] call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */ @@ -36,7 +35,7 @@ _amount = 1; _amount = (_info select 1); _inList = true; }; -}foreach _log; +} foreach _log; if (!_inList) then { _log pushback [_newItem, 1, ACE_time]; diff --git a/addons/medical/functions/fnc_addUnconsciousCondition.sqf b/addons/medical/functions/fnc_addUnconsciousCondition.sqf index 579a55ca1f..6a867088da 100644 --- a/addons/medical/functions/fnc_addUnconsciousCondition.sqf +++ b/addons/medical/functions/fnc_addUnconsciousCondition.sqf @@ -3,14 +3,13 @@ * Adds new condition for the unconscious state. Conditions are not actively checked for units unless unit is in unconscious state. * * Arguments: - * 0: Code, should return a boolean + * 0-N: Code, should return a boolean * * ReturnValue: - * + * None * * Public: Yes */ - #include "script_component.hpp" if (isnil QGVAR(unconsciousConditions)) then { @@ -21,5 +20,5 @@ if (typeName _this == typeName []) then { if (typeName _x == typeName {}) then { GVAR(unconsciousConditions) pushback _x; }; - }foreach _this; + } foreach _this; }; diff --git a/addons/medical/functions/fnc_addUnloadPatientActions.sqf b/addons/medical/functions/fnc_addUnloadPatientActions.sqf index 13a4177859..11e0463328 100644 --- a/addons/medical/functions/fnc_addUnloadPatientActions.sqf +++ b/addons/medical/functions/fnc_addUnloadPatientActions.sqf @@ -13,8 +13,7 @@ * Public: No */ #include "script_component.hpp" - -EXPLODE_3_PVT(_this,_vehicle,_player,_parameters); +params ["_vehicle", "_player", "_parameters"]; private ["_actions", "_unit"]; _actions = []; @@ -28,7 +27,7 @@ _actions = []; str(_unit), [_unit, true] call EFUNC(common,getName), "", - {[_player, (_this select 2) select 0] call FUNC(actionUnloadUnit);}, + {[_player, _parameters select 0] call FUNC(actionUnloadUnit);}, {true}, {}, [_unit] diff --git a/addons/medical/functions/fnc_adjustPainLevel.sqf b/addons/medical/functions/fnc_adjustPainLevel.sqf index 7e6ce2d5f1..c4aab9e48d 100644 --- a/addons/medical/functions/fnc_adjustPainLevel.sqf +++ b/addons/medical/functions/fnc_adjustPainLevel.sqf @@ -18,7 +18,7 @@ private ["_pain"]; -PARAMS_2(_unit,_addedPain); +params ["_unit", "_addedPain"]; //Only run on local units: if (!local _unit) exitWith {ERROR("unit is not local");}; diff --git a/addons/medical/functions/fnc_canAccessMedicalEquipment.sqf b/addons/medical/functions/fnc_canAccessMedicalEquipment.sqf index 4b1940b7e3..0be01ac492 100644 --- a/addons/medical/functions/fnc_canAccessMedicalEquipment.sqf +++ b/addons/medical/functions/fnc_canAccessMedicalEquipment.sqf @@ -14,9 +14,8 @@ #include "script_component.hpp" -private ["_target", "_caller", "_accessLevel", "_return"]; -_caller = _this select 0; -_target = _this select 1; +private ["_accessLevel", "_return"]; +params ["_caller", "_targ"]; _accessLevel = _target getvariable [QGVAR(allowSharedEquipmentAccess), -1]; @@ -28,4 +27,4 @@ if (_accessLevel >= 0) then { if (_accessLevel == 2) exitwith { _return = (group _target == group _caller); }; }; -_return; \ No newline at end of file +_return; diff --git a/addons/medical/functions/fnc_canTreat.sqf b/addons/medical/functions/fnc_canTreat.sqf index e0cab95420..e1817d21fe 100644 --- a/addons/medical/functions/fnc_canTreat.sqf +++ b/addons/medical/functions/fnc_canTreat.sqf @@ -16,17 +16,16 @@ #include "script_component.hpp" -private ["_caller", "_target", "_selectionName", "_className", "_config", "_medicRequired", "_items", "_locations", "_return", "_condition", "_patientStateCondition", "_allowedSelections"]; -_caller = _this select 0; -_target = _this select 1; -_selectionName = _this select 2; -_className = _this select 3; +private ["_config", "_medicRequired", "_items", "_locations", "_return", "_condition", "_patientStateCondition", "_allowedSelections"]; +params ["_caller", "_target", "_selectionName", "_className"]; -if !(_target isKindOf "CAManBase") exitWith {false}; +if !(_target isKindOf "CAManBase") exitWith { false }; -_config = (ConfigFile >> "ACE_Medical_Actions" >> "Basic" >> _className); -if (GVAR(level)>=2) then { - _config = (ConfigFile >> "ACE_Medical_Actions" >> "Advanced" >> _className); + +_config = if (GVAR(level)>=2) then { + (ConfigFile >> "ACE_Medical_Actions" >> "Advanced" >> _className) +} else { + (ConfigFile >> "ACE_Medical_Actions" >> "Basic" >> _className) }; if !(isClass _config) exitwith {false}; @@ -35,17 +34,17 @@ _medicRequired = if (isNumber (_config >> "requiredMedic")) then { } else { // Check for required class if (isText (_config >> "requiredMedic")) exitwith { - missionNamespace getvariable [(getText (_config >> "requiredMedic")), 0]; + missionNamespace getvariable [(getText (_config >> "requiredMedic")), 0] }; 0; }; -if !([_caller, _medicRequired] call FUNC(isMedic)) exitwith {false}; +if !([_caller, _medicRequired] call FUNC(isMedic)) exitwith { false }; _items = getArray (_config >> "items"); -if (count _items > 0 && {!([_caller, _target, _items] call FUNC(hasItems))}) exitwith {false}; +if (count _items > 0 && {!([_caller, _target, _items] call FUNC(hasItems))}) exitwith { false }; _allowedSelections = getArray (_config >> "allowedSelections"); -if !("All" in _allowedSelections || {(_selectionName in _allowedSelections)}) exitwith {false}; +if !("All" in _allowedSelections || {(_selectionName in _allowedSelections)}) exitwith { false }; _return = true; if (getText (_config >> "condition") != "") then { @@ -61,7 +60,7 @@ if (getText (_config >> "condition") != "") then { _return = [_caller, _target, _selectionName, _className] call _condition; }; }; -if (!_return) exitwith {false}; +if (!_return) exitwith { false }; _patientStateCondition = if (isText(_config >> "patientStateCondition")) then { missionNamespace getvariable [getText(_config >> "patientStateCondition"), 0] @@ -71,7 +70,7 @@ _patientStateCondition = if (isText(_config >> "patientStateCondition")) then { if (_patientStateCondition == 1 && {!([_target] call FUNC(isInStableCondition))}) exitwith {false}; _locations = getArray (_config >> "treatmentLocations"); -if ("All" in _locations) exitwith {true}; +if ("All" in _locations) exitwith { true }; private [ "_medFacility", "_medVeh"]; _medFacility = {([_caller] call FUNC(isInMedicalFacility)) || ([_target] call FUNC(isInMedicalFacility))}; @@ -93,6 +92,6 @@ _medVeh = {([_caller] call FUNC(isInMedicalVehicle)) || ([_target] call FUNC(isI }; }; }; -}foreach _locations; +} foreach _locations; _return; diff --git a/addons/medical/functions/fnc_canTreatCached.sqf b/addons/medical/functions/fnc_canTreatCached.sqf index b1dfaf7d12..273da7dc4b 100644 --- a/addons/medical/functions/fnc_canTreatCached.sqf +++ b/addons/medical/functions/fnc_canTreatCached.sqf @@ -17,6 +17,7 @@ #include "script_component.hpp" #define MAX_DURATION_CACHE 2 +params ["", "_target", "_selection", "_classname"]; // parameters, function, namespace, uid -[_this, DFUNC(canTreat), _this select 1, format[QGVAR(canTreat_%1_%2), _this select 2, _this select 3], MAX_DURATION_CACHE, "clearConditionCaches"] call EFUNC(common,cachedCall); +[_this, DFUNC(canTreat), _target, format [QGVAR(canTreat_%1_%2), _selection, _classname], MAX_DURATION_CACHE, "clearConditionCaches"] call EFUNC(common,cachedCall); diff --git a/addons/medical/functions/fnc_copyDeadBody.sqf b/addons/medical/functions/fnc_copyDeadBody.sqf index 36bcd91487..9a3936f009 100644 --- a/addons/medical/functions/fnc_copyDeadBody.sqf +++ b/addons/medical/functions/fnc_copyDeadBody.sqf @@ -7,16 +7,15 @@ * 1: The caller * * Return Value: - * OBJECT Returns the copy of the unit. If no copy could be made, returns the oldBody + * Returns the copy of the unit. If no copy could be made, returns the oldBody * * Public: No */ #include "script_component.hpp" -private ["_oldBody","_newUnit","_class","_group","_position","_side", "_caller", "_name"]; -_oldBody = _this select 0; -_caller = _this select 1; +private ["_newUnit", "_class", "_group", "_position", "_side", "_name"]; +params ["_oldBody", "_caller"]; if (alive _oldBody) exitwith {_oldBody}; // we only want to do this for dead bodies diff --git a/addons/medical/functions/fnc_createLitter.sqf b/addons/medical/functions/fnc_createLitter.sqf index a3b71b7f9c..b25a3bbf94 100644 --- a/addons/medical/functions/fnc_createLitter.sqf +++ b/addons/medical/functions/fnc_createLitter.sqf @@ -3,11 +3,16 @@ * Spawns litter for the treatment action on the ground around the target * * Arguments: - * 0: The target - * 1: The treatment classname + * 0: The Caller + * 1: The target + * 2: The treatment Selection Name + * 3: The treatment classname + * 4: ? + * 5: Users of Items + * 6: Previous Damage * * Return Value: - * + * None * * Public: No */ @@ -16,13 +21,8 @@ #define MIN_ENTRIES_LITTER_CONFIG 3 -private ["_target", "_className", "_config", "_litter", "_createLitter", "_position", "_createdLitter", "_caller", "_selectionName", "_usersOfItems", "_previousDamage"]; -_caller = _this select 0; -_target = _this select 1; -_selectionName = _this select 2; -_className = _this select 3; -_usersOfItems = _this select 5; -_previousDamage = _this select 6; +private ["_config", "_litter", "_createLitter", "_position", "_createdLitter"]; +params ["_caller", "_target", "_selectionName", "_className", "", "_usersOfItems", "_previousDamage"]; if !(GVAR(allowLitterCreation)) exitwith {}; if (vehicle _caller != _caller || vehicle _target != _target) exitwith {}; @@ -38,19 +38,18 @@ if !(isArray (_config >> "litter")) exitwith {}; _litter = getArray (_config >> "litter"); _createLitter = { - private["_position", "_litterClass", "_direction"]; - + private["_position", "_direction"]; + params ["_unit", "_litter"]; // @TODO: handle carriers over water // For now, don't spawn litter if we are over water to avoid floating litter - if(surfaceIsWater (getPos (_this select 0))) exitWith { false }; - - _position = getPosATL (_this select 0); - _position = [_position select 0, _position select 1, 0]; - _litterClass = _this select 1; - if (random(1) >= 0.5) then { - _position = [(_position select 0) + random 1, (_position select 1) + random 1, _position select 2]; + if(surfaceIsWater (getPos _unit)) exitWith { false }; + + _position = getPosATL _unit; + _position params ["_posX", "_posY"]; + _position = if (random(1) >= 0.5) then { + [_posX + random 1, _posY + random 1, 0] } else { - _position = [(_position select 0) - random 1, (_position select 1) - random 1, _position select 2]; + [_posX - random 1, _posY - random 1, 0]; }; _direction = (random 360); @@ -65,11 +64,10 @@ _createdLitter = []; { if (typeName _x == "ARRAY") then { if (count _x < MIN_ENTRIES_LITTER_CONFIG) exitwith {}; - private ["_selection", "_litterCondition", "_litterOptions"]; - _selection = _x select 0; + + params ["_selection", "_litterCondition", "_litterOptions"]; + if (toLower _selection in [toLower _selectionName, "all"]) then { // in is case sensitve. We can be forgiving here, so lets use toLower. - _litterCondition = _x select 1; - _litterOptions = _x select 2; if (isnil _litterCondition) then { _litterCondition = if (_litterCondition != "") then {compile _litterCondition} else {{true}}; @@ -88,8 +86,8 @@ _createdLitter = []; if (typeName _x == "STRING") then { [_target, _x] call _createLitter; }; - }foreach _litterOptions; + } foreach _litterOptions; }; }; }; -}foreach _litter; \ No newline at end of file +} foreach _litter; diff --git a/addons/medical/functions/fnc_determineIfFatal.sqf b/addons/medical/functions/fnc_determineIfFatal.sqf index bad15dbcad..939bf8c9b7 100644 --- a/addons/medical/functions/fnc_determineIfFatal.sqf +++ b/addons/medical/functions/fnc_determineIfFatal.sqf @@ -1,19 +1,21 @@ -/** - * fn_determineIfFatal.sqf - * @Descr: N/A - * @Author: Glowbal +/* + * Author: Glowbal + * Determine If Fatal * - * @Arguments: [] - * @Return: - * @PublicAPI: false + * Arguments: + * 0: Unit + * 1: Part + * 2: with Damage (default: 0) + * + * Return Value: + * None + * + * Public: No */ - #include "script_component.hpp" -private ["_unit","_part","_damageThreshold", "_withDamage", "_damageBodyPart"]; -_unit = _this select 0; -_part = _this select 1; -_withDamage = if (count _this > 2) then { _this select 2} else {0}; +private ["_damageThreshold", "_damageBodyPart"]; +params ["_unit", "_part", ["_withDamage", 0]]; if (!alive _unit) exitwith {true}; if (_part < 0 || _part > 5) exitwith {false}; diff --git a/addons/medical/functions/fnc_displayPatientInformation.sqf b/addons/medical/functions/fnc_displayPatientInformation.sqf index e181328318..82622bdca6 100644 --- a/addons/medical/functions/fnc_displayPatientInformation.sqf +++ b/addons/medical/functions/fnc_displayPatientInformation.sqf @@ -4,10 +4,11 @@ * * Arguments: * 0: The Unit - * 1: Show + * 1: Show (default: true) + * 2: Selection (default: 0) * * ReturnValue: - * nil + * None * * Public: No */ @@ -18,9 +19,7 @@ // Exit for basic medical if (GVAR(level) < 2) exitWith {}; private ["_target", "_show", "_selectionN", "_amountOfGeneric", "_bandagedwounds", "_logCtrl", "_part", "_partText", "_pointDamage", "_severity", "_total", "_totalIvVolume", "_triageStatus", "_type"]; -_target = _this select 0; -_show = if (count _this > 1) then {_this select 1} else {true}; -_selectionN = if (count _this > 2) then {_this select 2} else {0}; +params ["_target", ["_target", true], ["_selectionN", 0]]; GVAR(currentSelectedSelectionN) = if (typeName _selectionN == "SCALAR") then {_selectionN} else {0}; GVAR(displayPatientInformationTarget) = if (_show) then {_target} else {ObjNull}; @@ -34,22 +33,22 @@ if (_show) then { [{ private ["_target", "_display", "_alphaLevel", "_damaged", "_availableSelections", "_openWounds", "_selectionBloodLoss", "_red", "_green", "_blue", "_alphaLevel", "_allInjuryTexts", "_lbCtrl", "_genericMessages"]; - _target = (_this select 0) select 0; - _selectionN = (_this select 0) select 1; + params ["_args", "_idPFH"]; + _args params ["_target", "_selectionN"]; if (GVAR(displayPatientInformationTarget) != _target || GVAR(currentSelectedSelectionN) != _selectionN) exitwith { - [_this select 1] call CBA_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; }; if (ACE_player distance _target > MAX_DISTANCE) exitwith { ("ACE_MedicalRscDisplayInformation" call BIS_fnc_rscLayer) cutText ["","PLAIN"]; - [_this select 1] call CBA_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; ["displayTextStructured", [ACE_player], [[LSTRING(DistanceToFar), [_target] call EFUNC(common,getName)], 1.75, ACE_player]] call EFUNC(common,targetEvent); }; disableSerialization; _display = uiNamespace getvariable QGVAR(DisplayInformation); if (isnil "_display") exitwith { - [_this select 1] call CBA_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; }; _allInjuryTexts = []; @@ -81,7 +80,7 @@ if (_show) then { if !(isnil "_value") then { _totalIvVolume = _totalIvVolume + (_target getvariable [_x, 0]); }; - }foreach GVAR(IVBags); + } foreach GVAR(IVBags); if (_totalIvVolume >= 1) then { _genericMessages pushback [format[localize LSTRING(receivingIvVolume), floor _totalIvVolume], [1, 1, 1, 1]]; }; @@ -92,33 +91,33 @@ if (_show) then { _openWounds = _target getvariable [QGVAR(openWounds), []]; private "_amountOf"; { - _amountOf = _x select 3; + _x params ["", "_x1", "_selectionX", "_amountOf", "_x4"]; // Find how much this bodypart is bleeding if (_amountOf > 0) then { - _damaged set[_x select 2, true]; - _selectionBloodLoss set [(_x select 2), (_selectionBloodLoss select (_x select 2)) + (20 * ((_x select 4) * _amountOf))]; + _damaged set[_selectionX, true]; + _selectionBloodLoss set [_selectionX, (_selectionBloodLoss select _selectionX) + (20 * (_x4 * _amountOf))]; - if (_selectionN == (_x select 2)) then { + if (_selectionN == _selectionX) then { // Collect the text to be displayed for this injury [ Select injury class type definition - select the classname DisplayName (6th), amount of injuries for this] if (_amountOf >= 1) then { // TODO localization - _allInjuryTexts pushback [format["%2x %1", (GVAR(AllWoundInjuryTypes) select (_x select 1)) select 6, _amountOf], [1,1,1,1]]; + _allInjuryTexts pushback [format["%2x %1", (GVAR(AllWoundInjuryTypes) select _x1) select 6, _amountOf], [1,1,1,1]]; } else { // TODO localization - _allInjuryTexts pushback [format["Partial %1", (GVAR(AllWoundInjuryTypes) select (_x select 1)) select 6], [1,1,1,1]]; + _allInjuryTexts pushback [format["Partial %1", (GVAR(AllWoundInjuryTypes) select _x1) select 6], [1,1,1,1]]; }; }; }; - }foreach _openWounds; + } foreach _openWounds; _bandagedwounds = _target getvariable [QGVAR(bandagedWounds), []]; { - _amountOf = _x select 3; + _x params ["", "", "_selectionX", "_amountOf", "_x4"]; // Find how much this bodypart is bleeding - if !(_damaged select (_x select 2)) then { - _selectionBloodLoss set [(_x select 2), (_selectionBloodLoss select (_x select 2)) + (20 * ((_x select 4) * _amountOf))]; + if !(_damaged select _selectionX) then { + _selectionBloodLoss set [_selectionX, (_selectionBloodLoss select _selectionX) + (20 * (_x4 * _amountOf))]; }; - if (_selectionN == (_x select 2)) then { + if (_selectionN == _selectionX) then { // Collect the text to be displayed for this injury [ Select injury class type definition - select the classname DisplayName (6th), amount of injuries for this] if (_amountOf > 0) then { if (_amountOf >= 1) then { @@ -130,7 +129,7 @@ if (_show) then { }; }; }; - }foreach _bandagedwounds; + } foreach _bandagedwounds; } else { _damaged = [true, true, true, true, true, true]; { @@ -160,7 +159,7 @@ if (_show) then { _availableSelections = [50,51,52,53,54,55]; { - private ["_red", "_green", "_blue"]; + private ["_red", "_green", "_blue", "_total"]; _total = _x; _red = 1; @@ -177,20 +176,22 @@ if (_show) then { }; }; (_display displayCtrl (_availableSelections select _foreachIndex)) ctrlSetTextColor [_red, _green, _blue, 1.0]; - }foreach _selectionBloodLoss; + } foreach _selectionBloodLoss; _lbCtrl = (_display displayCtrl 200); lbClear _lbCtrl; { - _lbCtrl lbAdd (_x select 0); - _lbCtrl lbSetColor [_foreachIndex, _x select 1]; - }foreach _genericMessages; + _x params ["_add", "_color"]; + _lbCtrl lbAdd _add; + _lbCtrl lbSetColor [_foreachIndex, _color]; + } foreach _genericMessages; _amountOfGeneric = count _genericMessages; { - _lbCtrl lbAdd (_x select 0); - _lbCtrl lbSetColor [_foreachIndex + _amountOfGeneric, _x select 1]; - }foreach _allInjuryTexts; + _x params ["_add", "_color"]; + _lbCtrl lbAdd _add; + _lbCtrl lbSetColor [_foreachIndex + _amountOfGeneric, _color]; + } foreach _allInjuryTexts; if (count _allInjuryTexts == 0) then { _lbCtrl lbAdd (localize LSTRING(NoInjuriesBodypart)); }; @@ -202,9 +203,7 @@ if (_show) then { _logs = _target getvariable [QGVAR(logFile_Activity), []]; { // [_message,_moment,_type, _arguments] - _message = _x select 0; - _moment = _x select 1; - _arguments = _x select 3; + _x params ["_message", "_moment", "_arguments"]; if (isLocalized _message) then { _message = localize _message; }; @@ -213,10 +212,10 @@ if (_show) then { if (typeName _x == "STRING" && {isLocalized _x}) then { _arguments set [_foreachIndex, localize _x]; }; - }foreach _arguments; + } foreach _arguments; _message = format([_message] + _arguments); _logCtrl lbAdd format["%1 %2", _moment, _message]; - }foreach _logs; + } foreach _logs; _triageStatus = [_target] call FUNC(getTriageStatus); (_display displayCtrl 303) ctrlSetText (_triageStatus select 0); diff --git a/addons/medical/functions/fnc_displayTriageCard.sqf b/addons/medical/functions/fnc_displayTriageCard.sqf index c4ed4ad829..051efbfc70 100644 --- a/addons/medical/functions/fnc_displayTriageCard.sqf +++ b/addons/medical/functions/fnc_displayTriageCard.sqf @@ -4,18 +4,18 @@ * * Arguments: * 0: The unit + * 1: Show (default: true) * * Return Value: - * nil + * None * * Public: Yes */ #include "script_component.hpp" -private ["_target", "_show", "_amount", "_item", "_log", "_message", "_triageCardTexts", "_triageStatus"]; -_target = _this select 0; -_show = if (count _this > 1) then {_this select 1} else {true}; +private ["_amount", "_item", "_log", "_message", "_triageCardTexts", "_triageStatus"]; +params ["_target", ["_show", true]]; GVAR(TriageCardTarget) = if (_show) then {_target} else {ObjNull}; @@ -25,15 +25,16 @@ if (_show) then { [{ private ["_target", "_display", "_alphaLevel", "_alphaLevel", "_lbCtrl"]; - _target = (_this select 0) select 0; + params ["_args", "_idPFH"]; + _args params ["_target"]; if (GVAR(TriageCardTarget) != _target) exitwith { - [_this select 1] call CBA_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; }; disableSerialization; _display = uiNamespace getvariable QGVAR(triageCard); if (isnil "_display") exitwith { - [_this select 1] call CBA_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; }; _triageCardTexts = []; @@ -44,8 +45,7 @@ if (_show) then { _log = _target getvariable [QGVAR(triageCard), []]; { - _item = _x select 0; - _amount = _x select 1; + _x params ["_item", "_amount"]; _message = _item; if (isClass(configFile >> "CfgWeapons" >> _item)) then { _message = getText(configFile >> "CfgWeapons" >> _item >> "DisplayName"); @@ -55,18 +55,21 @@ if (_show) then { }; }; _triageCardTexts pushback format["%1x - %2", _amount, _message]; - }foreach _log; + } foreach _log; if (count _triageCardTexts == 0) then { _lbCtrl lbAdd (localize LSTRING(TriageCard_NoEntry)); }; { _lbCtrl lbAdd _x; - }foreach _triageCardTexts; + } foreach _triageCardTexts; _triageStatus = [_target] call FUNC(getTriageStatus); - (_display displayCtrl 2000) ctrlSetText (_triageStatus select 0); - (_display displayCtrl 2000) ctrlSetBackgroundColor (_triageStatus select 2); + + _triageStatus params ["_text", "_color"]; + + (_display displayCtrl 2000) ctrlSetText _text; + (_display displayCtrl 2000) ctrlSetBackgroundColor _color; }, 0, [_target]] call CBA_fnc_addPerFrameHandler; diff --git a/addons/medical/functions/fnc_dropDownTriageCard.sqf b/addons/medical/functions/fnc_dropDownTriageCard.sqf index 6f30152c5f..d207c7f9a4 100644 --- a/addons/medical/functions/fnc_dropDownTriageCard.sqf +++ b/addons/medical/functions/fnc_dropDownTriageCard.sqf @@ -3,18 +3,18 @@ * Display triage card for a unit * * Arguments: - * 0: The unit + * 0: Show * * Return Value: - * nil + * None * * Public: Yes */ #include "script_component.hpp" -private ["_show", "_ctrl", "_display", "_idc", "_pos"]; -_show = _this select 0; +private ["_ctrl", "_display", "_idc", "_pos"]; +params ["_show"]; disableSerialization; _display = uiNamespace getvariable QGVAR(triageCard); diff --git a/addons/medical/functions/fnc_getBloodLoss.sqf b/addons/medical/functions/fnc_getBloodLoss.sqf index 1881643d97..9ac1083f03 100644 --- a/addons/medical/functions/fnc_getBloodLoss.sqf +++ b/addons/medical/functions/fnc_getBloodLoss.sqf @@ -15,10 +15,9 @@ #define BLOODLOSSRATE_BASIC 0.2 -private ["_unit", "_totalBloodLoss","_tourniquets","_openWounds", "_cardiacOutput", "_internalWounds"]; +private ["_totalBloodLoss","_tourniquets","_openWounds", "_cardiacOutput", "_internalWounds"]; // TODO Only use this calculation if medium or higher, otherwise use vanilla calculations (for basic medical). - -_unit = _this select 0; +params ["_unit"]; _totalBloodLoss = 0; // Advanced medical bloodloss handling @@ -34,12 +33,12 @@ if (GVAR(level) >= 2) then { // (((BLOODLOSS_SMALL_WOUNDS * (_x select 0))) + ((BLOODLOSS_MEDIUM_WOUNDS * (_x select 1))) + ((BLOODLOSS_LARGE_WOUNDS * (_x select 2))) * (_cardiacOutput / DEFAULT_CARDIAC_OUTPUT)); }; - }foreach _openWounds; + } foreach _openWounds; _internalWounds = _unit getvariable [QGVAR(internalWounds), []]; { _totalBloodLoss = _totalBloodLoss + ((_x select 4) * (_x select 3)); - }foreach _internalWounds; + } foreach _internalWounds; // cap the blood loss to be no greater as the current cardiac output //(_totalBloodLoss min _cardiacOutput); diff --git a/addons/medical/functions/fnc_getBloodPressure.sqf b/addons/medical/functions/fnc_getBloodPressure.sqf index f5012c8735..2ba0b7366d 100644 --- a/addons/medical/functions/fnc_getBloodPressure.sqf +++ b/addons/medical/functions/fnc_getBloodPressure.sqf @@ -6,29 +6,28 @@ * 0: The Unit * * ReturnValue: - * Blood Pressuret ,> + * 0: BloodPressure Low + * 1: BloodPressure High * * Public: No */ #include "script_component.hpp" -/* - Value is taken because with cardic output and resistance at default values, it will put blood pressure High at 120. -*/ +// Value is taken because with cardic output and resistance at default values, it will put blood pressure High at 120. #define MODIFIER_BP_HIGH 0.229 -/* - Value is taken because with cardic output and resistance at default values, it will put blood pressure Low at 80. -*/ +// Value is taken because with cardic output and resistance at default values, it will put blood pressure Low at 80. #define MODIFIER_BP_LOW 0.1524 -private ["_unit", "_bloodPressureLow", "_bloodPressureHigh", "_cardiacOutput", "_resistance"]; -_unit = _this select 0; +private ["_bloodPressureLow", "_bloodPressureHigh", "_cardiacOutput", "_resistance"]; + +params ["_unit"]; + _cardiacOutput = [_unit] call FUNC(getCardiacOutput); _resistance = _unit getvariable [QGVAR(peripheralResistance), 100]; _bloodPressureHigh = (_cardiacOutput * MODIFIER_BP_HIGH) * _resistance; _bloodPressureLow = (_cardiacOutput * MODIFIER_BP_LOW) * _resistance; -[_bloodPressureLow, _bloodPressureHigh]; +[_bloodPressureLow, _bloodPressureHigh] diff --git a/addons/medical/functions/fnc_getBloodVolumeChange.sqf b/addons/medical/functions/fnc_getBloodVolumeChange.sqf index 23eba4a0c7..3524e15cb5 100644 --- a/addons/medical/functions/fnc_getBloodVolumeChange.sqf +++ b/addons/medical/functions/fnc_getBloodVolumeChange.sqf @@ -28,10 +28,8 @@ */ #define BLOOD_CHANGE_PER_SECOND 0.0595 - - -private ["_unit","_bloodVolume","_bloodVolumeChange", "_ivVolume"]; -_unit = _this select 0; +private ["_bloodVolume", "_bloodVolumeChange", "_ivVolume"]; +params ["_unit"]; _bloodVolume = _unit getvariable [QGVAR(bloodVolume), 100]; _bloodVolumeChange = -([_unit] call FUNC(getBloodLoss)); @@ -43,13 +41,13 @@ if (_bloodVolume < 100.0) then { _ivVolume = (_unit getvariable [_x, 0]) + IV_CHANGE_PER_SECOND; _unit setvariable [_x,_ivVolume]; }; - }foreach GVAR(IVBags); + } foreach GVAR(IVBags); } else { { if ((_unit getvariable [_x, 0]) > 0) then { _unit setvariable [_x, 0]; // lets get rid of exessive IV volume }; - }foreach GVAR(IVBags); + } foreach GVAR(IVBags); }; _bloodVolumeChange; diff --git a/addons/medical/functions/fnc_getCardiacOutput.sqf b/addons/medical/functions/fnc_getCardiacOutput.sqf index 34d7be33af..f24aa438ca 100644 --- a/addons/medical/functions/fnc_getCardiacOutput.sqf +++ b/addons/medical/functions/fnc_getCardiacOutput.sqf @@ -22,7 +22,6 @@ // to limit the amount of complex calculations necessary, we take a set modifier to calculate Stroke Volume. #define MODIFIER_CARDIAC_OUTPUT 19.04761 -private "_unit"; -_unit = _this select 0; +params ["_unit"]; ((_unit getvariable [QGVAR(bloodVolume), 100])/MODIFIER_CARDIAC_OUTPUT) + ((_unit getvariable [QGVAR(heartRate), 80])/80-1); diff --git a/addons/medical/functions/fnc_getHeartRateChange.sqf b/addons/medical/functions/fnc_getHeartRateChange.sqf index 92a2053737..d46733452a 100644 --- a/addons/medical/functions/fnc_getHeartRateChange.sqf +++ b/addons/medical/functions/fnc_getHeartRateChange.sqf @@ -15,8 +15,9 @@ #define HEART_RATE_MODIFIER 0.02 -private ["_unit", "_heartRate", "_hrIncrease", "_bloodLoss", "_time", "_values", "_adjustment", "_change", "_callBack", "_bloodVolume"]; -_unit = _this select 0; +private ["_heartRate", "_hrIncrease", "_bloodLoss", "_time", "_values", "_adjustment", "_change", "_callBack", "_bloodVolume"]; +params ["_unit"]; + _hrIncrease = 0; if (!(_unit getvariable [QGVAR(inCardiacArrest),false])) then { _heartRate = _unit getvariable [QGVAR(heartRate), 80]; @@ -24,10 +25,8 @@ if (!(_unit getvariable [QGVAR(inCardiacArrest),false])) then { _adjustment = _unit getvariable [QGVAR(heartRateAdjustments), []]; { - _values = (_x select 0); + _x params ["_values", "_time", "_callBack"]; if (abs _values > 0) then { - _time = (_x select 1); - _callBack = _x select 2; if (_time <= 0) then { _time = 1; }; @@ -47,7 +46,7 @@ if (!(_unit getvariable [QGVAR(inCardiacArrest),false])) then { [_unit] call _callBack; }; - }foreach _adjustment; + } foreach _adjustment; _adjustment = _adjustment - [ObjNull]; _unit setvariable [QGVAR(heartRateAdjustments), _adjustment]; diff --git a/addons/medical/functions/fnc_getTriageStatus.sqf b/addons/medical/functions/fnc_getTriageStatus.sqf index 812c20ed2a..4dcef530a3 100644 --- a/addons/medical/functions/fnc_getTriageStatus.sqf +++ b/addons/medical/functions/fnc_getTriageStatus.sqf @@ -6,7 +6,9 @@ * 0: The unit * * Return Value: - * Triage status from the unit. Name, statusID, color > + * 0: Name + * 1: Status ID + * 2: Color > * * Public: Yes */ @@ -14,7 +16,7 @@ #include "script_component.hpp" private ["_unit","_return","_status"]; -_unit = _this select 0; +params ["_unit"]; _status = _unit getvariable [QGVAR(triageLevel), -1]; _return = switch (_status) do { case 1: {[localize LSTRING(Triage_Status_Minor), 1, [0, 0.5, 0, 0.9]]}; @@ -23,4 +25,4 @@ _return = switch (_status) do { case 4: {[localize LSTRING(Triage_Status_Deceased), 4, [0, 0, 0, 0.9]]}; default {[localize LSTRING(Triage_Status_None), 0, [0, 0, 0, 0.9]]}; }; -_return; +_return diff --git a/addons/medical/functions/fnc_getTypeOfDamage.sqf b/addons/medical/functions/fnc_getTypeOfDamage.sqf index d51131ce0c..b8646e485f 100644 --- a/addons/medical/functions/fnc_getTypeOfDamage.sqf +++ b/addons/medical/functions/fnc_getTypeOfDamage.sqf @@ -13,23 +13,19 @@ #include "script_component.hpp" -PARAMS_1(_typeOfProjectile); +params ["_typeOfProjectile"]; -private ["_typeOfDamage"]; - -_typeOfDamage = switch (true) do { - case (_typeOfProjectile isKindOf "BulletBase"): {"bullet"}; - case (_typeOfProjectile isKindOf "GrenadeCore"): {"grenade"}; - case (_typeOfProjectile isKindOf "TimeBombCore"): {"explosive"}; - case (_typeOfProjectile isKindOf "MineCore"): {"explosive"}; - case (_typeOfProjectile isKindOf "FuelExplosion"): {"explosive"}; - case (_typeOfProjectile isKindOf "ShellBase"): {"shell"}; - case (_typeOfProjectile isKindOf "RocketBase"): {"explosive"}; - case (_typeOfProjectile isKindOf "MissileBase"): {"explosive"}; - case (_typeOfProjectile isKindOf "LaserBombCore"): {"explosive"}; - case (_typeOfProjectile isKindOf "BombCore"): {"explosive"}; - case (_typeOfProjectile isKindOf "Grenade"): {"grenade"}; - default {toLower _typeOfProjectile}; +call { + if (_typeOfProjectile isKindOf "BulletBase") exitWith {"bullet"}; + if (_typeOfProjectile isKindOf "GrenadeCore") exitWith {"grenade"}; + if (_typeOfProjectile isKindOf "TimeBombCore") exitWith {"explosive"}; + if (_typeOfProjectile isKindOf "MineCore") exitWith {"explosive"}; + if (_typeOfProjectile isKindOf "FuelExplosion") exitWith {"explosive"}; + if (_typeOfProjectile isKindOf "ShellBase") exitWith {"shell"}; + if (_typeOfProjectile isKindOf "RocketBase") exitWith {"explosive"}; + if (_typeOfProjectile isKindOf "MissileBase") exitWith {"explosive"}; + if (_typeOfProjectile isKindOf "LaserBombCore") exitWith {"explosive"}; + if (_typeOfProjectile isKindOf "BombCore") exitWith {"explosive"}; + if (_typeOfProjectile isKindOf "Grenade") exitWith {"grenade"}; + toLower _typeOfProjectile }; - -_typeOfDamage diff --git a/addons/medical/functions/fnc_getUnconsciousCondition.sqf b/addons/medical/functions/fnc_getUnconsciousCondition.sqf index 19d3bdec1d..c354dd6ebd 100644 --- a/addons/medical/functions/fnc_getUnconsciousCondition.sqf +++ b/addons/medical/functions/fnc_getUnconsciousCondition.sqf @@ -14,7 +14,7 @@ #include "script_component.hpp" private ["_unit","_return"]; -_unit = _this select 0; +params ["_unit"]; if (isnil QGVAR(unconsciousConditions)) then { GVAR(unconsciousConditions) = []; @@ -25,6 +25,6 @@ _return = false; if (typeName _x == typeName {} && {([_unit] call _x)}) exitwith { _return = true; }; -}foreach GVAR(unconsciousConditions); +} foreach GVAR(unconsciousConditions); -_return; +_return diff --git a/addons/medical/functions/fnc_handleBandageOpening.sqf b/addons/medical/functions/fnc_handleBandageOpening.sqf index a86077cb3b..b617d1e64a 100644 --- a/addons/medical/functions/fnc_handleBandageOpening.sqf +++ b/addons/medical/functions/fnc_handleBandageOpening.sqf @@ -18,15 +18,10 @@ #include "script_component.hpp" -private ["_target", "_impact", "_part", "_injuryIndex", "_injury", "_bandage", "_classID", "_className", "_reopeningChance", "_reopeningMinDelay", "_reopeningMaxDelay", "_config", "_woundTreatmentConfig", "_bandagedWounds", "_exist", "_injuryId", "_existingInjury", "_delay", "_openWounds", "_selectedInjury", "_bandagedInjury"]; -_target = _this select 0; -_impact = _this select 1; -_part = _this select 2; -_injuryIndex = _this select 3; -_injury = _this select 4; -_bandage = _this select 5; +private ["_className", "_reopeningChance", "_reopeningMinDelay", "_reopeningMaxDelay", "_config", "_woundTreatmentConfig", "_bandagedWounds", "_exist", "_injuryId", "_existingInjury", "_delay", "_openWounds", "_selectedInjury", "_bandagedInjury"]; +params ["_target", "_impact", "_part", "_injuryIndex", "_injury", "_bandage"]; -_classID = _injury select 1; +_injury parmas ["_classID", "_injuryType"]; _className = GVAR(woundClassNames) select _classID; // default, just in case.. @@ -58,10 +53,10 @@ if (isClass (_config >> _className)) then { _bandagedWounds = _target getvariable [QGVAR(bandagedWounds), []]; _exist = false; -_injuryType = _injury select 1; _bandagedInjury = []; { - if ((_x select 1) == _injuryType && (_x select 2) == (_injury select 2)) exitwith { + _x params ["", "_injuryTypeX", "_injuryX"]; + if (_injuryTypeX == _injuryType && _injuryTypeX == (_injury select 2)) exitwith { _exist = true; _existingInjury = _x; _existingInjury set [3, (_existingInjury select 3) + _impact]; @@ -69,7 +64,7 @@ _bandagedInjury = []; _bandagedInjury = _existingInjury; }; -}foreach _bandagedWounds; +} foreach _bandagedWounds; if !(_exist) then { // [ID, classID, bodypart, percentage treated, bloodloss rate] @@ -83,12 +78,8 @@ _target setvariable [QGVAR(bandagedWounds), _bandagedWounds, true]; if (random(1) <= _reopeningChance) then { _delay = _reopeningMinDelay + random(_reopeningMaxDelay - _reopeningMinDelay); [{ - private ["_target", "_impact", "_part", "_injuryIndex", "_bandage", "_injury", "_openWounds", "_selectedInjury","_bandagedWounds","_exist"]; - _target = _this select 0; - _impact = _this select 1; - _part = _this select 2; - _injuryIndex = _this select 3; - _injury = _this select 4; + private ["_bandage", "_openWounds", "_selectedInjury","_bandagedWounds","_exist"]; + params ["_target", "_impact", "_part", "_injuryIndex", "_injury"]; //if (alive _target) then { _openWounds = _target getvariable [QGVAR(openWounds), []]; @@ -102,13 +93,14 @@ if (random(1) <= _reopeningChance) then { _exist = false; _injuryId = _injury select 1; { - if ((_x select 1) == _injuryId && (_x select 2) == (_injury select 2)) exitwith { + _x params ["_injuryIdX", "_injuryX"]; + if (_injuryIdX == _injuryId && _injuryX == (_injury select 2)) exitwith { _exist = true; _existingInjury = _x; _existingInjury set [3, ((_existingInjury select 3) - _impact) max 0]; _bandagedWounds set [_foreachIndex, _existingInjury]; }; - }foreach _bandagedWounds; + } foreach _bandagedWounds; if (_exist) then { _target setvariable [QGVAR(bandagedWounds), _bandagedWounds, true]; diff --git a/addons/medical/functions/fnc_handleCreateLitter.sqf b/addons/medical/functions/fnc_handleCreateLitter.sqf index d7595ec439..31e65218c2 100644 --- a/addons/medical/functions/fnc_handleCreateLitter.sqf +++ b/addons/medical/functions/fnc_handleCreateLitter.sqf @@ -1,9 +1,22 @@ -//#define DEBUG_MODE_FULL +/* + * Author: Glowbal + * handle Litter Create + * + * Arguments: + * 0: Litter Class + * 1: Position + * 2: Unit + * + * Return Value: + * None + * + * Public: No + */ #include "script_component.hpp" if(!hasInterface) exitWith { false }; -PARAMS_3(_litterClass,_position,_direction); +params ["_litterClass", "_position", "_unit"]; private["_litterObject", "_maxLitterCount"]; //IGNORE_PRIVATE_WARNING(_values); @@ -16,9 +29,9 @@ _litterObject = _litterClass createVehicleLocal _position; _litterObject setDir _direction; _litterObject setPosATL _position; // Move the litter next frame to get rid of HORRIBLE spacing, fixes #1112 -[{ (_this select 0) setPosATL (_this select 1); }, [_litterObject, _position]] call EFUNC(common,execNextFrame); - -_maxLitterCount = getArray (configFile >> "ACE_Settings" >> QGVAR(litterSimulationDetail) >> "_values") select GVAR(litterSimulationDetail); +[{ params ["_object", "_pos"]; _object setPosATL _pos; }, [_litterObject, _position]] call EFUNC(common,execNextFrame); + +_maxLitterCount = getArray (configFile >> "ACE_Settings" >> QGVAR(litterSimulationDetail) >> "_values") select GVAR(litterSimulationDetail); if((count GVAR(allCreatedLitter)) > _maxLitterCount ) then { // gank the first litter object, and spawn ours. private["_oldLitter"]; @@ -34,10 +47,11 @@ if(!GVAR(litterPFHRunning) && {GVAR(litterCleanUpDelay) > 0}) then { GVAR(litterPFHRunning) = true; [{ { - if (ACE_time - (_x select 0) >= GVAR(litterCleanUpDelay)) then { + _x params ["_time", "_objects"]; + if (ACE_time - _time >= GVAR(litterCleanUpDelay)) then { { deleteVehicle _x; - } forEach (_x select 1); + } forEach _objects; GVAR(allCreatedLitter) set[_foreachIndex, objNull]; }; } forEach GVAR(allCreatedLitter); @@ -46,8 +60,6 @@ if(!GVAR(litterPFHRunning) && {GVAR(litterCleanUpDelay) > 0}) then { if ( (count GVAR(allCreatedLitter)) == 0) exitwith { [(_this select 1)] call CBA_fnc_removePerFrameHandler; GVAR(litterPFHRunning) = false; - }; + }; }, 30, []] call CBA_fnc_addPerFrameHandler; }; - -true \ No newline at end of file diff --git a/addons/medical/functions/fnc_handleDamage.sqf b/addons/medical/functions/fnc_handleDamage.sqf index a4e5525276..a3dea00235 100644 --- a/addons/medical/functions/fnc_handleDamage.sqf +++ b/addons/medical/functions/fnc_handleDamage.sqf @@ -17,12 +17,8 @@ #include "script_component.hpp" -private ["_unit", "_selection", "_damage", "_shooter", "_projectile", "_damageReturn", "_typeOfDamage", "_minLethalDamage", "_newDamage", "_typeIndex", "_preventDeath"]; -_unit = _this select 0; -_selection = _this select 1; -_damage = _this select 2; -_shooter = _this select 3; -_projectile = _this select 4; +private ["_damageReturn", "_typeOfDamage", "_minLethalDamage", "_newDamage", "_typeIndex", "_preventDeath"]; +params ["_unit", "_selection", "_damage", "_shooter", "_projectile"]; if !(local _unit) exitWith {nil}; @@ -53,7 +49,6 @@ if (GVAR(level) < 2) then { }; _newDamage = _this call FUNC(handleDamage_caching); // handleDamage_caching may have modified the projectile string - _projectile = _this select 4; _typeOfDamage = [_projectile] call FUNC(getTypeOfDamage); _typeIndex = (GVAR(allAvailableDamageTypes) find _typeOfDamage); @@ -123,4 +118,4 @@ if (((_unit getVariable [QGVAR(enableRevive), GVAR(enableRevive)]) > 0) && {_dam 0.89; }; -_damageReturn; +_damageReturn diff --git a/addons/medical/functions/fnc_handleDamage_advanced.sqf b/addons/medical/functions/fnc_handleDamage_advanced.sqf index e617738a90..f1ba5cc6f0 100644 --- a/addons/medical/functions/fnc_handleDamage_advanced.sqf +++ b/addons/medical/functions/fnc_handleDamage_advanced.sqf @@ -12,20 +12,15 @@ * 6: Type of Damage * * Return Value: - * Nothing + * None * * Public: No */ #include "script_component.hpp" -private ["_unit","_selectionName","_amountOfDamage","_sourceOfDamage","_typeOfProjectile","_typeOfDamage", "_part", "_damageBodyParts", "_newDamage", "_hitPoints"]; -_unit = _this select 0; -_selectionName = _this select 1; -_amountOfDamage = _this select 2; -_sourceOfDamage = _this select 3; -_typeOfProjectile = _this select 4; -_newDamage = _this select 5; +private ["_typeOfProjectile", "_part", "_damageBodyParts", "_hitPoints"]; +params ["_unit", "_selectionName", "_amountOfDamage", "_sourceOfDamage", "_typeOfDamage", "_newDamage"]; // Most likely taking exessive fire damage. Lets exit. if (isNull _sourceOfDamage && {_typeOfProjectile == ""} && {vehicle _unit == _unit} && {(_selectionName == "head" || isBurning _unit)}) exitwith {}; diff --git a/addons/medical/functions/fnc_handleDamage_advancedSetDamage.sqf b/addons/medical/functions/fnc_handleDamage_advancedSetDamage.sqf index 3df8a5ce0c..dc1e1a6fea 100644 --- a/addons/medical/functions/fnc_handleDamage_advancedSetDamage.sqf +++ b/addons/medical/functions/fnc_handleDamage_advancedSetDamage.sqf @@ -6,14 +6,14 @@ * 0: Unit for which the hitpoint damage will be sorted out * * Return Value: - * nil + * None * * Public: No */ #include "script_component.hpp" -PARAMS_1(_unit); +params ["_unit"]; if (!local _unit) exitwith {}; @@ -22,7 +22,7 @@ private ["_bodyStatus", "_headDamage", "_torsoDamage", "_handsDamage", "_legsDam // ["head", "body", "hand_l", "hand_r", "leg_l", "leg_r"] _bodyStatus = _unit getVariable [QGVAR(bodyPartStatus), [0,0,0,0,0,0]]; -EXPLODE_6_PVT(_bodyStatus,_headDamage,_torsoDamage,_handsDamageR,_handsDamageL,_legsDamageR,_legsDamageL); +_bodyStatus params ["_headDamage", "_torsoDamage", "_handsDamageR", "_handsDamageL", "_legsDamageR", "_legsDamageL"] _unit setHitPointDamage ["hitHead", _headDamage min 0.95]; _unit setHitPointDamage ["hitBody", _torsoDamage min 0.95]; diff --git a/addons/medical/functions/fnc_handleDamage_airway.sqf b/addons/medical/functions/fnc_handleDamage_airway.sqf index bc220eaad9..8b627faae1 100644 --- a/addons/medical/functions/fnc_handleDamage_airway.sqf +++ b/addons/medical/functions/fnc_handleDamage_airway.sqf @@ -10,19 +10,15 @@ * 4: Type of the damage done * * Return Value: - * None + * None * * Public: No */ #include "script_component.hpp" -private ["_unit", "_selectionName", "_amountOfDamage", "_sourceOfDamage", "_typeOfDamage", "_bodyPartn"]; -_unit = _this select 0; -_selectionName = _this select 1; -_amountOfDamage = _this select 2; -_sourceOfDamage = _this select 3; -_typeOfDamage = _this select 4; +private "_bodyPartn"; +params ["_unit", "_selectionName", "_amountOfDamage", "_sourceOfDamage", "_typeOfDamage"]; _bodyPartn = [_selectionName] call FUNC(selectionNameToNumber); if (_bodyPartn > 1) exitwith {}; diff --git a/addons/medical/functions/fnc_handleDamage_basic.sqf b/addons/medical/functions/fnc_handleDamage_basic.sqf index 04049cfa7c..83563ad92a 100644 --- a/addons/medical/functions/fnc_handleDamage_basic.sqf +++ b/addons/medical/functions/fnc_handleDamage_basic.sqf @@ -24,13 +24,8 @@ #define ARMDAMAGETRESHOLD2 1.7 #define UNCONSCIOUSNESSTRESHOLD 0.7 -private ["_unit", "_selectionName", "_damage", "_shooter", "_projectile", "_damage", "_armdamage", "_hitPoint", "_index", "_legdamage", "_newDamage", "_otherDamage", "_pain", "_restore"]; - -_unit = _this select 0; -_selectionName = _this select 1; -_damage = _this select 2; -_shooter = _this select 3; -_projectile = _this select 4; +private ["_damage", "_armdamage", "_hitPoint", "_index", "_legdamage", "_newDamage", "_otherDamage", "_pain", "_restore"]; +params ["_unit", "_selectionName", "_damage", "_shooter", "_projectile"]; // Apply damage treshold / coefficient _threshold = [ @@ -52,8 +47,10 @@ if (diag_frameno > (_unit getVariable [QGVAR(basic_frameNo), -3]) + 2) then { if (isnil {_unit getvariable QGVAR(structDamagePFH)}) then { // Assign orphan structural damage to torso [{ - private ["_unit", "_damagesum"]; - _unit = (_this select 0) select 0; + private "_damagesum"; + params ["_args", "_idPFH"]; + _args params ["_unit"]; + if (ACE_diagTime - (_unit getvariable [QGVAR(structDamagePFH),-2]) >= 2) then { _unit setVariable [QGVAR(structDamagePFH), nil]; _damagesum = (_unit getHitPointDamage "HitHead") + @@ -65,7 +62,7 @@ if (diag_frameno > (_unit getVariable [QGVAR(basic_frameNo), -3]) + 2) then { if (_damagesum < 0.06 and damage _unit > 0.06 and alive _unit) then { _unit setHitPointDamage ["HitBody", damage _unit]; }; - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; }; }, 0, [_unit]] call CBA_fnc_addPerFrameHandler; }; diff --git a/addons/medical/functions/fnc_handleDamage_caching.sqf b/addons/medical/functions/fnc_handleDamage_caching.sqf index 99816ee274..9d31e53b1e 100644 --- a/addons/medical/functions/fnc_handleDamage_caching.sqf +++ b/addons/medical/functions/fnc_handleDamage_caching.sqf @@ -18,12 +18,8 @@ #include "script_component.hpp" -private ["_unit", "_selectionName", "_damage", "_source", "_projectile", "_hitSelections", "_hitPoints", "_impactVelocity", "_newDamage", "_cache_hitpoints", "_cache_projectiles", "_cache_params", "_cache_damages"]; -_unit = _this select 0; -_selectionName = _this select 1; -_damage = _this select 2; -_source = _this select 3; -_projectile = _this select 4; +private ["_hitSelections", "_hitPoints", "_impactVelocity", "_newDamage", "_cache_hitpoints", "_cache_projectiles", "_cache_params", "_cache_damages"]; +params ["_unit", "_selectionName", "_damage", "_source", "_projectile"]; _hitSelections = GVAR(SELECTIONS); _hitPoints = GVAR(HITPOINTS); @@ -78,21 +74,21 @@ if (diag_frameno > (_unit getVariable [QGVAR(frameNo_damageCaching), -3]) + 2) t // handle the cached damages 3 frames later [{ private ["_args", "_params"]; - _args = _this select 0; + params ["_args", "_idPFH"]; + params ["_unit", "_frameno"]; + if (diag_frameno > _frameno + 2) then { + _unit setDamage 0; - if (diag_frameno > (_args select 1) + 2) then { - (_args select 0) setDamage 0; - - _cache_params = (_args select 0) getVariable [QGVAR(cachedHandleDamageParams), []]; - _cache_damages = (_args select 0) getVariable QGVAR(cachedDamages); + _cache_params = _unit getVariable [QGVAR(cachedHandleDamageParams), []]; + _cache_damages = _unit getVariable QGVAR(cachedDamages); { _params = _x + [_cache_damages select _foreachIndex]; _params call FUNC(handleDamage_advanced); - }foreach _cache_params; + } foreach _cache_params; - [(_args select 0)] call FUNC(handleDamage_advancedSetDamage); + [_unit] call FUNC(handleDamage_advancedSetDamage); - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; }; }, 0, [_unit, diag_frameno] ] call CBA_fnc_addPerFrameHandler; @@ -152,4 +148,4 @@ if (_selectionName != "") then { _unit setVariable [QGVAR(cachedHandleDamageParams), _cache_params]; }; -_newDamage; +_newDamage diff --git a/addons/medical/functions/fnc_handleDamage_fractures.sqf b/addons/medical/functions/fnc_handleDamage_fractures.sqf index 31fa1c8873..46000dbbdf 100644 --- a/addons/medical/functions/fnc_handleDamage_fractures.sqf +++ b/addons/medical/functions/fnc_handleDamage_fractures.sqf @@ -17,12 +17,8 @@ #include "script_component.hpp" -private ["_unit", "_selectionName", "_amountOfDamage", "_sourceOfDamage", "_typeOfDamage", "_bodyPartn", "_fractures", "_fractureType"]; -_unit = _this select 0; -_selectionName = _this select 1; -_amountOfDamage = _this select 2; -_sourceOfDamage = _this select 3; -_typeOfDamage = _this select 4; +private ["_bodyPartn", "_fractures", "_fractureType"]; +params ["_unit", "_selectionName", "_amountOfDamage", "_sourceOfDamage", "_typeOfDamage"]; _bodyPartn = [_selectionName] call FUNC(selectionNameToNumber); _fractureType = 1; diff --git a/addons/medical/functions/fnc_handleDamage_internalInjuries.sqf b/addons/medical/functions/fnc_handleDamage_internalInjuries.sqf index 6ee256a977..d8d9be1506 100644 --- a/addons/medical/functions/fnc_handleDamage_internalInjuries.sqf +++ b/addons/medical/functions/fnc_handleDamage_internalInjuries.sqf @@ -10,19 +10,15 @@ * 4: Type of the damage done * * Return Value: - * None + * None * * Public: No */ #include "script_component.hpp" -private ["_unit", "_selectionName", "_amountOfDamage", "_sourceOfDamage", "_typeOfDamage", "_bodyPartn"]; -_unit = _this select 0; -_selectionName = _this select 1; -_amountOfDamage = _this select 2; -_sourceOfDamage = _this select 3; -_typeOfDamage = _this select 4; +private "_bodyPartn"; +params ["_unit", "_selectionName", "_amountOfDamage", "_sourceOfDamage", "_typeOfDamage"]; _bodyPartn = [_selectionName] call FUNC(selectionNameToNumber); // TODO implement internal injuries diff --git a/addons/medical/functions/fnc_handleDamage_wounds.sqf b/addons/medical/functions/fnc_handleDamage_wounds.sqf index 70eeb74f9d..5711d903de 100644 --- a/addons/medical/functions/fnc_handleDamage_wounds.sqf +++ b/addons/medical/functions/fnc_handleDamage_wounds.sqf @@ -10,19 +10,15 @@ * 4: Type of the damage done * * Return Value: - * None + * None * * Public: No */ #include "script_component.hpp" -private ["_unit", "_selectionName", "_damage", "_typeOfProjectile", "_typeOfDamage", "_bodyPartn", "_injuryTypeInfo", "_allInjuriesForDamageType", "_allPossibleInjuries", "_highestPossibleDamage", "_highestPossibleSpot", "_minDamage", "_openWounds", "_woundID", "_toAddInjury", "_painToAdd", "_bloodLoss", "_bodyPartNToAdd", "_classType", "_damageLevels", "_foundIndex", "_i", "_injury", "_maxDamage", "_pain", "_painLevel", "_selections", "_toAddClassID", "_woundsCreated"]; -_unit = _this select 0; -_selectionName = _this select 1; -_damage = _this select 2; -_typeOfProjectile = _this select 3; -_typeOfDamage = _this select 4; +private ["_bodyPartn", "_injuryTypeInfo", "_allInjuriesForDamageType", "_allPossibleInjuries", "_highestPossibleDamage", "_highestPossibleSpot", "_minDamage", "_openWounds", "_woundID", "_toAddInjury", "_painToAdd", "_bloodLoss", "_bodyPartNToAdd", "_classType", "_damageLevels", "_foundIndex", "_i", "_injury", "_maxDamage", "_pain", "_painLevel", "_selections", "_toAddClassID", "_woundsCreated"]; +params ["_unit", "_selectionName", "_damage", "_typeOfProjectile", "_typeOfDamage"]; // Administration for open wounds and ids _openWounds = _unit getvariable[QGVAR(openWounds), []]; @@ -36,14 +32,13 @@ _woundsCreated = []; call compile _extensionOutput; _foundIndex = -1; { - _toAddClassID = _x select 1; - _bodyPartNToAdd = _x select 2; + _x params ["_toAddClassID", "_bodyPartNToAdd"]; { // Check if we have an id of the given class on the given bodypart already if (_x select 1 == _toAddClassID && {_x select 2 == _bodyPartNToAdd}) exitwith { _foundIndex = _foreachIndex; }; - }foreach _openWounds; + } foreach _openWounds; if (_foundIndex < 0) then { // Since it is a new injury, we will have to add it to the open wounds array to store it @@ -53,7 +48,7 @@ _foundIndex = -1; _injury = _openWounds select _foundIndex; _injury set [3, (_injury select 3) + 1]; }; -}foreach _woundsCreated; +} foreach _woundsCreated; _unit setvariable [QGVAR(openWounds), _openWounds, true]; diff --git a/addons/medical/functions/fnc_handleDamage_woundsOld.sqf b/addons/medical/functions/fnc_handleDamage_woundsOld.sqf index 1034ba9cae..0c08d1e884 100644 --- a/addons/medical/functions/fnc_handleDamage_woundsOld.sqf +++ b/addons/medical/functions/fnc_handleDamage_woundsOld.sqf @@ -17,12 +17,8 @@ #include "script_component.hpp" -private ["_unit", "_selectionName", "_damage", "_typeOfProjectile", "_typeOfDamage", "_bodyPartn", "_injuryTypeInfo", "_allInjuriesForDamageType", "_allPossibleInjuries", "_highestPossibleDamage", "_highestPossibleSpot", "_minDamage", "_openWounds", "_woundID", "_toAddInjury", "_painToAdd", "_bloodLoss", "_bodyPartNToAdd", "_classType", "_damageLevels", "_foundIndex", "_i", "_injury", "_maxDamage", "_pain", "_painLevel", "_selections", "_toAddClassID", "_woundsCreated"]; -_unit = _this select 0; -_selectionName = _this select 1; -_damage = _this select 2; -_typeOfProjectile = _this select 3; -_typeOfDamage = _this select 4; +private ["_bodyPartn", "_injuryTypeInfo", "_allInjuriesForDamageType", "_allPossibleInjuries", "_highestPossibleDamage", "_highestPossibleSpot", "_minDamage", "_openWounds", "_woundID", "_toAddInjury", "_painToAdd", "_bloodLoss", "_bodyPartNToAdd", "_classType", "_damageLevels", "_foundIndex", "_i", "_injury", "_maxDamage", "_pain", "_painLevel", "_selections", "_toAddClassID", "_woundsCreated"]; +params ["_unit", "_selectionName", "_damage", "_typeOfProjectile", "_typeOfDamage"]; // Convert the selectionName to a number and ensure it is a valid selection. _bodyPartn = [_selectionName] call FUNC(selectionNameToNumber); @@ -70,7 +66,7 @@ _allPossibleInjuries = []; _allPossibleInjuries pushback _x; }; }; -}foreach _allInjuriesForDamageType; +} foreach _allInjuriesForDamageType; // No possible wounds available for this damage type or damage amount. if (_highestPossibleSpot < 0) exitwith {}; @@ -98,7 +94,7 @@ _woundsCreated = []; if (_x select 1 == _toAddClassID && {_x select 2 == _bodyPartNToAdd}) exitwith { _foundIndex = _foreachIndex; }; - }foreach _openWounds; + } foreach _openWounds; }; _injury = []; @@ -123,7 +119,7 @@ _woundsCreated = []; _painToAdd = _painToAdd + (_toAddInjury select 3); }; }; -}foreach (_injuryTypeInfo select 0); // foreach damage thresholds +} foreach (_injuryTypeInfo select 0); // foreach damage thresholds _unit setvariable [QGVAR(openWounds), _openWounds, !USE_WOUND_EVENT_SYNC]; diff --git a/addons/medical/functions/fnc_handleKilled.sqf b/addons/medical/functions/fnc_handleKilled.sqf index 5003ec189c..d4fbfee30a 100644 --- a/addons/medical/functions/fnc_handleKilled.sqf +++ b/addons/medical/functions/fnc_handleKilled.sqf @@ -13,8 +13,8 @@ #include "script_component.hpp" -private["_unit", "_openWounds"]; -_unit = _this select 0; +private "_openWounds"; +params ["_unit"]; if (!local _unit) exitwith {}; _unit setvariable [QGVAR(pain), 0]; diff --git a/addons/medical/functions/fnc_handleLocal.sqf b/addons/medical/functions/fnc_handleLocal.sqf index c0f9c15292..50a30e90e8 100644 --- a/addons/medical/functions/fnc_handleLocal.sqf +++ b/addons/medical/functions/fnc_handleLocal.sqf @@ -15,9 +15,7 @@ #include "script_component.hpp" -private["_unit", "_local"]; -_unit = _this select 0; -_local = _this select 1; +params ["_unit", "_local"]; if (_local) then { if (_unit getvariable[QGVAR(addedToUnitLoop),false]) then { [_unit, true] call FUNC(addToInjuredCollection); diff --git a/addons/medical/functions/fnc_handleUnitVitals.sqf b/addons/medical/functions/fnc_handleUnitVitals.sqf index 0c7113f69a..cbb8f6fdcc 100644 --- a/addons/medical/functions/fnc_handleUnitVitals.sqf +++ b/addons/medical/functions/fnc_handleUnitVitals.sqf @@ -13,9 +13,8 @@ #include "script_component.hpp" -private ["_unit", "_heartRate","_bloodPressure","_bloodVolume","_painStatus", "_lastTimeValuesSynced", "_syncValues", "_airwayStatus", "_blood", "_bloodPressureH", "_bloodPressureL", "_interval"]; -_unit = _this select 0; -_interval = _this select 1; +private ["_heartRate","_bloodPressure","_bloodVolume","_painStatus", "_lastTimeValuesSynced", "_syncValues", "_airwayStatus", "_blood"]; +params ["_unit", "_interval"]; if (_interval == 0) exitWith {}; @@ -140,8 +139,7 @@ if (GVAR(level) >= 2) then { // Check vitals for medical status // TODO check for in revive state instead of variable - _bloodPressureL = _bloodPressure select 0; - _bloodPressureH = _bloodPressure select 1; + _bloodPressure params ["_bloodPressureL", "_bloodPressureH"]; if (!(_unit getvariable [QGVAR(inCardiacArrest),false])) then { if (_heartRate < 10 || _bloodPressureH < 30 || _bloodVolume < 20) then { @@ -180,6 +178,6 @@ if (GVAR(level) >= 2) then { if !(isnil "_value") then { _unit setvariable [_x,(_unit getvariable [_x, 0]), true]; }; - }foreach GVAR(IVBags); + } foreach GVAR(IVBags); }; }; diff --git a/addons/medical/functions/fnc_hasItem.sqf b/addons/medical/functions/fnc_hasItem.sqf index cfec633b55..df1a3828f5 100644 --- a/addons/medical/functions/fnc_hasItem.sqf +++ b/addons/medical/functions/fnc_hasItem.sqf @@ -16,19 +16,17 @@ #include "script_component.hpp" private ["_medic", "_patient", "_item", "_return", "_crew"]; -_medic = _this select 0; -_patient = _this select 1; -_item = _this select 2; +params ["_medic", "_patient", "_item"]; if (isnil QGVAR(setting_allowSharedEquipment)) then { GVAR(setting_allowSharedEquipment) = true; }; if (GVAR(setting_allowSharedEquipment) && {[_patient, _item] call EFUNC(common,hasItem)}) exitwith { - true; + true }; if ([_medic, _item] call EFUNC(common,hasItem)) exitwith { - true; + true }; _return = false; @@ -38,7 +36,7 @@ if ((vehicle _medic != _medic) && {[vehicle _medic] call FUNC(isMedicalVehicle)} if ([_medic, _x] call FUNC(canAccessMedicalEquipment) && {([_x, _item] call EFUNC(common,hasItem))}) exitwith { _return = true; }; - }foreach _crew; + } foreach _crew; }; -_return; +_return diff --git a/addons/medical/functions/fnc_hasItems.sqf b/addons/medical/functions/fnc_hasItems.sqf index ea16edebc4..dd53cb3337 100644 --- a/addons/medical/functions/fnc_hasItems.sqf +++ b/addons/medical/functions/fnc_hasItems.sqf @@ -16,9 +16,7 @@ #include "script_component.hpp" private ["_medic", "_patient", "_items", "_return"]; -_medic = _this select 0; -_patient = _this select 1; -_items = _this select 2; +params ["_medic", "_patient", "_items"]; _return = true; { @@ -31,4 +29,4 @@ _return = true; }; }foreach _items; -_return; +_return diff --git a/addons/medical/functions/fnc_hasMedicalEnabled.sqf b/addons/medical/functions/fnc_hasMedicalEnabled.sqf index 63fddd16b4..cbf40078fd 100644 --- a/addons/medical/functions/fnc_hasMedicalEnabled.sqf +++ b/addons/medical/functions/fnc_hasMedicalEnabled.sqf @@ -1,21 +1,27 @@ -/** - * fn_hasMedicalEnabled.sqf - * @Descr: Check if unit has CMS enabled. - * @Author: Glowbal - * - * @Arguments: [unit OBJECT] - * @Return: BOOL - * @PublicAPI: true - */ +/* + * Author: Glowbal + * Check if unit has CMS enabled + * + * Arguments: + * 0: unit + * + * Return Value: + * enabled + * + * Example: + * [Unit] call ace_medical_fnc_hasMedicalEnabled + * + * Public: No + */ #include "script_component.hpp" -private ["_unit", "_medicalEnabled"]; -_unit = _this select 0; +private "_medicalEnabled"; +params ["_unit"]; _medicalEnabled = _unit getvariable QGVAR(enableMedical); if (isnil "_medicalEnabled") exitwith { - (((GVAR(enableFor) == 0 && (isPlayer _unit || (_unit getvariable [QEGVAR(common,isDeadPlayer), false])))) || (GVAR(enableFor) == 1) || GVAR(level) == 1); + (((GVAR(enableFor) == 0 && (isPlayer _unit || (_unit getvariable [QEGVAR(common,isDeadPlayer), false])))) || (GVAR(enableFor) == 1) || GVAR(level) == 1) }; -_medicalEnabled; +_medicalEnabled diff --git a/addons/medical/functions/fnc_hasTourniquetAppliedTo.sqf b/addons/medical/functions/fnc_hasTourniquetAppliedTo.sqf index 6183854e45..955665233a 100644 --- a/addons/medical/functions/fnc_hasTourniquetAppliedTo.sqf +++ b/addons/medical/functions/fnc_hasTourniquetAppliedTo.sqf @@ -14,8 +14,6 @@ #include "script_component.hpp" -private ["_target", "_selectionName"]; -_target = _this select 0; -_selectionName = _this select 1; +params ["_target", "_selectionName"]; (((_target getvariable [QGVAR(tourniquets), [0,0,0,0,0,0]]) select ([_selectionName] call FUNC(selectionNameToNumber))) > 0); diff --git a/addons/medical/functions/fnc_init.sqf b/addons/medical/functions/fnc_init.sqf index 27d80163a5..fe8715c352 100644 --- a/addons/medical/functions/fnc_init.sqf +++ b/addons/medical/functions/fnc_init.sqf @@ -13,9 +13,8 @@ #include "script_component.hpp" -private ["_unit", "_allUsedMedication", "_logs"]; - -_unit = _this select 0; +private ["_allUsedMedication", "_logs"]; +params ["_unit"]; _unit setVariable [QGVAR(pain), 0, true]; _unit setVariable [QGVAR(morphine), 0, true]; diff --git a/addons/medical/functions/fnc_isBeingCarried.sqf b/addons/medical/functions/fnc_isBeingCarried.sqf index 6505f8b51a..b47c5e475f 100644 --- a/addons/medical/functions/fnc_isBeingCarried.sqf +++ b/addons/medical/functions/fnc_isBeingCarried.sqf @@ -15,7 +15,7 @@ */ #include "script_component.hpp" -PARAMS_1(_target); +params ["_target"]; private "_owner"; diff --git a/addons/medical/functions/fnc_isBeingDragged.sqf b/addons/medical/functions/fnc_isBeingDragged.sqf index 4d09ed9e29..929b48ccb7 100644 --- a/addons/medical/functions/fnc_isBeingDragged.sqf +++ b/addons/medical/functions/fnc_isBeingDragged.sqf @@ -15,7 +15,7 @@ */ #include "script_component.hpp" -PARAMS_1(_target); +params ["_target"]; private "_owner"; diff --git a/addons/medical/functions/fnc_isInMedicalFacility.sqf b/addons/medical/functions/fnc_isInMedicalFacility.sqf index bed660a46a..34f1cf4244 100644 --- a/addons/medical/functions/fnc_isInMedicalFacility.sqf +++ b/addons/medical/functions/fnc_isInMedicalFacility.sqf @@ -13,8 +13,8 @@ #include "script_component.hpp" -private ["_unit","_eyePos","_objects","_isInBuilding","_medicalFacility"]; -_unit = _this select 0; +private ["_eyePos", "_objects", "_isInBuilding", "_medicalFacility"]; +params ["_unit"]; _eyePos = eyePos _unit; _isInBuilding = false; @@ -42,13 +42,13 @@ _objects = (lineIntersectsWith [_unit modelToWorldVisual [0, 0, (_eyePos select if (((typeOf _x) in _medicalFacility) || (_x getVariable [QGVAR(isMedicalFacility),false])) exitwith { _isInBuilding = true; }; -}foreach _objects; +} foreach _objects; if (!_isInBuilding) then { _objects = position _unit nearObjects 7.5; { if (((typeOf _x) in _medicalFacility) || (_x getVariable [QGVAR(isMedicalFacility),false])) exitwith { _isInBuilding = true; }; - }foreach _objects; + } foreach _objects; }; _isInBuilding; diff --git a/addons/medical/functions/fnc_isInMedicalVehicle.sqf b/addons/medical/functions/fnc_isInMedicalVehicle.sqf index d376ce3824..1f1ff193fd 100644 --- a/addons/medical/functions/fnc_isInMedicalVehicle.sqf +++ b/addons/medical/functions/fnc_isInMedicalVehicle.sqf @@ -13,9 +13,8 @@ #include "script_component.hpp" -private ["_unit", "_vehicle"]; - -_unit = _this select 0; +private ["_vehicle"]; +params ["_unit"]; _vehicle = vehicle _unit; if (_unit == _vehicle) exitWith {false}; diff --git a/addons/medical/functions/fnc_isInStableCondition.sqf b/addons/medical/functions/fnc_isInStableCondition.sqf index f7c22ed085..763185640c 100644 --- a/addons/medical/functions/fnc_isInStableCondition.sqf +++ b/addons/medical/functions/fnc_isInStableCondition.sqf @@ -13,8 +13,8 @@ #include "script_component.hpp" -private ["_unit"]; -_unit = _this select 0; +private ["_openWounds", "_openWounds"]; +params ["_unit"]; if (GVAR(level) <= 1) exitwith { ([_unit] call FUNC(getBloodloss)) == 0; @@ -25,6 +25,6 @@ _openWounds = _unit getvariable [QGVAR(openWounds), []]; { // total bleeding ratio * percentage of injury left _totalBloodLoss = _totalBloodLoss + ((_x select 4) * (_x select 3)); -}foreach _openWounds; +} foreach _openWounds; (_totalBloodLoss == 0); diff --git a/addons/medical/functions/fnc_isMedic.sqf b/addons/medical/functions/fnc_isMedic.sqf index 122d261238..ca974fb751 100644 --- a/addons/medical/functions/fnc_isMedic.sqf +++ b/addons/medical/functions/fnc_isMedic.sqf @@ -4,7 +4,7 @@ * * Arguments: * 0: The Unit - * 1: Class + * 1: Class (default: 1) * * ReturnValue: * Is in of medic class @@ -15,8 +15,7 @@ #include "script_component.hpp" private ["_unit", "_class", "_medicN"]; -_unit = _this select 0; -_medicN = if (count _this > 1) then {_this select 1} else {1}; +params ["_unit", ["_medicN", 1]]; _class = _unit getVariable [QGVAR(medicClass), getNumber (configFile >> "CfgVehicles" >> typeOf _unit >> "attendant")]; diff --git a/addons/medical/functions/fnc_isMedicalVehicle.sqf b/addons/medical/functions/fnc_isMedicalVehicle.sqf index 5e9283852f..14499cb241 100644 --- a/addons/medical/functions/fnc_isMedicalVehicle.sqf +++ b/addons/medical/functions/fnc_isMedicalVehicle.sqf @@ -12,7 +12,6 @@ */ #include "script_component.hpp" -private ["_vehicle"]; -_vehicle = _this select 0; +params ["_vehicle"]; (_vehicle getVariable [QGVAR(medicClass), getNumber (configFile >> "CfgVehicles" >> typeOf _vehicle >> "attendant")]) > 0 diff --git a/addons/medical/functions/fnc_itemCheck.sqf b/addons/medical/functions/fnc_itemCheck.sqf index c903417dfc..d49e04e774 100644 --- a/addons/medical/functions/fnc_itemCheck.sqf +++ b/addons/medical/functions/fnc_itemCheck.sqf @@ -6,15 +6,14 @@ * 0: The unit * * ReturnValue: - * nil + * None * * Public: Yes */ #include "script_component.hpp" -private ["_unit"]; -_unit = _this select 0; +params ["_unit"]; while {({_x == "FirstAidKit"} count items _unit) > 0} do { _unit removeItem "FirstAidKit"; diff --git a/addons/medical/functions/fnc_modifyMedicalAction.sqf b/addons/medical/functions/fnc_modifyMedicalAction.sqf index 268ba8e253..1ac709059f 100644 --- a/addons/medical/functions/fnc_modifyMedicalAction.sqf +++ b/addons/medical/functions/fnc_modifyMedicalAction.sqf @@ -10,14 +10,15 @@ * 3: The action to modify * * ReturnValue: - * nil + * None * * Public: No */ #include "script_component.hpp" -EXPLODE_4_PVT(_this,_target,_player,_selectionN,_actionData); +params ["_target", "_player", "_selectionN", "_actionData"]; + if (GVAR(level) < 2) exitwith { private ["_pointDamage"]; _pointDamage = _target getHitPointDamage (["HitHead", "HitBody", "HitLeftArm", "HitRightArm", "HitLeftLeg", "HitRightLeg"] select _selectionN); @@ -33,8 +34,8 @@ if (GVAR(level) < 2) exitwith { private ["_openWounds", "_amountOf"]; _openWounds = _target getvariable [QGVAR(openWounds), []]; { - _amountOf = _x select 3; - if (_amountOf > 0 && {(_selectionN == (_x select 2))} && {(_x select 4) > 0}) exitwith { + _x params ["", "", "_selectionX", "_amountOf", "_x4"]; + if (_amountOf > 0 && {(_selectionN == _selectionX)} && {_x4 > 0}) exitwith { _actionData set [2, QUOTE(PATHTOF(UI\icons\medical_crossRed.paa))]; }; } foreach _openWounds; diff --git a/addons/medical/functions/fnc_moduleAdvancedMedicalSettings.sqf b/addons/medical/functions/fnc_moduleAdvancedMedicalSettings.sqf index 2960c65b9d..b54196d75f 100644 --- a/addons/medical/functions/fnc_moduleAdvancedMedicalSettings.sqf +++ b/addons/medical/functions/fnc_moduleAdvancedMedicalSettings.sqf @@ -8,17 +8,14 @@ * 2: activated * * Return Value: - * None + * None * * Public: No */ #include "script_component.hpp" -private ["_logic", "_units", "_activated"]; -_logic = _this select 0; -_units = _this select 1; -_activated = _this select 2; +params ["_logic", "_units", "_activated"]; if !(_activated) exitWith {}; diff --git a/addons/medical/functions/fnc_moduleAssignMedicRoles.sqf b/addons/medical/functions/fnc_moduleAssignMedicRoles.sqf index 1c26eb53d4..e295c55a2e 100644 --- a/addons/medical/functions/fnc_moduleAssignMedicRoles.sqf +++ b/addons/medical/functions/fnc_moduleAssignMedicRoles.sqf @@ -8,15 +8,15 @@ * 2: activated * * Return Value: - * None + * None * * Public: No */ #include "script_component.hpp" -private ["_logic","_setting","_objects", "_list", "_splittedList", "_nilCheckPassedList", "_parsedList"]; -_logic = [_this,0,objNull,[objNull]] call BIS_fnc_param; +private ["_setting", "_objects", "_list", "_splittedList", "_nilCheckPassedList", "_parsedList"]; +params [["_logic", objNull, [objNull]]]; if (!isNull _logic) then { _list = _logic getvariable ["EnableList",""]; @@ -32,7 +32,7 @@ if (!isNull _logic) then { _nilCheckPassedList = _nilCheckPassedList + ","+ _x; }; }; - }foreach _splittedList; + } foreach _splittedList; _list = "[" + _nilCheckPassedList + "]"; _parsedList = [] call compile _list; @@ -47,7 +47,7 @@ if (!isNull _logic) then { }; }; }; - }foreach _objects; + } foreach _objects; }; { if (!isnil "_x") then { @@ -57,7 +57,5 @@ if (!isNull _logic) then { }; }; }; - }foreach _parsedList; + } foreach _parsedList; }; - -true \ No newline at end of file diff --git a/addons/medical/functions/fnc_moduleAssignMedicalFacility.sqf b/addons/medical/functions/fnc_moduleAssignMedicalFacility.sqf index c08d737f4b..7a219f2559 100644 --- a/addons/medical/functions/fnc_moduleAssignMedicalFacility.sqf +++ b/addons/medical/functions/fnc_moduleAssignMedicalFacility.sqf @@ -8,15 +8,15 @@ * 2: activated * * Return Value: - * None + * None * * Public: No */ #include "script_component.hpp" -private ["_logic","_setting","_objects"]; -_logic = [_this,0,objNull,[objNull]] call BIS_fnc_param; +private ["_setting", "_objects"]; +params [["_logic", objNull, [objNull]]]; if (!isNull _logic) then { _setting = _logic getvariable ["class",0]; _objects = synchronizedObjects _logic; @@ -24,7 +24,7 @@ if (!isNull _logic) then { if (local _x) then { _x setvariable[QGVAR(isMedicalFacility), true, true]; }; - }foreach _objects; + } foreach _objects; }; true; diff --git a/addons/medical/functions/fnc_moduleAssignMedicalVehicle.sqf b/addons/medical/functions/fnc_moduleAssignMedicalVehicle.sqf index af6de73ce1..9744ce5f7b 100644 --- a/addons/medical/functions/fnc_moduleAssignMedicalVehicle.sqf +++ b/addons/medical/functions/fnc_moduleAssignMedicalVehicle.sqf @@ -8,7 +8,7 @@ * 2: activated * * Return Value: - * None + * None * * Public: No */ @@ -16,8 +16,8 @@ #include "script_component.hpp" -private ["_logic","_setting","_objects", "_list", "_splittedList", "_nilCheckPassedList", "_parsedList"]; -_logic = [_this,0,objNull,[objNull]] call BIS_fnc_param; +private ["_setting", "_objects", "_list", "_splittedList", "_nilCheckPassedList", "_parsedList"]; +params [["_logic", objNull, [objNull]]]; if (!isNull _logic) then { _list = _logic getvariable ["EnableList",""]; @@ -33,7 +33,7 @@ if (!isNull _logic) then { _nilCheckPassedList = _nilCheckPassedList + ","+ _x; }; }; - }foreach _splittedList; + } foreach _splittedList; _list = "[" + _nilCheckPassedList + "]"; _parsedList = [] call compile _list; @@ -48,7 +48,7 @@ if (!isNull _logic) then { }; }; }; - }foreach _objects; + } foreach _objects; }; { if (!isnil "_x") then { @@ -58,7 +58,5 @@ if (!isNull _logic) then { }; }; }; - }foreach _parsedList; + } foreach _parsedList; }; - -true; diff --git a/addons/medical/functions/fnc_moduleMedicalSettings.sqf b/addons/medical/functions/fnc_moduleMedicalSettings.sqf index 00b7a15fcf..4e1af0e86c 100644 --- a/addons/medical/functions/fnc_moduleMedicalSettings.sqf +++ b/addons/medical/functions/fnc_moduleMedicalSettings.sqf @@ -8,17 +8,14 @@ * 2: activated * * Return Value: - * None + * None * * Public: No */ #include "script_component.hpp" -private ["_logic", "_units", "_activated"]; -_logic = _this select 0; -_units = _this select 1; -_activated = _this select 2; +params ["_logic", "_units", "_activated"]; if !(_activated) exitWith {}; diff --git a/addons/medical/functions/fnc_moduleReviveSettings.sqf b/addons/medical/functions/fnc_moduleReviveSettings.sqf index c96b1eb67c..19aa9579dd 100644 --- a/addons/medical/functions/fnc_moduleReviveSettings.sqf +++ b/addons/medical/functions/fnc_moduleReviveSettings.sqf @@ -8,17 +8,14 @@ * 2: activated * * Return Value: - * None + * None * * Public: No */ #include "script_component.hpp" -private ["_logic", "_units", "_activated"]; -_logic = _this select 0; -_units = _this select 1; -_activated = _this select 2; +params ["_logic", "_units", "_activated"]; if !(_activated) exitWith {}; diff --git a/addons/medical/functions/fnc_onMedicationUsage.sqf b/addons/medical/functions/fnc_onMedicationUsage.sqf index 904ad3ef88..d71896b6f0 100644 --- a/addons/medical/functions/fnc_onMedicationUsage.sqf +++ b/addons/medical/functions/fnc_onMedicationUsage.sqf @@ -11,28 +11,21 @@ * 5: Incompatable medication > * * Return Value: - * NONE + * None * * Public: No */ #include "script_component.hpp" -private ["_target", "_className", "_variable", "_maxDosage", "_timeInSystem", "_incompatabileMeds", "_foundEntry", "_allUsedMedication","_allMedsFromClassname", "_usedMeds", "_hasOverDosed", "_med", "_limit", "_classNamesUsed", "_decreaseAmount", "_viscosityChange", "_viscosityAdjustment", "_medicationConfig", "_onOverDose", "_painReduce"]; -_target = _this select 0; -_className = _this select 1; -_variable = _this select 2; -_maxDosage = _this select 3; -_timeInSystem = _this select 4; -_incompatabileMeds = _this select 5; -_viscosityChange = _this select 6; -_painReduce = _this select 7; +private ["_foundEntry", "_allUsedMedication","_allMedsFromClassname", "_usedMeds", "_hasOverDosed", "_med", "_limit", "_decreaseAmount", "_viscosityAdjustment", "_medicationConfig", "_onOverDose"]; +params ["_target", "_className", "_variable", "_maxDosage", "_timeInSystem", "_incompatabileMeds", "_viscosityChange", "_painReduce"]; _foundEntry = false; _allUsedMedication = _target getvariable [QGVAR(allUsedMedication), []]; { - if (_x select 0 == _variable) exitwith { - _allMedsFromClassname = _x select 1; + _x params ["_variableX", "_allMedsFromClassname"]; + if (_variableX== _variable) exitwith { if !(_className in _allMedsFromClassname) then { _allMedsFromClassname pushback _className; _x set [1, _allMedsFromClassname]; @@ -56,15 +49,14 @@ if (_usedMeds >= floor (_maxDosage + round(random(2))) && _maxDosage >= 1 && GVA _hasOverDosed = 0; { - _med = _x select 0; - _limit = _x select 1; + _x params ["_med", "_limit"]; { - _classNamesUsed = _x select 1; + _x params ["", "_classNamesUsed"]; if ({_x == _med} count _classNamesUsed > _limit) then { _hasOverDosed = _hasOverDosed + 1; }; - }foreach _allUsedMedication; -}foreach _incompatabileMeds; + } foreach _allUsedMedication; +} foreach _incompatabileMeds; if (_hasOverDosed > 0 && GVAR(enableOverdosing)) then { _medicationConfig = (configFile >> "ACE_Medical_Advanced" >> "Treatment" >> "Medication"); @@ -85,16 +77,8 @@ _decreaseAmount = 1 / _timeInSystem; _viscosityAdjustment = _viscosityChange / _timeInSystem; [{ - private ["_args", "_target", "_timeInSystem", "_variable", "_amountDecreased","_decreaseAmount", "_usedMeds", "_viscosityAdjustment", "_painReduce"]; - _args = _this select 0; - _target = _args select 0; - _timeInSystem = _args select 1; - _variable = _args select 2; - _amountDecreased = _args select 3; - _decreaseAmount = _args select 4; - _viscosityAdjustment = _args select 5; - _painReduce = _args select 6; - + params ["_args", "_idPFH"]; + _args params ["_target", "_timeInSystem", "_variable", "_amountDecreased","_decreaseAmount", "_usedMeds", "_viscosityAdjustment", "_painReduce"]; _usedMeds = _target getvariable [_variable, 0]; _usedMeds = _usedMeds - _decreaseAmount; _target setvariable [_variable, _usedMeds]; @@ -106,7 +90,7 @@ _viscosityAdjustment = _viscosityChange / _timeInSystem; _target setvariable [QGVAR(painSuppress), ((_target getvariable [QGVAR(painSuppress), 0]) - _painReduce) max 0]; if (_amountDecreased >= 1 || (_usedMeds <= 0) || !alive _target) then { - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [_idPFH] call CBA_fnc_removePerFrameHandler; }; _args set [3, _amountDecreased]; }, 1, [_target, _timeInSystem, _variable, 0, _decreaseAmount, _viscosityAdjustment, _painReduce / _timeInSystem] ] call CBA_fnc_addPerFrameHandler; diff --git a/addons/medical/functions/fnc_onPropagateWound.sqf b/addons/medical/functions/fnc_onPropagateWound.sqf index 934899eac4..f8b361ad17 100644 --- a/addons/medical/functions/fnc_onPropagateWound.sqf +++ b/addons/medical/functions/fnc_onPropagateWound.sqf @@ -7,7 +7,7 @@ * 1: injury * * Return Value: - * None + * None * * Public: No */ @@ -15,8 +15,7 @@ #include "script_component.hpp" private ["_unit", "_injury", "_openWounds", "_injuryID", "_exists"]; -_unit = _this select 0; -_injury = _this select 1; +params ["_unit", "_injury"]; if (!local _unit) then { _openWounds = _unit getvariable[QGVAR(openWounds), []]; @@ -28,7 +27,7 @@ if (!local _unit) then { _exists = true; _openWounds set [_foreachIndex, _injury]; }; - }foreach _openWounds; + } foreach _openWounds; if (!_exists) then { _openWounds pushback _injury; diff --git a/addons/medical/functions/fnc_onWoundUpdateRequest.sqf b/addons/medical/functions/fnc_onWoundUpdateRequest.sqf index 3c99496d7b..091bea7ef8 100644 --- a/addons/medical/functions/fnc_onWoundUpdateRequest.sqf +++ b/addons/medical/functions/fnc_onWoundUpdateRequest.sqf @@ -7,19 +7,18 @@ * 1: Origin object * * ReturnValue: - * + * None * * Public: Yes */ #include "script_component.hpp" private ["_unit", "_openWounds", "_originOfrequest"]; -_unit = _this select 0; -_originOfrequest = _this select 1; +params ["_unit", "_originOfrequest"]; if (local _unit && !(local _originOfrequest)) then { _openWounds = _unit getvariable [QGVAR(openWounds), []]; { ["medical_propagateWound", [_originOfrequest], [_unit, _x]] call EFUNC(common,targetEvent); - }foreach _openWounds; + } foreach _openWounds; }; diff --git a/addons/medical/functions/fnc_parseConfigForInjuries.sqf b/addons/medical/functions/fnc_parseConfigForInjuries.sqf index 1b2db7c278..e72ec63969 100644 --- a/addons/medical/functions/fnc_parseConfigForInjuries.sqf +++ b/addons/medical/functions/fnc_parseConfigForInjuries.sqf @@ -3,9 +3,9 @@ * Parse the ACE_Medical_Advanced config for all injury types. * * Arguments: - * + * None * ReturnValue: - * + * None * * Public: No */ @@ -110,7 +110,7 @@ _selectionSpecific = getNumber(_damageTypesConfig >> "selectionSpecific"); if (_type in (_x select 5)) then { _woundTypes pushback _x; }; - }foreach _allWoundClasses; + } foreach _allWoundClasses; _typeThresholds = _thresholds; _selectionSpecificType = _selectionSpecific; if (isClass(_damageTypesConfig >> _x)) then { @@ -130,46 +130,41 @@ _selectionSpecific = getNumber(_damageTypesConfig >> "selectionSpecific"); _minDamageThresholds = _minDamageThresholds + ":"; _amountThresholds = _amountThresholds + ":"; }; - }foreach _typeThresholds; + } foreach _typeThresholds; "ace_medical" callExtension format ["addDamageType,%1,%2,%3,%4,%5", _type, GVAR(minLethalDamages) select _foreachIndex, _minDamageThresholds, _amountThresholds, _selectionSpecificType]; -}foreach _allFoundDamageTypes; +} foreach _allFoundDamageTypes; // Extension loading { - private ["_classID", "_className", "_allowedSelections", "_bloodLoss", "_pain", "_minDamage", "_maxDamage", "_causes", "_classDisplayName", "_extensionInput", "_selections", "_causesArray"]; + private ["_className", "_allowedSelections", "_causes"]; // add shit to addInjuryType - _classID = _x select 0; + params ["_classID", "_selections", "_bloodLoss", "_pain", "_damage", "_causesArray", "_classDisplayName"]; + _damage params ["_minDamage", "_maxDamage"]; _className = GVAR(woundClassNames) select _forEachIndex; _allowedSelections = ""; - _selections = _x select 1; { _allowedSelections = _allowedSelections + _x; if (_forEachIndex < (count _selections) - 1) then { _allowedSelections = _allowedSelections + ":"; }; - }foreach _selections; + } foreach _selections; - _bloodLoss = _x select 2; - _pain = _x select 3; - _minDamage = (_x select 4) select 0; - _maxDamage = (_x select 4) select 1; _causes = ""; - _causesArray = (_x select 5); + { _causes = _causes + _x; if (_forEachIndex < (count _causesArray) - 1) then { _causes = _causes + ":"; }; - }foreach _causesArray; - _classDisplayName = _x select 6; + } foreach _causesArray; "ace_medical" callExtension format["addInjuryType,%1,%2,%3,%4,%5,%6,%7,%8,%9", _classID, _className, _allowedSelections, _bloodLoss, _pain, _minDamage, _maxDamage, _causes, _classDisplayName]; -}foreach _allWoundClasses; +} foreach _allWoundClasses; "ace_medical" callExtension "ConfigComplete"; diff --git a/addons/medical/functions/fnc_playInjuredSound.sqf b/addons/medical/functions/fnc_playInjuredSound.sqf index 3d41ec70db..ddf107c840 100644 --- a/addons/medical/functions/fnc_playInjuredSound.sqf +++ b/addons/medical/functions/fnc_playInjuredSound.sqf @@ -6,9 +6,10 @@ * * Arguments: * 0: The Unit + * 1: Amount of Pain * * ReturnValue: - * + * None * * Public: No */ @@ -16,8 +17,7 @@ #include "script_component.hpp" private ["_unit","_availableSounds_A","_availableSounds_B","_availableSounds_C","_sound", "_pain"]; -_unit = _this select 0; -_pain = _this select 1; +params ["_unit", "_pain"]; if (!local _unit || !GVAR(enableScreams)) exitwith{}; // Lock if the unit is already playing a sound. diff --git a/addons/medical/functions/fnc_setCardiacArrest.sqf b/addons/medical/functions/fnc_setCardiacArrest.sqf index c33d83bb40..b28e1cd679 100644 --- a/addons/medical/functions/fnc_setCardiacArrest.sqf +++ b/addons/medical/functions/fnc_setCardiacArrest.sqf @@ -35,11 +35,11 @@ _timeInCardiacArrest = 120 + round(random(600)); _heartRate = _unit getvariable [QGVAR(heartRate), 80]; if (_heartRate > 0 || !alive _unit) exitwith { - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; _unit setvariable [QGVAR(inCardiacArrest), nil,true]; }; if (ACE_time - _startTime >= _timeInCardiacArrest) exitwith { - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; _unit setvariable [QGVAR(inCardiacArrest), nil,true]; [_unit] call FUNC(setDead); }; diff --git a/addons/medical/functions/fnc_setDead.sqf b/addons/medical/functions/fnc_setDead.sqf index c29edcd5e3..e2884da391 100644 --- a/addons/medical/functions/fnc_setDead.sqf +++ b/addons/medical/functions/fnc_setDead.sqf @@ -50,7 +50,7 @@ if (((_reviveVal == 1 && {[_unit] call EFUNC(common,isPlayer)} || _reviveVal == _startTime = _unit getvariable [QGVAR(reviveStartTime), 0]; if (GVAR(maxReviveTime) > 0 && {ACE_time - _startTime > GVAR(maxReviveTime)}) exitwith { - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; _unit setvariable [QGVAR(inReviveState), nil, true]; _unit setvariable [QGVAR(reviveStartTime), nil]; [_unit, true] call FUNC(setDead); @@ -64,7 +64,7 @@ if (((_reviveVal == 1 && {[_unit] call EFUNC(common,isPlayer)} || _reviveVal == }; _unit setvariable [QGVAR(reviveStartTime), nil]; - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; }; if (GVAR(level) >= 2) then { if (_unit getvariable [QGVAR(heartRate), 60] > 0) then { diff --git a/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf b/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf index 5108bf8433..ceabb80587 100644 --- a/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf +++ b/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf @@ -36,13 +36,13 @@ _target setvariable [QGVAR(tourniquets), _tourniquets, true]; _part = _args select 2; _time = _args select 3; if (!alive _target) exitwith { - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; }; _tourniquets = _target getvariable [QGVAR(tourniquets), [0,0,0,0,0,0]]; if !((_tourniquets select _part) == _applyingTo) exitwith { // Tourniquet has been removed - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; }; if (ACE_time - _time > 120) then { _target setvariable [QGVAR(pain), (_target getvariable [QGVAR(pain), 0]) + 0.005]; diff --git a/addons/medical/functions/fnc_unconsciousPFH.sqf b/addons/medical/functions/fnc_unconsciousPFH.sqf index 5b1ca04d2d..c66f6863c8 100644 --- a/addons/medical/functions/fnc_unconsciousPFH.sqf +++ b/addons/medical/functions/fnc_unconsciousPFH.sqf @@ -45,7 +45,7 @@ if (!alive _unit) exitwith { [_unit, "isUnconscious"] call EFUNC(common,unmuteUnit); ["medical_onUnconscious", [_unit, false]] call EFUNC(common,globalEvent); - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; }; // In case the unit is no longer in an unconscious state, we are going to check if we can already reset the animation @@ -99,7 +99,7 @@ if !(_unit getvariable ["ACE_isUnconscious",false]) exitwith { ["medical_onUnconscious", [_unit, false]] call EFUNC(common,globalEvent); // EXIT PFH - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; }; if (!_hasMovedOut) then { // Reset the unit back to the previous captive state. @@ -132,7 +132,7 @@ if (_parachuteCheck) then { if (!local _unit) exitwith { _args set [3, _minWaitingTime - (ACE_time - _startingTime)]; _unit setvariable [QGVAR(unconsciousArguments), _args, true]; - [(_this select 1)] call cba_fnc_removePerFrameHandler; + [(_this select 1)] call CBA_fnc_removePerFrameHandler; }; // Ensure we are waiting at least a minimum period before checking if we can wake up the unit again, allows for temp knock outs