mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Merge branch 'surgicalkit'
This commit is contained in:
commit
9135d956f0
@ -206,8 +206,9 @@ class ACE_Medical_Actions {
|
||||
items[] = {"ACE_surgicalKit"};
|
||||
treatmentLocations[] = {QGVAR(useLocation_SurgicalKit)};
|
||||
requiredMedic = QGVAR(medicSetting_SurgicalKit);
|
||||
treatmentTime = 10;
|
||||
callbackSuccess = QUOTE(DFUNC(treatmentAdvanced_surgicalKit));
|
||||
treatmentTime = "(count ((_this select 1) getVariable ['ACE_Medical_bandagedWounds', []]) * 5)";
|
||||
callbackSuccess = "";
|
||||
callbackProgress = QUOTE(DFUNC(treatmentAdvanced_surgicalKit_onProgress));
|
||||
itemConsumed = QGVAR(consumeItem_SurgicalKit);
|
||||
animationCaller = "AinvPknlMstpSnonWnonDnon_medic1";
|
||||
litter[] = { {"All", "", {"ACE_MedicalLitter_gloves"} }};
|
||||
|
@ -78,6 +78,7 @@ PREP(treatmentAdvanced_fullHeal);
|
||||
PREP(treatmentAdvanced_fullHealLocal);
|
||||
PREP(treatmentAdvanced_medication);
|
||||
PREP(treatmentAdvanced_medicationLocal);
|
||||
PREP(treatmentAdvanced_surgicalKit_onProgress);
|
||||
PREP(treatmentBasic_bandage);
|
||||
PREP(treatmentBasic_bloodbag);
|
||||
PREP(treatmentBasic_bloodbagLocal);
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
#include "script_component.hpp"
|
||||
|
||||
private ["_caller", "_target", "_selectionName", "_className", "_config", "_medicRequired", "_items", "_locations", "_return", "_callbackProgress", "_treatmentTime", "_callerAnim", "_patientAnim", "_iconDisplayed", "_return", "_usersOfItems", "_consumeItems", "_condition", "_displayText", "_wpn"];
|
||||
private ["_caller", "_target", "_selectionName", "_className", "_config", "_medicRequired", "_items", "_locations", "_return", "_callbackProgress", "_treatmentTime", "_callerAnim", "_patientAnim", "_iconDisplayed", "_return", "_usersOfItems", "_consumeItems", "_condition", "_displayText", "_wpn", "_treatmentTimeConfig"];
|
||||
_caller = _this select 0;
|
||||
_target = _this select 1;
|
||||
_selectionName = _this select 2;
|
||||
@ -174,8 +174,26 @@ if (vehicle _caller == _caller && {_callerAnim != ""}) then {
|
||||
[_caller, _callerAnim] call EFUNC(common,doAnimation);
|
||||
};
|
||||
|
||||
//Get treatment time
|
||||
_treatmentTime = if (isNumber (_config >> "treatmentTime")) then {
|
||||
getNumber (_config >> "treatmentTime");
|
||||
} else {
|
||||
if (isText (_config >> "treatmentTime")) exitwith {
|
||||
_treatmentTimeConfig = getText(_config >> "treatmentTime");
|
||||
if (isnil _treatmentTimeConfig) then {
|
||||
_treatmentTimeConfig = compile _treatmentTimeConfig;
|
||||
} else {
|
||||
_treatmentTimeConfig = missionNamespace getvariable _treatmentTimeConfig;
|
||||
};
|
||||
if (typeName _treatmentTimeConfig == "SCALAR") exitwith {
|
||||
_treatmentTimeConfig;
|
||||
};
|
||||
[_caller, _target, _selectionName, _className] call _treatmentTimeConfig;
|
||||
};
|
||||
0;
|
||||
};
|
||||
|
||||
// Start treatment
|
||||
_treatmentTime = getNumber (_config >> "treatmentTime");
|
||||
[
|
||||
_treatmentTime,
|
||||
[_caller, _target, _selectionName, _className, _items, _usersOfItems],
|
||||
|
@ -0,0 +1,28 @@
|
||||
/*
|
||||
* Author: BaerMitUmlaut
|
||||
* Handles treatment via surgical kit per frame.
|
||||
*
|
||||
* Public: No
|
||||
*/
|
||||
|
||||
#include "script_component.hpp"
|
||||
|
||||
private ["_args", "_target", "_caller", "_elapsedTime", "_totalTime", "_bandagedWounds"];
|
||||
_args = _this select 0;
|
||||
_caller = _args select 0;
|
||||
_target = _args select 1;
|
||||
_elapsedTime = _this select 1;
|
||||
_totalTime = _this select 2;
|
||||
|
||||
_bandagedWounds = _target getVariable [QGVAR(bandagedWounds), []];
|
||||
|
||||
//In case two people stitch up one patient and the last wound has already been closed we can stop already
|
||||
if (count _bandagedWounds == 0) exitWith {false};
|
||||
|
||||
//Has enough time elapsed that we can close another wound?
|
||||
if ((_totalTime - _elapsedTime) <= (((count _bandagedWounds) - 1) * 5)) then {
|
||||
_bandagedWounds deleteAt 0;
|
||||
_target setVariable [QGVAR(bandagedWounds), _bandagedWounds, true];
|
||||
};
|
||||
|
||||
true
|
Loading…
Reference in New Issue
Block a user