mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
commit
93450b9e38
@ -1,24 +0,0 @@
|
|||||||
|
|
||||||
class RscControlsGroup;
|
|
||||||
class RscText;
|
|
||||||
|
|
||||||
class RscInGameUI {
|
|
||||||
class RscUnitInfo {
|
|
||||||
// Soldiers
|
|
||||||
class WeaponInfoControlsGroupLeft: RscControlsGroup {
|
|
||||||
class controls {
|
|
||||||
class CA_AmmoCount: RscText {
|
|
||||||
sizeEx = 0;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
// Vehicles
|
|
||||||
/*class WeaponInfoControlsGroupRight: RscControlsGroup {
|
|
||||||
class controls {
|
|
||||||
class CA_AmmoCount: RscText {
|
|
||||||
sizeEx = 0;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};*/
|
|
||||||
};
|
|
||||||
};
|
|
@ -20,6 +20,4 @@ class CfgPatches {
|
|||||||
|
|
||||||
#include "CfgActions.hpp"
|
#include "CfgActions.hpp"
|
||||||
|
|
||||||
#include "RscInGameUI.hpp"
|
|
||||||
|
|
||||||
#include "ACE_Settings.hpp"
|
#include "ACE_Settings.hpp"
|
||||||
|
217
addons/ui/ACE_Settings.hpp
Normal file
217
addons/ui/ACE_Settings.hpp
Normal file
@ -0,0 +1,217 @@
|
|||||||
|
class ACE_Settings {
|
||||||
|
class GVAR(allowSelectiveUI) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(AllowSelectiveUI);
|
||||||
|
description = CSTRING(AllowSelectiveUI_Description);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// BASIC
|
||||||
|
class GVAR(soldierVehicleWeaponInfo) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(SoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleRadar) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleRadar);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleCompass) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleCompass);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(commandMenu) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(CommandMenu);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(groupBar) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(GroupBar);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 0;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// ADVANCED
|
||||||
|
// Upper Weapon Info
|
||||||
|
class GVAR(weaponName) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(WeaponName);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(weaponNameBackground) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(WeaponNameBackground);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(firingMode) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(FiringMode);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Lower Weapon Info
|
||||||
|
class GVAR(ammoType) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(AmmoType);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(ammoCount) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(AmmoCount);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 0;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(magCount) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(MagCount);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(throwableName) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(throwableName);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(throwableCount) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(throwableCount);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(zeroing) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(Zeroing);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(weaponLowerInfoBackground) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(WeaponLowerInfoBackground); //todo
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Stance
|
||||||
|
class GVAR(stance) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(Stance);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Stamina Bar
|
||||||
|
class GVAR(staminaBar) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(StaminaBar);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Vehicle
|
||||||
|
class GVAR(vehicleName) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleName);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleNameBackground) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleNameBackground);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleFuelBar) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleFuelBar);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleSpeed) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleSpeed);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleAltitude) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleAltitude);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleDamage) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleDamage);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleInfoBackground) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleInfoBackground);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
class GVAR(vehicleGunnerWeapon) {
|
||||||
|
category = CSTRING(Category);
|
||||||
|
displayName = CSTRING(VehicleGunnerWeapon);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
value = 1;
|
||||||
|
isClientSettable = 1;
|
||||||
|
};
|
||||||
|
};
|
17
addons/ui/CfgEventHandlers.hpp
Normal file
17
addons/ui/CfgEventHandlers.hpp
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
class Extended_PreStart_EventHandlers {
|
||||||
|
class ADDON {
|
||||||
|
init = QUOTE(call COMPILE_FILE(XEH_preStart));
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
class Extended_PreInit_EventHandlers {
|
||||||
|
class ADDON {
|
||||||
|
init = QUOTE(call COMPILE_FILE(XEH_preInit));
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
class Extended_PostInit_EventHandlers {
|
||||||
|
class ADDON {
|
||||||
|
clientInit = QUOTE(call COMPILE_FILE(XEH_clientInit));
|
||||||
|
};
|
||||||
|
};
|
181
addons/ui/CfgVehicles.hpp
Normal file
181
addons/ui/CfgVehicles.hpp
Normal file
@ -0,0 +1,181 @@
|
|||||||
|
class CfgVehicles {
|
||||||
|
class ACE_Module;
|
||||||
|
class GVAR(Module): ACE_Module {
|
||||||
|
author = ECSTRING(common,ACETeam);
|
||||||
|
category = "ACE";
|
||||||
|
displayName = CSTRING(ModuleName);
|
||||||
|
function = QFUNC(moduleInit);
|
||||||
|
scope = 2;
|
||||||
|
isGlobal = 1;
|
||||||
|
icon = QUOTE(PATHTOF(UI\Icon_Module_UI_ca.paa));
|
||||||
|
class Arguments {
|
||||||
|
class allowSelectiveUI {
|
||||||
|
displayName = CSTRING(AllowSelectiveUI);
|
||||||
|
description = CSTRING(AllowSelectiveUI_Description);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// BASIC
|
||||||
|
class soldierVehicleWeaponInfo {
|
||||||
|
displayName = CSTRING(SoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleRadar {
|
||||||
|
displayName = CSTRING(VehicleRadar);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleCompass {
|
||||||
|
displayName = CSTRING(VehicleCompass);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class commandMenu {
|
||||||
|
displayName = CSTRING(CommandMenu);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class groupBar {
|
||||||
|
displayName = CSTRING(GroupBar);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
// ADVANCED
|
||||||
|
// Upper Weapon Info
|
||||||
|
class weaponName {
|
||||||
|
displayName = CSTRING(WeaponName);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class weaponNameBackground {
|
||||||
|
displayName = CSTRING(WeaponNameBackground);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class firingMode {
|
||||||
|
displayName = CSTRING(FiringMode);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Lower Weapon Info
|
||||||
|
class ammoType {
|
||||||
|
displayName = CSTRING(AmmoType);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class ammoCount {
|
||||||
|
displayName = CSTRING(AmmoCount);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 0;
|
||||||
|
};
|
||||||
|
class magCount {
|
||||||
|
displayName = CSTRING(MagCount);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class throwableName {
|
||||||
|
displayName = CSTRING(throwableName);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class throwableCount {
|
||||||
|
displayName = CSTRING(throwableCount);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class zeroing {
|
||||||
|
displayName = CSTRING(Zeroing);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class weaponLowerInfoBackground {
|
||||||
|
displayName = CSTRING(WeaponLowerInfoBackground);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Stance
|
||||||
|
class stance {
|
||||||
|
displayName = CSTRING(Stance);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Stamina Bar
|
||||||
|
class staminaBar {
|
||||||
|
displayName = CSTRING(StaminaBar);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
// Vehicle
|
||||||
|
class vehicleName {
|
||||||
|
displayName = CSTRING(VehicleName);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleNameBackground {
|
||||||
|
displayName = CSTRING(VehicleNameBackground);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleFuelBar {
|
||||||
|
displayName = CSTRING(VehicleFuelBar);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleSpeed {
|
||||||
|
displayName = CSTRING(VehicleSpeed);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleAltitude {
|
||||||
|
displayName = CSTRING(VehicleAltitude);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleDamage {
|
||||||
|
displayName = CSTRING(VehicleDamage);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleInfoBackground {
|
||||||
|
displayName = CSTRING(VehicleInfoBackground);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
class vehicleGunnerWeapon {
|
||||||
|
displayName = CSTRING(VehicleGunnerWeapon);
|
||||||
|
description = CSTRING(RequiresSoldierVehicleWeaponInfo);
|
||||||
|
typeName = "BOOL";
|
||||||
|
defaultValue = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
class ModuleDescription {
|
||||||
|
description = CSTRING(ModuleDescription);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
@ -1,7 +1,7 @@
|
|||||||
ace_ui
|
ace_ui
|
||||||
=======
|
=======
|
||||||
|
|
||||||
Removes vignette and changes the chat contrast on the map to allow easier reading.
|
Removes vignette, changes the chat contrast on the map to allow easier reading and provides settings to hide or show different UI elements.
|
||||||
|
|
||||||
|
|
||||||
## Maintainers
|
## Maintainers
|
||||||
@ -9,3 +9,4 @@ Removes vignette and changes the chat contrast on the map to allow easier readin
|
|||||||
The people responsible for merging changes to this component or answering potential questions.
|
The people responsible for merging changes to this component or answering potential questions.
|
||||||
|
|
||||||
- [VKing](https://github.com/VKing6)
|
- [VKing](https://github.com/VKing6)
|
||||||
|
- [Jonpas](https://github.com/jonpas)
|
||||||
|
BIN
addons/ui/UI/Icon_Module_UI_ca.paa
Normal file
BIN
addons/ui/UI/Icon_Module_UI_ca.paa
Normal file
Binary file not shown.
4
addons/ui/XEH_PREP.hpp
Normal file
4
addons/ui/XEH_PREP.hpp
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
PREP(moduleInit);
|
||||||
|
PREP(setAdvancedElement);
|
||||||
|
PREP(setElements);
|
||||||
|
PREP(setElementVisibility);
|
40
addons/ui/XEH_clientInit.sqf
Normal file
40
addons/ui/XEH_clientInit.sqf
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
// Exit on Headless
|
||||||
|
if (!hasInterface) exitWith {};
|
||||||
|
|
||||||
|
["SettingsInitialized", {
|
||||||
|
// Initial settings
|
||||||
|
[true] call FUNC(setElements);
|
||||||
|
|
||||||
|
// On load and entering/exiting a vehicle
|
||||||
|
["infoDisplayChanged", {
|
||||||
|
// Selective UI Advanced
|
||||||
|
// Defaults must be set in this EH to make sure controls are activated and advanced settings can be modified
|
||||||
|
private _force = [true, false] select (GVAR(allowSelectiveUI));
|
||||||
|
{
|
||||||
|
[_x select 0, _x select 1, _x select 2, _force] call FUNC(setAdvancedElement);
|
||||||
|
} forEach ELEMENTS_ADVANCED;
|
||||||
|
}] call EFUNC(common,addEventHandler);
|
||||||
|
|
||||||
|
// On changing settings
|
||||||
|
["SettingChanged", {
|
||||||
|
params ["_name"];
|
||||||
|
|
||||||
|
// Selective UI Basic
|
||||||
|
if (_name in ELEMENTS_BASIC) then {
|
||||||
|
[false] call FUNC(setElements);
|
||||||
|
};
|
||||||
|
|
||||||
|
// Selective UI Advanced
|
||||||
|
{
|
||||||
|
_x params ["_idd", "_elements", "_elementName"];
|
||||||
|
|
||||||
|
if (_name == _elementName) then {
|
||||||
|
[_idd, _elements, _elementName] call FUNC(setAdvancedElement);
|
||||||
|
TRACE_2("Setting Changed",_name,_elementName);
|
||||||
|
};
|
||||||
|
} forEach ELEMENTS_ADVANCED;
|
||||||
|
}] call EFUNC(common,addEventHandler);
|
||||||
|
|
||||||
|
}] call EFUNC(common,addEventHandler);
|
9
addons/ui/XEH_preInit.sqf
Normal file
9
addons/ui/XEH_preInit.sqf
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
ADDON = false;
|
||||||
|
|
||||||
|
#include "XEH_PREP.hpp"
|
||||||
|
|
||||||
|
GVAR(elementsSet) = [];
|
||||||
|
|
||||||
|
ADDON = true;
|
3
addons/ui/XEH_preStart.sqf
Normal file
3
addons/ui/XEH_preStart.sqf
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
#include "XEH_PREP.hpp"
|
@ -12,5 +12,9 @@ class CfgPatches {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#include "CfgEventHandlers.hpp"
|
||||||
|
#include "CfgVehicles.hpp"
|
||||||
|
#include "ACE_Settings.hpp"
|
||||||
|
|
||||||
#include "RscChat.hpp"
|
#include "RscChat.hpp"
|
||||||
#include "RscVignette.hpp"
|
#include "RscVignette.hpp"
|
||||||
|
56
addons/ui/functions/fnc_moduleInit.sqf
Normal file
56
addons/ui/functions/fnc_moduleInit.sqf
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
* Author: Jonpas
|
||||||
|
* Initializes the UI module.
|
||||||
|
*
|
||||||
|
* Arguments:
|
||||||
|
* 0: Module Logic <LOGIC>
|
||||||
|
* 1: Units <ARRAY>
|
||||||
|
* 2: Activated <BOOL>
|
||||||
|
*
|
||||||
|
* Return Value:
|
||||||
|
* None
|
||||||
|
*/
|
||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
if (!isServer) exitWith {};
|
||||||
|
|
||||||
|
params ["_logic", "_units", "_activated"];
|
||||||
|
|
||||||
|
if (!_activated) exitWith {};
|
||||||
|
|
||||||
|
// Basic
|
||||||
|
if (isArray (missionConfigFile >> "showHUD")) then {
|
||||||
|
// HUD visibility is hardcoded in mission config and showHUD command is overriden
|
||||||
|
ACE_LOGINFO("User Interface Module Failed to Initialize Basic settings - showHUD overriden in mission config!");
|
||||||
|
} else {
|
||||||
|
[_logic, QGVAR(allowSelectiveUI), "allowSelectiveUI"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(soldierVehicleWeaponInfo), "soldierVehicleWeaponInfo"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleRadar), "vehicleRadar"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleCompass), "vehicleCompass"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(commandMenu), "commandMenu"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(groupBar), "groupBar"] call EFUNC(common,readSettingFromModule);
|
||||||
|
};
|
||||||
|
|
||||||
|
// Advanced
|
||||||
|
[_logic, QGVAR(weaponName), "weaponName"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(weaponNameBackground), "weaponNameBackground"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(firingMode), "firingMode"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(ammoType), "ammoType"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(ammoCount), "ammoCount"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(magCount), "magCount"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(throwableName), "throwableName"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(throwableCount), "throwableCount"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(zeroing), "zeroing"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(weaponLowerInfoBackground), "weaponLowerInfoBackground"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(stance), "stance"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(staminaBar), "staminaBar"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleName), "vehicleName"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleNameBackground), "vehicleNameBackground"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleFuelBar), "vehicleFuelBar"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleSpeed), "vehicleSpeed"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleAltitude), "vehicleAltitude"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleDamage), "vehicleDamage"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleInfoBackground), "vehicleInfoBackground"] call EFUNC(common,readSettingFromModule);
|
||||||
|
[_logic, QGVAR(vehicleGunnerWeapon), "vehicleGunnerWeapon"] call EFUNC(common,readSettingFromModule);
|
||||||
|
|
||||||
|
ACE_LOGINFO_1("User Interface Module Initialized. Allow client modifications: %1",GVAR(allowSelectiveUI));
|
53
addons/ui/functions/fnc_setAdvancedElement.sqf
Normal file
53
addons/ui/functions/fnc_setAdvancedElement.sqf
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
/*
|
||||||
|
* Author: Jonpas
|
||||||
|
* Sets advanced visible element of the UI using displays and controls.
|
||||||
|
*
|
||||||
|
* Arguments:
|
||||||
|
* 0: Element IDD <NUMBER>
|
||||||
|
* 1: Element IDCs <ARRAY>
|
||||||
|
* 2: Show/Hide Element OR Element ACE Settings Variable <BOOL/STRING>
|
||||||
|
* 3: Force change even when disallowed <BOOL> (default: false)
|
||||||
|
*
|
||||||
|
* Return Value:
|
||||||
|
* Successfully Set <BOOL>
|
||||||
|
*
|
||||||
|
* Example:
|
||||||
|
* [303, [188], true, false] call ace_ui_fnc_setAdvancedElement
|
||||||
|
*
|
||||||
|
* Public: No
|
||||||
|
*/
|
||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
params ["_idd", "_elements", "_show", ["_force", false, [true]] ];
|
||||||
|
|
||||||
|
if (_elementInfo in GVAR(elementsSet)) exitWith {};
|
||||||
|
|
||||||
|
if (!_force && {!GVAR(allowSelectiveUI)}) exitWith {
|
||||||
|
[LSTRING(Disallowed), 2] call EFUNC(common,displayTextStructured)
|
||||||
|
};
|
||||||
|
|
||||||
|
// Get show/hide boolean from mission namespace if it's a string
|
||||||
|
if (typeName _show == "STRING") then {
|
||||||
|
_show = missionNamespace getVariable _show;
|
||||||
|
};
|
||||||
|
_show = [1, 0] select _show;
|
||||||
|
|
||||||
|
// Disable/Enable elements
|
||||||
|
private _success = false;
|
||||||
|
{
|
||||||
|
private _idc = _x;
|
||||||
|
|
||||||
|
// Loop through IGUI displays as they can be present several times for some reason
|
||||||
|
{
|
||||||
|
if (_idd == ctrlIDD _x) then {
|
||||||
|
TRACE_3("Setting Element Visibility",_show,_idd,_idc);
|
||||||
|
|
||||||
|
(_x displayCtrl _idc) ctrlSetFade _show;
|
||||||
|
(_x displayCtrl _idc) ctrlCommit 0;
|
||||||
|
|
||||||
|
_success = true;
|
||||||
|
};
|
||||||
|
} forEach (uiNamespace getVariable "IGUI_displays");
|
||||||
|
} forEach _elements;
|
||||||
|
|
||||||
|
_success
|
52
addons/ui/functions/fnc_setElementVisibility.sqf
Normal file
52
addons/ui/functions/fnc_setElementVisibility.sqf
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
/*
|
||||||
|
* Author: Jonpas
|
||||||
|
* Setter for toggling advanced element visibility.
|
||||||
|
*
|
||||||
|
* Arguments:
|
||||||
|
* 0: Set/Unset <BOOL> (default: true)
|
||||||
|
* 1: Element IDD <NUMBER> (default: 0)
|
||||||
|
* 2: Element IDCs <ARRAY> (default: [])
|
||||||
|
* 3: Show/Hide Element OR Element ACE Settings Variable <BOOL/STRING> (default: false)
|
||||||
|
*
|
||||||
|
* Return Value:
|
||||||
|
* None
|
||||||
|
*
|
||||||
|
* Example:
|
||||||
|
* [true, 300, [188], false] call ace_ui_fnc_setElementVisibility
|
||||||
|
*
|
||||||
|
* Public: Yes
|
||||||
|
*/
|
||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
params [
|
||||||
|
["_set", true, [true]],
|
||||||
|
["_idd", 0, [0]],
|
||||||
|
["_elements", [], [[]]],
|
||||||
|
["_show", false, [true, ""]]
|
||||||
|
];
|
||||||
|
|
||||||
|
private _return = false;
|
||||||
|
|
||||||
|
if (_set) then {
|
||||||
|
if ([_idd, _elements] in GVAR(elementsSet)) exitWith { TRACE_3("Element already set",_idd,_elements,GVAR(elementsSet)); };
|
||||||
|
|
||||||
|
TRACE_4("Setting element",_idd,_elements,_show,GVAR(elementsSet));
|
||||||
|
private _success = [_idd, _elements, _show] call FUNC(setAdvancedElement);
|
||||||
|
|
||||||
|
if (_success) then {
|
||||||
|
GVAR(elementsSet) pushBack [_idd, _elements];
|
||||||
|
_return = true;
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
if ([_idd, _elements] in GVAR(elementsSet)) then {
|
||||||
|
TRACE_4("Setting element",_idd,_elements,_show,GVAR(elementsSet));
|
||||||
|
[_idd, _elements, _show] call FUNC(setAdvancedElement);
|
||||||
|
|
||||||
|
private _index = GVAR(elementsSet) find [_idd, _elements];
|
||||||
|
GVAR(elementsSet) deleteAt _index;
|
||||||
|
_return = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
TRACE_2("Visibility set",_return,GVAR(elementsSet));
|
||||||
|
_return
|
37
addons/ui/functions/fnc_setElements.sqf
Normal file
37
addons/ui/functions/fnc_setElements.sqf
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
/*
|
||||||
|
* Author: Jonpas
|
||||||
|
* Sets basic visible elements of the UI using showHUD setter.
|
||||||
|
*
|
||||||
|
* Arguments:
|
||||||
|
* 0: Force change even when disallowed <BOOL> (default: false)
|
||||||
|
*
|
||||||
|
* Return Value:
|
||||||
|
* None
|
||||||
|
*
|
||||||
|
* Example:
|
||||||
|
* [false] call ace_ui_fnc_setElements
|
||||||
|
*
|
||||||
|
* Public: No
|
||||||
|
*/
|
||||||
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
if (isArray (missionConfigFile >> "showHUD")) exitWith {};
|
||||||
|
|
||||||
|
params [ ["_force", false, [true]] ];
|
||||||
|
|
||||||
|
if (!_force && {!GVAR(allowSelectiveUI)}) exitWith {
|
||||||
|
[LSTRING(Disallowed), 2] call EFUNC(common,displayTextStructured);
|
||||||
|
};
|
||||||
|
|
||||||
|
private _shownHUD = shownHUD; // [hud, info, radar, compass, direction, menu, group, cursors]
|
||||||
|
|
||||||
|
["ui", [
|
||||||
|
_shownHUD select 0,
|
||||||
|
GVAR(soldierVehicleWeaponInfo),
|
||||||
|
GVAR(vehicleRadar),
|
||||||
|
GVAR(vehicleCompass),
|
||||||
|
_shownHUD select 4,
|
||||||
|
GVAR(commandMenu),
|
||||||
|
GVAR(groupBar),
|
||||||
|
_shownHUD select 7
|
||||||
|
]] call EFUNC(common,showHud);
|
1
addons/ui/functions/script_component.hpp
Normal file
1
addons/ui/functions/script_component.hpp
Normal file
@ -0,0 +1 @@
|
|||||||
|
#include "\z\ace\addons\ui\script_component.hpp"
|
@ -15,3 +15,81 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "\z\ace\addons\main\script_macros.hpp"
|
#include "\z\ace\addons\main\script_macros.hpp"
|
||||||
|
|
||||||
|
|
||||||
|
// Elements
|
||||||
|
#define ELEMENTS_BASIC [QGVAR(soldierVehicleWeaponInfo), QGVAR(vehicleRadar), QGVAR(vehicleCompass), QGVAR(commandMenu), QGVAR(groupBar)]
|
||||||
|
|
||||||
|
// IDD, IDC, Element (must be string to compare to changed setting name)
|
||||||
|
#define ELEMENTS_ADVANCED [ \
|
||||||
|
[300, [118], QGVAR(weaponName)], \
|
||||||
|
[300, [1001, 1008], QGVAR(weaponNameBackground)], \
|
||||||
|
[300, [187, 1203], QGVAR(firingMode)], \
|
||||||
|
[300, [155], QGVAR(ammoType)], \
|
||||||
|
[300, [184], QGVAR(ammoCount)], \
|
||||||
|
[300, [185], QGVAR(magCount)], \
|
||||||
|
[300, [152], QGVAR(throwableName)], \
|
||||||
|
[300, [151], QGVAR(throwableCount)], \
|
||||||
|
[300, [1202], QGVAR(weaponLowerInfoBackground)], \
|
||||||
|
[300, [168], QGVAR(zeroing)], \
|
||||||
|
[305, [193], QGVAR(staminaBar)], \
|
||||||
|
[303, [188, 1201], QGVAR(stance)], \
|
||||||
|
[300, [120], QGVAR(vehicleName)], \
|
||||||
|
[300, [1000, 1013], QGVAR(vehicleNameBackground)], \
|
||||||
|
[300, [113, 1202], QGVAR(vehicleFuelBar)], \
|
||||||
|
[300, [121, 1004, 1006], QGVAR(vehicleSpeed)], \
|
||||||
|
[300, [122, 1005, 1014], QGVAR(vehicleAltitude)], \
|
||||||
|
[300, [111], QGVAR(vehicleDamage)], \
|
||||||
|
[300, [1200], QGVAR(vehicleInfoBackground)], \
|
||||||
|
[300, [150], QGVAR(vehicleGunnerWeapon)] \
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
RscUnitInfo = 300
|
||||||
|
--------------------
|
||||||
|
118 (Weapon Name)
|
||||||
|
+ 1001 (Weapon Name Background 1/2)
|
||||||
|
+ 1008 (Weapon Name Background 2/2)
|
||||||
|
|
||||||
|
187 (Firing Mode)
|
||||||
|
+ 1203 (Firing Mode Background)
|
||||||
|
|
||||||
|
155 (Ammo Type)
|
||||||
|
184 (Ammo Count) - disabled in config by ace_reload
|
||||||
|
185 (Magazine Count)
|
||||||
|
152 (Grenade/Flare Type)
|
||||||
|
151 (Grenade/Flare Count)
|
||||||
|
1202 (Lower Weapon Info Background)
|
||||||
|
168 (Zeroing)
|
||||||
|
|
||||||
|
|
||||||
|
120 (Vehicle Name)
|
||||||
|
1000 (Vehicle Name Background 1/2)
|
||||||
|
+ 1013 (Vehicle Name Background 2/2)
|
||||||
|
|
||||||
|
113 (Vehicle Fuel Bar)
|
||||||
|
+ 1202 (Vehicle Fuel Bar Background)
|
||||||
|
|
||||||
|
121 (Vehicle Speed Number)
|
||||||
|
+ 1004 (Vehicle Speed Unit)
|
||||||
|
+ 1006 (Vehicle Speed Background)
|
||||||
|
122 (Vehicle Altitude Number)
|
||||||
|
+ 1005 (Vehicle Altitude Units)
|
||||||
|
+ 1014 (Vehicle Altitude Background)
|
||||||
|
111 (Vehicle Damage)
|
||||||
|
1200 (Vehicle Info Background)
|
||||||
|
|
||||||
|
150 (Vehicle Gunner Weapon)
|
||||||
|
|
||||||
|
|
||||||
|
RscStanceInfo = 303
|
||||||
|
--------------------
|
||||||
|
188 (Stance)
|
||||||
|
+ 1201 (Stance Background)
|
||||||
|
|
||||||
|
|
||||||
|
RscStaminaBar = 305
|
||||||
|
--------------------
|
||||||
|
193 (Stamina Bar)
|
||||||
|
*/
|
||||||
|
101
addons/ui/stringtable.xml
Normal file
101
addons/ui/stringtable.xml
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project name="ACE">
|
||||||
|
<Package name="UI">
|
||||||
|
<Key ID="STR_ACE_UI_Category">
|
||||||
|
<English>User Interface</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_ModuleName">
|
||||||
|
<English>User Interface</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_ModuleDescription">
|
||||||
|
<English>This module allows toggling visible user interface parts.</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_AllowSelectiveUI">
|
||||||
|
<English>Allow Selective UI</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_AllowSelectiveUI_Description">
|
||||||
|
<English>Allow client to modify their UI.</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_SoldierVehicleWeaponInfo">
|
||||||
|
<English>Soldier/Vehicle/Weapon Information</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleRadar">
|
||||||
|
<English>Vehicle Radar</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleCompass">
|
||||||
|
<English>Vehicle Compass</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_CommandMenu">
|
||||||
|
<English>Command Menu</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_GroupBar">
|
||||||
|
<English>Group Bar</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_WeaponName">
|
||||||
|
<English>Weapon Name</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_WeaponNameBackground">
|
||||||
|
<English>Weapon Name Background</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_FiringMode">
|
||||||
|
<English>Firing Mode</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_AmmoType">
|
||||||
|
<English>Ammo Type</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_AmmoCount">
|
||||||
|
<English>Ammo Count</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_MagCount">
|
||||||
|
<English>Magazine Count</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_ThrowableName">
|
||||||
|
<English>Throwable Type</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_ThrowableCount">
|
||||||
|
<English>Throwable Count</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_Zeroing">
|
||||||
|
<English>Zeroing</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_WeaponLowerInfoBackground">
|
||||||
|
<English>Weapon Lower Info Background</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_Stance">
|
||||||
|
<English>Stance</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_StaminaBar">
|
||||||
|
<English>Stamina Bar</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleName">
|
||||||
|
<English>Vehicle Name</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleNameBackground">
|
||||||
|
<English>Vehicle Name Background</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleFuelBar">
|
||||||
|
<English>Vehicle Fuel Bar</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleSpeed">
|
||||||
|
<English>Vehicle Speed</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleAltitude">
|
||||||
|
<English>Vehicle Altitude</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleDamage">
|
||||||
|
<English>Vehicle Damage</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleInfoBackground">
|
||||||
|
<English>Vehicle Info Background</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_VehicleGunnerWeapon">
|
||||||
|
<English>Vehicle Gunner Weapon</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_RequiresSoldierVehicleWeaponInfo">
|
||||||
|
<English>Requires Soldier/Vehicle/Weapons Information.</English>
|
||||||
|
</Key>
|
||||||
|
<Key ID="STR_ACE_UI_Disallowed">
|
||||||
|
<English>Modifying User Interface is disabled.</English>
|
||||||
|
</Key>
|
||||||
|
</Package>
|
||||||
|
</Project>
|
BIN
extras/assets/icons/Icon_Module_png/Icon_Module_UI_ca.png
Normal file
BIN
extras/assets/icons/Icon_Module_png/Icon_Module_UI_ca.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.9 KiB |
Binary file not shown.
Loading…
Reference in New Issue
Block a user