mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Merge branch 'master' into release-3.13.3
This commit is contained in:
commit
68662e21c0
@ -44,7 +44,6 @@ Andrea "AtixNeon" Verano <veranoandrea88@gmail.com>
|
||||
Anthariel <Contact@storm-simulation.com>
|
||||
Arcanum417 <lubos.len@gmail.com>
|
||||
Anton
|
||||
Arcanum417 <lubos.len@gmail.com>
|
||||
Arkhir <wonsz666@gmail.com >
|
||||
Asgar Serran <piechottaf@web.de>
|
||||
BaerMitUmlaut
|
||||
@ -139,6 +138,7 @@ Robert Boklahánics <bokirobi@gmail.com>
|
||||
ruPaladin <happyworm24@rambler.ru>
|
||||
Rutger "RedBery" Meijering <c.redbery@gmail.com>
|
||||
Schwaggot <tom.ryan@posteo.de>
|
||||
shukari
|
||||
simon84 <badguy360th@gmail.com>
|
||||
Skengman2
|
||||
Smith <smitt14ua@gmail.com>
|
||||
|
@ -1,5 +1,6 @@
|
||||
PREP(addDefaultLoadout);
|
||||
PREP(addListBoxItem);
|
||||
PREP(addRightPanelButton);
|
||||
PREP(addStat);
|
||||
PREP(addVirtualItems);
|
||||
PREP(attributeAddCompatible);
|
||||
|
@ -15,6 +15,7 @@ class CfgPatches {
|
||||
};
|
||||
|
||||
#include "ui\RscAttributes.hpp"
|
||||
#include "ui\RscCustomArsenalButton.hpp"
|
||||
#include "Display3DEN.hpp"
|
||||
#include "Cfg3DEN.hpp"
|
||||
#include "CfgEventHandlers.hpp"
|
||||
|
BIN
addons/arsenal/data/iconCustom.paa
Normal file
BIN
addons/arsenal/data/iconCustom.paa
Normal file
Binary file not shown.
@ -172,10 +172,12 @@
|
||||
#define FADE_DELAY 0.15
|
||||
#define CAM_DIS_MAX 5
|
||||
|
||||
#define RIGHT_PANEL_CUSTOM_BUTTONS 61, 63, 65, 67, 69, 71, 73, 75, 77, 79
|
||||
#define RIGHT_PANEL_CUSTOM_BACKGROUND 60, 62, 64, 66, 68, 70, 72, 74, 76, 78
|
||||
#define RIGHT_PANEL_ACC_IDCS IDC_buttonOptic, IDC_buttonItemAcc, IDC_buttonMuzzle, IDC_buttonBipod
|
||||
#define RIGHT_PANEL_ACC_BACKGROUND_IDCS IDC_iconBackgroundOptic, IDC_iconBackgroundItemAcc, IDC_iconBackgroundMuzzle, IDC_iconBackgroundBipod
|
||||
#define RIGHT_PANEL_ITEMS_IDCS IDC_buttonMag, IDC_buttonMagALL, IDC_buttonThrow, IDC_buttonPut, IDC_buttonMisc
|
||||
#define RIGHT_PANEL_ITEMS_BACKGROUND_IDCS IDC_iconBackgroundMag, IDC_iconBackgroundMagALL, IDC_iconBackgroundThrow, IDC_iconBackgroundPut, IDC_iconBackgroundMisc
|
||||
#define RIGHT_PANEL_ITEMS_IDCS IDC_buttonMag, IDC_buttonMagALL, IDC_buttonThrow, IDC_buttonPut, IDC_buttonMisc, RIGHT_PANEL_CUSTOM_BUTTONS
|
||||
#define RIGHT_PANEL_ITEMS_BACKGROUND_IDCS IDC_iconBackgroundMag, IDC_iconBackgroundMagALL, IDC_iconBackgroundThrow, IDC_iconBackgroundPut, IDC_iconBackgroundMisc, RIGHT_PANEL_CUSTOM_BACKGROUND
|
||||
#define ARROWS_IDCS IDC_arrowMinus, IDC_arrowPlus
|
||||
|
||||
#define GETDLC\
|
||||
@ -304,7 +306,38 @@ _buttonCurrentMag2Ctrl ctrlCommit FADE_DELAY;\
|
||||
} foreach [\
|
||||
IDC_blockRightFrame,\
|
||||
IDC_blockRighttBackground\
|
||||
];
|
||||
];\
|
||||
if (!isNil QGVAR(customRightPanelButtons)) then {\
|
||||
private _miscOffset = 0;\
|
||||
{\
|
||||
if (!isNil "_x") then {\
|
||||
_x params ["", "_picture", "_tooltip"];\
|
||||
_miscOffset = _forEachIndex + 1;\
|
||||
private _ctrl = _display ctrlCreate [QGVAR(customArsenalButton_Background), 60 + (_forEachIndex * 2)];\
|
||||
_ctrl ctrlSetPosition [\
|
||||
safezoneW + safezoneX - 13 * GRID_W,\
|
||||
safezoneY + (88 + (10 * _forEachIndex)) * GRID_H\
|
||||
];\
|
||||
_ctrl ctrlCommit 0;\
|
||||
_ctrl = _display ctrlCreate [QGVAR(customArsenalButton_Button), 61 + (_forEachIndex * 2)];\
|
||||
_ctrl ctrlSetPosition [\
|
||||
safezoneW + safezoneX - 10 * GRID_W,\
|
||||
safezoneY + (88 + (10 * _forEachIndex)) * GRID_H\
|
||||
];\
|
||||
_ctrl ctrlSetText _picture;\
|
||||
_ctrl ctrlSetTooltip _tooltip;\
|
||||
_ctrl ctrlCommit 0;\
|
||||
};\
|
||||
} forEach GVAR(customRightPanelButtons);\
|
||||
{\
|
||||
_x = _display displayCtrl _x;\
|
||||
_x ctrlSetPosition [\
|
||||
safezoneW + safezoneX - (10 + (3 * _forEachIndex)) * GRID_W,\
|
||||
safezoneY + (88 + (10 * _miscOffset)) * GRID_H\
|
||||
];\
|
||||
_x ctrlCommit 0;\
|
||||
} forEach [IDC_buttonMisc, IDC_iconBackgroundMisc];\
|
||||
};
|
||||
|
||||
#define TOGGLE_RIGHT_PANEL_HIDE\
|
||||
{\
|
||||
|
55
addons/arsenal/functions/fnc_addRightPanelButton.sqf
Normal file
55
addons/arsenal/functions/fnc_addRightPanelButton.sqf
Normal file
@ -0,0 +1,55 @@
|
||||
#include "script_component.hpp"
|
||||
#include "..\defines.hpp"
|
||||
/*
|
||||
* Author: shukari, Schwaggot
|
||||
* Adds a right panel button for uniforms, vests and backpacks with
|
||||
* defined misc items.
|
||||
*
|
||||
* Arguments:
|
||||
* 0: items only misc items <ARRAY of STRING>
|
||||
* 1: tooltip <STRING> (Optional)
|
||||
* 2: picture path <STRING> (Optional)
|
||||
* 3: override a spezific button (0-9) <NUMBER> (Optional)
|
||||
*
|
||||
* Return Value:
|
||||
* successful: number of the slot; error: -1 <NUMBER>
|
||||
*
|
||||
* Example:
|
||||
* [["ACE_bloodIV_500", "ACE_Banana"], "MedicalStuff", "\z\ace\addons\arsenal\data\iconCustom.paa", 5] call ace_arsenal_fnc_addRightPanelButton
|
||||
*
|
||||
* Public: Yes
|
||||
*/
|
||||
|
||||
params [["_items", [], [[]]], ["_tooltip", "", [""]], ["_picture", QPATHTOF(data\iconCustom.paa), [""]], ["_override", -1, [0]]];
|
||||
|
||||
if (isNil QGVAR(customRightPanelButtons)) then {
|
||||
GVAR(customRightPanelButtons) = [];
|
||||
};
|
||||
|
||||
private _position = count GVAR(customRightPanelButtons);
|
||||
|
||||
if (_override != -1 && {_override >= 0} && {_override <= 9}) then {
|
||||
_position = _override;
|
||||
} else {
|
||||
private _emptyPos = GVAR(customRightPanelButtons) findIf {isNil "_x"};
|
||||
if (_emptyPos != -1) then {
|
||||
_position = _emptyPos;
|
||||
};
|
||||
};
|
||||
|
||||
private _return = -1;
|
||||
if (_position >= 0 && _position <= 9) then {
|
||||
private _cfgWeapons = configFile >> "CfgWeapons";
|
||||
_items = _items select {
|
||||
private _configItemInfo = _cfgWeapons >> _x >> "ItemInfo";
|
||||
|
||||
_x isKindOf ["CBA_MiscItem", _cfgWeapons] && {getNumber (_configItemInfo >> "type") in [TYPE_MUZZLE, TYPE_OPTICS, TYPE_FLASHLIGHT, TYPE_BIPOD]} ||
|
||||
{getNumber (_configItemInfo >> "type") in [TYPE_FIRST_AID_KIT, TYPE_MEDIKIT, TYPE_TOOLKIT]} ||
|
||||
{getText (_cfgWeapons >> _x >> "simulation") == "ItemMineDetector"}
|
||||
};
|
||||
|
||||
_return = _position;
|
||||
GVAR(customRightPanelButtons) set [_position, [_items apply {toLower _x}, _picture, _tooltip]];
|
||||
};
|
||||
|
||||
_return
|
@ -273,9 +273,20 @@ switch (_ctrlIDC) do {
|
||||
};
|
||||
|
||||
case IDC_buttonMisc : {
|
||||
// hide custom button items
|
||||
private _blockItems = [];
|
||||
if (!isNil QGVAR(customRightPanelButtons)) then {
|
||||
{
|
||||
if (!isNil "_x") then {
|
||||
_blockItems append (_x select 0);
|
||||
};
|
||||
} forEach GVAR(customRightPanelButtons);
|
||||
};
|
||||
|
||||
{
|
||||
["CfgWeapons", _x, false] call _fnc_fill_right_Container;
|
||||
} foreach (GVAR(virtualItems) select 17);
|
||||
} forEach ((GVAR(virtualItems) select 17) select {!((toLower _x) in _blockItems)});
|
||||
|
||||
{
|
||||
["CfgWeapons", _x, false, true] call _fnc_fill_right_Container;
|
||||
} foreach (GVAR(virtualItems) select 18);
|
||||
@ -286,6 +297,20 @@ switch (_ctrlIDC) do {
|
||||
["CfgGlasses", _x, false, true] call _fnc_fill_right_Container;
|
||||
} foreach (GVAR(virtualItems) select 24);
|
||||
};
|
||||
|
||||
default {
|
||||
private _index = [RIGHT_PANEL_CUSTOM_BUTTONS] find _ctrlIDC;
|
||||
if (_index != -1) then {
|
||||
private _data = GVAR(customRightPanelButtons) param [_index];
|
||||
|
||||
if (!isNil "_data") then {
|
||||
private _items = _data select 0;
|
||||
{
|
||||
["CfgWeapons", _x, true] call _fnc_fill_right_Container;
|
||||
} foreach ((GVAR(virtualItems) select 17) select {(toLower _x) in _items});
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
(_display displayCtrl IDC_rightSearchbar) ctrlSetText "";
|
||||
|
@ -903,6 +903,7 @@ class GVAR(display) {
|
||||
tooltip="$STR_A3_RscDisplayArsenal_tab_CargoMisc";
|
||||
y = QUOTE(safezoneY + 88 * GRID_H);
|
||||
};
|
||||
|
||||
class buttonRemoveAll: ctrlButtonPicture {
|
||||
idc = IDC_buttonRemoveAll;
|
||||
text = QPATHTOF(data\iconClearContainer.paa);
|
||||
|
22
addons/arsenal/ui/RscCustomArsenalButton.hpp
Normal file
22
addons/arsenal/ui/RscCustomArsenalButton.hpp
Normal file
@ -0,0 +1,22 @@
|
||||
class GVAR(customArsenalButton_Button) : RscButtonArsenal {
|
||||
x = QUOTE(safezoneW + safezoneX - 10 * GRID_W);
|
||||
y = QUOTE(safezoneY + 88 * GRID_H);
|
||||
w = QUOTE(9 * GRID_W);
|
||||
h = QUOTE(9 * GRID_H);
|
||||
|
||||
text = QPATHTOF(data\iconCustom.paa);
|
||||
tooltip = "";
|
||||
onButtonClick = QUOTE([ARR_2(ctrlParent (_this select 0), _this select 0)] call FUNC(fillRightPanel));
|
||||
colorBackground[] = {0,0,0,0.5};
|
||||
};
|
||||
|
||||
class GVAR(customArsenalButton_Background) : ctrlStaticBackground {
|
||||
x = QUOTE(safezoneW + safezoneX - 13 * GRID_W);
|
||||
y = QUOTE(safezoneY + 88 * GRID_H);
|
||||
w = QUOTE(12 * GRID_W);
|
||||
h = QUOTE(9 * GRID_H);
|
||||
|
||||
colorBackground[] = {0,0,0,1};
|
||||
fade = 1;
|
||||
enable = 0;
|
||||
};
|
@ -406,6 +406,7 @@
|
||||
<Spanish>[CSW] M2 estática con escudo</Spanish>
|
||||
<Czech>[CSW] Statická zbraň M2 se štítem</Czech>
|
||||
<French>[CSW] Mitrailleuse statique M2 ac. bouclier</French>
|
||||
<Polish>[CSW] Statyczny karabin maszynowy M2 z tarczą</Polish>
|
||||
<Russian>[CSW] Станковый M2 со щитом</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_CSW_StaticAutoHMGBag_displayName">
|
||||
|
@ -69,21 +69,24 @@
|
||||
<English>Exchange weapon in gunbag</English>
|
||||
<Polish>Wymień broń w torbie</Polish>
|
||||
<Russian>Заменить оружие в чехле</Russian>
|
||||
<French>Échanger les armes</French>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Gunbag_SwapGunbagEnabled_DisplayName">
|
||||
<English>Enable Weapon Swap</English>
|
||||
<Polish>Aktywuj wymiane broni</Polish>
|
||||
<Polish>Aktywuj wymianę broni</Polish>
|
||||
<Russian>Включить обмен оружием</Russian>
|
||||
<French>Activer l'échange d'arme</French>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Gunbag_SwapGunbagEnabled_Description">
|
||||
<English>Allows interaction to directly swap the primary weapon and stored weapon.</English>
|
||||
<Polish>Pozwala na interkacje do wymiany broni głównej na bron schowaną</Polish>
|
||||
<Polish>Pozwala na interakcje do wymiany broni głównej na bron schowaną.</Polish>
|
||||
<Russian>Разрешает действие прямого обмена основного оружия и спрятанного в чехле.</Russian>
|
||||
<French>Permet d'échanger directement l'arme primaire et l'arme stockée dans la housse, via le menu d'interaction personnelle.</French>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Gunbag_OffGunbag">
|
||||
<English>Get weapon out of gunbag</English>
|
||||
<German>Hole Waffe aus Waffentasche</German>
|
||||
<French>Extraire l'arme de la housse</French>
|
||||
<French>Prendre l'arme de la housse</French>
|
||||
<Russian>Расчехлить оружие</Russian>
|
||||
<Czech>Vytáhnout zbraň z pouzdra</Czech>
|
||||
<Japanese>ガンバッグから武器を出す</Japanese>
|
||||
|
@ -6,18 +6,18 @@ class CfgVehicles {
|
||||
};
|
||||
};
|
||||
class Helicopter_Base_F: Helicopter {
|
||||
class ACE_Actions: ACE_Actions{
|
||||
class ACE_Actions: ACE_Actions {
|
||||
class ACE_MainActions: ACE_MainActions {};
|
||||
};
|
||||
};
|
||||
class UAV_01_base_F: Helicopter_Base_F {
|
||||
fuelCapacity = 19; // Around 30 minutes hovering
|
||||
class ACE_Actions: ACE_Actions{
|
||||
class ACE_Actions: ACE_Actions {
|
||||
class ACE_MainActions: ACE_MainActions {
|
||||
class GVAR(RefuelUAV) {
|
||||
displayName = CSTRING(Recharge);
|
||||
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canRefuelUAV));
|
||||
statement = QUOTE([ARR_2(_player, _target)] call FUNC(refuelUAV));
|
||||
condition = QUOTE([ARR_2(_player,_target)] call FUNC(canRefuelUAV));
|
||||
statement = QUOTE([ARR_2(_player,_target)] call FUNC(refuelUAV));
|
||||
icon = QPATHTOF(ui\UAV_battery_ca.paa);
|
||||
};
|
||||
};
|
||||
@ -25,12 +25,36 @@ class CfgVehicles {
|
||||
};
|
||||
class UAV_06_base_F: Helicopter_Base_F {
|
||||
fuelCapacity = 16; // Around 25 minutes hovering
|
||||
class ACE_Actions: ACE_Actions{
|
||||
class ACE_Actions: ACE_Actions {
|
||||
class ACE_MainActions: ACE_MainActions {
|
||||
class GVAR(RefuelUAV) {
|
||||
displayName = CSTRING(Recharge);
|
||||
condition = QUOTE([ARR_2(_player, _target)] call FUNC(canRefuelUAV));
|
||||
statement = QUOTE([ARR_2(_player, _target)] call FUNC(refuelUAV));
|
||||
condition = QUOTE([ARR_2(_player,_target)] call FUNC(canRefuelUAV));
|
||||
statement = QUOTE([ARR_2(_player,_target)] call FUNC(refuelUAV));
|
||||
icon = QPATHTOF(ui\UAV_battery_ca.paa);
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class LandVehicle;
|
||||
class Tank: LandVehicle {
|
||||
class ACE_Actions {
|
||||
class ACE_MainActions;
|
||||
};
|
||||
};
|
||||
class Tank_F: Tank {
|
||||
class ACE_Actions: ACE_Actions {
|
||||
class ACE_MainActions: ACE_MainActions {};
|
||||
};
|
||||
};
|
||||
class UGV_02_Base_F: Tank_F {
|
||||
class ACE_Actions: ACE_Actions {
|
||||
class ACE_MainActions: ACE_MainActions {
|
||||
class GVAR(RefuelUAV) {
|
||||
displayName = CSTRING(Recharge);
|
||||
condition = QUOTE([ARR_2(_player,_target)] call FUNC(canRefuelUAV));
|
||||
statement = QUOTE([ARR_2(_player,_target)] call FUNC(refuelUAV));
|
||||
icon = QPATHTOF(ui\UAV_battery_ca.paa);
|
||||
};
|
||||
};
|
||||
|
@ -269,10 +269,12 @@
|
||||
<English>Only Show Friendly Gestures</English>
|
||||
<Russian>Показывать только союзные жесты</Russian>
|
||||
<Polish>Pokazuj jedynie sojusznicze gesty</Polish>
|
||||
<French>Afficher uniquement le pointage des alliés</French>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Map_Gestures_onlyShowFriendlys_description">
|
||||
<English>Shows only Gestures from Units that are from the same side or a Friendly side.</English>
|
||||
<Russian>Показывать жесты только от игроков союзной стороны.</Russian>
|
||||
<French>Affiche uniquement les pointages effectués par des unités qui sont du même camp, ou d'un camp allié.</French>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Map_Gestures_moduleGroupSettings_displayName">
|
||||
<English>Map Gestures - Group Settings</English>
|
||||
|
@ -190,7 +190,7 @@
|
||||
<Chinesesimp>骨折概率</Chinesesimp>
|
||||
<Czech>Šance na zlomeninu</Czech>
|
||||
<Russian>Шанс перелома</Russian>
|
||||
<Polish>Szansa na pęknięcie kości</Polish>
|
||||
<Polish>Szansa na złamanie</Polish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_FractureChance_Description">
|
||||
<English>The probability of a fracture causing wound resulting in a fracture.</English>
|
||||
@ -199,7 +199,7 @@
|
||||
<Chinesesimp>骨折导致的伤口再次骨折的可能性。</Chinesesimp>
|
||||
<Czech>Výška šance kdy zranění způsobující zlomeniny skutečně způsobí zlomeninu.</Czech>
|
||||
<Russian>Вероятность перелома при получении соответствующих ран.</Russian>
|
||||
<Polish>Prawdopodobieństwo faktycznego pęknięcia kości od rany powodującej pęknięcia kosci</Polish>
|
||||
<Polish>Prawdopodobieństwo złamania kości w wyniku rany mogącej powodować złamania.</Polish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_MedicalSettings_enableFor_DisplayName">
|
||||
<English>Enabled for</English>
|
||||
|
@ -673,7 +673,7 @@
|
||||
<Japanese>ユニットのダメージしきい値</Japanese>
|
||||
<Czech>Práh poškození</Czech>
|
||||
<Russian>Порог урона</Russian>
|
||||
<Polish>Pułap Obrażeń jednostki</Polish>
|
||||
<Polish>Próg obrażeń jednostki</Polish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Damage_Eden_threshold_Description">
|
||||
<English>Sets the amount of damage a unit can receive before going unconscious. (0 for mission default)</English>
|
||||
@ -682,7 +682,7 @@
|
||||
<Japanese>ユニットが気絶するまで許容できるダメージ値を設定できます。標準: 0</Japanese>
|
||||
<Czech>Určuje kolik poškození může jednotka utrpět než upadne do bezvědomí. (pro použití standardní hodnoty mise zadejte 0)</Czech>
|
||||
<Russian>Устанавливает количество урона, которое может получить юнит перед тем, как потерять сознание. (0 для значения миссии)</Russian>
|
||||
<Polish>Ustawia Pułap obrażeń jakie może otrzymać jednostka przed utratą przytomności. (0 jako ustawienie domyślne misji)</Polish>
|
||||
<Polish>Ustawia próg obrażeń jakie może otrzymać jednostka przed utratą przytomności. (0 jako ustawienie domyślne misji)</Polish>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
||||
|
@ -118,7 +118,7 @@
|
||||
<French>Permet de choisir quel effet provoque un faible volume sanguin.</French>
|
||||
<Japanese>低血液量時の効果を選択できます。</Japanese>
|
||||
<Czech>Nastavuje který efekt pro nízké množství krve bude používán.</Czech>
|
||||
<Polish>Wybiera efekt ktory bedzie pokazywany po utracie znacznej ilości krwi</Polish>
|
||||
<Polish>Wybiera efekt ktory będzie pokazywany po utracie znacznej ilości krwi.</Polish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Feedback_BloodVolumeEffectType_colorCorrection">
|
||||
<English>Color Fading</English>
|
||||
|
@ -122,7 +122,7 @@
|
||||
<German>Koeffizient zur Kontrolle der Wundöffnungswahrscheinlichkeit. Die endgültige Wiedereröffnungschance wird bestimmt, indem dieser Wert mit der spezifischen Wiedereröffnungschance für den verwendeten Wundtyp und Verband multipliziert wird.</German>
|
||||
<Czech>Koeficient pro řízení šance na opětovné otevření rány. Konečná šance na opětovné otevření se stanoví vynásobením této hodnoty specifickou šancí na opětovné otevření pro použitý typ rány a obvaz.</Czech>
|
||||
<Russian>Коэффициент контроля вероятности повторного открытия раны. Окончательный шанс повторного открытия определяется путем умножения этого значения на определенный шанс повторного открытия для используемого типа раны и повязки.</Russian>
|
||||
<Polish>Współczynnik kontroluje szanse na ponowne otworzenie rany. Końcowa szansa na otworzenie jest ustalana przez pomnożenie tej wartości z wartościaą szansy na otworzenie rany dla typu rany oraz typu bandaża.</Polish>
|
||||
<Polish>Współczynnik kontroluje szanse na ponowne otworzenie rany. Końcowa szansa na otworzenie jest ustalana przez pomnożenie tej wartości z wartością szansy na otworzenie rany dla typu rany oraz typu bandaża.</Polish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Treatment_ClearTraumaAfterBandage_DisplayName">
|
||||
<English>Clear Trauma After Bandage</English>
|
||||
|
@ -358,6 +358,11 @@ class CfgVehicles {
|
||||
GVAR(canReceive) = 0;
|
||||
};
|
||||
|
||||
class UGV_02_Base_F: Tank_F {
|
||||
// ED-1D and ED-1E are electrical
|
||||
GVAR(canReceive) = 0;
|
||||
};
|
||||
|
||||
class UAV: Plane {};
|
||||
|
||||
class UAV_02_base_F: UAV {
|
||||
|
@ -23,8 +23,8 @@ PROJECT_NAME = "ACE"
|
||||
def check_stringtable(filepath):
|
||||
try:
|
||||
tree = ET.parse(filepath)
|
||||
except:
|
||||
print(" ERROR: Failed to parse file.")
|
||||
except Exception as e:
|
||||
print(" ERROR: Failed to parse file. {}".format(e))
|
||||
return 1
|
||||
|
||||
errors = 0
|
||||
|
Loading…
Reference in New Issue
Block a user