Skip to content

Commit

Permalink
Merge branch 'master' into missile_manpad
Browse files Browse the repository at this point in the history
  • Loading branch information
LinkIsGrim authored Dec 19, 2024
2 parents 6063b39 + ce56d87 commit cbf02ba
Show file tree
Hide file tree
Showing 205 changed files with 4,001 additions and 653 deletions.
3 changes: 3 additions & 0 deletions addons/arsenal/XEH_PREP.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,8 @@ PREP(sortStatement_mod);
PREP(sortStatement_protection);
PREP(sortStatement_rateOfFire);
PREP(sortStatement_scopeMag);
PREP(statCondition_existsAll);
PREP(statCondition_existsAny);
PREP(statBarStatement_accuracy);
PREP(statBarStatement_default);
PREP(statBarStatement_impact);
Expand All @@ -107,6 +109,7 @@ PREP(statTextStatement_rateOfFire);
PREP(statTextStatement_scopeMag);
PREP(statTextStatement_scopeVisionMode);
PREP(statTextStatement_smokeChemTTL);
PREP(statTextStatement_yesno);
PREP(updateCamPos);
PREP(updateRightPanel);
PREP(updateCurrentItemsList);
Expand Down
13 changes: 10 additions & 3 deletions addons/arsenal/functions/fnc_addListBoxItem.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -48,14 +48,21 @@ if (_skip) exitWith {};
private _configPath = ([configFile, campaignConfigFile, missionConfigFile] select _configRoot) >> _configCategory >> _className;
private _dlcName = _configPath call EFUNC(common,getAddon);

// Get DLC requirements
([_configPath] call EFUNC(common,getDLC)) params ["_dlcClass", "_dlcSteamID"];
private _dlcPicture = "";
if (_dlcClass != "") then {
_dlcPicture = getText (configFile >> "CfgMods" >> _dlcClass >> "logo");
};

// If _pictureEntryName is empty, then this item has no picture (e.g. faces)
[configName _configPath, getText (_configPath >> "displayName"), if (_pictureEntryName == "") then {""} else {getText (_configPath >> _pictureEntryName)}, if (_dlcName != "") then {(modParams [_dlcName, ["logo"]]) param [0, ""]} else {""}]
}, true]) params ["_className", "_displayName", "_itemPicture", "_modPicture"];
[configName _configPath, getText (_configPath >> "displayName"), if (_pictureEntryName == "") then {""} else {getText (_configPath >> _pictureEntryName)}, if (_dlcName != "") then {(modParams [_dlcName, ["logo"]]) param [0, ""]} else {""}, _dlcPicture]
}, true]) params ["_className", "_displayName", "_itemPicture", "_modPicture", "_dlcPicture"];

private _lbAdd = _ctrlPanel lbAdd _displayName;
_ctrlPanel lbSetData [_lbAdd, _className];
_ctrlPanel lbSetPicture [_lbAdd, _itemPicture];
_ctrlPanel lbSetPictureRight [_lbAdd, ["", _modPicture] select GVAR(enableModIcons)];
_ctrlPanel lbSetPictureRight [_lbAdd, ["", _modPicture, _dlcPicture] select GVAR(enableModIcons)];
_ctrlPanel lbSetTooltip [_lbAdd, format ["%1\n%2", _displayName, _className]];

