feat: enhance locker initialization with dynamic class assignment

This commit is contained in:
Jacob Schmidt 2026-04-26 16:49:04 -05:00
parent 6bdb25aba9
commit 355e784628
4 changed files with 6 additions and 5 deletions

View File

@ -260,8 +260,12 @@ GVAR(LockerRepositoryBaseClass) = compileFinal createHashMapFromArray [
private _pos = getPosASL _globalLocker;
private _vDir = vectorDir _globalLocker;
private _vUp = vectorUp _globalLocker;
private _lockerClass = typeOf _globalLocker;
if (_lockerClass isEqualTo "") then {
_lockerClass = "Box_NATO_Equip_F";
};
private _localLocker = createVehicleLocal ["Box_NATO_Equip_F", [0, 0, 0]];
private _localLocker = createVehicleLocal [_lockerClass, [0, 0, 0]];
_localLocker setPosASL _pos;
_localLocker setVectorDirAndUp [_vDir, _vUp];
_localLocker allowDamage false;

View File

@ -196,10 +196,9 @@ If you want the accepting player's org to own the task rewards, use `fnc_handler
- initializes `TaskStore`
- `XEH_postInit.sqf`
- registers the ACE defuse event hook
- starts the attack-only mission manager on the server
## Notes
- the dynamic mission manager in `fnc_missionManager.sqf` is now limited to attack missions only
- the dynamic mission manager in `fnc_missionManager.sqf` is currently not started by default
- it starts server-owned tasks through `fnc_handler.sqf` and binds them to the `default` org
- task lifecycle for the mission manager is tracked through `TaskStore` status entries
- task backend state is intentionally transient and resets with the active server/mission lifecycle

View File

@ -1,7 +1,5 @@
#include "script_component.hpp"
if (isServer) then { [] call FUNC(missionManager); };
["ace_explosives_defuse", {
private _taskID = "";
{