diff --git a/addons/zeus/XEH_PREP.hpp b/addons/zeus/XEH_PREP.hpp index a04b0a6d2c..f52c300355 100644 --- a/addons/zeus/XEH_PREP.hpp +++ b/addons/zeus/XEH_PREP.hpp @@ -20,6 +20,7 @@ PREP(moduleSurrender); PREP(moduleTeleportPlayers); PREP(moduleUnconscious); PREP(moduleZeusSettings); +PREP(showMessage); PREP(ui_attributeCargo); //PREP(ui_attributePosition); PREP(ui_attributeRadius); diff --git a/addons/zeus/functions/fnc_moduleAddOrRemoveFRIES.sqf b/addons/zeus/functions/fnc_moduleAddOrRemoveFRIES.sqf index 5c8998b767..d75c0173fe 100644 --- a/addons/zeus/functions/fnc_moduleAddOrRemoveFRIES.sqf +++ b/addons/zeus/functions/fnc_moduleAddOrRemoveFRIES.sqf @@ -19,27 +19,27 @@ params ["_logic", "_units", "_activated"]; if !(_activated && {local _logic}) exitWith {}; if !(["ace_fastroping"] call EFUNC(common,isModLoaded)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { (GETMVAR(BIS_fnc_curatorObjectPlaced_mouseOver,[""])) params ["_mouseOverType", "_mouseOverUnit"]; if (_mouseOverType != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { if !(alive _mouseOverUnit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { private _config = configFile >> "CfgVehicles" >> typeOf _mouseOverUnit; private _displayName = getText (_config >> "displayName"); if !(isNumber (_config >> QEGVAR(fastroping,enabled))) then { - [[LSTRING(NotFastRopeCompatible), _displayName]] call EFUNC(common,displayTextStructured); + [LSTRING(NotFastRopeCompatible), _displayName] call FUNC(showMessage); } else { private _fries = GETVAR(_mouseOverUnit,EGVAR(fastroping,FRIES),objNull); if (isNull _fries) then { [QGVAR(equipFries), [_mouseOverUnit]] call CBA_fnc_serverEvent; } else { if ([_mouseOverUnit] call EFUNC(fastroping,canCutRopes)) then { - [[LSTRING(CantRemoveFRIES), _displayName]] call EFUNC(common,displayTextStructured); + [LSTRING(CantRemoveFRIES), _displayName] call FUNC(showMessage); } else { [_mouseOverUnit] call EFUNC(fastroping,cutRopes); deleteVehicle _fries; diff --git a/addons/zeus/functions/fnc_moduleAddSpareTrack.sqf b/addons/zeus/functions/fnc_moduleAddSpareTrack.sqf index 2926fafcf9..3a291ac5b3 100644 --- a/addons/zeus/functions/fnc_moduleAddSpareTrack.sqf +++ b/addons/zeus/functions/fnc_moduleAddSpareTrack.sqf @@ -19,18 +19,18 @@ params ["_logic", "_units", "_activated"]; if !(_activated && local _logic) exitWith {}; if !(["ace_cargo"] call EFUNC(common,isModLoaded) && ["ace_repair"] call EFUNC(common,isModLoaded)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { (GETMVAR(bis_fnc_curatorObjectPlaced_mouseOver,[""])) params ["_mouseOverType", "_mouseOverUnit"]; if (_mouseOverType != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { if !(alive _mouseOverUnit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { if (getNumber (configFile >> "CfgVehicles" >> "ACE_Track" >> QEGVAR(cargo,size)) > [_mouseOverUnit] call EFUNC(cargo,getCargoSpaceLeft)) then { - [LSTRING(OnlyEnoughCargoSpace)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyEnoughCargoSpace)] call FUNC(showMessage); } else { ["ace_addCargo", ["ACE_Track", _mouseOverUnit, 1, true]] call CBA_fnc_localEvent; }; diff --git a/addons/zeus/functions/fnc_moduleAddSpareWheel.sqf b/addons/zeus/functions/fnc_moduleAddSpareWheel.sqf index 2c051c94b6..50dc25d62c 100644 --- a/addons/zeus/functions/fnc_moduleAddSpareWheel.sqf +++ b/addons/zeus/functions/fnc_moduleAddSpareWheel.sqf @@ -19,18 +19,18 @@ params ["_logic", "_units", "_activated"]; if !(_activated && local _logic) exitWith {}; if !(["ace_cargo"] call EFUNC(common,isModLoaded) && ["ace_repair"] call EFUNC(common,isModLoaded)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { (GETMVAR(bis_fnc_curatorObjectPlaced_mouseOver,[""])) params ["_mouseOverType", "_mouseOverUnit"]; if (_mouseOverType != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { if !(alive _mouseOverUnit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { if (getNumber (configFile >> "CfgVehicles" >> "ACE_Wheel" >> QEGVAR(cargo,size)) > [_mouseOverUnit] call EFUNC(cargo,getCargoSpaceLeft)) then { - [LSTRING(OnlyEnoughCargoSpace)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyEnoughCargoSpace)] call FUNC(showMessage); } else { ["ace_addCargo", ["ACE_Wheel", _mouseOverUnit, 1, true]] call CBA_fnc_localEvent; }; diff --git a/addons/zeus/functions/fnc_moduleCaptive.sqf b/addons/zeus/functions/fnc_moduleCaptive.sqf index 732c165fa4..4db34231c0 100644 --- a/addons/zeus/functions/fnc_moduleCaptive.sqf +++ b/addons/zeus/functions/fnc_moduleCaptive.sqf @@ -21,20 +21,20 @@ private ["_mouseOver", "_unit", "_captive"]; if !(_activated && local _logic) exitWith {}; if (isNil QEFUNC(captives,setHandcuffed)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { _mouseOver = GETMVAR(bis_fnc_curatorObjectPlaced_mouseOver,[""]); if ((_mouseOver select 0) != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { _unit = effectivecommander (_mouseOver select 1); if !(_unit isKindOf "CAManBase") then { - [LSTRING(OnlyInfantry)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyInfantry)] call FUNC(showMessage); } else { if !(alive _unit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { _captive = GETVAR(_unit,EGVAR(captives,isHandcuffed),false); // Event initalized by ACE_Captives diff --git a/addons/zeus/functions/fnc_moduleSearchNearby.sqf b/addons/zeus/functions/fnc_moduleSearchNearby.sqf index 76f77c489e..47b423fadd 100644 --- a/addons/zeus/functions/fnc_moduleSearchNearby.sqf +++ b/addons/zeus/functions/fnc_moduleSearchNearby.sqf @@ -27,7 +27,7 @@ scopeName "Main"; private _fnc_errorAndClose = { params ["_msg"]; deleteVehicle _logic; - [_msg] call EFUNC(common,displayTextStructured); + [_msg] call FUNC(showMessage); breakOut "Main"; }; diff --git a/addons/zeus/functions/fnc_moduleSetMedic.sqf b/addons/zeus/functions/fnc_moduleSetMedic.sqf index 14dfca4f6f..55b1f2687b 100644 --- a/addons/zeus/functions/fnc_moduleSetMedic.sqf +++ b/addons/zeus/functions/fnc_moduleSetMedic.sqf @@ -21,23 +21,23 @@ private ["_mouseOver", "_unit", "_medicN"]; if !(_activated && local _logic) exitWith {}; if !(["ACE_Medical"] call EFUNC(common,isModLoaded)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { _mouseOver = GETMVAR(bis_fnc_curatorObjectPlaced_mouseOver,[""]); if ((_mouseOver select 0) != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { _unit = effectivecommander (_mouseOver select 1); if !(_unit isKindOf "CAManBase") then { - [LSTRING(OnlyInfantry)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyInfantry)] call FUNC(showMessage); } else { if !(alive _unit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { if (GETVAR(_unit,EGVAR(captives,isHandcuffed),false)) then { - [LSTRING(OnlyNonCaptive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyNonCaptive)] call FUNC(showMessage); } else { _medicN = GETVAR(_unit,EGVAR(medical,medicClass),0); if (_medicN < 1) then { diff --git a/addons/zeus/functions/fnc_moduleSetMedicalFacility.sqf b/addons/zeus/functions/fnc_moduleSetMedicalFacility.sqf index 4c26ccdd71..e0a3131f44 100644 --- a/addons/zeus/functions/fnc_moduleSetMedicalFacility.sqf +++ b/addons/zeus/functions/fnc_moduleSetMedicalFacility.sqf @@ -21,23 +21,23 @@ private ["_mouseOver", "_unit"]; if !(_activated && local _logic) exitWith {}; if !(["ACE_Medical"] call EFUNC(common,isModLoaded)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { _mouseOver = GETMVAR(bis_fnc_curatorObjectPlaced_mouseOver,[""]); if ((_mouseOver select 0) != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { _unit = (_mouseOver select 1); if (_unit isKindOf "Man" || {!(_unit isKindOf "Building")}) then { - [LSTRING(OnlyStructures)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyStructures)] call FUNC(showMessage); } else { if !(alive _unit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { if (GETVAR(_unit,EGVAR(captives,isHandcuffed),false)) then { - [LSTRING(OnlyNonCaptive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyNonCaptive)] call FUNC(showMessage); } else { if (!(GETVAR(_unit,EGVAR(medical,isMedicalFacility),false))) then { _unit setVariable [QEGVAR(medical,isMedicalFacility), true, true]; diff --git a/addons/zeus/functions/fnc_moduleSetMedicalVehicle.sqf b/addons/zeus/functions/fnc_moduleSetMedicalVehicle.sqf index abbc26b1ed..49070dbfb9 100644 --- a/addons/zeus/functions/fnc_moduleSetMedicalVehicle.sqf +++ b/addons/zeus/functions/fnc_moduleSetMedicalVehicle.sqf @@ -21,23 +21,23 @@ private ["_mouseOver", "_unit", "_medicN"]; if !(_activated && local _logic) exitWith {}; if !(["ACE_Medical"] call EFUNC(common,isModLoaded)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { _mouseOver = GETMVAR(bis_fnc_curatorObjectPlaced_mouseOver,[""]); if ((_mouseOver select 0) != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { _unit = (_mouseOver select 1); if (_unit isKindOf "Man" || {_unit isKindOf "Building"}) then { - [LSTRING(OnlyVehicles)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyVehicles)] call FUNC(showMessage); } else { if !(alive _unit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { if (GETVAR(_unit,EGVAR(captives,isHandcuffed),false)) then { - [LSTRING(OnlyNonCaptive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyNonCaptive)] call FUNC(showMessage); } else { _medicN = GETVAR(_unit,EGVAR(medical,medicClass),0); if (_medicN < 1) then { diff --git a/addons/zeus/functions/fnc_moduleSimulation.sqf b/addons/zeus/functions/fnc_moduleSimulation.sqf index fab59e48eb..fe7f3564e0 100644 --- a/addons/zeus/functions/fnc_moduleSimulation.sqf +++ b/addons/zeus/functions/fnc_moduleSimulation.sqf @@ -19,7 +19,7 @@ if !(local _logic) exitWith {}; private _object = attachedTo _logic; if (isNull _object) then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { [QEGVAR(common,enableSimulationGlobal), [_object, !(simulationEnabled _object)]] call CBA_fnc_serverEvent; }; diff --git a/addons/zeus/functions/fnc_moduleSurrender.sqf b/addons/zeus/functions/fnc_moduleSurrender.sqf index d6d030a4c5..5e4890ae75 100644 --- a/addons/zeus/functions/fnc_moduleSurrender.sqf +++ b/addons/zeus/functions/fnc_moduleSurrender.sqf @@ -21,23 +21,23 @@ private ["_mouseOver", "_unit", "_surrendering"]; if !(_activated && local _logic) exitWith {}; if (isNil QEFUNC(captives,setSurrendered)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { _mouseOver = GETMVAR(bis_fnc_curatorObjectPlaced_mouseOver,[""]); if ((_mouseOver select 0) != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { _unit = effectivecommander (_mouseOver select 1); if !(_unit isKindOf "CAManBase") then { - [LSTRING(OnlyInfantry)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyInfantry)] call FUNC(showMessage); } else { if !(alive _unit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { if (GETVAR(_unit,EGVAR(captives,isHandcuffed),false)) then { - [LSTRING(OnlyNonCaptive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyNonCaptive)] call FUNC(showMessage); } else { _surrendering = GETVAR(_unit,EGVAR(captives,isSurrendering),false); // Event initalized by ACE_Captives diff --git a/addons/zeus/functions/fnc_moduleUnconscious.sqf b/addons/zeus/functions/fnc_moduleUnconscious.sqf index 502847feda..0cf0fffda6 100644 --- a/addons/zeus/functions/fnc_moduleUnconscious.sqf +++ b/addons/zeus/functions/fnc_moduleUnconscious.sqf @@ -21,20 +21,20 @@ private ["_mouseOver", "_unit", "_conscious"]; if !(_activated && local _logic) exitWith {}; if (isNil QEFUNC(medical,setUnconscious)) then { - [LSTRING(RequiresAddon)] call EFUNC(common,displayTextStructured); + [LSTRING(RequiresAddon)] call FUNC(showMessage); } else { _mouseOver = GETMVAR(bis_fnc_curatorObjectPlaced_mouseOver,[""]); if ((_mouseOver select 0) != "OBJECT") then { - [LSTRING(NothingSelected)] call EFUNC(common,displayTextStructured); + [LSTRING(NothingSelected)] call FUNC(showMessage); } else { _unit = effectivecommander (_mouseOver select 1); if !(_unit isKindOf "CAManBase") then { - [LSTRING(OnlyInfantry)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyInfantry)] call FUNC(showMessage); } else { if !(alive _unit) then { - [LSTRING(OnlyAlive)] call EFUNC(common,displayTextStructured); + [LSTRING(OnlyAlive)] call FUNC(showMessage); } else { _conscious = GETVAR(_unit,ACE_isUnconscious,false); // Function handles locality for me diff --git a/addons/zeus/functions/fnc_showMessage.sqf b/addons/zeus/functions/fnc_showMessage.sqf new file mode 100644 index 0000000000..9ce8ced9c3 --- /dev/null +++ b/addons/zeus/functions/fnc_showMessage.sqf @@ -0,0 +1,24 @@ +/* + * Author: 654wak654 + * Shows a zeus message through the BIS function, handles localization. + * If multiple args are given, they get formatted. + * + * Arguments: + * 0: The message + * N: Anything + * + * Return Value: + * Nothing + * + * Example: + * ["something"] call ace_zeus_fnc_showMessage + * ["something %1 in %2", "strange", getPos neighborhood] call ace_zeus_fnc_showMessage + * + * Public: Yes + */ +#include "script_component.hpp" + +if (!(_this isEqualTypeParams [""])) exitWith {ERROR_1("First arg must be string [%1]",_this);}; + +private _message = _this apply {if ((_x isEqualType "") && {isLocalized _x}) then {localize _x} else {_x}}; +[objNull, format _message] call BIS_fnc_showCuratorFeedbackMessage; diff --git a/addons/zeus/functions/fnc_ui_defendArea.sqf b/addons/zeus/functions/fnc_ui_defendArea.sqf index 492f74cf48..5d4f652950 100644 --- a/addons/zeus/functions/fnc_ui_defendArea.sqf +++ b/addons/zeus/functions/fnc_ui_defendArea.sqf @@ -28,7 +28,7 @@ private _fnc_errorAndClose = { params ["_msg"]; _display closeDisplay 0; deleteVehicle _logic; - [_msg] call EFUNC(common,displayTextStructured); + [_msg] call FUNC(showMessage); breakOut "Main"; }; diff --git a/addons/zeus/functions/fnc_ui_groupSide.sqf b/addons/zeus/functions/fnc_ui_groupSide.sqf index 46418a71fc..e983d49ea1 100644 --- a/addons/zeus/functions/fnc_ui_groupSide.sqf +++ b/addons/zeus/functions/fnc_ui_groupSide.sqf @@ -33,7 +33,7 @@ private _fnc_errorAndClose = { params ["_msg"]; _display closeDisplay 0; deleteVehicle _logic; - [_msg] call EFUNC(common,displayTextStructured); + [_msg] call FUNC(showMessage); breakOut "Main"; }; diff --git a/addons/zeus/functions/fnc_ui_patrolArea.sqf b/addons/zeus/functions/fnc_ui_patrolArea.sqf index 9db2df9773..c94e2b3dd2 100644 --- a/addons/zeus/functions/fnc_ui_patrolArea.sqf +++ b/addons/zeus/functions/fnc_ui_patrolArea.sqf @@ -28,7 +28,7 @@ private _fnc_errorAndClose = { params ["_msg"]; _display closeDisplay 0; deleteVehicle _logic; - [_msg] call EFUNC(common,displayTextStructured); + [_msg] call FUNC(showMessage); breakOut "Main"; }; diff --git a/addons/zeus/functions/fnc_ui_searchArea.sqf b/addons/zeus/functions/fnc_ui_searchArea.sqf index d30af4e234..30e012e29b 100644 --- a/addons/zeus/functions/fnc_ui_searchArea.sqf +++ b/addons/zeus/functions/fnc_ui_searchArea.sqf @@ -28,7 +28,7 @@ private _fnc_errorAndClose = { params ["_msg"]; _display closeDisplay 0; deleteVehicle _logic; - [_msg] call EFUNC(common,displayTextStructured); + [_msg] call FUNC(showMessage); breakOut "Main"; };