if ((toLowerANSI _className) in GVAR(favorites)) then {
Expand Down
2 changes: 1 addition & 1 deletion addons/arsenal/functions/fnc_fillLeftPanel.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ private _selectedItem = if (_idxVirt != -1) then { // Items
_lbAdd = _ctrlPanel lbAdd _displayName;
_ctrlPanel lbSetData [_lbAdd, _x];
_ctrlPanel lbSetTooltip [_lbAdd, format ["%1\n%2", _displayName, _x]];
_ctrlPanel lbSetPictureRight [_lbAdd, ["", _modPicture] select GVAR(enableModIcons)];
_ctrlPanel lbSetPictureRight [_lbAdd, ["", _modPicture, ""] select GVAR(enableModIcons)];
} forEach GVAR(faceCache); // HashMap, not array

GVAR(currentFace)
Expand Down
22 changes: 22 additions & 0 deletions addons/arsenal/functions/fnc_statCondition_existsAll.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#include "..\script_component.hpp"
/*
* Author: LinkIsGrim
* Stat condition to only show stats if all exist.
*
* Arguments:
* 0: Stats <ARRAY>
* 1: Item config path <CONFIG>
*
* Return Value:
* Show stat <BOOL>
*
* Example:
* ["ACE_maxZeroing", _config] call ace_arsenal_fnc_statCondition_existsAll
*
* Public: Yes
*/

params ["_stats", "_config"];
TRACE_2("statCondition_existsAll",_stats,_config);

(_stats findIf {isNull (_config >> _x)}) == -1
22 changes: 22 additions & 0 deletions addons/arsenal/functions/fnc_statCondition_existsAny.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#include "..\script_component.hpp"
/*
* Author: LinkIsGrim
* Stat condition to only show stats if at least one exists.
*
* Arguments:
* 0: Stats <ARRAY>
* 1: Item config path <CONFIG>
*
* Return Value:
* Show stat <BOOL>
*
* Example:
* ["ACE_maxZeroing", _config] call ace_arsenal_fnc_statCondition_existsAny
*
* Public: Yes
*/

params ["_stats", "_config"];
TRACE_2("statCondition_existsAny",_stats,_config);

(_stats findIf {!isNull (_config >> _x)}) != -1
25 changes: 25 additions & 0 deletions addons/arsenal/functions/fnc_statTextStatement_yesno.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#include "..\script_component.hpp"
/*
* Author: LinkIsGrim
* Generic Yes/No/None Text statement for boolean stats.
*
* Arguments:
* 0: Stat <STRING>
* 1: Item config path <CONFIG>
*
* Return Value:
* Stat Text <STRING>
*
* Example:
* ["ACE_hasEHP", _config] call ace_arsenal_fnc_statTextStatement_yesno
*
* Public: Yes
*/

params ["_stat", "_config"];
TRACE_2("statTextStatement_yesno",_stat,_config);

private _statConfig = _config >> _stat;
if (isNull _statConfig) exitWith { LELSTRING(common,none) };

localize ([ELSTRING(common,No), ELSTRING(common,Yes)] select (getNumber _statConfig > 0))
4 changes: 2 additions & 2 deletions addons/arsenal/initSettings.inc.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ private _category = LLSTRING(settingCategory);

[
QGVAR(enableModIcons),
"CHECKBOX",
"LIST",
[LSTRING(modIconsSetting), LSTRING(modIconsTooltip)],
_category,
true
[[0, 1, 2], [ELSTRING(common,Disabled), ELSTRING(common,Enabled), LSTRING(DLCRequirement)], 1]
] call CBA_fnc_addSetting;

[
Expand Down
22 changes: 19 additions & 3 deletions addons/arsenal/stringtable.xml
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,22 @@
<Chinesesimp>无法开启 ACE 虚拟军火库</Chinesesimp>
<Turkish>ACE Arsenal açılamıyor</Turkish>
</Key>
<Key ID="STR_ACE_Arsenal_DLCRequirement">
<English>DLC Required</English>
<Czech>Vyžadováno DLC</Czech>
<French>DLC requis</French>
<Spanish>Requiere DLC</Spanish>
<Italian>DLC richiesto</Italian>
<Polish>Wymagane DLC</Polish>
<Portuguese>DLC necessário</Portuguese>
<Russian>Требуется DLC</Russian>
<German>DLC erforderlich</German>
<Korean>DLC 필요</Korean>
<Japanese>DLCが必要です</Japanese>
<Chinese>需要DLC</Chinese>
<Chinesesimp>需要DLC</Chinesesimp>
<Turkish>DLC gereklidir</Turkish>
</Key>
<Key ID="STR_ACE_Arsenal_DetonatesOnImpact">
<English>Detonates on impact</English>
<French>Détonation à l'impact</French>
Expand Down Expand Up @@ -209,7 +225,7 @@
<Portuguese>Atraso de detonação</Portuguese>
<Russian>Задержка детонации</Russian>
<German>Detonationsverzögerung</German>
<Korean>신관 시간</Korean>
<Korean>신관 작동 시간</Korean>
<Japanese>信管設定時間</Japanese>
<Chinesesimp>引信时间</Chinesesimp>
</Key>
Expand Down Expand Up @@ -946,7 +962,7 @@
<Portuguese>O seguinte loadout foi apagado:</Portuguese>
<Russian>Удален комплект экипировки:</Russian>
<German>Folgende Ausrüstung wurde entfernt:</German>
<Korean>다음 로드아웃이 삭제됨 :</Korean>
<Korean>다음 로드아웃이 삭제됨:</Korean>
<Japanese>装備を削除しました:</Japanese>
<Chinese>以下的裝備已被刪除:</Chinese>
<Chinesesimp>以下的负载已被删除:</Chinesesimp>
Expand Down Expand Up @@ -1026,7 +1042,7 @@
<Portuguese>O seguinte loadout não é mais público:</Portuguese>
<Russian>Этот комплект экипировки больше не публичный:</Russian>
<German>Folgende Ausrüstung ist nicht mehr öffentlich:</German>
<Korean>다음 로드아웃이 더이상 공용이 아님:</Korean>
<Korean>다음 로드아웃이 더 이상 공용이 아님:</Korean>
<Japanese>装備を非公開にしました:</Japanese>
<Chinese>以下的裝備已不再被分享:</Chinese>
<Chinesesimp>以下的负载已不再被分享:</Chinesesimp>
Expand Down
2 changes: 1 addition & 1 deletion addons/attach/stringtable.xml
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@
<Portuguese>Desprender item</Portuguese>
<Russian>Отсоединить</Russian>
<German>Gegenstand entfernen</German>
<Korean>떼내기</Korean>
<Korean>떼어내기</Korean>
<Japanese>アイテムを外す</Japanese>
<Chinese>取下裝備</Chinese>
<Chinesesimp>取下装备</Chinesesimp>
Expand Down
8 changes: 4 additions & 4 deletions addons/captives/stringtable.xml
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@
<Portuguese>Sincronizar uma unidade para deixá-la algemada.</Portuguese>
<Russian>Синхронизируйте с юнитами, чтобы связать им руки.</Russian>
<German>Synchronisiere eine Einheit, um sie in Handschellen zu legen.</German>
<Korean>수갑을 채우기 위해 동기화합니다.</Korean>
<Korean>수갑을 채우게 할 유닛을 동기화합니다.</Korean>
<Japanese>同期されたユニットを拘束させます。</Japanese>
<Chinese>使單位戴上手銬</Chinese>
<Chinesesimp>使单位戴上手铐</Chinesesimp>
Expand Down Expand Up @@ -235,7 +235,7 @@
<Portuguese>Pode algemar o próprio lado</Portuguese>
<Russian>Можно связывать руки союзникам</Russian>
<German>Kann Kameraden fesseln</German>
<Korean>자기편을 포박 할 수 있습니다.</Korean>
<Korean>자기 편을 포박 할 수 있습니다.</Korean>
<Japanese>自陣営を拘束可能に</Japanese>
<Chinese>可以銬住同陣營隊友</Chinese>
<Chinesesimp>可以铐住同阵营队友</Chinesesimp>
Expand Down Expand Up @@ -311,7 +311,7 @@
<Portuguese>Sincroniza uma unidade para fazer com que ela se renda.</Portuguese>
<Russian>Синхронизируйте с юнитами, чтобы заставить их сдаться.</Russian>
<German>Einheit synchronisieren, um sie kapitulieren zu lassen.</German>
<Korean>투항시키기 위해 동기화합니다.</Korean>
<Korean>투항시키려 할 유닛을 동기화합니다.</Korean>
<Japanese>同期されたユニットを投降させます。</Japanese>
<Chinese>同步此模塊到一個單位,使該單位投降</Chinese>
<Chinesesimp>同步此模块到一个单位,使该单位投降</Chinesesimp>
Expand Down Expand Up @@ -441,7 +441,7 @@
<Portuguese>Parar de se render</Portuguese>
<Russian>Прекратить сдаваться</Russian>
<German>Den Kampf erneut aufnehmen</German>
<Korean>투항하는것을 멈춤</Korean>
<Korean>투항하는 것을 멈춤</Korean>
<Japanese>投降をやめる</Japanese>
<Chinese>停止投降</Chinese>
<Chinesesimp>停止投降</Chinesesimp>
Expand Down
2 changes: 2 additions & 0 deletions addons/cargo/stringtable.xml
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,8 @@
<English>Show Check Cargo Size Interaction</English>
<Russian>Вкл. проверку размера груза</Russian>
<Japanese>貨物の大きさを確認のインタラクションを表示</Japanese>
<Korean>화물 크기 확인 상호작용 표시</Korean>
<French>Afficher l'interaction de confirmation de la taille de la cargaison</French>
</Key>
<Key ID="STR_ACE_Cargo_clearedCustomName">
<English>Custom name has been cleared.</English>
Expand Down
2 changes: 1 addition & 1 deletion addons/chemlights/stringtable.xml
Original file line number Diff line number Diff line change
Expand Up @@ -459,7 +459,7 @@
<Portuguese>Protetor de Bastão de Luz (Vazio)</Portuguese>
<Russian>Контейнер для химсвета (пустой)</Russian>
<German>Knicklicht-Abschirmung (leer)</German>
<Korean>화학조명 가림막 (비어있음)</Korean>
<Korean>화학조명 가림막 (비어 있음)</Korean>
<Japanese>ケミカルライト シールド(空)</Japanese>
<Chinese>螢光棒保護殼 (空)</Chinese>
<Chinesesimp>荧光棒保护壳(空)</Chinesesimp>
Expand Down
5 changes: 5 additions & 0 deletions addons/common/XEH_PREP.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -73,13 +73,16 @@ PREP(getDefaultAnim);
PREP(getDefinedVariable);
PREP(getDefinedVariableDefault);
PREP(getDefinedVariableInfo);
PREP(getDLC);
PREP(getFiremodeIndex);
PREP(getFirstObjectIntersection);
PREP(getFirstTerrainIntersection);
PREP(getGunner);
PREP(getInPosition);
PREP(getItemReplacements);
PREP(getLocalUnits);
PREP(getMagneticBearing);
PREP(getMagneticBearingOffset);
PREP(getMapData);
PREP(getMapGridData);
PREP(getMapGridFromPos);
Expand Down Expand Up @@ -122,6 +125,8 @@ PREP(hideUnit);
PREP(interpolateFromArray);
PREP(inTransitionAnim);
PREP(isAwake);
PREP(isBeingCarried);
PREP(isBeingDragged);
PREP(isEngineer);
PREP(isEOD);
PREP(isInBuilding);
Expand Down
Loading

0 comments on commit cbf02ba

Please sign in to comment.