Merge pull request #4 from acemod/master

Update master
This commit is contained in:
Grzegorz 2015-04-19 13:38:31 +02:00
commit fe9d495614
67 changed files with 536 additions and 281 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -9,6 +9,7 @@
<Russian>Показать информацию о ветре</Russian>
<French>Afficher les info sur le vent</French>
<Spanish>Mostrar información del viento</Spanish>
<German>Windinformationen anzeigen</German>
</Key>
<Key ID="STR_ACE_AdvancedBallistics_ProtractorKey">
<English>Show Protractor</English>
@ -17,6 +18,7 @@
<Russian>Показать транспортир</Russian>
<French>Afficher le rapporteur</French>
<Spanish>Mostrar transportador</Spanish>
<German>Winkelmesser anzeigen</German>
</Key>
</Package>
</Project>

View File

@ -133,40 +133,6 @@ class ATragMX_RscListNBox: ATragMX_RscListBox {
idcLeft=-1;
idcRight=-1;
};
class ATragMX_RscControlsGroup {
type=15;
idc=-1;
style=16;
x=0;
y=0;
w=1;
h=1;
shadow=0;
class VScrollbar {
color[]={1,1,1,0.6};
width=0.021;
autoScrollSpeed=-1;
autoScrollDelay=5;
autoScrollRewind=0;
shadow=0;
};
class HScrollbar {
color[]={1,1,1,0.6};
height=0.028;
shadow=0;
};
class ScrollBar {
color[]={1,1,1,0.6};
colorActive[]={1,1,1,1};
colorDisabled[]={1,1,1,0.3};
thumb="#(argb,8,8,3)color(1,1,1,1)";
arrowEmpty="#(argb,8,8,3)color(1,1,1,1)";
arrowFull="#(argb,8,8,3)color(1,1,1,1)";
border="#(argb,8,8,3)color(1,1,1,1)";
};
class Controls {
};
};
class ATragMX_RscLineBreak {
idc=-1;
type=98;
@ -263,7 +229,31 @@ class ATragMX_Display {
idc=-1;
x=0.55*safezoneW+safezoneX+0.315;
};
class TEXT_GUN_FRAME: ATragMX_RscText {
idc=1001;
style=64;
x=0.550*safezoneW+safezoneX+0.11;
y=0.265*safezoneH+safezoneY+0.25;
w=0.0925;
h=0.205;
text="";
};
class TEXT_ATMOSPHERE_FRAME: TEXT_GUN_FRAME {
idc=1002;
x=0.550*safezoneW+safezoneX+0.205;
};
class TEXT_TARGET_FRAME: TEXT_GUN_FRAME {
idc=1003;
x=0.550*safezoneW+safezoneX+0.3;
};
class TEXT_RESULT_FRAME: TEXT_GUN_FRAME {
idc=1004;
x=0.550*safezoneW+safezoneX+0.11;
y=0.265*safezoneH+safezoneY+0.46;
w=0.2825;
h=0.15;
};
class TEXT_GUN_PROFILE: ATragMX_RscText {
idc=1000;
x=0.550*safezoneW+safezoneX+0.11;
@ -438,13 +428,13 @@ class ATragMX_Display {
text="B";
action=QUOTE(1 call FUNC(change_target_slot));
};
class TEXT_TARGET_C: TEXT_TARGET_B {
class TEXT_TARGET_C: TEXT_TARGET_A {
idc=502;
x=0.550*safezoneW+safezoneX+0.2512;
text="C";
action=QUOTE(2 call FUNC(change_target_slot));
};
class TEXT_TARGET_D: TEXT_TARGET_B {
class TEXT_TARGET_D: TEXT_TARGET_A {
idc=503;
x=0.550*safezoneW+safezoneX+0.2743;
text="D";
@ -511,7 +501,7 @@ class ATragMX_Display {
class TEXT_ELEVATION: TEXT_GUN_PROFILE {
idc=40;
w=0.05;
x=0.550*safezoneW+safezoneX+0.11;
x=0.550*safezoneW+safezoneX+0.115;
y=0.265*safezoneH+safezoneY+0.50;
text="Elev";
};
@ -570,7 +560,7 @@ class ATragMX_Display {
class TEXT_LEAD: TEXT_GUN {
idc=42;
w=0.05;
x=0.550*safezoneW+safezoneX+0.11;
x=0.550*safezoneW+safezoneX+0.115;
y=0.265*safezoneH+safezoneY+0.57;
text="Lead";
action=QUOTE(GVAR(showWind2) = !GVAR(showWind2); call FUNC(update_result); call FUNC(update_target));
@ -679,6 +669,7 @@ class ATragMX_Display {
h=0.45;
x=0.550*safezoneW+safezoneX+0.11;
y=0.265*safezoneH+safezoneY+0.24;
sizeEx=0.025;
colorSelectBackground[]={0.15,0.21,0.23,0.3};
colorSelectBackground2[]={0.15,0.21,0.23,0.3};
onMouseButtonDblClick=QUOTE(true call FUNC(toggle_gun_list));

View File

@ -5,39 +5,39 @@
if ((profileNamespace getVariable ["ACE_ATragMX_profileNamespaceVersion", 0]) == ATRAGMX_PROFILE_NAMESPACE_VERSION && count (profileNamespace getVariable ["ACE_ATragMX_gunList", []]) > 0) then {
GVAR(gunList) = profileNamespace getVariable "ACE_ATragMX_gunList";
} else {
// Profile Name, Muzzle Velocity, Zero Range, Scope Base Angle, AirFriction, Bore Height, Scope Unit, Elevation Scope Step, Windage Scope Step, Maximum Elevation, Dialed Elevation, Dialed Windage, Mass, Bullet Diameter, Rifle Twist, BC, Drag Model, Atmosphere Model
GVAR(gunList) = [["12.7x108mm" , 820, 100, 0.0659, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 48.28, 12.7, 38.10, 0.630, 1, "ASM" ],
// Profile Name, Muzzle Velocity, Zero Range, Scope Base Angle, AirFriction, Bore Height, Scope Unit, Scope Click Unit, Scope Click Number, Maximum Elevation, Dialed Elevation, Dialed Windage, Mass, Bullet Diameter, Rifle Twist, BC, Drag Model, Atmosphere Model
GVAR(gunList) = [["12.7x108mm" , 820, 100, 0.0659, -0.0008600, 3.81, 0, 2, 10, 120, 0, 0, 48.28, 12.7, 38.10, 0.630, 1, "ASM" ],
["12.7x99mm AMAX" , 860, 100, 0.0612, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 48.60, 12.7, 38.10, 1.050, 1, "ASM" ],
["12.7x99mm" , 853, 100, 0.0623, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 41.92, 12.7, 38.10, 0.670, 1, "ASM" ],
["12.7x99mm AMAX" , 860, 100, 0.0612, -0.0008600, 3.81, 0, 2, 10, 120, 0, 0, 48.60, 12.7, 38.10, 1.050, 1, "ASM" ],
["12.7x99mm" , 853, 100, 0.0623, -0.0008600, 3.81, 0, 2, 10, 120, 0, 0, 41.92, 12.7, 38.10, 0.670, 1, "ASM" ],
["12.7x54mm" , 300, 100, 0.3394, -0.0014000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 48.60, 12.7, 24.13, 1.050, 1, "ASM" ],
["12.7x54mm" , 300, 100, 0.3394, -0.0014000, 3.81, 0, 2, 10, 120, 0, 0, 48.60, 12.7, 24.13, 1.050, 1, "ASM" ],
[".408 Chey Tac" , 910, 100, 0.0569, -0.0004800, 3.81, 0, 0.338, 0.338, 120, 0, 0, 27.15, 10.4, 33.02, 0.970, 1, "ASM" ],
[".408 Chey Tac" , 910, 100, 0.0569, -0.0004800, 3.81, 0, 2, 10, 120, 0, 0, 27.15, 10.4, 33.02, 0.970, 1, "ASM" ],
["9.3×64mm" , 870, 100, 0.0619, -0.0007500, 3.81, 0, 0.338, 0.338, 120, 0, 0, 14.90, 9.30, 35.56, 0.368, 1, "ASM" ],
["9.3×64mm" , 870, 100, 0.0619, -0.0007500, 3.81, 0, 2, 10, 120, 0, 0, 14.90, 9.30, 35.56, 0.368, 1, "ASM" ],
[".338LM 250gr" , 880, 100, 0.0598, -0.0006060, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, 8.58, 25.40, 0.322, 7, "ICAO"],
[".338LM 300gr" , 800, 100, 0.0677, -0.0005350, 3.81, 0, 0.338, 0.338, 120, 0, 0, 19.44, 8.58, 25.40, 0.381, 7, "ICAO"],
[".338LM API526" , 880, 100, 0.0601, -0.0006730, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.39, 8.58, 25.40, 0.290, 7, "ICAO"],
[".338LM 250gr" , 880, 100, 0.0598, -0.0006060, 3.81, 0, 2, 10, 120, 0, 0, 16.20, 8.58, 25.40, 0.322, 7, "ICAO"],
[".338LM 300gr" , 800, 100, 0.0677, -0.0005350, 3.81, 0, 2, 10, 120, 0, 0, 19.44, 8.58, 25.40, 0.381, 7, "ICAO"],
[".338LM API526" , 880, 100, 0.0601, -0.0006730, 3.81, 0, 2, 10, 120, 0, 0, 16.39, 8.58, 25.40, 0.290, 7, "ICAO"],
[".300WM Mk248 Mod 0", 900, 100, 0.0584, -0.0008300, 3.81, 0, 0.338, 0.338, 120, 0, 0, 13.31, 7.80, 25.40, 0.268, 7, "ICAO"],
[".300WM Mk248 Mod 1", 867, 100, 0.0611, -0.0008150, 3.81, 0, 0.338, 0.338, 120, 0, 0, 14.26, 7.80, 25.40, 0.310, 7, "ICAO"],
[".300WM Berger OTM" , 853, 100, 0.0622, -0.0007600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 14.90, 7.80, 25.40, 0.368, 7, "ICAO"],
[".300WM Mk248 Mod 0", 900, 100, 0.0584, -0.0008300, 3.81, 0, 2, 10, 120, 0, 0, 13.31, 7.80, 25.40, 0.268, 7, "ICAO"],
[".300WM Mk248 Mod 1", 867, 100, 0.0611, -0.0008150, 3.81, 0, 2, 10, 120, 0, 0, 14.26, 7.80, 25.40, 0.310, 7, "ICAO"],
[".300WM Berger OTM" , 853, 100, 0.0622, -0.0007600, 3.81, 0, 2, 10, 120, 0, 0, 14.90, 7.80, 25.40, 0.368, 7, "ICAO"],
["7.62x54mmR" , 800, 100, 0.0692, -0.0010230, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.849, 7.92, 24.13, 0.400, 1, "ICAO"],
["7.62x54mmR" , 800, 100, 0.0692, -0.0010230, 3.81, 0, 2, 10, 120, 0, 0, 9.849, 7.92, 24.13, 0.400, 1, "ICAO"],
["7.62x51mm M80" , 810, 100, 0.0679, -0.0010350, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.525, 7.82, 25.40, 0.200, 7, "ICAO"],
["7.62x51mm M118LR" , 820, 100, 0.0662, -0.0008525, 3.81, 0, 0.338, 0.338, 120, 0, 0, 11.34, 7.82, 25.40, 0.243, 7, "ICAO"],
["7.62x51mm Mk319" , 820, 100, 0.0670, -0.0010300, 3.81, 0, 0.338, 0.338, 120, 0, 0, 8.424, 7.82, 25.40, 0.377, 1, "ICAO"],
["7.62x51mm Subsonic", 320, 100, 0.3060, -0.0004910, 3.81, 0, 0.338, 0.338, 120, 0, 0, 12.96, 7.82, 25.40, 0.235, 7, "ICAO"],
["7.62x51mm M80" , 810, 100, 0.0679, -0.0010350, 3.81, 0, 2, 10, 120, 0, 0, 9.525, 7.82, 25.40, 0.200, 7, "ICAO"],
["7.62x51mm M118LR" , 820, 100, 0.0662, -0.0008525, 3.81, 0, 2, 10, 120, 0, 0, 11.34, 7.82, 25.40, 0.243, 7, "ICAO"],
["7.62x51mm Mk319" , 820, 100, 0.0670, -0.0010300, 3.81, 0, 2, 10, 120, 0, 0, 8.424, 7.82, 25.40, 0.377, 1, "ICAO"],
["7.62x51mm Subsonic", 320, 100, 0.3060, -0.0004910, 3.81, 0, 2, 10, 120, 0, 0, 12.96, 7.82, 25.40, 0.235, 7, "ICAO"],
["6.5x39mm" , 800, 100, 0.0683, -0.0007850, 3.81, 0, 0.338, 0.338, 120, 0, 0, 7.970, 6.71, 22.86, 0.263, 7, "ICAO"],
["6.5x47mm Lapua" , 800, 100, 0.0682, -0.0007710, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.007, 6.71, 22.86, 0.290, 7, "ICAO"],
["6.5x39mm" , 800, 100, 0.0683, -0.0007850, 3.81, 0, 2, 10, 120, 0, 0, 7.970, 6.71, 22.86, 0.263, 7, "ICAO"],
["6.5x47mm Lapua" , 800, 100, 0.0682, -0.0007710, 3.81, 0, 2, 10, 120, 0, 0, 9.007, 6.71, 22.86, 0.290, 7, "ICAO"],
["5.56x45mm M855" , 870, 100, 0.0626, -0.0012650, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.018, 5.70, 17.78, 0.151, 7, "ASM" ],
["5.56x45mm Mk262" , 820, 100, 0.0671, -0.0011250, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.990, 5.70, 17.78, 0.361, 1, "ASM" ],
["5.56x45mm Mk318" , 880, 100, 0.0616, -0.0011200, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.018, 5.70, 17.78, 0.307, 1, "ASM" ]];
["5.56x45mm M855" , 870, 100, 0.0626, -0.0012650, 3.81, 0, 2, 10, 120, 0, 0, 4.018, 5.70, 17.78, 0.151, 7, "ASM" ],
["5.56x45mm Mk262" , 820, 100, 0.0671, -0.0011250, 3.81, 0, 2, 10, 120, 0, 0, 4.990, 5.70, 17.78, 0.361, 1, "ASM" ],
["5.56x45mm Mk318" , 880, 100, 0.0616, -0.0011200, 3.81, 0, 2, 10, 120, 0, 0, 4.018, 5.70, 17.78, 0.307, 1, "ASM" ]];
[] call FUNC(clear_user_data);
profileNamespace setVariable ["ACE_ATragMX_gunList", GVAR(gunList)];

View File

@ -43,7 +43,7 @@
*/
#include "script_component.hpp"
private ["_scopeBaseAngle", "_bulletMass", "_boreHeight", "_airFriction", "_muzzleVelocity", "_temperature", "_barometricPressure", "_relativeHumidity", "_simSteps", "_windSpeed1", "_windSpeed2", "_windDirection", "_inclinationAngle", "_targetSpeed", "_targetRange", "_bc", "_dragModel", "_atmosphereModel", "_storeRangeCardData", "_stabilityFactor", "_twistDirection", "_latitude"];
private ["_scopeBaseAngle", "_bulletMass", "_boreHeight", "_airFriction", "_muzzleVelocity", "_temperature", "_barometricPressure", "_relativeHumidity", "_simSteps", "_windSpeed1", "_windSpeed2", "_windDirection", "_inclinationAngle", "_targetSpeed", "_targetRange", "_drag", "_bc", "_dragModel", "_atmosphereModel", "_storeRangeCardData", "_stabilityFactor", "_twistDirection", "_latitude"];
_scopeBaseAngle = _this select 0;
_bulletMass = _this select 1;
_boreHeight = _this select 2;
@ -136,7 +136,6 @@ while {_TOF < 15 && (_bulletPos select 1) < _targetRange} do {
if (missionNamespace getVariable [QEGVAR(advanced_ballistics,enabled), false]) then {
if (missionNamespace getVariable [QEGVAR(advanced_ballistics,AdvancedAirDragEnabled), false]) then {
private ["_drag"];
_drag = if (missionNamespace getVariable [QEGVAR(advanced_ballistics,extensionAvailable), false]) then {
parseNumber(("ace_advanced_ballistics" callExtension format["retard:%1:%2:%3", _dragModel, _bc, _trueSpeed]))
} else {

View File

@ -27,9 +27,9 @@ GVAR(currentGun) = _gunID;
lbSetCurSel [6000, GVAR(currentGun)];
if ((GVAR(scopeUnits) select GVAR(currentScopeUnit)) != "Clicks") then {
GVAR(currentScopeUnit) = GVAR(workingMemory) select 6;
};
GVAR(currentScopeUnit) = 0 max (GVAR(workingMemory) select 6) min 3;
GVAR(currentScopeClickUnit) = 0 max (GVAR(workingMemory) select 7) min 2;
GVAR(currentScopeClickNumber) = 1 max (GVAR(workingMemory) select 8) min 10;
[] call FUNC(update_gun);
[] call FUNC(update_gun_ammo_data);

View File

@ -29,11 +29,16 @@ profileNamespace setVariable ["ACE_ATragMX_barometricPressure", nil];
profileNamespace setVariable ["ACE_ATragMX_relativeHumidity", nil];
profileNamespace setVariable ["ACE_ATragMX_showWind2", nil];
profileNamespace setVariable ["latitude", nil];
profileNamespace setVariable ["directionOfFire", nil];
profileNamespace setVariable ["ACE_ATragMX_latitude", nil];
profileNamespace setVariable ["ACE_ATragMX_directionOfFire", nil];
profileNamespace setVariable ["ACE_ATragMX_windSpeed1", nil];
profileNamespace setVariable ["ACE_ATragMX_windSpeed2", nil];
profileNamespace setVariable ["ACE_ATragMX_windDirection", nil];
profileNamespace setVariable ["ACE_ATragMX_inclinationAngle", nil];
profileNamespace setVariable ["ACE_ATragMX_targetSpeed", nil];
profileNamespace setVariable ["ACE_ATragMX_targetRange", nil];
profileNamespace setVariable ["ACE_ATragMX_rangeCardStartRange", nil];
profileNamespace setVariable ["ACE_ATragMX_rangeCardEndRange", nil];
profileNamespace setVariable ["ACE_ATragMX_rangeCardIncrement", nil];
profileNamespace setVariable ["ACE_ATragMX_rangeCardCurrentColumn", nil];

View File

@ -40,6 +40,8 @@ GVAR(showTargetRangeAssist) call FUNC(show_target_range_assist);
GVAR(showTargetSpeedAssist) call FUNC(show_target_speed_assist);
GVAR(showTargetSpeedAssistTimer) call FUNC(show_target_speed_assist_timer);
[GVAR(currentGun), false] call FUNC(change_gun);
{
lbAdd [6000, _x select 0];
} forEach GVAR(gunList);

View File

@ -15,4 +15,6 @@
*/
#include "script_component.hpp"
if (!(GVAR(showMainPage) || GVAR(showGunList))) exitWith {};
[(GVAR(currentGun) + (count GVAR(gunList)) + _this) % (count GVAR(gunList)), true] call FUNC(change_gun);

View File

@ -18,6 +18,7 @@
GVAR(workingMemory) = +(GVAR(gunList) select 0);
GVAR(scopeUnits) = ["MILs", "TMOA", "SMOA", "Clicks"];
GVAR(scopeClickUnits) = ["TMOA", "SMOA", "MILs"];
GVAR(rangeCardStartRange) = 200;
GVAR(rangeCardEndRange) = 2000;
@ -40,6 +41,8 @@ GVAR(currentUnit) = 2;
GVAR(currentGun) = 0;
GVAR(currentTarget) = 0;
GVAR(currentScopeUnit) = 0;
GVAR(currentScopeClickUnit) = 2;
GVAR(currentScopeClickNumber) = 10;
GVAR(atmosphereModeTBH) = true;
GVAR(altitude) = 0;

View File

@ -17,9 +17,9 @@
GVAR(altitude) = -1000 max parseNumber(ctrlText 130030) min 20000;
GVAR(temperature) = -50 max parseNumber(ctrlText 130040) min 160;
GVAR(barometricPressure) = 0 max parseNumber(ctrlText 130050) min 1350;
GVAR(barometricPressure) = 10 max parseNumber(ctrlText 130050) min 1350;
GVAR(relativeHumidity) = (0 max parseNumber(ctrlText 130060) min 100) / 100;
if (GVAR(currentUnit) == 1) then {
if (GVAR(currentUnit) != 2) then {
GVAR(altitude) = GVAR(altitude) * 0.3048;
GVAR(temperature) = (GVAR(temperature) - 32) / 1.8;
GVAR(barometricPressure) = GVAR(barometricPressure) * 33.86389;
@ -32,12 +32,12 @@ GVAR(windSpeed1) set [GVAR(currentTarget), 0 max abs(parseNumber(ctrlText 140020
GVAR(windSpeed2) set [GVAR(currentTarget), 0 max abs(parseNumber(ctrlText 140021)) min 50];
GVAR(windDirection) set [GVAR(currentTarget), 1 max Round(parseNumber(ctrlText 140030)) min 12];
_inclinationAngleCosine = 0.5 max parseNumber(ctrlText 140041) min 1;
_inclinationAngleDegree = -60 max parseNumber(ctrlText 140040) min 60;
_inclinationAngleDegree = -60 max round(parseNumber(ctrlText 140040)) min 60;
if (_inclinationAngleDegree != GVAR(inclinationAngle) select GVAR(currentTarget)) then {
GVAR(inclinationAngle) set [GVAR(currentTarget), _inclinationAngleDegree];
} else {
if (_inclinationAngleCosine != Round(cos(GVAR(inclinationAngle) select GVAR(currentTarget)) * 100) / 100) then {
GVAR(inclinationAngle) set [GVAR(currentTarget), acos(_inclinationAngleCosine)];
GVAR(inclinationAngle) set [GVAR(currentTarget), round(acos(_inclinationAngleCosine))];
};
};
GVAR(targetSpeed) set [GVAR(currentTarget), -50 max abs(parseNumber(ctrlText 140050)) min 50];

View File

@ -16,7 +16,7 @@
#include "script_component.hpp"
GVAR(currentUnit) = 0 max (profileNamespace getVariable ["ACE_ATragMX_currentUnit", 2]) min 2;
[profileNamespace getVariable ["ACE_ATragMX_currentGun", 0], false] call FUNC(change_gun);
GVAR(currentGun) = 0 max (profileNamespace getVariable ["ACE_ATragMX_currentGun", 0]);
GVAR(currentTarget) = 0 max (profileNamespace getVariable ["ACE_ATragMX_currentTarget", 0]) min 3;
GVAR(currentScopeUnit) = 0 max (profileNamespace getVariable ["ACE_ATragMX_currentScopeUnit", 0]) min 3;
@ -35,3 +35,8 @@ GVAR(windDirection) = profileNamespace getVariable ["ACE_ATragMX_windDirection",
GVAR(inclinationAngle) = profileNamespace getVariable ["ACE_ATragMX_inclinationAngle", [0, 0, 0, 0]];
GVAR(targetSpeed) = profileNamespace getVariable ["ACE_ATragMX_targetSpeed", [0, 0, 0, 0]];
GVAR(targetRange) = profileNamespace getVariable ["ACE_ATragMX_targetRange", [0, 0, 0, 0]];
GVAR(rangeCardStartRange) = 0 max (profileNamespace getVariable ["ACE_ATragMX_rangeCardStartRange", 200]) min 3000;
GVAR(rangeCardEndRange) = 0 max (profileNamespace getVariable ["ACE_ATragMX_rangeCardEndRange", 2000]) min 3000;
GVAR(rangeCardIncrement) = 1 max (profileNamespace getVariable ["ACE_ATragMX_rangeCardIncrement", 50]) min 3000;
GVAR(rangeCardCurrentColumn) = 0 max (profileNamespace getVariable ["ACE_ATragMX_rangeCardCurrentColumn", 3]) min 3;

View File

@ -18,7 +18,7 @@
GVAR(showMainPage) = _this;
{ctrlShow [_x, _this]} forEach [10, 100, 11, 110, 12, 120, 13, 130, 14, 140, 20, 200, 21, 210, 22, 220, 23, 230, 30, 300, 31, 310, 32, 320, 33, 330, 34, 340, 40, 400, 401, 402, 403, 41, 410, 411, 412, 42, 420,
500, 501, 502, 503, 600, 601, 602, 603, 1000, 2000, 3000, 4000, 4001, 4002, 4003, 4004, 4005, 4006, 4007, 4008];
500, 501, 502, 503, 600, 601, 602, 603, 1000, 1001, 1002, 1003, 1004, 2000, 3000, 4000, 4001, 4002, 4003, 4004, 4005, 4006, 4007, 4008];
if (_this) then {
if (GVAR(atmosphereModeTBH)) then {

View File

@ -22,6 +22,6 @@ _slopeDistance = _this select 0;
_azimuth = _this select 1;
_inclination = _this select 2;
//_inclination = asin((ACE_player weaponDirection currentWeapon ACE_player) select 2);
GVAR(inclinationAngle) set [GVAR(currentTarget), _inclination];
GVAR(targetRange) set [GVAR(currentTarget), _slopeDistance];
GVAR(inclinationAngle) set [GVAR(currentTarget), round(_inclination)];
GVAR(directionOfFire) set [GVAR(currentTarget), round(_azimuth)];
GVAR(targetRange) set [GVAR(currentTarget), round(_slopeDistance)];

View File

@ -29,11 +29,16 @@ profileNamespace setVariable ["ACE_ATragMX_barometricPressure", GVAR(barometricP
profileNamespace setVariable ["ACE_ATragMX_relativeHumidity", GVAR(relativeHumidity)];
profileNamespace setVariable ["ACE_ATragMX_showWind2", GVAR(showWind2)];
profileNamespace setVariable ["latitude", GVAR(latitude)];
profileNamespace setVariable ["directionOfFire", GVAR(directionOfFire)];
profileNamespace setVariable ["ACE_ATragMX_latitude", GVAR(latitude)];
profileNamespace setVariable ["ACE_ATragMX_directionOfFire", GVAR(directionOfFire)];
profileNamespace setVariable ["ACE_ATragMX_windSpeed1", GVAR(windSpeed1)];
profileNamespace setVariable ["ACE_ATragMX_windSpeed2", GVAR(windSpeed2)];
profileNamespace setVariable ["ACE_ATragMX_windDirection", GVAR(windDirection)];
profileNamespace setVariable ["ACE_ATragMX_inclinationAngle", GVAR(inclinationAngle)];
profileNamespace setVariable ["ACE_ATragMX_targetSpeed", GVAR(targetSpeed)];
profileNamespace setVariable ["ACE_ATragMX_targetRange", GVAR(targetRange)];
profileNamespace setVariable ["ACE_ATragMX_rangeCardStartRange", GVAR(rangeCardStartRange)];
profileNamespace setVariable ["ACE_ATragMX_rangeCardEndRange", GVAR(rangeCardEndRange)];
profileNamespace setVariable ["ACE_ATragMX_rangeCardIncrement", GVAR(rangeCardIncrement)];
profileNamespace setVariable ["ACE_ATragMX_rangeCardCurrentColumn", GVAR(rangeCardCurrentColumn)];

View File

@ -17,18 +17,18 @@
ctrlSetFocus ((uiNamespace getVariable "ATragMX_Display") displayCtrl 13007);
if (GVAR(currentUnit) != 1) then {
if (GVAR(currentUnit) == 2) then {
ctrlSetText [130040, Str(Round(GVAR(temperature) * 10) / 10)];
} else {
ctrlSetText [130040, Str(Round((GVAR(temperature) * 1.8 + 32) * 10) / 10)];
};
if (GVAR(currentUnit) != 1) then {
if (GVAR(currentUnit) == 2) then {
ctrlSetText [130050, Str(Round(GVAR(barometricPressure)))];
} else {
ctrlSetText [130050, Str(Round(GVAR(barometricPressure) / 33.8638866667 * 100) / 100)];
};
ctrlSetText [130060, Str(Round(GVAR(relativeHumidity) * 100 * 10) / 10)];
if (GVAR(currentUnit) != 1) then {
if (GVAR(currentUnit) == 2) then {
ctrlSetText [130030, Str(Round(GVAR(altitude)))];
} else {
ctrlSetText [130030, Str(Round(GVAR(altitude) * 3.2808399))];

View File

@ -15,18 +15,18 @@
*/
#include "script_component.hpp"
if (GVAR(currentUnit) != 1) then {
if (GVAR(currentUnit) == 2) then {
ctrlSetText [200, Str(Round(GVAR(temperature) * 10) / 10)];
} else {
ctrlSetText [200, Str(Round((GVAR(temperature) * 1.8 + 32) * 10) / 10)];
};
if (GVAR(currentUnit) != 1) then {
if (GVAR(currentUnit) == 2) then {
ctrlSetText [210, Str(Round(GVAR(barometricPressure)))];
} else {
ctrlSetText [210, Str(Round(GVAR(barometricPressure) / 33.8638866667 * 100) / 100)];
};
ctrlSetText [220, Str(Round(GVAR(relativeHumidity) * 100 * 10) / 10)];
if (GVAR(currentUnit) != 1) then {
if (GVAR(currentUnit) == 2) then {
ctrlSetText [230, Str(Round(GVAR(altitude)))];
} else {
ctrlSetText [230, Str(Round(GVAR(altitude) * 3.2808399))];

View File

@ -36,10 +36,15 @@ if (GVAR(currentUnit) != 2) then {
} else {
ctrlSetText [130, Str(Round(GVAR(workingMemory) select 1))];
};
if (GVAR(currentUnit) != 1) then {
ctrlSetText [140, Str(Round(GVAR(workingMemory) select 2))];
} else {
ctrlSetText [140, Str(Round((GVAR(workingMemory) select 2) * 1.0936133))];
switch (GVAR(currentUnit)) do {
case 0: {
ctrlSetText [140, format["*%1", Round(GVAR(workingMemory) select 2)]];
};
case 1: {
ctrlSetText [140, Str(Round((GVAR(workingMemory) select 2) * 1.0936133))];
};
case 2: {
ctrlSetText [140, Str(Round(GVAR(workingMemory) select 2))];
};
};
[] call FUNC(update_scope_unit);

View File

@ -15,5 +15,10 @@
*/
#include "script_component.hpp"
ctrlSetText [2000, GVAR(scopeUnits) select GVAR(currentScopeUnit)];
ctrlSetText [5000, GVAR(scopeUnits) select GVAR(currentScopeUnit)];
if (GVAR(currentScopeUnit) == 3) then {
ctrlSetText [2000, format["Clicks=%1", GVAR(currentScopeClickNumber)]];
ctrlSetText [5000, format["Clicks=%1", GVAR(currentScopeClickNumber)]];
} else {
ctrlSetText [2000, GVAR(scopeUnits) select GVAR(currentScopeUnit)];
ctrlSetText [5000, GVAR(scopeUnits) select GVAR(currentScopeUnit)];
};

View File

@ -35,8 +35,14 @@ if (GVAR(currentUnit) != 2) then {
} else {
ctrlSetText [330, Str(Round((GVAR(targetSpeed) select GVAR(currentTarget)) * 100) / 100)];
};
if (GVAR(currentUnit) == 1) then {
ctrlSetText [340, Str(Round((GVAR(targetRange) select GVAR(currentTarget)) * 1.0936133))];
} else {
ctrlSetText [340, Str(Round((GVAR(targetRange) select GVAR(currentTarget))))];
switch (GVAR(currentUnit)) do {
case 0: {
ctrlSetText [340, format["*%1", Round((GVAR(targetRange) select GVAR(currentTarget)))]];
};
case 1: {
ctrlSetText [340, Str(Round((GVAR(targetRange) select GVAR(currentTarget)) * 1.0936133))];
};
case 2: {
ctrlSetText [340, Str(Round((GVAR(targetRange) select GVAR(currentTarget))))];
};
};

View File

@ -11,4 +11,4 @@
#include "\z\ace\addons\main\script_macros.hpp"
#define ATRAGMX_PROFILE_NAMESPACE_VERSION 1.0
#define ATRAGMX_PROFILE_NAMESPACE_VERSION 1.1

View File

@ -20,12 +20,14 @@
<Russian>Открыть ATragMX</Russian>
<Spanish>Abrir ATragMX</Spanish>
<French>Ouvrir ATragMX</French>
<German>ATragMX öffnen</German>
</Key>
<Key ID="STR_ACE_ATragMX_Description">
<English>Rugged PDA with ATragMX</English>
<Polish>Przenośny PDA z kalkulatorem balistycznym ATragMX</Polish>
<Russian>Защищенный КПК с ATragMX</Russian>
<Spanish>PDA rugerizada con ATragMX</Spanish>
<German>Robuster PDA mit ATragMX</German>
</Key>
<Key ID="STR_ACE_ATragMX_ATragMXDialogKey">
<English>Open ATragMX</English>
@ -33,6 +35,7 @@
<Russian>Открыть ATragMX</Russian>
<Spanish>Abrir ATragMX</Spanish>
<French>Ouvrir ATragMX</French>
<German>ATragMX öffnen</German>
</Key>
</Package>
</Project>
</Project>

View File

@ -189,7 +189,7 @@
<Portuguese>%1&lt;br/&gt;Acoplada</Portuguese>
<Italian>%1&lt;br/&gt;attaccata</Italian>
<Hungarian>%1&lt;br/&gt;hozzácsatolva</Hungarian>
<Russian>%1&lt;br/&gt;присоединена</Russian>
<Russian>%1&lt;br/&gt;присоединен(-а)</Russian>
</Key>
<Key ID="STR_ACE_Attach_Item_Detached">
<English>%1&lt;br/&gt;Detached</English>
@ -201,7 +201,7 @@
<Portuguese>%1&lt;br/&gt;Separada</Portuguese>
<Italian>%1&lt;br/&gt;staccata</Italian>
<Hungarian>%1&lt;br/&gt;lecsatolva</Hungarian>
<Russian>%1&lt;br/&gt;отсоединена</Russian>
<Russian>%1&lt;br/&gt;отсоединен(-а)</Russian>
</Key>
</Package>
</Project>
</Project>

View File

@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Edited with tabler. -->
<Project name="ACE">
<Package name="Magazines">
<!-- MX -->
@ -13,7 +12,7 @@
<Czech>6.5mm 30ks Svítící IR-DIM Zásobník</Czech>
<Portuguese>Carregador de 30 projéteis traçantes IR-DIM de 6,5mm</Portuguese>
<Italian>Caricatore 6.5mm 30Rnd Traccianti IR-DIM</Italian>
<Russian>Магазин из 30-ти 6.5 мм трассирующих под ПНВ</Russian>
<Russian>Магазин из 30-ти 6,5 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimNameShort">
<English>6.5mm IR-DIM</English>
@ -25,7 +24,7 @@
<Czech>6.5mm IR-DIM</Czech>
<Portuguese>6,5mm IR-DIM</Portuguese>
<Italian>6.5 IR-DIM</Italian>
<Russian>6.5 мм ИК-трассирующие</Russian>
<Russian>6,5 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimDescription">
<English>Caliber: 6.5x39 mm Tracer IR-DIM&lt;br /&gt;Rounds: 30&lt;br /&gt;Used in: MX/C/M/SW/3GL</English>
@ -37,7 +36,7 @@
<Czech>Ráže: 6.5x39 mm Svítící IR-DIM&lt;br /&gt;Munice: 30&lt;br /&gt;Použití: MX/C/M/SW/3GL</Czech>
<Portuguese>Calibre: 6,5x39 mm Traçante IR-DIM&lt;br /&gt;Projéteis: 30&lt;br /&gt;Usado em: MX/C/M/SW/3GL</Portuguese>
<Italian>Calibro: 6.5x39 mm Traccianti IR-DIM &lt;br /&gt;Munizioni: 30&lt;br /&gt;In uso su: MX/C/M/SW/3GL</Italian>
<Russian>Калибр: 6.5x39 мм трассирующие под ПНВ&lt;br /&gt;Патронов: 30&lt;br /&gt;Применимы в: MX/C/M/SW/3GL</Russian>
<Russian>Калибр: 6,5x39 мм ИК-трассирующие&lt;br /&gt;Патронов: 30&lt;br /&gt;Используются с: MX/C/M/SW/3GL</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_mag_SDName">
<English>6.5mm 30Rnd SD Mag</English>
@ -49,7 +48,7 @@
<Czech>6.5mm 30ks SD Zásobník</Czech>
<Portuguese>Carregador de 30 projéteis SD de 6,5mm</Portuguese>
<Italian>Caricatore 6.5mm 30Rnd Sil.</Italian>
<Russian>Магазин из 30-ти 6.5 мм дозвуковых</Russian>
<Russian>Магазин из 30-ти 6,5 мм дозвуковых</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_mag_SDNameShort">
<English>6.5mm SD</English>
@ -61,7 +60,7 @@
<Czech>6.5mm SD</Czech>
<Portuguese>6,5mm SD</Portuguese>
<Italian>6.5mm Sil.</Italian>
<Russian>6.5 мм дозвуковые</Russian>
<Russian>6,5 мм дозвуковые</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_mag_SDDescription">
<English>Caliber: 6.5x39 mm SD&lt;br /&gt;Rounds: 30&lt;br /&gt;Used in: MX/C/M/SW/3GL</English>
@ -73,7 +72,7 @@
<Czech>Ráže: 6.5x39 mm SD&lt;br /&gt;Munice: 30&lt;br /&gt;Použití: MX/C/M/SW/3GL</Czech>
<Portuguese>Calibre: 6,5x39 mm SD&lt;br /&gt;Projéteis: 30&lt;br /&gt;Usado em: MX/C/M/SW/3GL</Portuguese>
<Italian>Calibro: 6.5x39 mm Sil.&lt;br /&gt;Munizioni: 30&lt;br /&gt;In uso su: MX/C/M/SW/3GL </Italian>
<Russian>Калибр: 6.5x39 мм дозвуковые&lt;br /&gt;Патронов: 30&lt;br /&gt;Применимы в: MX/C/M/SW/3GL</Russian>
<Russian>Калибр: 6,5x39 мм дозвуковые&lt;br /&gt;Патронов: 30&lt;br /&gt;Используются с: MX/C/M/SW/3GL</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_mag_APName">
<English>6.5mm 30Rnd AP Mag</English>
@ -85,7 +84,7 @@
<Czech>6.5mm 30ks AP Zásobník</Czech>
<Portuguese>Carregador de 30 projéteis AP de 6,5mm</Portuguese>
<Italian>Caricatore 6.5mm 30Rnd AP</Italian>
<Russian>Магазин из 30-ти 6.5 мм бронебойных</Russian>
<Russian>Магазин из 30-ти 6,5 мм бронебойных</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_mag_APNameShort">
<English>6.5mm AP</English>
@ -97,7 +96,7 @@
<Czech>6.5mm AP</Czech>
<Portuguese>6,5mm AP</Portuguese>
<Italian>6.5mm AP</Italian>
<Russian>6.5 мм бронебойные</Russian>
<Russian>6,5 мм бронебойные</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_mag_APDescription">
<English>Caliber: 6.5x39 mm AP&lt;br /&gt;Rounds: 30&lt;br /&gt;Used in: MX/C/M/SW/3GL</English>
@ -109,7 +108,7 @@
<Czech>Ráže: 6.5x39 mm AP&lt;br /&gt;Munice: 30&lt;br /&gt;Použití: MX/C/M/SW/3GL</Czech>
<Portuguese>Calibre: 6,5x39 mm AP&lt;br /&gt;Projéteis: 30&lt;br /&gt;Usado em: MX/C/M/SW/3GL</Portuguese>
<Italian>Calibro: 6.5x39 mm AP&lt;br /&gt;Munizioni: 30&lt;br /&gt;In uso su: MX/C/M/SW/3GL</Italian>
<Russian>Калибр: 6.5x39 мм бронебойные&lt;br /&gt;Патронов: 30&lt;br /&gt;Применимы в: MX/C/M/SW/3GL</Russian>
<Russian>Калибр: 6,5x39 мм бронебойные&lt;br /&gt;Патронов: 30&lt;br /&gt;Используются с: MX/C/M/SW/3GL</Russian>
</Key>
<!-- KATIBA -->
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_Tracer_DimName">
@ -122,7 +121,7 @@
<Czech>6.5mm 30ks Svítící IR-DIM Zásobník</Czech>
<Portuguese>Carregador de 30 projéteis traçantes IR-DIM de 6,5mm</Portuguese>
<Italian>Caricatore 6.5mm 30Rnd Traccianti IR-DIM</Italian>
<Russian>Магазин из 30-ти 6.5 мм трассирующих под ПНВ</Russian>
<Russian>Магазин из 30-ти 6,5 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_Tracer_DimNameShort">
<English>6.5mm IR-DIM</English>
@ -134,7 +133,7 @@
<Czech>6.5mm IR-DIM</Czech>
<Portuguese>6,5mm IR-DIM</Portuguese>
<Italian>6.5mm IR-DIM</Italian>
<Russian>6.5 мм ИК-трассирующие</Russian>
<Russian>6,5 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_Tracer_DimDescription">
<English>Caliber: 6.5x39 mm Tracer IR-DIM&lt;br /&gt;Rounds: 30&lt;br /&gt;Used in: Katiba</English>
@ -146,7 +145,7 @@
<Czech>Ráže: 6.5x39 mm Svítící IR-DIM&lt;br /&gt;Munice: 30&lt;br /&gt;Použití: Katiba</Czech>
<Portuguese>Calibre: 6,5x39 mm Traçante IR-DIM&lt;br /&gt;Projéteis: 30&lt;br /&gt;Usado em: Katiba</Portuguese>
<Italian>Calibro: 6.5x39 mm Tracciant IR-DIM&lt;br /&gt;Munizioni: 30&lt;br /&gt;In uso su: Katiba</Italian>
<Russian>Калибр: 6.5x39 мм трассирующие под ПНВ&lt;br /&gt;Патронов: 30&lt;br /&gt;Применимы в: Katiba</Russian>
<Russian>Калибр: 6,5x39 мм ИК-трассирующие&lt;br /&gt;Патронов: 30&lt;br /&gt;Используются с: Katiba</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_SDName">
<English>6.5mm 30Rnd SD Mag</English>
@ -158,7 +157,7 @@
<Czech>6.5mm 30ks SD Zásobník</Czech>
<Portuguese>Carregador de 30 projéteis SD de 6,5mm</Portuguese>
<Italian>Caricatore 6.5mm 30Rnd Sil.</Italian>
<Russian>Магазин из 30-ти 6.5 мм дозвуковых</Russian>
<Russian>Магазин из 30-ти 6,5 мм дозвуковых</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_SDNameShort">
<English>6.5mm SD</English>
@ -170,7 +169,7 @@
<Czech>6.5mm SD</Czech>
<Portuguese>6,5mm SD</Portuguese>
<Italian>6.5mm Sil.</Italian>
<Russian>6.5 мм дозвуковые</Russian>
<Russian>6,5 мм дозвуковые</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_SDDescription">
<English>Caliber: 6.5x39 mm SD&lt;br /&gt;Rounds: 30&lt;br /&gt;Used in: Katiba</English>
@ -182,7 +181,7 @@
<Czech>Ráže: 6.5x39 mm SD&lt;br /&gt;Munice: 30&lt;br /&gt;Použití: Katiba</Czech>
<Portuguese>Calibre: 6,5x39 mm SD&lt;br /&gt;Projéteis: 30&lt;br /&gt;Usado em: Katiba</Portuguese>
<Italian>Calibro: 6.5x39 mm Sil.&lt;br /&gt;Munizioni: 30&lt;br /&gt;In uso su: Katiba</Italian>
<Russian>Калибр: 6.5x39 мм дозвуковые&lt;br /&gt;Патронов: 30&lt;br /&gt;Применимы в: Katiba</Russian>
<Russian>Калибр: 6,5x39 мм дозвуковые&lt;br /&gt;Патронов: 30&lt;br /&gt;Используются с: Katiba</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_APName">
<English>6.5mm 30Rnd AP Mag</English>
@ -194,7 +193,7 @@
<Czech>6.5mm 30ks AP Zásobník</Czech>
<Portuguese>Carregador de 30 projéteis AP de 6,5mm</Portuguese>
<Italian>Caricatore 6.5mm 30Rnd AP</Italian>
<Russian>Магазин из 30-ти 6.5 мм бронебойных</Russian>
<Russian>Магазин из 30-ти 6,5 мм бронебойных</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_APNameShort">
<English>6.5mm AP</English>
@ -206,7 +205,7 @@
<Czech>6.5mm AP</Czech>
<Portuguese>6,5mm AP</Portuguese>
<Italian>6.5mm AP</Italian>
<Russian>6.5 мм бронебойные</Russian>
<Russian>6,5 мм бронебойные</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x39_caseless_green_mag_APDescription">
<English>Caliber: 6.5x39 mm AP&lt;br /&gt;Rounds: 30&lt;br /&gt;Used in: Katiba</English>
@ -218,7 +217,7 @@
<Czech>Ráže: 6.5x39 mm AP&lt;br /&gt;Munice: 30&lt;br /&gt;Použití: Katiba</Czech>
<Portuguese>Calibre: 6,5x39 mm AP&lt;br /&gt;Projéteis: 30&lt;br /&gt;Usado em: Katiba</Portuguese>
<Italian>Calibro: 6.5x39 mm AP&lt;br /&gt;Munizioni: 30&lt;br /&gt;In uso su: Katiba</Italian>
<Russian>Калибр: 6.5x39 мм бронебойные&lt;br /&gt;Патронов: 30&lt;br /&gt;Применимы в: Katiba</Russian>
<Russian>Калибр: 6,5x39 мм бронебойные&lt;br /&gt;Патронов: 30&lt;br /&gt;Используются с: Katiba</Russian>
</Key>
<!-- 5.56x45mm -->
<Key ID="STR_ACE_30Rnd_556x45_mag_Tracer_DimName">
@ -231,7 +230,7 @@
<Czech>5.56mm 30ks Svítící IR-DIM Zásobník</Czech>
<Portuguese>Carregador de 30 projéteis traçantes IR-DIM de 5,56mm</Portuguese>
<Italian>Caricatore 5.56mm 30rnd Traccianti IR-DIM</Italian>
<Russian>Магазин из 30-ти 5.56 мм трассирующих под ПНВ</Russian>
<Russian>Магазин из 30-ти 5,56 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_mag_Tracer_DimNameShort">
<English>5.56mm IR-DIM</English>
@ -243,7 +242,7 @@
<Czech>5.56mm IR-DIM</Czech>
<Portuguese>5,56mm IR-DIM</Portuguese>
<Italian>5.56mm IR-DIM</Italian>
<Russian>5.56 мм ИК-трассирующие</Russian>
<Russian>5,56 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_mag_Tracer_DimDescription">
<English>Caliber: 5.56x45 mm Tracer IR-DIM&lt;br /&gt;Rounds: 30&lt;br /&gt;Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</English>
@ -255,7 +254,7 @@
<Czech>Ráže: 5.56x45 mm Svítící IR-DIM&lt;br /&gt;Munice: 30&lt;br /&gt;Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Czech>
<Portuguese>Calibre: 5,56x45 mm Traçante IR-DIM&lt;br /&gt;Projéteis: 30&lt;br /&gt;Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Portuguese>
<Italian>Calibro: 5.56x45 mm Traccianti IR-DIM&lt;br /&gt;Munizioni: 30&lt;br /&gt;In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Italian>
<Russian>Калибр: 5.56x45 мм трассирующие под ПНВ&lt;br /&gt;Патронов: 30&lt;br /&gt;Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Russian>
<Russian>Калибр: 5,56x45 мм ИК-трассирующие&lt;br /&gt;Патронов: 30&lt;br /&gt;Используются с: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_mag_APName">
<English>5.56mm 30Rnd AP Mag</English>
@ -267,7 +266,7 @@
<Czech>5.56mm 30ks AP Zásobník</Czech>
<Portuguese>Carregador de 30 projéteis AP de 5,56mm</Portuguese>
<Italian>Caricatore 5.56mm 30Rnd AP</Italian>
<Russian>Магазин из 30-ти 5.56 мм бронебойных</Russian>
<Russian>Магазин из 30-ти 5,56 мм бронебойных</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_mag_APNameShort">
<English>5.56mm AP</English>
@ -279,7 +278,7 @@
<Czech>5.56mm AP</Czech>
<Portuguese>5,56mm AP</Portuguese>
<Italian>5.56mm AP</Italian>
<Russian>5.56 мм бронебойные</Russian>
<Russian>5,56 мм бронебойные</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_mag_APDescription">
<English>Caliber: 5.56x45 mm AP&lt;br /&gt;Rounds: 30&lt;br /&gt;Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</English>
@ -291,7 +290,7 @@
<Czech>Ráže: 5.56x45 mm AP&lt;br /&gt;Munice: 30&lt;br /&gt;Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Czech>
<Portuguese>Calibre: 5,56x45 mm AP&lt;br /&gt;Projéteis: 30&lt;br /&gt;Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Portuguese>
<Italian>Calibro: 5.56x45 mm AP&lt;br /&gt;Munizioni: 30&lt;br /&gt;In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Italian>
<Russian>Калибр: 5.56x45 мм бронебойные&lt;br /&gt;Патронов: 30&lt;br /&gt;Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Russian>
<Russian>Калибр: 5,56x45 мм бронебойные&lt;br /&gt;Патронов: 30&lt;br /&gt;Используются с: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR</Russian>
</Key>
<!-- 7.62x51mm -->
<Key ID="STR_ACE_20Rnd_762x51_mag_TracerName">
@ -304,7 +303,7 @@
<Czech>7.62mm 20ks Svítící Zásobník</Czech>
<Portuguese>Carregador de 20 projéteis traçantes de 7,62mm</Portuguese>
<Italian>Caricatore 7.62mm 20Rnd Traccianti</Italian>
<Russian>Магазин из 20-ти 7.62 мм трассирующих</Russian>
<Russian>Магазин из 20-ти 7,62 мм трассирующих</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_TracerNameShort">
<English>7.62mm Tracer</English>
@ -316,7 +315,7 @@
<Czech>7.62mm Svítící</Czech>
<Portuguese>7,62mm Traçante</Portuguese>
<Italian>7.62mm Traccianti</Italian>
<Russian>7.62 мм трассирущие</Russian>
<Russian>7,62 мм трассирущие</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_TracerDescription">
<English>Caliber: 7.62x51 mm Tracer&lt;br /&gt;Rounds: 20&lt;br /&gt;Used in: Mk18 ABR</English>
@ -328,7 +327,7 @@
<Czech>Ráže: 7.62x51 mm Svítící&lt;br /&gt;Munice: 20&lt;br /&gt;Použití: Mk18 ABR</Czech>
<Portuguese>Calibre: 7,62x51 mm Traçante&lt;br /&gt;Projéteis: 20&lt;br /&gt;Usado em: Mk18 ABR</Portuguese>
<Italian>Calibro: 7.62x51 mm Traccianti&lt;br /&gt;Munizioni: 20&lt;br /&gt;In uso su: Mk18 ABR</Italian>
<Russian>Калибр: 7.62x51 мм трассирующие&lt;br /&gt;Патронов: 20&lt;br /&gt;Применимы в: Mk18 ABR</Russian>
<Russian>Калибр: 7,62x51 мм трассирующие&lt;br /&gt;Патронов: 20&lt;br /&gt;Используются с: Mk18 ABR</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_Tracer_DimName">
<English>7.62mm 20rnd Tracer IR-DIM Mag</English>
@ -340,7 +339,7 @@
<Czech>7.62mm 20ks Svítící IR-DIM Zásobník</Czech>
<Portuguese>Carregador de 20 projéteis IR-DIM de 7,62mm</Portuguese>
<Italian>Caricatore 7.62mm 20rnd Traccianti IR-DIM</Italian>
<Russian>Магазин из 20-ти 7.62 мм трассирующих под ПНВ</Russian>
<Russian>Магазин из 20-ти 7,62 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_Tracer_DimNameShort">
<English>7.62mm IR-DIM</English>
@ -352,7 +351,7 @@
<Czech>7.62mm IR-DIM</Czech>
<Portuguese>7,62mm IR-DIM</Portuguese>
<Italian>7.62mm IR-DIM</Italian>
<Russian>7.62 мм ИК-трассирующие</Russian>
<Russian>7,62 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_Tracer_DimDescription">
<English>Caliber: 7.62x51 mm Tracer IR-DIM&lt;br /&gt;Rounds: 20&lt;br /&gt;Used in: Mk18 ABR</English>
@ -364,7 +363,7 @@
<Czech>Ráže: 7.62x51 mm Svítící IR-DIM&lt;br /&gt;Munice: 20&lt;br /&gt;Použití: Mk18 ABR</Czech>
<Portuguese>Calibre: 7,62x51 mm Traçante IR-DIM&lt;br /&gt;Projéteis: 20&lt;br /&gt;Usado em: Mk18 ABR</Portuguese>
<Italian>Calibro: 7.62x51 mm Traccianti IR-DIM&lt;br /&gt;Munizioni: 20&lt;br /&gt;In uso su: Mk18 ABR</Italian>
<Russian>Калибр: 7.62x51 мм трассирующие под ПНВ&lt;br /&gt;Патронов: 20&lt;br /&gt;Применимы в: Mk18 ABR</Russian>
<Russian>Калибр: 7,62x51 мм ИК-трассирующие&lt;br /&gt;Патронов: 20&lt;br /&gt;Используются с: Mk18 ABR</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_SDName">
<English>7.62mm 20Rnd SD Mag</English>
@ -376,7 +375,7 @@
<Czech>7.62mm 20ks SD Zásobník</Czech>
<Portuguese>Carregador de 20 projéteis SD de 7,62mm</Portuguese>
<Italian>Caricatore 7.62mm 20Rnd Sil.</Italian>
<Russian>Магазин из 20-ти 7.62 мм дозвуковых</Russian>
<Russian>Магазин из 20-ти 7,62 мм дозвуковых</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_SDNameShort">
<English>7.62mm SD</English>
@ -388,7 +387,7 @@
<Czech>7.62mm SD</Czech>
<Portuguese>7,62mm SD</Portuguese>
<Italian>7.62mm Sil.</Italian>
<Russian>7.62 мм дозвуковые</Russian>
<Russian>7,62 мм дозвуковые</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_SDDescription">
<English>Caliber: 7.62x51 mm SD&lt;br /&gt;Rounds: 20&lt;br /&gt;Used in: Mk18 ABR</English>
@ -400,7 +399,7 @@
<Czech>Ráže: 7.62x51 mm SD&lt;br /&gt;Munice: 20&lt;br /&gt;Použití: Mk18 ABR</Czech>
<Portuguese>Calibre: 7,62x51 mm SD&lt;br /&gt;Projéteis: 20&lt;br /&gt;Usado em: Mk18 ABR</Portuguese>
<Italian>Calibro: 7.62x51 mm Sil.&lt;br /&gt;Munizioni: 20&lt;br /&gt;In uso su: Mk18 ABR</Italian>
<Russian>Калибр: 7.62x51 мм дозвуковые&lt;br /&gt;Патронов: 20&lt;br /&gt;Применимы в: Mk18 ABR</Russian>
<Russian>Калибр: 7,62x51 мм дозвуковые&lt;br /&gt;Патронов: 20&lt;br /&gt;Используются с: Mk18 ABR</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_APName">
<English>7.62mm 20Rnd AP Mag</English>
@ -412,7 +411,7 @@
<Czech>7.62mm 20ks AP Zásobník</Czech>
<Portuguese>Carregador de 20 projéteis AP de 7,62mm</Portuguese>
<Italian>Caricatore 7.62mm 20Rnd AP</Italian>
<Russian>Магазин из 20-ти 7.62 мм бронебойных</Russian>
<Russian>Магазин из 20-ти 7,62 мм бронебойных</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_APNameShort">
<English>7.62mm AP</English>
@ -424,7 +423,7 @@
<Czech>7.62mm AP</Czech>
<Portuguese>7,62mm AP</Portuguese>
<Italian>7.62mm AP</Italian>
<Russian>7.62 мм бронебойные</Russian>
<Russian>7,62 мм бронебойные</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_mag_APDescription">
<English>Caliber: 7.62x51 mm AP&lt;br /&gt;Rounds: 20&lt;br /&gt;Used in: Mk18 ABR</English>
@ -436,7 +435,7 @@
<Czech>Ráže: 7.62x51 mm AP&lt;br /&gt;Munice: 20&lt;br /&gt;Použití: Mk18 ABR</Czech>
<Portuguese>Calibre: 7,62x51 mm AP&lt;br /&gt;Projéteis: 20&lt;br /&gt;Usado em: Mk18 ABR</Portuguese>
<Italian>Calibro: 7.62x51 mm AP&lt;br /&gt;Munizioni: 20&lt;br /&gt;In uso su: Mk18 ABR</Italian>
<Russian>Калибр: 7.62x51 мм дозвуковые&lt;br /&gt;Патронов: 20&lt;br /&gt;Применимы в: Mk18 ABR</Russian>
<Russian>Калибр: 7,62x51 мм дозвуковые&lt;br /&gt;Патронов: 20&lt;br /&gt;Используются с: Mk18 ABR</Russian>
</Key>
<!-- .338 Norma Magnum -->
<Key ID="STR_ACE_130Rnd_338_Mag_TracerName">
@ -445,6 +444,7 @@
<Polish>Taśma .338 NM 130rd Smugacz</Polish>
<French>Bande .338 NM 130Cps Traçante</French>
<Spanish>Cinta de 130 balas trazadoras de .338 NM</Spanish>
<Russian>Лента из 130-ти .338 NM трассирующих</Russian>
</Key>
<Key ID="STR_ACE_130Rnd_338_Mag_TracerNameShort">
<English>.338 NM Tracer</English>
@ -453,6 +453,7 @@
<Czech>.338 NM Svítící</Czech>
<French>.338 NM Traçante</French>
<Spanish>.338 NM trazadora</Spanish>
<Russian>.338 NM трассирующие</Russian>
</Key>
<Key ID="STR_ACE_130Rnd_338_Mag_TracerDescription">
<English>Caliber: .338 Norma Magnum Tracer&lt;br /&gt;Rounds: 130&lt;br /&gt;Used in: SPMG</English>
@ -460,6 +461,7 @@
<Polish>Kaliber: .338 Norma Magnum Smugacz&lt;br /&gt;Pociski: 130&lt;br /&gt;Używany w: SPMG</Polish>
<French>Calibre: .338 Norma Magnum Traçante&lt;br /&gt;Cartouches: 130&lt;br /&gt;Utilisé dans: SPMG</French>
<Spanish>Calibre: .338 Norma Magnum trazadora&lt;br /&gt;Balas: 130&lt;br /&gt;Se usa en: SPMG</Spanish>
<Russian>Калибр: .338 Norma Magnum трассирующие&lt;br /&gt;Патронов: 130&lt;br /&gt;Используются в: SPMG</Russian>
</Key>
<Key ID="STR_ACE_130Rnd_338_Mag_Tracer_DimName">
<English>.338 NM 130Rnd IR-DIM Belt</English>
@ -467,6 +469,7 @@
<Polish>Taśma .338 NM 130rd IR-DIM</Polish>
<French>Bande .338 NM 130Cps IR-DIM</French>
<Spanish>Cinta de 130 balas IR-DIM de .338 NM</Spanish>
<Russian>Лента из 130-ти .338 NM ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_130Rnd_338_Mag_Tracer_DimNameShort">
<English>.338 NM IR-DIM</English>
@ -475,6 +478,7 @@
<Czech>.338 NM IR-DIM</Czech>
<French>.338 NM IR-DIM</French>
<Spanish>.338 NM IR-DIM</Spanish>
<Russian>.338 NM ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_130Rnd_338_Mag_Tracer_DimDescription">
<English>Caliber: .338 Norma Magnum Tracer IR-DIM&lt;br /&gt;Rounds: 130&lt;br /&gt;Used in: SPMG</English>
@ -482,6 +486,7 @@
<Polish>Kaliber: .338 Norma Magnum Smugacz IR-DIM&lt;br /&gt;Pociski: 130&lt;br /&gt;Używany w: SPMG</Polish>
<French>Calibre: .338 Norma Magnum Traçante IR-DIM&lt;br /&gt;Cartouches: 130&lt;br /&gt;Utilisé dans: SPMG</French>
<Spanish>Calibre: .338 Norma Magnum trazadora IR-DIM&lt;br /&gt;Balas: 130&lt;br /&gt;Se usa en: SPMG</Spanish>
<Russian>Калибр: .338 Norma Magnum ИК-трассирующие&lt;br /&gt;Патронов: 130&lt;br /&gt;Используются с: SPMG</Russian>
</Key>
<Key ID="STR_ACE_130Rnd_338_Mag_APName">
<English>.338 NM 130Rnd AP Belt</English>
@ -489,6 +494,7 @@
<Polish>Taśma .338 NM 130rd AP</Polish>
<French>Bande .338 NM 130Cps AP</French>
<Spanish>Cinta de 130 balas AP de .338 NM</Spanish>
<Russian>Лента из 130-ти .338 NM бронебойных</Russian>
</Key>
<Key ID="STR_ACE_130Rnd_338_Mag_APNameShort">
<English>.338 NM AP</English>
@ -497,6 +503,7 @@
<Czech>.338 NM AP</Czech>
<French>.338 NM AP</French>
<Spanish>.338 NM AP</Spanish>
<Russian>.338 NM бронебойные</Russian>
</Key>
<Key ID="STR_ACE_130Rnd_338_Mag_APDescription">
<English>Caliber: .338 Norma Magnum AP&lt;br /&gt;Rounds: 130&lt;br /&gt;Used in: SPMG</English>
@ -504,6 +511,7 @@
<Polish>Kaliber: .338 Norma Magnum AP&lt;br /&gt;Pociski: 130&lt;br /&gt;Używane w: SPMG</Polish>
<French>Calibre: .338 Norma Magnum AP&lt;br /&gt;Cartouches: 130&lt;br /&gt;Utilisé dans: SPMG</French>
<Spanish>Calibre: .338 Norma Magnum AP&lt;br /&gt;Balas: 130&lt;br /&gt;Se usa en: SPMG</Spanish>
<Russian>Калибр: .338 Norma Magnum бронебойные&lt;br /&gt;Патронов: 130&lt;br /&gt;Используются с: SPMG</Russian>
</Key>
<!-- 9.3x64mm 10Rnd -->
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_TracerName">
@ -512,6 +520,7 @@
<Polish>Magazynek 9.3mm 10rd Smugacz</Polish>
<French>Chargeur 9.3mm 10Cps Traçante</French>
<Spanish>Cargador de 10 balas trazadoras de 9.3mm</Spanish>
<Russian>Магазин из 10-ти 9,3 мм трассирующих</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_TracerNameShort">
<English>9.3mm Tracer</English>
@ -520,6 +529,7 @@
<Czech>9.3mm Svítící</Czech>
<French>9.3mm Traçante</French>
<Spanish>9.3mm trazadora</Spanish>
<Russian>9,3 мм трассирующие</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_TracerDescription">
<English>Caliber: 9.3x64mm Tracer&lt;br /&gt;Rounds: 10&lt;br /&gt;Used in: Cyrus</English>
@ -527,6 +537,7 @@
<Polish>Kaliber: 9,3x64 mm Smugacz&lt;br /&gt;Pociski: 10&lt;br /&gt;Używany w: Cyrus</Polish>
<French>Calibre: 9.3x64mm Traçante&lt;br /&gt;Cartouches: 10&lt;br /&gt;Utilisé dans: Cyrus</French>
<Spanish>Calibre: 9.3x64mm trazadora&lt;br /&gt;Balas: 10&lt;br /&gt;Se usa en: Cyrus</Spanish>
<Russian>Калибр: 9,3x64 мм трассирующие&lt;br /&gt;Патронов: 10&lt;br /&gt;Используются с: Cyrus</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_Tracer_DimName">
<English>9.3mm 10Rnd Tracer IR-DIM Mag</English>
@ -534,6 +545,7 @@
<Polish>Magazynek 9,3mm 10rd Smugacz IR-DIM</Polish>
<French>Chargeur 9.3mm 10Cps Traçante IR-DIM</French>
<Spanish>Cargador de 10 balas trazadoras IR-DIM de 9.3mm</Spanish>
<Russian>Магазин из 10-ти 9,3 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_Tracer_DimNameShort">
<English>9.3mm IR-DIM</English>
@ -542,6 +554,7 @@
<Czech>9.3mm IR-DIM</Czech>
<French>9.3mm IR-DIM</French>
<Spanish>9.3mm IR-DIM</Spanish>
<Russian>9,3 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_Tracer_DimDescription">
<English>Caliber: 9.3x64mm Tracer IR-DIM&lt;br /&gt;Rounds: 10&lt;br /&gt;Used in: Cyrus</English>
@ -549,6 +562,7 @@
<Polish>Kaliber: 9,3x64 mm Smugacz IR-DIM&lt;br /&gt;Pociski: 10&lt;br /&gt;Używany w: Cyrus</Polish>
<French>Calibre: 9.3x64mm Traçante IR-DIM&lt;br /&gt;Cartouches: 10&lt;br /&gt;Utilisé dans: Cyrus</French>
<Spanish>Calibre: 9.3x64mm trazadora IR-DIM&lt;br /&gt;Balas: 10&lt;br /&gt;Se usa en: Cyrus</Spanish>
<Russian>Калибр: 9,3x64 мм ИК-трассирующие&lt;br /&gt;Патронов: 10&lt;br /&gt;Используются с: Cyrus</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_APName">
<English>9.3mm 10Rnd AP Mag</English>
@ -556,6 +570,7 @@
<Polish>Magazynek 9,3mm 10rd AP</Polish>
<French>Chargeur 9.3mm 10Cps AP</French>
<Spanish>Cargador de 10 balas AP de 9.3mm</Spanish>
<Russian>Магазин из 10-ти 9,3 мм бронебойных</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_APNameShort">
<English>9.3mm AP</English>
@ -564,6 +579,7 @@
<Czech>9.3mm AP</Czech>
<French>9.3mm AP</French>
<Spanish>9.3mm AP</Spanish>
<Russian>9,3 мм бронебойные</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_93x64_DMR_05_Mag_APDescription">
<English>Caliber: 9.3x64mm AP&lt;br /&gt;Rounds: 10&lt;br /&gt;Used in: Cyrus</English>
@ -571,6 +587,7 @@
<Polish>Kaliber: 9,3x64 mm AP&lt;br /&gt;Pociski: 10&lt;br /&gt;Używany w: Cyrus</Polish>
<French>Calibre: 9.3x64mm AP&lt;br /&gt;Cartouches: 10&lt;br /&gt;Utilisé dans: Cyrus</French>
<Spanish>Calibre: 9.3x64mm AP&lt;br /&gt;Balas: 10&lt;br /&gt;Se usa en: Cyrus</Spanish>
<Russian>Калибр: 9,3x64 мм бронебойные&lt;br /&gt;Патронов: 10&lt;br /&gt;Используются с: Cyrus</Russian>
</Key>
<!-- 9.3x64mm 150Rnd Belt-->
<Key ID="STR_ACE_150Rnd_93x64_Mag_TracerName">
@ -579,6 +596,7 @@
<Polish>Taśma 9,3mm 150rd Smugacz</Polish>
<French>Bande 9.3mm 150Cps Traçante</French>
<Spanish>Cinta de 150 balas trazadoras de 9.3mm</Spanish>
<Russian>Лента из 150-ти 9,3 мм трассирующих</Russian>
</Key>
<Key ID="STR_ACE_150Rnd_93x64_Mag_TracerNameShort">
<English>9.3mm Tracer</English>
@ -587,6 +605,7 @@
<Czech>9.3mm Svítící</Czech>
<French>9.3mm Traçante</French>
<Spanish>9.3mm trazadora</Spanish>
<Russian>9,3 мм трассирующие</Russian>
</Key>
<Key ID="STR_ACE_150Rnd_93x64_Mag_TracerDescription">
<English>Caliber: 9.3x64mm Tracer&lt;br /&gt;Rounds: 150&lt;br /&gt;Used in: Navid</English>
@ -594,6 +613,7 @@
<Polish>Kaliber: 9,3x64 mm Smugacz&lt;br /&gt;Pociski: 150&lt;br /&gt;Używane w: Navid</Polish>
<French>Calibre: 9.3x64mm Traçante&lt;br /&gt;Cartouches: 150&lt;br /&gt;Utilisé dans: Navid</French>
<Spanish>Calibre: 9.3x64mm trazadora&lt;br /&gt;Balas: 150&lt;br /&gt;Se usa en: Navid</Spanish>
<Russian>Калибр: 9,3x64 мм трассирующие&lt;br /&gt;Патронов: 150&lt;br /&gt;Используются с: Навид</Russian>
</Key>
<Key ID="STR_ACE_150Rnd_93x64_Mag_Tracer_DimName">
<English>9.3mm 150Rnd Tracer IR-DIM Belt</English>
@ -601,6 +621,7 @@
<Polish>Taśma 9,3mm 150rd Smugacz IR-DIM</Polish>
<French>Bande 9.3mm 150Cps Traçante IR-DIM</French>
<Spanish>Cinta de 150 balas trazadoras IR-DIM de 9.3mm</Spanish>
<Russian>Лента из 150-ти 9,3 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_150Rnd_93x64_Mag_Tracer_DimNameShort">
<English>9.3mm IR-DIM</English>
@ -609,6 +630,7 @@
<Czech>9.3mm IR-DIM</Czech>
<French>9.3mm IR-DIM</French>
<Spanish>9.3mm IR-DIM</Spanish>
<Russian>9,3 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_150Rnd_93x64_Mag_Tracer_DimDescription">
<English>Caliber: 9.3x64mm Tracer IR-DIM&lt;br /&gt;Rounds: 150&lt;br /&gt;Used in: Navid</English>
@ -616,6 +638,7 @@
<Polish>Kaliber: 9,3x64 mm Smugacz IR-DIM&lt;br /&gt;Pociski: 150&lt;br /&gt;Używane w: Navid</Polish>
<French>Calibre: 9.3x64mm Traçante IR-DIM&lt;br /&gt;Cartouches: 150&lt;br /&gt;Utilisé dans: Navid</French>
<Spanish>Calibre: 9.3x64mm trazadora IR-DIM&lt;br /&gt;Balas: 150&lt;br /&gt;Se usa en: Navid</Spanish>
<Russian>Калибр: 9,3x64 мм ИК-трассирующие&lt;br /&gt;Патронов: 150&lt;br /&gt;Используются с: Навид</Russian>
</Key>
<Key ID="STR_ACE_150Rnd_93x64_Mag_APName">
<English>9.3mm 150Rnd AP Belt</English>
@ -623,6 +646,7 @@
<Polish>Taśma 9,3mm 150rd AP</Polish>
<French>Bande 9.3mm 150Cps AP</French>
<Spanish>Cinta de 150 balas AP de 9.3mm</Spanish>
<Russian>Лента из 150-ти 9,3 мм бронебойных</Russian>
</Key>
<Key ID="STR_ACE_150Rnd_93x64_Mag_APNameShort">
<English>9.3mm AP</English>
@ -631,6 +655,7 @@
<Czech>9.3mm AP</Czech>
<French>9.3mm AP</French>
<Spanish>9.3mm AP</Spanish>
<Russian>9,3 мм бронебойные</Russian>
</Key>
<Key ID="STR_ACE_150Rnd_93x64_Mag_APDescription">
<English>Caliber: 9.3x64mm AP&lt;br /&gt;Rounds: 150&lt;br /&gt;Used in: Navid</English>
@ -638,348 +663,406 @@
<Polish>Kaliber: 9,3x64 mm AP&lt;br /&gt;Pociski: 150&lt;br /&gt;Używane w: Navid</Polish>
<French>Calibre: 9.3x64mm AP&lt;br /&gt;Cartouches: 150&lt;br /&gt;Utilisé dans: Navid</French>
<Spanish>Calibre: 9.3x64mm AP&lt;br /&gt;Balas: 150&lt;br /&gt;Se usa en: Navid</Spanish>
<Russian>Калибр: 9,3x64 мм бронебойные&lt;br /&gt;Патронов: 150&lt;br /&gt;Используются с: Навид</Russian>
</Key>
<Key ID="STR_ACE_16Rnd_9x19_mag_Name">
<English>9x19mm 16Rnd Mag</English>
<Polish>Magazynek 9x19mm 16rd</Polish>
<French>Chargeur 9x19mm 16Cps</French>
<Spanish>Cargador de 16 balas de 9x19mm</Spanish>
<Russian>Магазин из 16-ти 9х19 мм</Russian>
</Key>
<Key ID="STR_ACE_16Rnd_9x19_mag_NameShort">
<English>9x19mm</English>
<Polish>9x19mm</Polish>
<French>9x19mm</French>
<Spanish>9x19mm</Spanish>
<Russian>9х19 мм</Russian>
</Key>
<Key ID="STR_ACE_16Rnd_9x19_mag_Description">
<English>9x19mm 30Rnd Mag</English>
<Polish>Magazynek 9x19mm 16rd</Polish>
<French>9x19mm 30Cps</French>
<Spanish>Cargador de 16 balas de 9x19mm</Spanish>
<Russian>Магазин из 16-ти 9х19 мм</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_9x19_mag_Name">
<English>9x19mm 30Rnd Mag</English>
<Polish>Magazynek 9x19mm 30rd</Polish>
<French>9x19mm 30Cps</French>
<Spanish>Cargador de 30 balas de 9x19mm</Spanish>
<Russian>Магазин из 30-ти 9х19 мм</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_9x19_mag_NameShort">
<English>9x19mm</English>
<Polish>9x19mm</Polish>
<French>9x19mm</French>
<Spanish>9x19mm</Spanish>
<Russian>9х19 мм</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_9x19_mag_Description">
<English>9x19mm 30Rnd Mag</English>
<Polish>Magazynek 9x19mm 30rd</Polish>
<French>9x19mm 30Cps</French>
<Spanish>Cargador de 30 balas de 9x19mm</Spanish>
<Russian>Магазин из 30-ти 9х19 мм</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x54_Tracer_mag_Name">
<English>7.62x54mm 10Rnd Tracer IR-DIM Mag</English>
<Polish>Magazynek 7,62x54 mm 10rd Smugacz IR-DIM</Polish>
<French>Chargeur 7.62x54mm 10Rnd Traçante IR-DIM</French>
<Spanish>Cargador de 10 balas trazadoras IR-DIM de 7.62x54mm</Spanish>
<Russian>Магазин из 10-ти 7,62 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x54_Tracer_mag_NameShort">
<English>7.62mm IR-DIM</English>
<Polish>7,62mm IR-DIM</Polish>
<French>7.62mm IR-DIM</French>
<Spanish>7.62mm IR-DIM</Spanish>
<Russian>7,62 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x54_Tracer_mag_Description">
<English>7.62x54mm 10Rnd Tracer IR-DIM Mag</English>
<Polish>Magazynek 7,62x54 mm 10rd Smugacz IR-DIM</Polish>
<French>Chargeur 7.62x54mm 10Cps Traçante IR-DIM</French>
<Spanish>Cargador de 10 balas trazadoras IR-DIM de 7.62x54mm</Spanish>
<Russian>Магазин из 10-ти 7,62 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_100Rnd_65x39_caseless_mag_Tracer_DimName">
<English>6.5mm 100Rnd Tracer IR-DIM Mag</English>
<Polish>Magazynek 6,5mm 100rd Smugacz IR-DIM</Polish>
<French>Chargeur 6.5mm 100Rnd Traçante IR-DIM</French>
<Spanish>Cargador de 100 balas trazadoras IR-DIM de 6.5mm</Spanish>
<Russian>Магазин из 100 6,5 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_100Rnd_65x39_caseless_mag_Tracer_DimNameShort">
<English>6.5mm IR-DIM</English>
<Polish>6,5mm IR-DIM</Polish>
<French>6.5mm IR-DIM</French>
<Spanish>6.5mm IR-DIM</Spanish>
<Russian>6,5 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_100Rnd_65x39_caseless_mag_Tracer_DimDescription">
<English>6.5mm 100Rnd Tracer IR-DIM Mag</English>
<Polish>Magazynek 6,5mm 100rd Smugacz IR-DIM</Polish>
<French>Chargeur 6.5mm 100Rnd Traçante IR-DIM</French>
<Spanish>Cargador de 100 balas trazadoras IR-DIM de 6.5mm</Spanish>
<Russian>Магазин из 100 6,5 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_200Rnd_65x39_cased_Box_Tracer_DimName">
<English>6.5mm 200Rnd Tracer IR-DIM Belt</English>
<Polish>Magazynek 6,5mm 200rd Smugacz IR-DIM</Polish>
<French>Bande 6.5mm 200Rnd Traçante IR-DIM</French>
<Spanish>Cinta de 200 balas trazadoras IR-DIM de 6.5mm</Spanish>
<Russian>Магазин из 200-т 6,5 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_200Rnd_65x39_cased_Box_Tracer_DimNameShort">
<English>6.5mm IR-DIM</English>
<Polish>6,5mm IR-DIM</Polish>
<French>6.5mm IR-DIM</French>
<Spanish>6.5mm IR-DIM</Spanish>
<Russian>6,5 мм ИК-трассирующие</Russian>
</Key>
<Key ID="STR_ACE_200Rnd_65x39_cased_Box_Tracer_DimDescription">
<English>6.5mm 200Rnd Tracer IR-DIM Belt</English>
<Polish>Magazynek 6,5mm 200rd Smugacz IR-DIM</Polish>
<French>Bande 6.5mm 200Cps Traçante IR-DIM</French>
<Spanish>Cinta de 200 balas trazadoras IR-DIM de 6.5mm</Spanish>
<Russian>Магазин из 200-т 6,5 мм ИК-трассирующих</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_Stanag_Mk262_mag_Name">
<English>5.56mm 30Rnd Mag (Mk262)</English>
<Polish>Magazynek 5,56mm 30rd Mk262</Polish>
<French>5.56mm 30Cps (Mk262)</French>
<Spanish>Cargador de 30 balas de 5.56mm (Mk262)</Spanish>
<Russian>Магазин из 30-ти 5.56 мм Mk262</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_Stanag_Mk262_mag_NameShort">
<English>5.56mm Mk262</English>
<Polish>5,56mm Mk262</Polish>
<French>5.56mm Mk262</French>
<Spanish>5.56mm (Mk262)</Spanish>
<Russian>5,56 мм Mk262</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_Stanag_Mk262_mag_Description">
<English>Caliber: 5.56x45 mm NATO (Mk262)&lt;br /&gt;Rounds: 30</English>
<Polish>Kaliber: 5,56x45 mm NATO (Mk262)&lt;br /&gt;Pociski: 30</Polish>
<French>Calibre: 5.56x45 mm NATO (Mk262)&lt;br /&gt;Cartouches: 30</French>
<Spanish>Calibre: 5.56x45 mm NATO (Mk262)&lt;br /&gt;Balas: 30</Spanish>
<Russian>Калибр: 5,56x45 мм NATO (Mk262)&lt;br /&gt;Патронов: 30</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_Stanag_Mk318_mag_Name">
<English>5.56mm 30Rnd Mag (Mk318)</English>
<Polish>Magazynek 5,56mm 30rd Mk318</Polish>
<French>5.56mm 30Cps (Mk318)</French>
<Spanish>Cargador de 30 balas de 5.56mm (Mk318)</Spanish>
<Russian>Магазин из 30-ти 5.56 мм Mk318</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_Stanag_Mk318_mag_NameShort">
<English>5.56mm Mk318</English>
<Polish>5,56mm Mk318</Polish>
<French>5.56mm Mk318</French>
<Spanish>5.56mm (Mk318)</Spanish>
<Russian>5.56 мм Mk318</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_556x45_Stanag_Mk318_mag_Description">
<English>Caliber: 5.56x45 mm NATO (Mk318)&lt;br /&gt;Rounds: 30</English>
<Polish>Kaliber: 5,56x45 mm NATO (Mk318)&lt;br /&gt;Pociski: 30</Polish>
<French>Calibre: 5.56x45 mm NATO (Mk318)&lt;br /&gt;Cartouches: 30</French>
<Spanish>Calibre: 5.56x45 mm NATO (Mk318)&lt;br /&gt;Balas: 30</Spanish>
<Russian>Калибр: 5,56x45 мм NATO (Mk318)&lt;br /&gt;Патронов: 30</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x51_M118LR_Mag_Name">
<English>7.62mm 10Rnd Mag (M118LR)</English>
<Polish>Magazynek 7,62mm 10rd (M118LR)</Polish>
<French>7.62mm 10Cps (M118LR)</French>
<Spanish>Cargador de 10 balas de 7.62mm (M118LR)</Spanish>
<Russian>Магазин из 10-ти 7,62 мм (M118LR)</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x51_M118LR_Mag_NameShort">
<English>7.62mm M118LR</English>
<Polish>7,62mm M118LR</Polish>
<French>7.62mm M118LR</French>
<Spanish>7.62mm (M118LR)</Spanish>
<Russian>7,62 мм M118LR</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x51_M118LR_Mag_Description">
<English>Caliber: 7.62x51 mm NATO (M118LR)&lt;br /&gt;Rounds: 10</English>
<Polish>Kaliber: 7,62x51 mm NATO (M118LR)&lt;br /&gt;Pociski: 10</Polish>
<French>Calibre: 7.62x51 mm NATO (M118LR)&lt;br /&gt;Cartouches: 10</French>
<Spanish>Calibre: 7.62x51 mm NATO (M118LR)&lt;br /&gt;Balas: 10</Spanish>
<Russian>Калибр: 7,62x51 мм NATO (M118LR)&lt;br /&gt;Патронов: 10</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_M118LR_Mag_Name">
<English>7.62mm 20Rnd Mag (M118LR)</English>
<Polish>Magazynek 7,62mm 20rd (M118LR)</Polish>
<French>7.62mm 20Cps (M118LR)</French>
<Spanish>Cargador de 20 balas de 7.62mm (M118LR)</Spanish>
<Russian>Магазин из 20-ти 7,62 мм (M118LR)</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_M118LR_Mag_NameShort">
<English>7.62mm M118LR</English>
<Polish>7,62mm M118LR</Polish>
<French>7.62mm M118LR</French>
<Spanish>7.62mm (M118LR)</Spanish>
<Russian>7,62 мм M118LR</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_M118LR_Mag_Description">
<English>Caliber: 7.62x51 mm NATO (M118LR)&lt;br /&gt;Rounds: 20</English>
<Polish>Kaliber: 7,62x51 mm NATO (M118LR)&lt;br /&gt;Pociski: 20</Polish>
<French>Calibre: 7.62x51 mm NATO (M118LR)&lt;br /&gt;Cartouches: 20</French>
<Spanish>Calibre: 7.62x51 mm NATO (M118LR)&lt;br /&gt;Balas: 20</Spanish>
<Russian>Калибр: 7,62x51 мм NATO (M118LR)&lt;br /&gt;Патронов: 20</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x51_Mk319_Mod_0_Mag_Name">
<English>7.62mm 10Rnd Mag (Mk319 Mod 0)</English>
<Polish>Magazynek 7,62mm 10rd (Mk319 Mod 0)</Polish>
<French>7.62mm 10Cps (Mk319 Mod 0)</French>
<Spanish>Cargador de 10 balas de 7.62mm (Mk319 Mod 0)</Spanish>
<Russian>Магазин из 10-ти 7,62 мм (Mk319 Mod 0)</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x51_Mk319_Mod_0_Mag_NameShort">
<English>7.62mm Mk319</English>
<Polish>7,62mm Mk319</Polish>
<French>7.62mm Mk319</French>
<Spanish>7.62mm Mk319</Spanish>
<Russian>7,62mm Mk319</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_762x51_Mk319_Mod_0_Mag_Description">
<English>Caliber: 7.62x51 mm NATO (Mk319 Mod 0)&lt;br /&gt;Rounds: 10</English>
<Polish>Kaliber: 7,62x51 mm NATO (Mk319 Mod 0)&lt;br /&gt;Pociski: 10</Polish>
<French>Calibre: 7.62x51 mm NATO (Mk319 Mod 0)&lt;br /&gt;Cartouches: 10</French>
<Spanish>Calibre: 7.62x51 mm NATO (Mk319 Mod 0)&lt;br /&gt;Balas: 10</Spanish>
<Russian>Калибр: 7,62x51 мм NATO (Mk319 Mod 0)&lt;br /&gt;Патронов: 10</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_Name">
<English>7.62mm 20Rnd Mag (Mk319 Mod 0)</English>
<Polish>Magazynek 7,62mm 20rd (Mk319 Mod 0)</Polish>
<French>7.62mm 20Cps (Mk319 Mod 0)</French>
<Spanish>Cargador de 20 balas de 7.62mm (Mk319 Mod 0)</Spanish>
<Russian>Магазин из 20-ти 7,62 мм (Mk319 Mod 0)</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_NameShort">
<English>7.62mm Mk319</English>
<Polish>7,62mm Mk319</Polish>
<French>7.62mm Mk319</French>
<Spanish>7.62mm Mk319</Spanish>
<Russian>7,62 мм Mk319</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_Description">
<English>Caliber: 7.62x51 mm NATO (Mk319 Mod 0)&lt;br /&gt;Rounds: 20</English>
<Polish>Kaliber: 7,62x51 mm NATO (Mk319 Mod 0)&lt;br /&gt;Pociski: 20</Polish>
<French>Calibre: 7.62x51 mm NATO (Mk319 Mod 0)&lt;br /&gt;Cartouches: 20</French>
<Spanish>Calibre: 7.62x51 mm NATO (Mk319 Mod 0)&lt;br /&gt;Balas: 20</Spanish>
<Russian>Калибр: 7,62x51 мм NATO (Mk319 Mod 0)&lt;br /&gt;Патронов: 20</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_Name">
<English>7.62mm 20Rnd Mag (Mk248 Mod 0)</English>
<Polish>Magazynek 7,62mm 20rd (Mk248 Mod 0)</Polish>
<French>7.62mm 20Cps (Mk248 Mod 0)</French>
<Spanish>Cargador de 20 balas de 7.62mm (Mk248 Mod 0)</Spanish>
<Russian>Магазин из 20-ти 7,62 мм (Mk248 Mod 0)</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_NameShort">
<English>7.62mm (Mk248 Mod 0)</English>
<Polish>7,62mm (Mk248 Mod 0)</Polish>
<French>7.62mm (Mk248 Mod 0)</French>
<Spanish>7.62mm (Mk248 Mod 0)</Spanish>
<Russian>7,62 мм (Mk248 Mod 0)</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_Description">
<English>Caliber: 7.62x67 mm NATO (Mk248 Mod 0)&lt;br /&gt;Rounds: 20</English>
<Polish>Kaliber: 7,62x67 mm NATO (Mk248 Mod 0)&lt;br /&gt;Pociski: 20</Polish>
<French>Calibre: 7.62x67mm NATO (Mk248 Mod 0)&lt;br /&gt;Cartouches: 20</French>
<Spanish>Calibre: 7.62x67 mm NATO (Mk248 Mod 0)&lt;br /&gt;Balas: 20</Spanish>
<Russian>Калибр: 7,62x67 мм NATO (Mk248 Mod 0)&lt;br /&gt;Патронов: 20</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_Name">
<English>7.62mm 20Rnd Mag (Mk248 Mod 1)</English>
<Polish>Magazynek 7,62mm 20rd (Mk248 Mod 1)</Polish>
<French>7.62mm 20Cps (Mk248 Mod 1)</French>
<Spanish>Cargador de 20 balas de 7.62mm (Mk248 Mod 1)</Spanish>
<Russian>Магазин из 20-ти 7,62 мм (Mk248 Mod 1)</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_NameShort">
<English>7.62mm (Mk248 Mod 1)</English>
<Polish>7,62mm (Mk248 Mod 1)</Polish>
<French>7.62mm (Mk248 Mod 1)</French>
<Spanish>7.62mm (Mk248 Mod 1)</Spanish>
<Russian>7,62 мм (Mk248 Mod 1)</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_Description">
<English>Caliber: 7.62x67 mm NATO (Mk248 Mod 1)&lt;br /&gt;Rounds: 20</English>
<Polish>Kaliber: 7,62x67 mm NATO (Mk248 Mod 1)&lt;br /&gt;Pociski: 20</Polish>
<French>Calibre: 7.62x67mm NATO (Mk248 Mod 1)&lt;br /&gt;Cartouches: 20</French>
<Spanish>Calibre: 7.62x67 mm NATO (Mk248 Mod 1)&lt;br /&gt;Balas: 20</Spanish>
<Russian>Калибр: 7,62x67 мм NATO (Mk248 Mod 1)&lt;br /&gt;Патронов: 20</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_Name">
<English>7.62mm 20Rnd Mag (Berger Hybrid OTM)</English>
<Polish>Magazynek 7,62mm 20rd (Berger Hybrid OTM)</Polish>
<French>7.62 20Cps (Berger Hybrid OTM)</French>
<Spanish>Cargador de 20 balas de 7.62mm (Berger Hybrid OTM)</Spanish>
<Russian>Магазин из 20-ти 7,62 мм (Berger Hybrid OTM)</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_NameShort">
<English>7.62mm (OTM)</English>
<Polish>7,62mm (OTM)</Polish>
<French>7.62mm (OTM)</French>
<Spanish>7.62mm (OTM)</Spanish>
<Russian>7,62 мм (OTM)</Russian>
</Key>
<Key ID="STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_Description">
<English>Caliber: 7.62x67 mm NATO (Berger Hybrid OTM)&lt;br /&gt;Rounds: 20</English>
<Polish>Kaliber: 7,62x67 mm NATO (Berger Hybrid OTM)&lt;br /&gt;Pociski: 20</Polish>
<French>Calibre: 7.62x67mm NATO (Berger Hybrid OTM)&lt;br /&gt;Cartouches: 20</French>
<Spanish>Calibre: 7.62x67 mm NATO (Berger Hybrid OTM)&lt;br /&gt;Balas: 20</Spanish>
<Russian>Калибр: 7,62x67 мм NATO (Berger Hybrid OTM)&lt;br /&gt;Патронов: 20</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x47_Scenar_mag_Name">
<English>6.5x47mm 30Rnd Mag (HPBT Scenar)</English>
<French>6.5x47mm 30Cps (HPBT Scenar)</French>
<Spanish>Cargador de 30 balas de 6.5x47mm (HPBT Scenar)</Spanish>
<Polish>Magazynek 6,5x47 mm 30rd (HPBT Scenar)</Polish>
<Russian>Магазин из 30-ти 6,5x47 мм (HPBT Scenar)</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x47_Scenar_mag_NameShort">
<English>6.5mm Scenar</English>
<French>6.5mm Scenar</French>
<Spanish>6.5mm Scenar</Spanish>
<Polish>6,5mm Scenar</Polish>
<Russian>6,5 мм Scenar</Russian>
</Key>
<Key ID="STR_ACE_30Rnd_65x47_Scenar_mag_Description">
<English>Caliber: 6.5x47mm (HPBT Scenar)&lt;br /&gt;Rounds: 30</English>
<French>Calibre: 6.5x47mm (HPBT Scenar)&lt;br /&gt;Cartouches: 30</French>
<Spanish>Calibre: 6.5x47mm (HPBT Scenar)&lt;br /&gt;Balas: 30</Spanish>
<Polish>Kaliber: 6,5x47 mm (HPBT Scenar)&lt;br /&gt;Pociski: 30</Polish>
<Russian>Калибр: 6,5x47 мм (HPBT Scenar)&lt;br /&gt;Патронов: 30</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_338_300gr_HPBT_Mag_Name">
<English>.338 10Rnd Mag (300gr Sierra MatchKing HPBT)</English>
<French>.338 10 Cps (300gr Sierra MatchKing HPBT)</French>
<Spanish>Cargador de 10 balas de 8.6x70mm (300gr Sierra MatchKing HPBT)</Spanish>
<Polish>Magazynek .338 10rd (300gr Sierra MatchKing HPBT)</Polish>
<Russian>Магазин из 10-ти .338 (300 гран Sierra MatchKing HPBT)</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_338_300gr_HPBT_Mag_NameShort">
<English>.338 (HPBT)</English>
<French>.338 (HPBT)</French>
<Spanish>.338 (HPBT)</Spanish>
<Polish>.338 (HPBT)</Polish>
<Russian>.338 (HPBT)</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_338_300gr_HPBT_Mag_Description">
<English>Caliber: 8.6x70mm (300gr Sierra MatchKing HPBT)&lt;br /&gt;Rounds: 10</English>
<French>Calibre: 8.6x70mm (300gr Sierra MatchKing HPBT)&lt;br /&gt;Cartouches: 10</French>
<Spanish>Calibre: 8.6x70mm (300gr Sierra MatchKing HPBT)&lt;br /&gt;Balas: 10</Spanish>
<Polish>Kaliber: 8,6x70 mm (300gr Sierra MatchKing HPBT)&lt;br /&gt;Pociski: 10</Polish>
<Russian>Калибр: .338 (300 гран Sierra MatchKing HPBT)&lt;br /&gt;Патронов: 10</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_338_API526_Mag_Name">
<English>.338 10Rnd Mag (API526)</English>
<French>.338 10Cps (API526)</French>
<Spanish>Cargador de 10 balas de .338 (API526)</Spanish>
<Polish>Magazynek .338 10rd (API526)</Polish>
<Russian>Магазин из 10-ти .338 (API526)</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_338_API526_Mag_NameShort">
<English>.338 AP</English>
<French>.338 AP</French>
<Spanish>.338 AP</Spanish>
<Polish>.338 AP</Polish>
<Russian>.338 бронебойные</Russian>
</Key>
<Key ID="STR_ACE_10Rnd_338_API526_Mag_Description">
<English>Caliber: 8.6x70mm (API526)&lt;br /&gt;Rounds: 10</English>
<French>Calibre: 8.6x70mm (API526)&lt;br /&gt;Cartouches: 10</French>
<Spanish>Calibre: 8.6x70mm (API526)&lt;br /&gt;Balas: 10</Spanish>
<Polish>Kaliber: 8,6x70 mm (API526)&lt;br /&gt;Pociski: 10</Polish>
<Russian>Калибр: .338 (API526)&lt;br /&gt;Патронов: 10</Russian>
</Key>
<Key ID="STR_ACE_5Rnd_127x99_Mag_Name">
<English>12.7x99mm 5Rnd Mag</English>
<French>12.7x99mm 5Cps</French>
<Spanish>Cargador de 5 balas de 12.7x99mm</Spanish>
<Polish>Magazynek 12,7x99 mm 5rd</Polish>
<Russian>Магазин из 5-ти 12,7x99 мм</Russian>
</Key>
<Key ID="STR_ACE_5Rnd_127x99_Mag_NameShort">
<English>12.7mm</English>
<French>12.7mm</French>
<Spanish>12.7mm</Spanish>
<Polish>12,7mm</Polish>
<Russian>12,7 мм</Russian>
</Key>
<Key ID="STR_ACE_5Rnd_127x99_Mag_Description">
<English>Caliber: 12.7x99mm&lt;br /&gt;Rounds: 5</English>
<French>Calibre: 12.7x99mm&lt;br /&gt;Cartouches: 5</French>
<Spanish>Calibre: 12.7x99mm&lt;br /&gt;Balas: 5</Spanish>
<Polish>Kaliber: 12,7x99 mm&lt;br /&gt;Pociski: 5</Polish>
<Russian>Калибр: 12,7x99 мм&lt;br /&gt;Патронов: 5</Russian>
</Key>
<Key ID="STR_ACE_5Rnd_127x99_AMAX_Mag_Name">
<English>12.7x99mm 5Rnd Mag (AMAX)</English>
<French>12.7x99mm 5Rnd Mag (AMAX)</French>
<Spanish>Cargador de 5 balas de 12.7x99mm (AMAX)</Spanish>
<Polish>Magazynek 12,7x99 mm 5rd (AMAX)</Polish>
<Russian>Магазин из 5-ти 12,7x99 мм (A-MAX)</Russian>
</Key>
<Key ID="STR_ACE_5Rnd_127x99_AMAX_Mag_NameShort">
<English>12.7mm</English>
<French>12.7mm</French>
<Spanish>12.7mm</Spanish>
<Polish>12,7mm</Polish>
<Russian>12,7 мм</Russian>
</Key>
<Key ID="STR_ACE_5Rnd_127x99_AMAX_Mag_Description">
<English>Caliber: 12.7x99mm (AMAX)&lt;br /&gt;Rounds: 5</English>
<French>Calibre: 12.7x99mm (AMAX)&lt;br /&gt;Cartouches: 5</French>
<Spanish>Calibre: 12.7x99mm (AMAX)&lt;br /&gt;Balas: 5</Spanish>
<Polish>Kaliber: 12,7x99 mm (AMAX)&lt;br /&gt;Pociski: 5</Polish>
<Russian>Калибр: 12,7x99 мм (A-MAX)&lt;br /&gt;Патронов: 5</Russian>
</Key>
</Package>
</Project>
</Project>

View File

@ -4,6 +4,7 @@
// Load settings from profile
if (hasInterface) then {
call FUNC(loadSettingsFromProfile);
call FUNC(loadSettingsLocalizedText);
};
// Listens for global "SettingChanged" events, to update the force status locally
@ -195,6 +196,31 @@ GVAR(OldPlayerWeapon) = currentWeapon ACE_player;
}, 0, []] call cba_fnc_addPerFrameHandler;
// PFH to raise camera created event. Only works on these cams by BI.
#define ALL_CAMERAS [ \
missionNamespace getVariable ["BIS_DEBUG_CAM", objNull], \
missionNamespace getVariable ["BIS_fnc_camera_cam", objNull], \
uiNamespace getVariable ["BIS_fnc_arsenal_cam", objNull], \
uiNamespace getVariable ["BIS_fnc_animViewer_cam", objNull], \
missionNamespace getVariable ["BIS_fnc_establishingShot_fakeUAV", objNull] \
]
GVAR(OldIsCamera) = false;
[{
// "activeCameraChanged" event
_isCamera = {!isNull _x} count ALL_CAMERAS > 0;
if !(_isCamera isEqualTo GVAR(OldIsCamera)) then {
// Raise ACE event locally
GVAR(OldIsCamera) = _isCamera;
["activeCameraChanged", [ACE_player, _isCamera]] call FUNC(localEvent);
};
}, 1, []] call cba_fnc_addPerFrameHandler; // feel free to decrease the sleep time if you need it.
[QGVAR(StateArrested),false,true,QUOTE(ADDON)] call FUNC(defineVariable);
["displayTextStructured", FUNC(displayTextStructured)] call FUNC(addEventhandler);

View File

@ -119,6 +119,7 @@ PREP(loadPerson);
PREP(loadPersonLocal);
PREP(loadSettingsFromProfile);
PREP(loadSettingsOnServer);
PREP(loadSettingsLocalizedText);
PREP(map);
PREP(moduleCheckPBOs);
PREP(moduleLSDVehicles);

View File

@ -13,6 +13,8 @@
*/
#include "script_component.hpp"
private ["_name", "_isClientSetable", "_isForced", "_profileValue"];
// Iterate through settings
{
_name = _x select 0;
@ -34,4 +36,5 @@
};
};
};
} forEach GVAR(settings);

View File

@ -0,0 +1,48 @@
/*
* Author: Glowbal
* Parse all settings and load the localized displayName and description for all text
*
* Arguments:
* None
*
* Return Value:
* None
*
* Public: No
*/
#include "script_component.hpp"
private ["_parseConfigForDisplayNames", "_name"];
_parseConfigForDisplayNames = {
private "_optionEntry";
_optionEntry = _this select 0;
if !(isClass _optionEntry) exitwith {false};
_x set [3, getText (_optionEntry >> "displayName")];
_x set [4, getText (_optionEntry >> "description")];
private "_values";
_values = _x select 5;
{
private "_text";
_text = _x;
if (((typeName _text) == "STRING") && {(count _text) > 1} && {(_text select [0,1]) == "$"}) then {
_text = localize (_text select [1, ((count _text) - 1)]); //chop off the leading $
_values set [_forEachIndex, _text];
};
} forEach _values;
true;
};
// Iterate through settings
{
_name = _x select 0;
if !([configFile >> "ACE_Settings" >> _name] call _parseConfigForDisplayNames) then {
if !([configFile >> "ACE_ServerSettings" >> _name] call _parseConfigForDisplayNames) then {
[missionConfigFile >> "ACE_Settings" >> _name] call _parseConfigForDisplayNames;
};
};
} forEach GVAR(settings);

View File

@ -75,9 +75,9 @@ if (isNil _name) then {
getNumber (_optionEntry >> "force") > 0,
_value
];
//Strings in the values array won't be localized from the config, so just do that now:
private "_values";
/*private "_values";
_values = _settingData select 5;
{
_text = _x;
@ -85,8 +85,8 @@ if (isNil _name) then {
_text = localize (_text select [1, ((count _text) - 1)]); //chop off the leading $
_values set [_forEachIndex, _text];
};
} forEach _values;
} forEach _values;*/
GVAR(settings) pushBack _settingData;

View File

@ -0,0 +1,10 @@
// by commy2
// The Arma InventoryOpened EH fires actually before the inventory dialog is opened (findDisplay 602 => displayNull).
#include "script_component.hpp"
["inventoryDisplayLoaded",{
[ACE_player] call FUNC(takeLoadedATWeapon);
[ACE_player, (_this select 0)] call FUNC(updateInventoryDisplay);
}] call EFUNC(common,addEventHandler);

View File

@ -26,14 +26,14 @@
<Hungarian>Elengedés</Hungarian>
</Key>
<Key ID="STR_ACE_Dragging_UnableToDrag">
<English>Item to heavy</English>
<English>Item too heavy</English>
<German>Gegenstand ist zu schwer</German>
<Spanish>Articulo demasiado pesado</Spanish>
<Polish>Przedmiot zbyt ciężki</Polish>
<French>Objet trop lourd</French>
<Portuguese>Não é possível carregar o item devido a seu peso</Portuguese>
<Italian>Non è possibile trascinare l'oggetto a causa del suo peso</Italian>
<Russian>Слишком тяжело</Russian>
<Russian>Предмет слишком тяжёлый</Russian>
<Czech>Moc težké</Czech>
<Hungarian>Az objektum túl nehéz</Hungarian>
</Key>

View File

@ -203,7 +203,7 @@
<Italian>Consente la disattivazione degli ordigni esplosivi</Italian>
<Hungarian>Robbanóanyagok hatástalanítását teszi lehetővé</Hungarian>
<Portuguese>Permite o desarme de explosivos</Portuguese>
<Russian>Позволяет обезвреживать ВУ</Russian>
<Russian>Позволяет обезвреживать взрывчатку</Russian>
</Key>
<Key ID="STR_ACE_Explosives_Phone_AddToSpeedDial">
<English>Add to Speed Dial</English>
@ -215,7 +215,7 @@
<Italian>Aggiungi alla selezione rapida</Italian>
<Hungarian>Hozzáadás a gyorstárcsázóhoz</Hungarian>
<Portuguese>Adicionar à ligação rápida</Portuguese>
<Russian>Добавить в ускоренный набор</Russian>
<Russian>Добавить в быстрый вызов</Russian>
</Key>
<Key ID="STR_ACE_Explosives_Clear">
<English>Clear</English>
@ -299,7 +299,7 @@
<Italian>Menù di collocamento</Italian>
<Hungarian>Elhelyezési menü</Hungarian>
<Portuguese>Menu de posicionamento</Portuguese>
<Russian>Меню детонации</Russian>
<Russian>Меню установки</Russian>
</Key>
<Key ID="STR_ACE_Explosives_Defuse">
<English>Defuse</English>
@ -395,7 +395,7 @@
<Italian>Piastra a Pressione</Italian>
<Hungarian>Nyomólap</Hungarian>
<Portuguese>Placa de pressão</Portuguese>
<Russian>Давление</Russian>
<Russian>Нажимная плита</Russian>
</Key>
<Key ID="STR_ACE_Explosives_TripWire">
<English>Tripwire</English>
@ -443,7 +443,7 @@
<Italian>Sensore IR (Attacco laterale)</Italian>
<Hungarian>Infravörös szenzor (Side Attack)</Hungarian>
<Portuguese>Sensor infravermelho (ataque lateral)</Portuguese>
<Russian>ИК (детонация вбок)</Russian>
<Russian>ИК сенсор (детонация вбок)</Russian>
</Key>
<Key ID="STR_ACE_Explosives_SLAME_Magnetic">
<English>Magnetic Influence Sensor (Bottom Attack)</English>
@ -455,7 +455,7 @@
<Italian>Sensore Magnetico di Prossimità (Attacco inferiore)</Italian>
<Hungarian>Mágneses mező érzékelő (Bottom Attack)</Hungarian>
<Portuguese>Influência magnética (ataque inferior)</Portuguese>
<Russian>Магнитный (детонация вверх)</Russian>
<Russian>Магнитный сенсор (детонация вверх)</Russian>
</Key>
<Key ID="STR_ACE_Explosives_NoExplosivesAvailable">
<English>No explosives on trigger.</English>
@ -467,7 +467,7 @@
<Hungarian>Nincs robbanóanyag a gyújtóeszközhöz kötve.</Hungarian>
<Polish>Brak ładunków na zapalnik.</Polish>
<Portuguese>Nenhum explosivo no gatilho.</Portuguese>
<Russian>Нет доступных ВУ для взрывателя.</Russian>
<Russian>Взрыватель не подсоединён к взрывчатке</Russian>
</Key>
<Key ID="STR_ACE_Explosives_DeadManSwitch_displayName">
<English>Dead Man's Switch</English>
@ -477,7 +477,7 @@
<Polish>Czuwak</Polish>
<Spanish>Detonador de hombre muerto</Spanish>
<Hungarian>Dead Man's Switch</Hungarian>
<Russian>Ловушка мертвеца</Russian>
<Russian>Кнопка мертвеца</Russian>
</Key>
<Key ID="STR_ACE_Explosives_DeadManSwitch_description">
<English>Used to remotely trigger explosives when released.</English>
@ -502,4 +502,4 @@
<Italian>Raccogli</Italian>
</Key>
</Package>
</Project>
</Project>

View File

@ -31,7 +31,7 @@
<Spanish>Poner tapones</Spanish>
<Polish>Włóż stopery</Polish>
<Czech>Dát špunty do uší</Czech>
<Russian>Беруши надеты</Russian>
<Russian>Надеть беруши</Russian>
<French>Bouchons mis</French>
<Hungarian>Füldugó berakva</Hungarian>
<Portuguese>Protetores colocados</Portuguese>
@ -43,7 +43,7 @@
<Spanish>Quitar tapones</Spanish>
<Polish>Wyjmij stopery</Polish>
<Czech>Vyndat špunty z uší</Czech>
<Russian>Беруши сняты</Russian>
<Russian>Снять беруши</Russian>
<French>Bouchons enlevés</French>
<Hungarian>Füldugó kivéve</Hungarian>
<Portuguese>Protetores retirados</Portuguese>
@ -109,4 +109,4 @@
<Italian>Disabilita il ronzio</Italian>
</Key>
</Package>
</Project>
</Project>

View File

@ -25,7 +25,7 @@ _fnc_renderNearbyActions = {
_cameraDir = ((positionCameraToWorld [0, 0, 1]) call EFUNC(common,positionToASL)) vectorDiff _cameraPos;
_numInteractObjects = 0;
_nearestObjects = nearestObjects [((getPosASL ACE_player) vectorAdd (_cameraDir vectorMultiply 5)) call EFUNC(common,ASLToPosition), ["All"], 8];
_nearestObjects = nearestObjects [ACE_player, ["All"], 13];
{
_target = _x;

View File

@ -5,7 +5,7 @@
<English>Always display cursor for self interaction</English>
<German>Immer den Cursor für Selbst-Interaktionen anzeigen.</German>
<Spanish>Mostrar siempre el cursor para la interacción propia</Spanish>
<Russian>Всегда показывать курсор для взаимодействия с собой</Russian>
<Russian>Показывать курсор (взаимодействия с собой)</Russian>
<Czech>Zobrazit kurzor v menu pro vlastní interakci</Czech>
<Polish>Zawsze wyświetlaj kursor dla własnej interakcji</Polish>
<French>Toujours afficher le curseur pour les interactions sur soi-même</French>
@ -15,10 +15,11 @@
<Key ID="STR_ACE_Interact_Menu_UseListMenu">
<English>Display interaction menus as lists</English>
<Spanish>Mostrar los menus de interacción como listas</Spanish>
<Russian>Показывать меню взаимодействия в виде списка</Russian>
<Russian>Меню взаимодействий в виде списка</Russian>
<French>Afficher le menu d'interaction sous forme de liste</French>
<Italian>Mostra il menù di interazione come lista</Italian>
<Polish>Wyświetlaj menu interakcji jako listę</Polish>
<German>Interaktionsmenü in Listen anzeigen</German>
</Key>
<Key ID="STR_ACE_Interact_Menu_InteractKey">
<English>Interact Key</English>
@ -65,4 +66,4 @@
<Italian>Interazioni con veicoli</Italian>
</Key>
</Package>
</Project>
</Project>

View File

@ -5,7 +5,7 @@
<English>Make Inventory Display Bigger</English>
<German>Erhöhe die angezeigte Inventargröße</German>
<Spanish>Hacer la pantalla de inventario mas grande</Spanish>
<Russian>Сделать окно инвентаря больше</Russian>
<Russian>Изменить размер окна инвентаря</Russian>
<Czech>Zvětšit zobrazení inventáře</Czech>
<Polish>Powiększ UI ekwipunku</Polish>
<French>Agrandir la taille d'affichage de l'inventaire</French>
@ -16,7 +16,7 @@
<English>Normally inventory display is scaled by UI size. This allows scaling the Inventory UI size up, but doesn't increase font size allowing more rows displayed.</English>
<German>Im Regelfall wird die Inventargröße durch die Größe der Nutzeroberfläche bestimmt. Diese Einstellung erlaubt es das Inventar unter Ausschluss der Schriftgröße zu vergrößern. Dadurch können mehr Gegenstände angezeigt werden.</German>
<Spanish>Normalmente la pantalla de inventario se escala por el tamaño de la interfaz de usuario. Esto permite ampliar el tamaño de la interfaz de usuario de inventario, pero no aumenta el tamaño de fuente, permitiendo mostrar más filas.</Spanish>
<Russian>Обычно, окно инвентаря зависит от размеров пользовательского интерфейса. Эта настройка позволяет увеличить размер окна инвентаря в пользовательском интерфейсе, не увеличивая размера шрифтов, так что отображется большее количество строк.</Russian>
<Russian>Обычно, размер окна инвентаря зависит от размеров пользовательского интерфейса. Эта настройка позволяет увеличить размер окна инвентаря, не увеличивая размеры шрифтов, так что отображется большее количество строк.</Russian>
<Czech>Normálně se velikost invetáře škáluje s velikostí UI. Toto nastavení dovoluje škálování velikost inventáře ale nežvětšuje velikost fontu. To dovoluje zobrazení více řad v inventáři.</Czech>
<Polish>Ekwipunek skalowany jest poprzez rozmiar UI. Ta opcja pozwala powiększyć rozmiar UI ekwipunku, lecz nie zwiększa rozmiaru fontu pozwalając na wyświetlanie większej ilości wierszy.</Polish>
<French>L'inventaire est normalement affiché en fonction de la taille de l'UI. Cette option permet d'agrandir l'affichage de l'inventaire, mais n'a aucun effet sur la taille des polices permettant d'afficher plus de ligne</French>

View File

@ -88,7 +88,7 @@ switch (GVAR(Menu)) do {
if (!GVAR(MinAvgMax)) then {
if (missionNamespace getVariable [QEGVAR(advanced_ballistics,enabled), false]) then {
_textCenterBig = Str(round(abs(sin(GVAR(RefHeading) - _playerDir) * _windSpeed) * 10) / 10);
_textInfoLine1 = format["%1 m/s @ %2", round((cos(_playerDir - _windDir) * _windSpeed) * 10) / 10, round(_playerDir)];
_textInfoLine1 = format["%1 m/s @ %2", round((abs(cos(_playerDir - _windDir)) * _windSpeed) * 10) / 10, round(_playerDir)];
} else {
_textCenterBig = Str(round(abs(sin(GVAR(RefHeading)) * _windSpeed) * 10) / 10);
_textInfoLine1 = format["%1 m/s @ %2", round(_windSpeed * 10) / 10, round(_windDir)];
@ -120,7 +120,7 @@ switch (GVAR(Menu)) do {
if (!GVAR(MinAvgMax)) then {
if (missionNamespace getVariable [QEGVAR(advanced_ballistics,enabled), false]) then {
_textCenterBig = Str(round(abs(cos(GVAR(RefHeading) - _playerDir) * _windSpeed) * 10) / 10);
_textInfoLine1 = format["%1 m/s @ %2", round((cos(_playerDir - _windDir) * _windSpeed) * 10) / 10, round(_playerDir)];
_textInfoLine1 = format["%1 m/s @ %2", round((abs(cos(_playerDir - _windDir)) * _windSpeed) * 10) / 10, round(_playerDir)];
} else {
_textCenterBig = Str(round(abs(cos(GVAR(RefHeading)) * _windSpeed) * 10) / 10);
_textInfoLine1 = format["%1 m/s @ %2", round(_windSpeed * 10) / 10, round(_windDir)];

View File

@ -19,6 +19,7 @@
<Russian>Карманная метеостанция Kestrel 4500NV</Russian>
<French>Station météo portable Kestrel 4500</French>
<Spanish>Kestrel 4500 Pocket Weather Tracker</Spanish>
<German>Kestrel 4500 Taschenwettermessgerät</German>
</Key>
<Key ID="STR_ACE_Kestrel4500_OpenKestrel">
<English>Open Kestrel 4500</English>
@ -28,6 +29,7 @@
<French>Ouvrir Kestrel 4500</French>
<Italian>Accendi Kestrel 4500</Italian>
<Spanish>Abrir Kestrel 4500</Spanish>
<German>Kestrel 4500 öffnen</German>
</Key>
<Key ID="STR_ACE_Kestrel4500_ShowKestrel">
<English>Show Kestrel 4500</English>
@ -36,6 +38,7 @@
<French>Afficher Kestrel 4500</French>
<Italian>Mostra Kestrel 4500</Italian>
<Spanish>Mostrar Kestrel 4500</Spanish>
<German>Kestrel 4500 anzeigen</German>
</Key>
<Key ID="STR_ACE_Kestrel4500_HideKestrel">
<English>Hide Kestrel 4500</English>
@ -44,6 +47,7 @@
<French>Cacher Kestrel 4500</French>
<Italian>Nascondi Kestrel 4500</Italian>
<Spanish>Esconder Kestrel 4500</Spanish>
<German>Kestrel 4500 wegstecken</German>
</Key>
<Key ID="STR_ACE_Kestrel4500_KestrelDialogKey">
<English>Open Kestrel 4500</English>
@ -52,6 +56,7 @@
<French>Ouvrir Kestrel 4500</French>
<Italian>Accendi Kestrel 4500</Italian>
<Spanish>Abrir Kestrel 4500</Spanish>
<German>Kestrel 4500 öffnen</German>
</Key>
<Key ID="STR_ACE_Kestrel4500_DisplayKestrelKey">
<English>Show Kestrel 4500</English>
@ -60,6 +65,7 @@
<French>Afficher Kestrel 4500</French>
<Italian>Mostra Kestrel 4500</Italian>
<Spanish>Mostrar Kestrel 4500</Spanish>
<German>Kestrel 4500 anzeigen</German>
</Key>
</Package>
</Project>
</Project>

View File

@ -42,7 +42,7 @@
<Italian>&lt;t color='#9cf953'&gt;Uso: &lt;/t&gt;Laser ON/OFF</Italian>
<Polish>&lt;t color='#9cf953'&gt;Użyj: &lt;/t&gt;wł./wył. laser</Polish>
<Portuguese>&lt;t color='#9cf953'&gt;Uso: &lt;/t&gt;Ativar/Desativar laser</Portuguese>
<Russian>&lt;t color='#9cf953'&gt;Использовать: &lt;/t&gt;вкл/выкл лазер</Russian>
<Russian>&lt;t color='#9cf953'&gt;Использовать: &lt;/t&gt;ВКЛ/ВЫКЛ лазер</Russian>
<Spanish>&lt;t color='#9cf953'&gt;Usar: &lt;/t&gt;encender/apagar láser</Spanish>
<Hungarian>&lt;t color='#9cf953'&gt;Használat: &lt;/t&gt;Lézer BE/KI kapcsolása</Hungarian>
</Key>
@ -72,4 +72,4 @@
<Spanish>Cambiar Laser / Laser IR</Spanish>
</Key>
</Package>
</Project>
</Project>

View File

@ -0,0 +1,12 @@
class CfgSounds {
class ACE_Wirecutter_sound {
name = "ACE_wirecutter_sound";
sound[] = {QUOTE(PATHTOF(sound\wire_cut.ogg)), "db-0", 1};
titles[] = {};
};
class ACE_Wirecutter_sound_long {
name = "ACE_wirecutter_sound_long";
sound[] = {QUOTE(PATHTOF(sound\wire_cut_long.ogg)), "db-0", 1};
titles[] = {};
};
};

View File

@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Edited with tabler. -->
<Project name="ACE">
<Package name="Medical">
<Key ID="TR_ACE_Medical_litterSimulationDetail">
@ -379,7 +378,7 @@
<English>Give Blood IV (1000ml)</English>
<German>Bluttransfusion IV (1000ml)</German>
<Spanish>Dar Sangre IV (1000ml)</Spanish>
<Russian>Дать кровь для в/в вливания (1000 мл)</Russian>
<Russian>Перелить пакет крови (1000 мл)</Russian>
<Polish>Podaj krew IV (1000ml)</Polish>
<French>Administrer du sang en IV (1000ml)</French>
<Czech>Podat krev. transfúzi (1000ml)</Czech>
@ -390,7 +389,7 @@
<English>Give Blood IV (500ml)</English>
<German>Bluttransfusion IV (500ml)</German>
<Spanish>Dar Sangre IV (500ml)</Spanish>
<Russian>Дать кровь для в/в вливания (500 мл)</Russian>
<Russian>Перелить пакет крови (500 мл)</Russian>
<Polish>Podaj krew IV (500ml)</Polish>
<French>Administrer du sang en IV (500ml)</French>
<Czech>Podat krev. transfúzi (500ml) </Czech>
@ -401,7 +400,7 @@
<English>Give Blood IV (250ml)</English>
<German>Bluttransfusion IV (250ml)</German>
<Spanish>Dar Sangre IV (250ml)</Spanish>
<Russian>Дать кровь для в/в вливания (250 мл)</Russian>
<Russian>Перелить пакет крови (250 мл)</Russian>
<Polish>Podaj krew IV (250ml)</Polish>
<French>Administrer du sang en IV (250ml)</French>
<Czech>Podat krev. transfúzi (250ml)</Czech>
@ -412,7 +411,7 @@
<English>Give Plasma IV (1000ml)</English>
<German>Plasmatransfusion IV (1000ml)</German>
<Spanish>Dar Plasma IV (1000ml)</Spanish>
<Russian>Дать плазму для в/в вливания (1000 мл)</Russian>
<Russian>Перелить пакет плазмы (1000 мл)</Russian>
<Polish>Podaj osocze IV (1000ml)</Polish>
<French>Administrer du plasma en IV (1000ml)</French>
<Czech>Podat plazmu (1000ml)</Czech>
@ -423,7 +422,7 @@
<English>Give Plasma IV (500ml)</English>
<German>Plasmatransfusion IV (500ml)</German>
<Spanish>Dar Plasma IV (500ml)</Spanish>
<Russian>Дать плазму для в/в вливания (500 мл)</Russian>
<Russian>Перелить пакет плазмы (500 мл)</Russian>
<Polish>Podaj osocze IV (500ml)</Polish>
<French>Administrer du plasma en IV (500ml)</French>
<Czech>Podat plazmu (500ml)</Czech>
@ -434,7 +433,7 @@
<English>Give Plasma IV (250ml)</English>
<German>Plasmatransfusion IV (250ml)</German>
<Spanish>Dar Plasma IV (250ml)</Spanish>
<Russian>Дать плазму для в/в вливания (250 мл)</Russian>
<Russian>Перелить пакет плазмы (250 мл)</Russian>
<Polish>Podaj osocze IV (250ml)</Polish>
<French>Administrer du plasma en IV (250ml)</French>
<Czech>Podat plazmu (250ml)</Czech>
@ -445,7 +444,7 @@
<English>Give Saline IV (1000ml)</English>
<German>Kochsaltzlösung IV (1000ml)</German>
<Spanish>Dar Salino IV (1000ml)</Spanish>
<Russian>Дать физраствор для в/в вливания (1000 мл)</Russian>
<Russian>Перелить пакет физраствора (1000 мл)</Russian>
<Polish>Podaj sól fizjologiczną IV (1000ml)</Polish>
<French>Administrer de la solution saline en IV (1000ml)</French>
<Czech>Podaz fyz. roztok (1000ml)</Czech>
@ -456,7 +455,7 @@
<English>Give Saline IV (500ml)</English>
<German>Kochsaltzlösung IV (500ml)</German>
<Spanish>Dar Salino IV (500ml)</Spanish>
<Russian>Дать физраствор для в/в вливания (500 мл)</Russian>
<Russian>Перелить пакет физраствора (500 мл)</Russian>
<Polish>Podaj sól fizjologiczną IV (500ml)</Polish>
<French>Administrer de la solution saline en IV (500ml)</French>
<Czech>Podaz fyz. roztok (500ml)</Czech>
@ -467,7 +466,7 @@
<English>Give Saline IV (250ml)</English>
<German>Kochsaltzlösung IV (250ml)</German>
<Spanish>Dar Salino IV (250ml)</Spanish>
<Russian>Дать физраствор для в/в вливания (250 мл)</Russian>
<Russian>Перелить пакет физраствора (250 мл)</Russian>
<Polish>Podaj sól fizjologiczną IV (250ml)</Polish>
<French>Administrer de la solution saline en IV (250ml)</French>
<Czech>Podaz fyz. roztok (250ml)</Czech>
@ -478,7 +477,7 @@
<English>Minor</English>
<German>Gering</German>
<Spanish>Menor</Spanish>
<Russian>Незначительная</Russian>
<Russian>Легкие ранения</Russian>
<Polish>Normalny</Polish>
<French>Léger</French>
<Czech>Minimální</Czech>
@ -488,7 +487,7 @@
<Key ID="STR_ACE_MEDICAL_TRIAGE_STATUS_DELAYED">
<English>Delayed</English>
<Spanish>Retrasado</Spanish>
<Russian>Груз 300</Russian>
<Russian>Средние ранения</Russian>
<Polish>Opóźniony</Polish>
<French>Différé</French>
<German>Verzögert</German>
@ -499,7 +498,7 @@
<Key ID="STR_ACE_MEDICAL_TRIAGE_STATUS_IMMEDIATE">
<English>Immediate</English>
<Spanish>Inmediato</Spanish>
<Russian>Помощь отложена</Russian>
<Russian>Тяжелые ранения</Russian>
<Polish>Natychmiastowy</Polish>
<French>Urgence Immédiate</French>
<German>Sofort</German>
@ -510,7 +509,7 @@
<Key ID="STR_ACE_MEDICAL_TRIAGE_STATUS_DECEASED">
<English>Deceased</English>
<Spanish>Fallecido</Spanish>
<Russian>Груз 200</Russian>
<Russian>Труп</Russian>
<Polish>Nie żyje</Polish>
<French>Décédé</French>
<German>Verstorben</German>
@ -521,7 +520,7 @@
<Key ID="STR_ACE_MEDICAL_TRIAGE_STATUS_NONE">
<English>None</English>
<Spanish>Ninguno</Spanish>
<Russian>Нет</Russian>
<Russian>Отсутствует</Russian>
<Polish>Brak</Polish>
<French>Aucun</French>
<German>Keine</German>
@ -1530,7 +1529,7 @@
<English>Heavily wounded</English>
<German>Schwer verwundet:</German>
<Polish>Ciężko ranny</Polish>
<Russian>Сильно ранен</Russian>
<Russian>Сильные ранения</Russian>
<Italian>Gravemente ferito</Italian>
<Spanish>Gravemente herido</Spanish>
<French>Lourdement blessé</French>
@ -1539,7 +1538,7 @@
<English>Lightly wounded</English>
<German>Leicht verwundet:</German>
<Polish>Lekko ranny</Polish>
<Russian>Легко ранен</Russian>
<Russian>Легкие ранения</Russian>
<Italian>Leggermente ferito</Italian>
<Spanish>Levemente herido</Spanish>
<French>Légèrement blessé</French>
@ -1548,7 +1547,7 @@
<English>Very lightly wounded</English>
<German>Sehr leicht verwundet:</German>
<Polish>B. lekko ranny</Polish>
<Russian>Очень легко ранен</Russian>
<Russian>Царапины</Russian>
<Italian>Ferito lievemente</Italian>
<Spanish>Muy levemente herido</Spanish>
<French>Très légèrement blessé</French>
@ -1557,7 +1556,7 @@
<English>Head</English>
<German>Kopf</German>
<Polish>Głowa</Polish>
<Russian>Голова</Russian>
<Russian>Головы</Russian>
<Italian>Testa</Italian>
<Spanish>Cabeza</Spanish>
<French>Tête</French>
@ -1566,7 +1565,7 @@
<English>Torso</English>
<German>Torso</German>
<Polish>Tors</Polish>
<Russian>Торс</Russian>
<Russian>Торса</Russian>
<Italian>Torso</Italian>
<Spanish>Torso</Spanish>
<French>Torse</French>
@ -1575,7 +1574,7 @@
<English>Left Arm</English>
<German>Linker Arm</German>
<Polish>Lewe ramię</Polish>
<Russian>Левая рука</Russian>
<Russian>Левой руки</Russian>
<Italian>Braccio sinistro</Italian>
<Spanish>Brazo izquierdo</Spanish>
<French>Bras gouche</French>
@ -1584,7 +1583,7 @@
<English>Right Arm</English>
<German>Rechter Arm</German>
<Polish>Prawe ramię</Polish>
<Russian>Правая рука</Russian>
<Russian>Правой руки</Russian>
<Italian>Braccio destro</Italian>
<Spanish>Brazo derecho</Spanish>
<French>Bras droit</French>
@ -1593,7 +1592,7 @@
<English>Left Leg</English>
<German>Linkes Bein</German>
<Polish>Lewa noga</Polish>
<Russian>Левая нога</Russian>
<Russian>Левой ноги</Russian>
<Italian>Gamba sinistra</Italian>
<Spanish>Pierna izquierda</Spanish>
<French>Jambe gauche</French>
@ -1602,7 +1601,7 @@
<English>Right Leg</English>
<German>Rechtes Bein</German>
<Polish>Prawa noga</Polish>
<Russian>Правая нога</Russian>
<Russian>Правой ноги</Russian>
<Italian>Gamba destra</Italian>
<Spanish>Pierna derecha</Spanish>
<French>Jambe droite</French>
@ -1611,7 +1610,7 @@
<English>Pain Effect Type</English>
<German>Schmerzeffekt-Typ</German>
<Polish>Rodzaj efektu bólu</Polish>
<Russian>Вид боли</Russian>
<Russian>Эффект боли</Russian>
<Italian>Pain Effect Type</Italian>
<Spanish>Tipo de efecto de dolor</Spanish>
<French>Type d'effet de douleur</French>
@ -1620,7 +1619,7 @@
<English>Colour Flashing</English>
<German>Farbblinken</German>
<Polish>Pulsujące kolory</Polish>
<Russian>Разноцветные вспышки</Russian>
<Russian>Пульсирующий свет</Russian>
<Italian>Colore lampeggiante</Italian>
<Spanish>Parpadeo de color</Spanish>
<French>Flash de couleur</French>
@ -1635,4 +1634,4 @@
<French>Aberration chromatique</French>
</Key>
</Package>
</Project>
</Project>

View File

@ -1,6 +1,6 @@
#include "script_component.hpp"
PARAMS_2(_target,_args);
if(!local _target) exitWith {};
if(isNil "_target" || {isNull _target} || {!local _target} ) exitWith { false };
[FUNC(guidancePFH), 0, _args] call cba_fnc_addPerFrameHandler;

View File

@ -86,13 +86,20 @@ _args = [_this,
// Laser code needs to give us a shooter for LOBL, or the seeker unit needs to be able to shift locality
// Based on its homing laser
// Lasers need to be handled in a special LOAL/LOBL case
_guidingUnit = ACE_player;
if(local _guidingUnit) then {
//if(isPlayer _shooter) then {
// _guidingUnit = ACE_player;
//
// if(local _guidingUnit) then {
// [FUNC(guidancePFH), 0, _args ] call cba_fnc_addPerFrameHandler;
// } else {
// [QGVAR(handoff), [_guidingUnit, _args] ] call FUNC(doHandoff);
// };
//} else {
[FUNC(guidancePFH), 0, _args ] call cba_fnc_addPerFrameHandler;
} else {
[QGVAR(handoff), [_guidingUnit, _args] ] call FUNC(doHandoff);
};
//};
/* Clears locking settings
(vehicle _shooter) setVariable [QGVAR(target), nil];
(vehicle _shooter) setVariable [QGVAR(seekerType), nil];

View File

@ -12,7 +12,7 @@
<Italian>Guida missili avanzata</Italian>
<Portuguese>Avançado Missile Guidance</Portuguese>
<Hungarian>Fejlett rakétairányító</Hungarian>
<Russian>Расширенный ракетой</Russian>
<Russian>Продвинутое наведение ракет</Russian>
</Key>
<Key ID="STR_ACE_MissileGuidance_Desc">
<English>Advanced missile guidance, or AMG, provides multiple enhancements to missile locking and firing. It is also a framework required for missile weapon types.</English>
@ -28,7 +28,7 @@
<Italian>Missile Hydra-70 DAGR</Italian>
<Portuguese></Portuguese>
<Hungarian>Hydra-70 DAGR rakéta</Hungarian>
<Russian></Russian>
<Russian>Hydra-70 DAGR</Russian>
</Key>
<Key ID="STR_ACE_Hydra70_DAGR_Short">
<English>DAGR</English>
@ -40,7 +40,7 @@
<Italian>DAGR</Italian>
<Portuguese></Portuguese>
<Hungarian>DAGR</Hungarian>
<Russian></Russian>
<Russian>DAGR</Russian>
</Key>
<Key ID="STR_ACE_Hydra70_DAGR_Desc">
<English>Hydra-70 DAGR Laser Guided Missile</English>
@ -52,7 +52,7 @@
<Italian>Hydra-70 DAGR missile guida laser</Italian>
<Portuguese></Portuguese>
<Hungarian>Hydra-70 DAGR lézer-irányított rakéta</Hungarian>
<Russian></Russian>
<Russian>Управляемая ракета лазерного наведения Hydra-70 DAGR</Russian>
</Key>
<Key ID="STR_ACE_Hellfire_AGM114K">
<English>Hellfire II AGM-114K Missile</English>
@ -64,7 +64,7 @@
<Italian>Missile Hellfire II AGM-114K</Italian>
<Portuguese></Portuguese>
<Hungarian>Hellfire II AGM-114K rakéta</Hungarian>
<Russian></Russian>
<Russian>Hellfire II AGM-114K</Russian>
</Key>
<Key ID="STR_ACE_Hellfire_AGM114K_Short">
<English>AGM-114K</English>
@ -76,7 +76,7 @@
<Italian>AGM-114K</Italian>
<Portuguese></Portuguese>
<Hungarian>AGM-114K</Hungarian>
<Russian></Russian>
<Russian>AGM-114K</Russian>
</Key>
<Key ID="STR_ACE_Hellfire_AGM114K_desc">
<English>Hellfire II AGM-114K Laser Guided Missile</English>
@ -88,7 +88,7 @@
<Italian>Missile guida laser Hellfire II AGM-114K</Italian>
<Portuguese></Portuguese>
<Hungarian>Hellfire II AGM-114K lézer-irányított rakéta</Hungarian>
<Russian></Russian>
<Russian>Управляемая ракета лазерного наведения Hellfire II AGM-114K</Russian>
</Key>
</Package>
</Project>

View File

@ -57,7 +57,7 @@
<Italian>Mostra i gradi (richiede mostra nomi abilitato)</Italian>
<Portuguese>Mostrar patente de jogadores (requer nome de jogadores)</Portuguese>
<Hungarian>Játékosok rendfokozatának mutatása (a nevek mutatása szükséges)</Hungarian>
<Russian>Показать звания игроков (требует имен игроков)</Russian>
<Russian>Показывать звания игроков (требует имен игроков)</Russian>
</Key>
<Key ID="STR_ACE_NameTags_ShowVehicleCrewInfo">
<English>Show vehicle crew info</English>
@ -66,7 +66,7 @@
<Spanish>Mostrar tripulantes</Spanish>
<Polish>Pokaż załogę pojazdu</Polish>
<Czech>Zobrazit info o posádce vozidla</Czech>
<Russian>Показать экипаж</Russian>
<Russian>Показывать информацию об экипаже</Russian>
<Hungarian>Jármű-legénység adatainak mutatása</Hungarian>
<Italian>Mostra le informazioni sull'equipaggio del veicolo</Italian>
</Key>
@ -104,4 +104,4 @@
<Italian>Colore nametag di default (membri non del gruppo)</Italian>
</Key>
</Package>
</Project>
</Project>

View File

@ -91,7 +91,7 @@
<Spanish>Sistema de visión nocturna (Panorámicas)</Spanish>
<Polish>Gogle noktowizyjne (panoramiczne)</Polish>
<Czech>Noktovizor (Širokoúhlý)</Czech>
<Russian>ПНВ (Широкий)</Russian>
<Russian>ПНВ (Широкоугольный)</Russian>
<French>JVN (Large)</French>
<Hungarian>Éjjellátó szemüveg (széles látószögű)</Hungarian>
</Key>
@ -102,7 +102,7 @@
<Polish>Czułość: %1</Polish>
<Czech>Jas: %1</Czech>
<French>Luminosité : %1</French>
<Russian>Контраст: </Russian>
<Russian>Яркость: %1</Russian>
<Hungarian>Fényerő: %1</Hungarian>
<Portuguese>Luminosidade: %1</Portuguese>
<Italian>Luminosità: %1</Italian>
@ -132,4 +132,4 @@
<Italian>Riduci la luminosità dell'NVG</Italian>
</Key>
</Package>
</Project>
</Project>

View File

@ -98,7 +98,7 @@ class CfgWeapons {
class ACE_optic_Hamr_PIP: ACE_optic_Hamr_2D {
author = "$STR_ACE_Common_ACETeam";
_generalMacro = "ACE_optic_Hamr_PIP";
scopeArsenal = 1;
//scopeArsenal = 1;
displayName = "$STR_ACE_optic_hamr_pip";
class ItemInfo: ItemInfo {
@ -147,7 +147,7 @@ class CfgWeapons {
class ACE_optic_Arco_PIP: ACE_optic_Arco_2D {
author = "$STR_ACE_Common_ACETeam";
_generalMacro = "ACE_optic_Arco_PIP";
scopeArsenal = 1;
//scopeArsenal = 1;
displayName = "$STR_ACE_optic_arco_pip";
class ItemInfo: ItemInfo {
@ -197,7 +197,7 @@ class CfgWeapons {
author = "$STR_ACE_Common_ACETeam";
_generalMacro = "ACE_optic_MRCO_PIP";
scope = 1;
scopeArsenal = 1;
//scopeArsenal = 1;
displayName = "$STR_ACE_optic_valdada_pip";
class ItemInfo: ItemInfo {
@ -239,7 +239,7 @@ class CfgWeapons {
class ACE_optic_SOS_PIP: ACE_optic_SOS_2D {
author = "$STR_ACE_Common_ACETeam";
_generalMacro = "ACE_optic_SOS_PIP";
scopeArsenal = 1;
//scopeArsenal = 1;
displayName = "$STR_ACE_optic_sos_pip";
class ItemInfo: ItemInfo {
@ -290,7 +290,7 @@ class CfgWeapons {
class ACE_optic_LRPS_PIP: ACE_optic_LRPS_2D {
author = "$STR_ACE_Common_ACETeam";
_generalMacro = "ACE_optic_LRPS_PIP";
scopeArsenal = 1;
//scopeArsenal = 1;
displayName = "$STR_ACE_optic_lrps_pip";
class ItemInfo: ItemInfo {

View File

@ -22,3 +22,19 @@ if (!hasInterface) exitWith {};
uiNamespace setVariable [QGVAR(RscWeaponInfo2D), _this select 0];
};
}] call EFUNC(common,addEventHandler);
// camera has to be re-created every time another camera is created. Otherwise r2t is either black or transparent. @todo Add popular custom cameras to the event in ACE_common.
["activeCameraChanged", {
if !(_this select 1) then {
deleteVehicle GVAR(camera);
// PiP technique by BadBenson
GVAR(camera) = "camera" camCreate positioncameratoworld [0,0,0];
GVAR(camera) camSetFov 0.7;
GVAR(camera) camSetTarget ACE_player;
GVAR(camera) camCommit 1;
"ace_optics_rendertarget0" setPiPEffect [2, 1.0, 1.0, 1.0, 0.0, [0.0, 1.0, 0.0, 0.25], [1.0, 0.0, 1.0, 1.0], [0.199, 0.587, 0.114, 0.0]];
GVAR(camera) cameraEffect ["INTERNAL", "BACK", "ace_optics_rendertarget0"];
};
}] call EFUNC(common,addEventHandler);

View File

@ -137,6 +137,7 @@
<French>Vérifier la température</French>
<Hungarian>Fegyverhő ellenőrzése</Hungarian>
<Russian>Проверить температуру оружия</Russian>
<German>Waffentemperatur prüfen</German>
</Key>
<Key ID="STR_ACE_Overheating_CheckingTemperature">
<English>Checking temperature ...</English>
@ -163,4 +164,4 @@
<Russian>Температура</Russian>
</Key>
</Package>
</Project>
</Project>

View File

@ -33,7 +33,7 @@
<Czech>Zkontrolovat Munici</Czech>
<Italian>Controlla le munizioni</Italian>
<Portuguese>Conferir munições</Portuguese>
<Russian>Kонтроль Боеприпасы</Russian>
<Russian>Проверить боеприпасы</Russian>
</Key>
<Key ID="STR_ACE_Reload_Ammo">
<English>Ammo</English>

View File

@ -29,5 +29,5 @@ if (GVAR(SavePreDeathGear)) then {
};
if (missionNamespace getVariable [QGVAR(showFriendlyFireMessage), false]) then {
[_this, FUNC(showFriendlyFireMessage), 2] call EFUNC(common,execRemoteFnc);
[_this, QUOTE(DFUNC(showFriendlyFireMessage)), 2] call EFUNC(common,execRemoteFnc);
};

View File

@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Edited with tabler. -->
<Project name="ACE">
<Package name="Interaction">
<Key ID="STR_ACE_Respawn_Deploy">
@ -66,7 +65,7 @@
<English>Rallypoint Independent (Base)</English>
<German>Sammelpunkt Widerstand (Basis)</German>
<Spanish>Punto de reunión Independiente (Base)</Spanish>
<Russian>Точка сбора Независимых (База</Russian>
<Russian>Точка сбора Независимых (База)</Russian>
<Polish>Punkt zbiórki Ruchu oporu (Baza)</Polish>
<French>Point de ralliement Indépendant (Base)</French>
</Key>
@ -95,4 +94,4 @@
<French>Point de ralliement Indépendant</French>
</Key>
</Package>
</Project>
</Project>

View File

@ -16,7 +16,7 @@
PARAMS_3(_unit,_turretAndDirection,_majorStep);
if (vehicle _unit != _unit) exitWith {false};
if (!(_unit isKindOf "Man")) exitWith {false};
private ["_weaponIndex", "_zeroing", "_optic", "_increment", "_maxVertical", "_maxHorizontal", "_elevation", "_windage", "_zero", "_adjustment"];

View File

@ -8,6 +8,7 @@
<Spanish>Ajuste menor arriba</Spanish>
<Italian>Regola leggermente alzata in alto</Italian>
<French>Hausse +</French>
<German>Kleine Korrektur nach oben</German>
</Key>
<Key ID="STR_ACE_Scopes_AdjustDownMinor">
<English>Minor adjustment down</English>
@ -16,6 +17,7 @@
<Spanish>Ajuste menor abajo</Spanish>
<Italian>Regola leggermente alzata in basso</Italian>
<French>Hausse -</French>
<German>Kleine Korrektur nach unten</German>
</Key>
<Key ID="STR_ACE_Scopes_AdjustRightMinor">
<English>Minor adjustment right</English>
@ -24,6 +26,7 @@
<Spanish>Ajuste menor derecha</Spanish>
<Italian>Regola leggermente il tiro a destra</Italian>
<French>Dérive +</French>
<German>Kleine Korrektur nach rechts</German>
</Key>
<Key ID="STR_ACE_Scopes_AdjustLeftMinor">
<English>Minor adjustment left</English>
@ -32,6 +35,7 @@
<Spanish>Ajuste menor izquierda</Spanish>
<Italian>Regola leggermete il tiro a sinistra</Italian>
<French>Dérive -</French>
<German>Kleine Korrektur nach links</German>
</Key>
<Key ID="STR_ACE_Scopes_AdjustUpMajor">
<English>Major adjustment up</English>
@ -40,6 +44,7 @@
<Spanish>Ajuste mayor arriba</Spanish>
<Italian>Regola l'alzata in alto</Italian>
<French>Hausse +++</French>
<German>Große Korrektur nach oben</German>
</Key>
<Key ID="STR_ACE_Scopes_AdjustDownMajor">
<English>Major adjustment down</English>
@ -48,6 +53,7 @@
<Spanish>Ajuste mayor abajo</Spanish>
<Italian>Regola l'alzata in basso</Italian>
<French>Hausse ---</French>
<German>Große Korrektur nach unten</German>
</Key>
<Key ID="STR_ACE_Scopes_AdjustRightMajor">
<English>Major adjustment right</English>
@ -56,6 +62,7 @@
<Spanish>Ajuste mayor derecha</Spanish>
<Italian>Regola il tiro a destra</Italian>
<French>Dérive +++</French>
<German>Große Korrektur nach rechts</German>
</Key>
<Key ID="STR_ACE_Scopes_AdjustLeftMajor">
<English>Major adjustment left</English>
@ -64,6 +71,7 @@
<Spanish>Ajuste mayor izquierda</Spanish>
<Italian>Regola il tiro a sinistra</Italian>
<French>Dérive ---</French>
<German>Große Korrektur nach links</German>
</Key>
<Key ID="STR_ACE_Scopes_AdjustZero">
<English>Set zero adjustment</English>
@ -72,6 +80,7 @@
<Spanish>Establecer ajuste a cero</Spanish>
<Italian>Resetta i valori del tiro</Italian>
<French>RAZ corrections</French>
<German>Auf 0 justieren</German>
</Key>
</Package>
</Project>
</Project>

View File

@ -18,3 +18,12 @@ class Extended_Engine_EventHandlers {
};
};
};
class Extended_Init_EventHandlers {
class StaticWeapon {
class ACE_FixMass {
init = QUOTE(if (local (_this select 0)) then {(_this select 0) setMass (getMass (_this select 0) max 250)};);
exclude[] = {"TargetSoldierBase","Static_Designator_01_base_F","Static_Designator_02_base_F","Pod_Heli_Transport_04_base_F"};
};
};
};

View File

@ -41,7 +41,7 @@
<Spanish>Seleccionar fusil</Spanish>
<Polish>Wybierz karabin</Polish>
<Czech>Zvolit hlavní zbraň</Czech>
<Russian>Выбрать автомат</Russian>
<Russian>Выбрать винтовку</Russian>
<French>Sélectionner Fusil</French>
<Hungarian>Puska Kiválasztása</Hungarian>
<Portuguese>Selecionar Rifle</Portuguese>
@ -246,7 +246,7 @@
<Czech>Už nejsou žádné ostatní granáty</Czech>
<Portuguese>Não há outras granadas restantes</Portuguese>
<Italian>Nessun'altra granata rimanente.</Italian>
<Russian>Летальные гранаты закончились</Russian>
<Russian>Нелетальные гранаты закончились</Russian>
</Key>
<Key ID="STR_ACE_WeaponSelect_NoGrenadeSelected">
<English>No grenade selected</English>
@ -268,8 +268,8 @@
<French>Tirer le lance-pots fumigènes</French>
<Polish>Wystrzel granat dymny</Polish>
<Hungarian>Füstvető eltüzelése</Hungarian>
<Russian>Запустить дымовую завесу</Russian>
<Russian>Пустить дымовую завесу</Russian>
<Italian>Lancia fumogeno</Italian>
</Key>
</Package>
</Project>
</Project>

View File

@ -4,10 +4,11 @@
<Key ID="STR_ACE_Weather_WindInfoKey">
<English>Show Wind Info</English>
<Polish>Pokaż inf. o wietrze</Polish>
<Russian>Показать информацию о погоде</Russian>
<Russian>Показать информацию о ветре</Russian>
<French>Afficher information sur le vent</French>
<Spanish>Mostrar información del viento</Spanish>
<Italian>Mostra informazioni sul vento</Italian>
<German>Zeige Windinformationen</German>
</Key>
</Package>
</Project>
</Project>

View File

@ -6,7 +6,7 @@
<English>Wind Information</English>
<Polish>Informacje o wietrze</Polish>
<Spanish>Información del viento</Spanish>
<Russian>Ветер</Russian>
<Russian>Информация о ветре</Russian>
<Czech>Informace o větru</Czech>
<French>Vent</French>
<German>Windinformationen</German>
@ -17,7 +17,7 @@
<English>Direction: %1</English>
<Polish>Kierunek: %1</Polish>
<Spanish>Dirección: %1</Spanish>
<Russian>Направление: %1</Russian>
<Russian>Направление: %1°</Russian>
<Czech>Směr: %1</Czech>
<French>Direction %1</French>
<German>Windrichtung: %1</German>
@ -39,7 +39,7 @@
<English>Weather Information</English>
<Polish>Informacje o pogodzie</Polish>
<Spanish>Información Meteorológica</Spanish>
<Russian>Погода</Russian>
<Russian>Информация о погоде</Russian>
<Czech>Informace o počasí</Czech>
<French>Météo</French>
<German>Wetterinformationen</German>

View File

@ -23,6 +23,11 @@ Events can be removed or cleared with the following commands.
* `[eventName, eventHandlerId] call ace_common_fnc_removeEventHandler` <br/> will remove a specific event handler of the event name, using the ID returned from `ace_common_fnc_addEventHandler`.
* `[eventName] call ace_common_fnc_removeAllEventHandlers` <br/> will remove all event handlers for that type of event.
### Synchronized Events
* `[eventName, eventCodeBlock, ttlNumberOrCodeBlock] call ace_common_fnc_addSyncedEventHandler` <br/> adds a globally synchronized event handler which will expire events after the provided TTL, or the code returns true.
* `[eventName] call ace_common_fnc_removeSyncedEventHandler` <br/> will remove a specific event handler of the event name, using the ID returned from `ace_common_fnc_addSyncedEventHandler`.
* * `[eventName, args, ttlNumberOrCodeBlock] call ace_common_fnc_syncedEvent` <br/> calls a global synchronized event, which will also be run on JIP players unless it has expired; event will expire after the provided TTL, or the code returns true.
### Pattern:
```c++
// tapper machine
@ -52,6 +57,13 @@ PREP(onTapShoulder);
<td>[_newPlayer, _oldPlayer]</td>
<td>local</td>
</tr>
<tr>
<td>"PlayerJIP"</td>
<td>Player was a JIP player, and `player` object is now created.</td>
<td>common</td>
<td>[_player]</td>
<td>local</td>
</tr>
</tr>
<tr>
<td>"playerInventoryChanged"</td>

View File

@ -35,8 +35,8 @@ Tabs can be tricky sometimes, especially when it comes to sharing code with othe
## Braces
- opening bracket on the same line as keyword
- closing bracket in own line, same level of indentation as keyword
- opening brace on the same line as keyword
- closing brace in own line, same level of indentation as keyword
**Yes:**
@ -70,7 +70,7 @@ class Something : Or {
};
```
When using `if`/`else`, it is encouraged to put `else` on the same line as the closing bracket to save space:
When using `if`/`else`, it is encouraged to put `else` on the same line as the closing brace to save space:
```c++
if (alive player) then {
@ -90,7 +90,7 @@ class Three {foo = 3;};
#### Reasoning
Putting the opening bracket in it's own line wastes a lot of space, and keeping the closing bracket on the same level as the keyword makes it easier to recognize what exactly the bracket closes.
Putting the opening brace in it's own line wastes a lot of space, and keeping the closing brace on the same level as the keyword makes it easier to recognize what exactly the brace closes.
## How to create a new module

View File

@ -11,7 +11,7 @@ order: 9
### Requirements
- A compiler (VS/GCC/Clang)
- If starting with visual studio, you need to make sure to use the Visual studio command prompt
- If starting with Visual Studio, you need to make sure to use the Visual studio command prompt
- cmake 3.0 or later in your path
### Cross-Platform Guidelines

View File

@ -10,23 +10,21 @@ order: 4
Main principles:
- As much stuff as possible should be modular
- Strive to make as much stuff as possible run-time toogable. Adding/removing PBOS would still be requiring to toogle any feature relying on config changes.
- Strive to make as much stuff as possible run-time togglable. Adding/removing PBOS would still be requiring to toggle any feature relying on config changes.
### PBO Structure
Main principles:
- Try to keep single module dependencies as much as possible
- InteractionMenu would be the requirement for most modules.
- Anything that is 100% config should require common and not interaction.
- Interaction would be the requirement for most modules.
- Anything that is 100% config should require Common and not Interaction.
```
Main -> Common -> OptionsMenu -> InteractionMenu -> Most things
Main -> Common -> OptionsMenu -> Interaction -> Most things
Main -> Common -> Config things
Main -> Common -> 3D Models |
InteractionMenu | -> Feature
Main -> Common -> 3D Models |
Interaction | -> Feature
```

View File

@ -7,4 +7,15 @@ parent: wiki
---
## 1. Overview
Blah blah blah
Blah blah blah
Steps to lock titan/Javelin:
1. You must be zoomed ALL THE WAY IN
2. You must be in thermal view
3. You must have a missile loaded
4. Hold TAB over a target, it will start beeping and the constraint boxes will appear
5. Once the beeping changes to LOCK tone, and the lock crosshairs appear, click fire without releasing tab
CTRL+TAB is default key to change firemode (configurable as a key)

View File

@ -1,20 +0,0 @@
---
layout: wiki
title: Features Documentation
group: features
order: 0
parent: wiki
---
**This page will get updated soon.**
## Table of Contents
1. [][[Advanced Missile Guidanced Framework|WikiLink]]
2. [yy](#yy)
3. [zz](#zz)
## What ACE3 has to offer

View File

@ -1,10 +0,0 @@
---
layout: wiki
title: ACE Titan and Javelin
group: features
order: 0
parent: wiki
---
**This page will get updated soon.**