From 6c667d69b80be5a5f9c7af790c8778a5ff7837d4 Mon Sep 17 00:00:00 2001 From: Valmo Trindade Date: Wed, 28 May 2025 00:32:57 -0300 Subject: [PATCH] improved router entity add and remove function --- addons/server/functions/fnc_routerEntityAdd.sqf | 9 +++++++-- addons/server/functions/fnc_routerEntityRemove.sqf | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/addons/server/functions/fnc_routerEntityAdd.sqf b/addons/server/functions/fnc_routerEntityAdd.sqf index f340d34..a567714 100644 --- a/addons/server/functions/fnc_routerEntityAdd.sqf +++ b/addons/server/functions/fnc_routerEntityAdd.sqf @@ -20,19 +20,24 @@ params ["_logic"]; if (!local _logic) exitWith {}; private _unit = attachedTo _logic; -deleteVehicle _logic; switch (false) do { case (!isNull _unit): { - deleteVehicle _logic; ["Nothing selected", "error", "TCP Socket"] call EFUNC(main,notify); + deleteVehicle _logic; }; default { + if (_unit in (missionNamespace getVariable ["armatak_marked_units", []])) exitWith { + ["Unit already marked", "warning", "TCP Socket"] call EFUNC(main,notify); + deleteVehicle _logic; + }; + GVAR(syncedUnits) = missionNamespace getVariable "armatak_marked_units"; GVAR(syncedUnits) pushBack _unit; missionNamespace setVariable ["armatak_marked_units", GVAR(syncedUnits)]; + SETVAR(_unit,GVAR(isRouting),true); deleteVehicle _logic; }; diff --git a/addons/server/functions/fnc_routerEntityRemove.sqf b/addons/server/functions/fnc_routerEntityRemove.sqf index 56b7e02..14b7970 100644 --- a/addons/server/functions/fnc_routerEntityRemove.sqf +++ b/addons/server/functions/fnc_routerEntityRemove.sqf @@ -35,6 +35,7 @@ switch (false) do { } forEach GVAR(syncedUnits); missionNmaespace setVariable ["armatak_marked_units", GVAR(syncedUnits)]; + SETVAR(_unit,GVAR(isRouting),false); deleteVehicle _logic; };