mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Merge pull request #936 from acemod/explosivesSleepReplacement
Replaced sleep with waitAndExecute
This commit is contained in:
commit
6d0e2cc464
@ -17,7 +17,7 @@
|
||||
#include "script_component.hpp"
|
||||
EXPLODE_2_PVT(_this,_unit,_target);
|
||||
|
||||
private["_actionToPlay"];
|
||||
private["_actionToPlay", "_defuseTime", "_isEOD"];
|
||||
|
||||
_target = attachedTo (_target);
|
||||
|
||||
@ -43,23 +43,23 @@ if (ACE_player != _unit) then {
|
||||
if (isPlayer _unit) then {
|
||||
[[_unit, _target], QFUNC(startDefuse), _unit] call EFUNC(common,execRemoteFnc);
|
||||
} else {
|
||||
// TODO: use scheduled delay execution
|
||||
[_unit, _target, [[_unit] call EFUNC(Common,isEOD), _target] call _fnc_DefuseTime] spawn {
|
||||
(_this select 0) playActionNow _actionToPlay;
|
||||
(_this select 0) disableAI "MOVE";
|
||||
(_this select 0) disableAI "TARGET";
|
||||
sleep (_this select 2);
|
||||
[(_this select 0), (_this select 1)] call FUNC(defuseExplosive);
|
||||
(_this select 0) enableAI "MOVE";
|
||||
(_this select 0) enableAI "TARGET";
|
||||
};
|
||||
//[_unit, _target, [[_unit] call EFUNC(Common,isEOD), _target] call _fnc_DefuseTime] spawn {
|
||||
_unit playActionNow _actionToPlay;
|
||||
_unit disableAI "MOVE";
|
||||
_unit disableAI "TARGET";
|
||||
_defuseTime = [[_unit] call EFUNC(Common,isEOD), _target] call _fnc_DefuseTime;
|
||||
[{
|
||||
PARAMS_2(_unit,_target);
|
||||
[_unit, _target] call FUNC(defuseExplosive);
|
||||
_unit enableAI "MOVE";
|
||||
_unit enableAI "TARGET";
|
||||
}, [_unit, _target], _defuseTime, 0] call EFUNC(common,waitAndExecute);
|
||||
};
|
||||
} else {
|
||||
_unit playActionNow _actionToPlay;
|
||||
private ["_defuseSeconds", "_isEOD"];
|
||||
_isEOD = [_unit] call EFUNC(Common,isEOD);
|
||||
_defuseSeconds = [_isEOD, _target] call _fnc_DefuseTime;
|
||||
_defuseTime = [_isEOD, _target] call _fnc_DefuseTime;
|
||||
if (_isEOD || {!GVAR(RequireSpecialist)}) then {
|
||||
[_defuseSeconds, [_unit,_target], {(_this select 0) call FUNC(defuseExplosive)}, {}, (localize "STR_ACE_Explosives_DefusingExplosive")] call EFUNC(common,progressBar);
|
||||
[_defuseTime, [_unit,_target], {(_this select 0) call FUNC(defuseExplosive)}, {}, (localize "STR_ACE_Explosives_DefusingExplosive")] call EFUNC(common,progressBar);
|
||||
};
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user