Merge branch 'master' of https://github.com/acemod/ACE3 into medical-rewrite
@ -90,6 +90,7 @@ havena <silveredenis@gmail.com>
|
||||
Hawkins
|
||||
Head <brobergsebastian@gmail.com>
|
||||
Hybrid V
|
||||
john681611 <john681611@hotmail.com>
|
||||
Karneck <dschultz26@hotmail.com>
|
||||
Kavinsky <nmunozfernandez@gmail.com>
|
||||
Keithen <Keithen.Neu@gmail.com>
|
||||
|
@ -52,6 +52,6 @@ if (!hasInterface) exitWith {};
|
||||
{false},
|
||||
[DIK_F1, [true, false, false]], true] call CBA_fnc_addKeybind; // Shift + F1
|
||||
|
||||
["isNotEscorting", {!(GETVAR(_this select 0,GVAR(isEscorting),false))}] call EFUNC(common,addCanInteractWithCondition);
|
||||
["isNotHandcuffed", {!(GETVAR(_this select 0,GVAR(isHandcuffed),false))}] call EFUNC(common,addCanInteractWithCondition);
|
||||
["isNotSurrendering", {!(GETVAR(_this select 0,GVAR(isSurrendering),false))}] call EFUNC(common,addCanInteractWithCondition);
|
||||
["isNotEscorting", {!GETVAR(_this select 0,GVAR(isEscorting),false)}] call EFUNC(common,addCanInteractWithCondition);
|
||||
["isNotHandcuffed", {!GETVAR(_this select 0,GVAR(isHandcuffed),false)}] call EFUNC(common,addCanInteractWithCondition);
|
||||
["isNotSurrendering", {!GETVAR(_this select 0,GVAR(isSurrendering),false)}] call EFUNC(common,addCanInteractWithCondition);
|
||||
|
@ -32,7 +32,7 @@ if (_state) then {
|
||||
//Add Actionmenu to release captive
|
||||
private _actionID = _unit addAction [format ["<t color='#FF0000'>%1</t>", localize LSTRING(StopEscorting)],
|
||||
{[(_this select 0), ((_this select 0) getVariable [QGVAR(escortedUnit), objNull]), false] call FUNC(doEscortCaptive);},
|
||||
nil, 20, false, true, "", QUOTE(!isNull (GETVAR(_target,QGVAR(escortedUnit),objNull)))];
|
||||
nil, 20, false, true, "", QUOTE(!isNull GETVAR(_target,QGVAR(escortedUnit),objNull))];
|
||||
|
||||
[{
|
||||
params ["_args", "_pfID"];
|
||||
|
@ -38,7 +38,7 @@ if (_textMessage isEqualType "") then {
|
||||
_textMessage = parseText _textMessage;
|
||||
};
|
||||
|
||||
(ARR_SELECT(_this,4,call BIS_fnc_displayMission)) createDisplay "RscDisplayCommonMessagePause";
|
||||
ARR_SELECT(_this,4,call BIS_fnc_displayMission) createDisplay "RscDisplayCommonMessagePause";
|
||||
|
||||
private _display = uiNamespace getVariable "RscDisplayCommonMessage_display";
|
||||
private _ctrlRscMessageBox = _display displayCtrl 2351;
|
||||
|
@ -26,11 +26,11 @@
|
||||
|
||||
!(
|
||||
isNull curatorCamera && // Curator
|
||||
{!(GETMVAR(EGVAR(spectator,isSet),false))} && // ACE Spectator
|
||||
{isNull (GETMVAR(BIS_EGSpectatorCamera_camera, objNull))} && // BIS Nexus Spectator
|
||||
{isNull (GETUVAR(BIS_fnc_arsenal_cam, objNull))} && // Arsenal camera
|
||||
{isNull (GETMVAR(BIS_fnc_establishingShot_fakeUAV, objNull))} && // Establishing shot camera
|
||||
{isNull (GETMVAR(BIS_fnc_camera_cam, objNull))} && // Splendid camera
|
||||
{isNull (GETUVAR(BIS_fnc_animViewer_cam, objNull))} && // Animation viewer camera
|
||||
{isNull (GETMVAR(BIS_DEBUG_CAM, objNull))} // Classic camera
|
||||
{!GETMVAR(EGVAR(spectator,isSet),false)} && // ACE Spectator
|
||||
{isNull GETMVAR(BIS_EGSpectatorCamera_camera, objNull)} && // BIS Nexus Spectator
|
||||
{isNull GETUVAR(BIS_fnc_arsenal_cam, objNull)} && // Arsenal camera
|
||||
{isNull GETMVAR(BIS_fnc_establishingShot_fakeUAV, objNull)} && // Establishing shot camera
|
||||
{isNull GETMVAR(BIS_fnc_camera_cam, objNull)} && // Splendid camera
|
||||
{isNull GETUVAR(BIS_fnc_animViewer_cam, objNull)} && // Animation viewer camera
|
||||
{isNull GETMVAR(BIS_DEBUG_CAM, objNull)} // Classic camera
|
||||
) // return
|
||||
|
@ -4,7 +4,7 @@ if (!hasInterface) exitWith {};
|
||||
|
||||
["ACE3 Common", QGVAR(wipeGlasses), localize LSTRING(WipeGlasses), {
|
||||
if (GVAR(effects) != 2) exitWith {false}; //Can only wipe if full effects setting is set
|
||||
if (!(GETVAR(ace_player,ACE_isUnconscious,false))) exitWith {
|
||||
if (!GETVAR(ace_player,ACE_isUnconscious,false)) exitWith {
|
||||
call FUNC(clearGlasses);
|
||||
true
|
||||
};
|
||||
|
@ -37,6 +37,6 @@
|
||||
#define DBULLETS 2
|
||||
#define DAMOUNT 3
|
||||
|
||||
#define GLASSDISPLAY (GETUVAR(GVAR(Display),displayNull))
|
||||
#define GLASSDISPLAY GETUVAR(GVAR(Display),displayNull)
|
||||
|
||||
#define CLAMP(x,low,high) (if(x > high)then{high}else{if(x < low)then{low}else{x}})
|
||||
|
@ -34,6 +34,8 @@
|
||||
#define ORIENTATION 5.4
|
||||
#define EXPANSION 1
|
||||
|
||||
#define DESTRUCTION_RADIUS 1.8
|
||||
|
||||
params ["_projectile", "_timeToLive", "_center"];
|
||||
|
||||
if (isNull _projectile) exitWith {TRACE_1("null",_projectile);};
|
||||
@ -187,7 +189,7 @@ if (isServer) then {
|
||||
// --- inflame fireplace, barrels etc.
|
||||
_x inflame true;
|
||||
};
|
||||
} forEach (_position nearObjects EFFECT_SIZE);
|
||||
} forEach (_position nearObjects DESTRUCTION_RADIUS);
|
||||
|
||||
// --- damage local vehicle
|
||||
private _vehicle = _position nearestObject "Car";
|
||||
|
@ -20,11 +20,11 @@
|
||||
#define SETPVAR_SYS(var1,var2) setVariable [ARR_3(QUOTE(var1),var2,true)]
|
||||
|
||||
#undef GETVAR
|
||||
#define GETVAR(var1,var2,var3) var1 GETVAR_SYS(var2,var3)
|
||||
#define GETMVAR(var1,var2) missionNamespace GETVAR_SYS(var1,var2)
|
||||
#define GETUVAR(var1,var2) uiNamespace GETVAR_SYS(var1,var2)
|
||||
#define GETPRVAR(var1,var2) profileNamespace GETVAR_SYS(var1,var2)
|
||||
#define GETPAVAR(var1,var2) parsingNamespace GETVAR_SYS(var1,var2)
|
||||
#define GETVAR(var1,var2,var3) (var1 GETVAR_SYS(var2,var3))
|
||||
#define GETMVAR(var1,var2) (missionNamespace GETVAR_SYS(var1,var2))
|
||||
#define GETUVAR(var1,var2) (uiNamespace GETVAR_SYS(var1,var2))
|
||||
#define GETPRVAR(var1,var2) (profileNamespace GETVAR_SYS(var1,var2))
|
||||
#define GETPAVAR(var1,var2) (parsingNamespace GETVAR_SYS(var1,var2))
|
||||
|
||||
#undef SETVAR
|
||||
#define SETVAR(var1,var2,var3) var1 SETVAR_SYS(var2,var3)
|
||||
@ -37,7 +37,7 @@
|
||||
#define GETGVAR(var1,var2) GETMVAR(GVAR(var1),var2)
|
||||
#define GETEGVAR(var1,var2,var3) GETMVAR(EGVAR(var1,var2),var3)
|
||||
|
||||
#define ARR_SELECT(ARRAY,INDEX,DEFAULT) if (count ARRAY > INDEX) then {ARRAY select INDEX} else {DEFAULT}
|
||||
#define ARR_SELECT(ARRAY,INDEX,DEFAULT) (if (count ARRAY > INDEX) then {ARRAY select INDEX} else {DEFAULT})
|
||||
|
||||
|
||||
#define MACRO_ADDWEAPON(WEAPON,COUNT) class _xx_##WEAPON { \
|
||||
|
@ -6,7 +6,7 @@ class CfgAmmo {
|
||||
class Missile_AGM_02_F : MissileBase {};
|
||||
|
||||
class GVAR(L) : Missile_AGM_02_F {
|
||||
author = "rufix";
|
||||
author = "xrufix";
|
||||
autoSeekTarget = 0;
|
||||
irLock = 0;
|
||||
laserLock = 0;
|
||||
@ -39,4 +39,37 @@ class CfgAmmo {
|
||||
attackProfiles[] = {"maverick"};
|
||||
};
|
||||
};
|
||||
|
||||
class Missile_AGM_01_F : MissileBase {};
|
||||
class ace_kh25ml : Missile_AGM_01_F {
|
||||
author = "xrufix";
|
||||
irLock = 0
|
||||
missileLockMaxDistance = 10000;
|
||||
weaponLockSystem = 4;
|
||||
class ace_missileguidance {
|
||||
enabled = 1;
|
||||
|
||||
minDeflection = 0.0005;
|
||||
maxDeflection = 0.01;
|
||||
incDeflection = 0.005;
|
||||
|
||||
canVanillaLock = 0;
|
||||
|
||||
defaultSeekerType = "SALH";
|
||||
seekerTypes[] = {"SALH"};
|
||||
|
||||
defaultSeekerLockMode = "LOAL";
|
||||
seekerLockModes[] = {"LOAL"};
|
||||
|
||||
seekLastTargetPos = 1;
|
||||
seekerAngle = 40;
|
||||
seekerAccuracy = 1;
|
||||
|
||||
seekerMinRange = 1;
|
||||
seekerMaxRange = 10000;
|
||||
|
||||
defaultAttackProfile = "maverick";
|
||||
attackProfiles[] = {"maverick"};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -71,4 +71,43 @@ class CfgMagazines {
|
||||
displayNameShort = CSTRING(L_MAG_short);
|
||||
pylonWeapon = QGVAR(L_Launcher);
|
||||
};
|
||||
|
||||
// KH-25
|
||||
class 4Rnd_Missile_AGM_01_F;
|
||||
class PylonRack_1Rnd_Missile_AGM_01_F : 4Rnd_Missile_AGM_01_F {};
|
||||
class magazine_Missile_AGM_KH25_x1 : VehicleMagazine {};
|
||||
class PylonMissile_Missile_AGM_KH25_x1 : magazine_Missile_AGM_KH25_x1 {};
|
||||
class PylonMissile_Missile_AGM_KH25_INT_x1 : PylonMissile_Missile_AGM_KH25_x1 {};
|
||||
|
||||
class ace_kh25ml_pylonrack_x1 : PylonRack_1Rnd_Missile_AGM_01_F {
|
||||
ammo = "ace_kh25ml";
|
||||
author = "xrufix";
|
||||
descriptionShort = CSTRING(KH25ML_MAG_DESCR);
|
||||
displayName = CSTRING(KH25ML_MAG_x1);
|
||||
displayNameShort = CSTRING(L_MAG_short);
|
||||
pylonWeapon = "ace_kh25ml_launcher";
|
||||
};
|
||||
class ace_kh25ml_magazine_x1 : magazine_Missile_AGM_KH25_x1 {
|
||||
ammo = "ace_kh25ml";
|
||||
author = "xrufix";
|
||||
descriptionShort = CSTRING(KH25ML_MAG_DESCR);
|
||||
displayName = CSTRING(KH25ML_MAG_x1);
|
||||
displayNameShort = CSTRING(L_MAG_short);
|
||||
};
|
||||
class ace_kh25ml_pylonmissile_x1 : PylonMissile_Missile_AGM_KH25_x1 {
|
||||
ammo = "ace_kh25ml";
|
||||
author = "xrufix";
|
||||
descriptionShort = CSTRING(KH25ML_MAG_DESCR);
|
||||
displayName = CSTRING(KH25ML_MAG_x1);
|
||||
displayNameShort = CSTRING(L_MAG_short);
|
||||
pylonWeapon = "ace_kh25ml_launcher";
|
||||
};
|
||||
class ace_kh25ml_pylonmissile_int_x1 : PylonMissile_Missile_AGM_KH25_INT_x1 {
|
||||
ammo = "ace_kh25ml";
|
||||
author = "xrufix";
|
||||
descriptionShort = CSTRING(KH25ML_MAG_DESCR);
|
||||
displayName = CSTRING(KH25ML_MAG_x1);
|
||||
displayNameShort = CSTRING(L_MAG_short);
|
||||
pylonWeapon = "ace_kh25ml_launcher";
|
||||
};
|
||||
};
|
||||
|
@ -45,4 +45,22 @@ class CfgWeapons {
|
||||
EGVAR(laser,showHud) = 1; // show attack profile / lock on hud
|
||||
GVAR(enabled) = 1;
|
||||
};
|
||||
|
||||
class weapon_AGM_KH25Launcher : MissileLauncher {};
|
||||
class ace_kh25ml_launcher : weapon_AGM_KH25Launcher {
|
||||
author = "xrufix";
|
||||
displayName = CSTRING(KH25ML);
|
||||
magazines[] = {
|
||||
"ace_kh25ml_pylonrack_x1",
|
||||
"ace_kh25ml_magazine_x1",
|
||||
"ace_kh25ml_pylonmissile_x1",
|
||||
"ace_kh25ml_pylonmissile_int_x1"
|
||||
};
|
||||
weaponLockDelay = 0.1;
|
||||
weaponLockSystem = 0;
|
||||
|
||||
EGVAR(laser,canSelect) = 1; // can ace_laser lock (allows switching laser code)
|
||||
EGVAR(laser,showHud) = 1; // show attack profile / lock on hud
|
||||
GVAR(enabled) = 1;
|
||||
};
|
||||
};
|
||||
|
@ -1,11 +1,12 @@
|
||||
ace_maverick
|
||||
==========
|
||||
|
||||
Adds pylon magazines with laser guided AGM-65 Maverick L.
|
||||
Adds pylon magazines with laser guided AGM-65 Maverick L and KH25ML.
|
||||
|
||||
* The magazines can be added to every plane the vanilla Macer II can be added to.
|
||||
* The Mavericks can be added to every plane the vanilla Macer II can be added to.
|
||||
* The KH25ML can be added to every plane the vanilla KH25 and Sharur missiles can be added to.
|
||||
* The missile uses laser guidance based on ACE's Advanced Missile Guidance framework.
|
||||
* The PylonWeapon from CfgWeapons is added to planes with pylons automatically.
|
||||
* The PylonWeapon is added to planes with pylons automatically.
|
||||
|
||||
![Laser guided Maverick](https://upload.wikimedia.org/wikipedia/commons/thumb/c/c3/US_Navy_041128-N-5345W-016_Aviation_Ordnanceman_3rd_Class_William_Miller_arms_a_AGM-65_Maverick_laser-guided_missile.jpg/1280px-US_Navy_041128-N-5345W-016_Aviation_Ordnanceman_3rd_Class_William_Miller_arms_a_AGM-65_Maverick_laser-guided_missile.jpg)
|
||||
|
||||
|
@ -4,13 +4,14 @@ class CfgPatches {
|
||||
class ADDON {
|
||||
name = COMPONENT_NAME;
|
||||
requiredVersion = REQUIRED_VERSION;
|
||||
requiredAddons[] = {"ace_hellfire"};
|
||||
requiredAddons[] = {"ace_missileguidance"};
|
||||
author = ECSTRING(common,ACETeam);
|
||||
authors[] = {"xrufix"};
|
||||
url = ECSTRING(main,URL);
|
||||
VERSION_CONFIG;
|
||||
ammo[] = {
|
||||
GVAR(L)
|
||||
GVAR(L),
|
||||
"ace_kh25ml"
|
||||
};
|
||||
magazines[] = {
|
||||
QGVAR(L_magazine_x1),
|
||||
@ -19,11 +20,15 @@ class CfgPatches {
|
||||
QGVAR(L_pylonRack_1Rnd),
|
||||
QGVAR(L_PylonRack_3Rnd),
|
||||
QGVAR(L_PylonRack_x1),
|
||||
QGVAR(L_PylonRack_x2)
|
||||
QGVAR(L_PylonRack_x2),
|
||||
"ace_kh25ml_magazine_x1",
|
||||
"ace_kh25ml_pylonmissile_x1",
|
||||
"ace_kh25ml_pylonmissile_int_x1"
|
||||
};
|
||||
weapons[] = {
|
||||
GVAR(L_Launcher_Plane),
|
||||
GVAR(L_Launcher)
|
||||
GVAR(L_Launcher),
|
||||
"ace_kh25ml_launcher"
|
||||
};
|
||||
units[] = {};
|
||||
};
|
||||
|
@ -12,31 +12,31 @@
|
||||
<Korean>AGM-65 Maverick L, 레이저 유도 대지 미사일</Korean>
|
||||
</Key>
|
||||
<Key ID="str_ace_maverick_l_mag_x1">
|
||||
<English>AGM-65 Maverick L x1</English>
|
||||
<German>AGM-65 Maverick L x1</German>
|
||||
<Italian>AGM-65 Maverick L x1</Italian>
|
||||
<Japanese>AGM-65 マーベリック L x1</Japanese>
|
||||
<Chinese>AGM-65"小牛"飛彈L型 x1</Chinese>
|
||||
<Chinesesimp>AGM-65"小牛"飞弹L型 x1</Chinesesimp>
|
||||
<Korean>AGM-65 Maverick L x1</Korean>
|
||||
<English>AGM-65 Maverick L [ACE]</English>
|
||||
<German>AGM-65 Maverick L [ACE]</German>
|
||||
<Italian>AGM-65 Maverick L [ACE]</Italian>
|
||||
<Japanese>AGM-65 マーベリック L [ACE]</Japanese>
|
||||
<Chinese>AGM-65"小牛"飛彈L型 [ACE]</Chinese>
|
||||
<Chinesesimp>AGM-65"小牛"飞弹L型 [ACE]</Chinesesimp>
|
||||
<Korean>AGM-65 Maverick L [ACE]</Korean>
|
||||
</Key>
|
||||
<Key ID="str_ace_maverick_l_mag_x2">
|
||||
<English>AGM-65 Maverick L x2</English>
|
||||
<German>AGM-65 Maverick L x2</German>
|
||||
<Italian>AGM-65 Maverick L x2</Italian>
|
||||
<Japanese>AGM-65 マーベリック L x2</Japanese>
|
||||
<Chinese>AGM-65"小牛"飛彈L型 x2</Chinese>
|
||||
<Chinesesimp>AGM-65"小牛"飞弹L型 x2</Chinesesimp>
|
||||
<Korean>AGM-65 Maverick L x2</Korean>
|
||||
<English>2x AGM-65 Maverick L [ACE]</English>
|
||||
<German>2x AGM-65 Maverick L [ACE]</German>
|
||||
<Italian>2x AGM-65 Maverick L [ACE]</Italian>
|
||||
<Japanese>2x AGM-65 マーベリック L [ACE]</Japanese>
|
||||
<Chinese>2x AGM-65"小牛"飛彈L型 [ACE]</Chinese>
|
||||
<Chinesesimp>2x AGM-65"小牛"飞弹L型 [ACE]</Chinesesimp>
|
||||
<Korean>2x AGM-65 Maverick L [ACE]</Korean>
|
||||
</Key>
|
||||
<Key ID="str_ace_maverick_l_mag_x3">
|
||||
<English>AGM-65 Maverick L x3</English>
|
||||
<German>AGM-65 Maverick L x3</German>
|
||||
<Italian>AGM-65 Maverick L x3</Italian>
|
||||
<Japanese>AGM-65 マーベリック L x3</Japanese>
|
||||
<Chinese>AGM-65"小牛"飛彈L型 x3</Chinese>
|
||||
<Chinesesimp>AGM-65"小牛"飞弹L型 x3</Chinesesimp>
|
||||
<Korean>AGM-65 Maverick L x3</Korean>
|
||||
<English>3x AGM-65 Maverick L [ACE]</English>
|
||||
<German>3x AGM-65 Maverick L [ACE]</German>
|
||||
<Italian>3x AGM-65 Maverick L [ACE]</Italian>
|
||||
<Japanese>3x AGM-65 マーベリック L [ACE]</Japanese>
|
||||
<Chinese>3x AGM-65"小牛"飛彈L型 [ACE]</Chinese>
|
||||
<Chinesesimp>3x AGM-65"小牛"飞弹L型 [ACE]</Chinesesimp>
|
||||
<Korean>3x AGM-65 Maverick L [ACE]</Korean>
|
||||
</Key>
|
||||
<Key ID="str_ace_maverick_l_mag_short">
|
||||
<English>Laser Guided</English>
|
||||
@ -47,6 +47,15 @@
|
||||
<Chinesesimp>雷射导引</Chinesesimp>
|
||||
<Korean>레이저 유도</Korean>
|
||||
</Key>
|
||||
<Key ID="str_ace_maverick_kh25ml_mag_descr">
|
||||
<English>Kh-25ML, Laser Guided Air-to-Ground-Missile</English>
|
||||
<German>Ch-25ML, Lasergelenkte Luft-Boden-Rakete</German>
|
||||
</Key>
|
||||
<Key ID="str_ace_maverick_kh25ml_mag_x1">
|
||||
<English>1x Kh-25ML [ACE]</English>
|
||||
<German>1x Ch-25ML [ACE]</German>
|
||||
<Russian>1x Х-25МЛ [ACE]</Russian>
|
||||
</Key>
|
||||
</Container>
|
||||
<Container name="weapons">
|
||||
<Key ID="str_ace_maverick_l">
|
||||
@ -58,6 +67,11 @@
|
||||
<Chinesesimp>AGM-65"小牛"飞弹L型</Chinesesimp>
|
||||
<Korean>AGM-65 Maverick L</Korean>
|
||||
</Key>
|
||||
<Key ID="str_ace_maverick_kh25ml">
|
||||
<English>Kh-25ML</English>
|
||||
<German>Ch-25ML</English>
|
||||
<Russian>Х-25МЛ</English>
|
||||
</Key>
|
||||
</Container>
|
||||
</Package>
|
||||
</Project>
|
||||
|
@ -25,7 +25,7 @@ if (
|
||||
{GETVAR(_unit,GVAR(hasReserve),false)}
|
||||
) then {
|
||||
// Case where unit has just opened parachute and reserve should be added
|
||||
_unit addBackpackGlobal (GETVAR(_unit,GVAR(backpackClass),"ACE_NonSteerableReserveParachute"));
|
||||
_unit addBackpackGlobal GETVAR(_unit,GVAR(backpackClass),"ACE_NonSteerableReserveParachute");
|
||||
SETVAR(vehicle _unit,GVAR(canCut),true); // Mark the parachute cuttable since reserve is present
|
||||
} else {
|
||||
// Case where inventory has changed otherwise (including when reserve is added)
|
||||
|
@ -472,7 +472,7 @@ class CfgMagazines {
|
||||
};
|
||||
class 12Rnd_missiles;
|
||||
class PylonRack_12Rnd_missiles: 12Rnd_missiles {
|
||||
displayName = "Hydra 70"; // [vanilla: DAR - missiles_DAR]
|
||||
displayName = "Hydra 70 12x HE"; // [vanilla: DAR - missiles_DAR]
|
||||
};
|
||||
class PylonRack_20Rnd_Rocket_03_HE_F: 20Rnd_Rocket_03_HE_F {
|
||||
displayName = "S-8 20x HE"; // [vanilla: Tratnyr 20x HE - Rocket_03_HE_Plane_CAS_02_F]
|
||||
|
@ -66,16 +66,25 @@ class CfgVehicles {
|
||||
class O_MRAP_02_F: MRAP_02_base_F {
|
||||
displayName = CSTRING(MRAP_02_Name);
|
||||
};
|
||||
class O_T_MRAP_02_ghex_F: MRAP_02_base_F {
|
||||
displayName = CSTRING(MRAP_02_Name);
|
||||
};
|
||||
|
||||
class MRAP_02_hmg_base_F: MRAP_02_base_F {};
|
||||
class O_MRAP_02_hmg_F: MRAP_02_hmg_base_F {
|
||||
displayName = CSTRING(MRAP_02_hmg_Name);
|
||||
};
|
||||
class O_T_MRAP_02_hmg_ghex_F: MRAP_02_hmg_base_F {
|
||||
displayName = CSTRING(MRAP_02_hmg_Name);
|
||||
};
|
||||
|
||||
class MRAP_02_gmg_base_F: MRAP_02_hmg_base_F {};
|
||||
class O_MRAP_02_gmg_F: MRAP_02_gmg_base_F {
|
||||
displayName = CSTRING(MRAP_02_gmg_Name);
|
||||
};
|
||||
class O_T_MRAP_02_gmg_ghex_F: MRAP_02_gmg_base_F {
|
||||
displayName = CSTRING(MRAP_02_gmg_Name);
|
||||
};
|
||||
|
||||
// strider
|
||||
class MRAP_03_base_F;
|
||||
@ -173,8 +182,8 @@ class CfgVehicles {
|
||||
displayName = CSTRING(APC_Wheeled_01_cannon_Name);
|
||||
};
|
||||
|
||||
class O_APC_Wheeled_02_base_F;
|
||||
class O_APC_Wheeled_02_rcws_F: O_APC_Wheeled_02_base_F {
|
||||
class APC_Wheeled_02_base_F;
|
||||
class O_APC_Wheeled_02_base_F : APC_Wheeled_02_base_F {
|
||||
displayName = CSTRING(APC_Wheeled_02_rcws_Name);
|
||||
};
|
||||
|
||||
@ -305,6 +314,9 @@ class CfgVehicles {
|
||||
class Heli_Light_01_civil_base_F: Heli_Light_01_unarmed_base_F {
|
||||
displayName = CSTRING(Heli_Light_01_civil_Name);
|
||||
};
|
||||
class I_C_Heli_Light_01_civil_F: Heli_Light_01_civil_base_F {
|
||||
displayName = CSTRING(Heli_Light_01_civil_Name);
|
||||
};
|
||||
|
||||
class Heli_Light_01_armed_base_F;
|
||||
class B_Heli_Light_01_armed_F: Heli_Light_01_armed_base_F {
|
||||
@ -397,6 +409,11 @@ class CfgVehicles {
|
||||
displayName = CSTRING(Plane_Fighter_03_Name);
|
||||
};
|
||||
|
||||
class Plane_Fighter_04_Base_F;
|
||||
class I_Plane_Fighter_04_F : Plane_Fighter_04_Base_F {
|
||||
displayName = CSTRING(Plane_Fighter_04_Name);
|
||||
};
|
||||
|
||||
// uavs
|
||||
class UAV_02_base_F;
|
||||
class B_UAV_02_F: UAV_02_base_F {
|
||||
@ -713,6 +730,9 @@ class CfgVehicles {
|
||||
class C_Offroad_02_unarmed_F: Offroad_02_unarmed_base_F {
|
||||
displayName = CSTRING(C_Offroad_02_unarmed);
|
||||
};
|
||||
class I_C_Offroad_02_unarmed_F: Offroad_02_unarmed_base_F {
|
||||
displayName = CSTRING(C_Offroad_02_unarmed);
|
||||
};
|
||||
class C_Offroad_02_unarmed_F_black: C_Offroad_02_unarmed_F {
|
||||
displayName = CSTRING(C_Offroad_02_unarmed_black);
|
||||
};
|
||||
@ -734,10 +754,35 @@ class CfgVehicles {
|
||||
class C_Plane_Civil_01_racing_F: Plane_Civil_01_base_F {
|
||||
displayName = CSTRING(C_Plane_Civil_01_racing);
|
||||
};
|
||||
class I_C_Plane_Civil_01_F: Plane_Civil_01_base_F {
|
||||
displayName = CSTRING(C_Plane_Civil_01);
|
||||
};
|
||||
|
||||
// Burraq
|
||||
class UAV_04_base_F;
|
||||
class O_T_UAV_04_CAS_F: UAV_04_base_F {
|
||||
displayName = CSTRING(O_T_UAV_04_CAS);
|
||||
};
|
||||
|
||||
// Polaris DAGOR (Prowler)
|
||||
class LSV_01_base_F;
|
||||
class LSV_01_armed_base_F : LSV_01_base_F {
|
||||
displayName = CSTRING(lsv_01_armed);
|
||||
};
|
||||
class LSV_01_unarmed_base_F : LSV_01_base_F {
|
||||
displayName = CSTRING(lsv_01_unarmed);
|
||||
};
|
||||
class LSV_01_light_base_F : LSV_01_base_F {
|
||||
displayName = CSTRING(lsv_01_light);
|
||||
};
|
||||
|
||||
// Light Strike Vehicle Mk. II (Qilin)
|
||||
class LSV_02_base_F;
|
||||
class LSV_02_armed_base_F : LSV_02_base_F {
|
||||
displayName = CSTRING(lsv_02_armed);
|
||||
};
|
||||
class LSV_02_unarmed_base_F : LSV_02_base_F {
|
||||
displayName = CSTRING(lsv_02_unarmed);
|
||||
};
|
||||
|
||||
};
|
||||
|
@ -179,7 +179,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_MRAP_01_hmg_Name">
|
||||
<English>M-ATV (HMG)</English>
|
||||
<German>M-ATV (SMG)</German>
|
||||
<German>M-ATV (sMG)</German>
|
||||
<Spanish>M-ATV (HMG)</Spanish>
|
||||
<Polish>M-ATV (CKM)</Polish>
|
||||
<Czech>M-ATV (HMG)</Czech>
|
||||
@ -483,7 +483,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_MRAP_03_hmg_Name">
|
||||
<English>Fennek (HMG)</English>
|
||||
<German>Fennek (SMG)</German>
|
||||
<German>Fennek (sMG)</German>
|
||||
<Spanish>Fennek (HMG)</Spanish>
|
||||
<Polish>Fennek (CKM)</Polish>
|
||||
<Czech>Fennek (HMG)</Czech>
|
||||
@ -563,7 +563,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_Truck_02_transport_Name">
|
||||
<English>KamAZ Transport</English>
|
||||
<German>KamAZ Transport</German>
|
||||
<German>KamAS Transport</German>
|
||||
<Spanish>KamAZ de transporte</Spanish>
|
||||
<Polish>KamAZ transportowy</Polish>
|
||||
<Czech>KamAZ (valník)</Czech>
|
||||
@ -579,7 +579,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_Truck_02_covered_Name">
|
||||
<English>KamAZ Transport (covered)</English>
|
||||
<German>KamAZ Transport (bedeckt)</German>
|
||||
<German>KamAS Transport (bedeckt)</German>
|
||||
<Spanish>KamAZ de transporte (cubierto)</Spanish>
|
||||
<Polish>KamAZ Transportowy (zakryty)</Polish>
|
||||
<Czech>KamAZ (valník-krytý)</Czech>
|
||||
@ -595,7 +595,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_Truck_02_ammo_Name">
|
||||
<English>KamAZ Ammo</English>
|
||||
<German>KamAZ Munition</German>
|
||||
<German>KamAS Munition</German>
|
||||
<Spanish>KamAZ de munición</Spanish>
|
||||
<Polish>KamAZ Amunicyjny</Polish>
|
||||
<Czech>KamAZ (muniční)</Czech>
|
||||
@ -611,7 +611,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_Truck_02_fuel_Name">
|
||||
<English>KamAZ Fuel</English>
|
||||
<German>KamAZ Treibstoff</German>
|
||||
<German>KamAS Treibstoff</German>
|
||||
<Spanish>KamAZ de combustible</Spanish>
|
||||
<Polish>KamAZ cysterna</Polish>
|
||||
<Czech>KamAZ (cisterna)</Czech>
|
||||
@ -627,7 +627,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_Truck_02_box_Name">
|
||||
<English>KamAZ Repair</English>
|
||||
<German>KamAZ Instandsetzung</German>
|
||||
<German>KamAS Instandsetzung</German>
|
||||
<Spanish>KamAZ de reparación</Spanish>
|
||||
<Polish>KamAZ Naprawczy</Polish>
|
||||
<Czech>KamAZ (opravárenský)</Czech>
|
||||
@ -643,7 +643,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_Truck_02_medical_Name">
|
||||
<English>KamAZ Medical</English>
|
||||
<German>KamAZ Sanitäter</German>
|
||||
<German>KamAS Sanitäter</German>
|
||||
<Spanish>KamAZ médico</Spanish>
|
||||
<Polish>KamAZ Medyczny</Polish>
|
||||
<Czech>KamAZ (zdravotnický)</Czech>
|
||||
@ -658,50 +658,50 @@
|
||||
<Chinesesimp>"卡玛斯"卡车 (医疗)</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_MRAP_02_Name">
|
||||
<English>Punisher</English>
|
||||
<German>Punisher</German>
|
||||
<Spanish>Punisher</Spanish>
|
||||
<Polish>Punisher</Polish>
|
||||
<Czech>Punisher</Czech>
|
||||
<French>Punisher</French>
|
||||
<English>Karatel</English>
|
||||
<German>Karatel</German>
|
||||
<Spanish>Karatel</Spanish>
|
||||
<Polish>Karatel</Polish>
|
||||
<Czech>Karatel</Czech>
|
||||
<French>Karatel</French>
|
||||
<Russian>Kаратель</Russian>
|
||||
<Portuguese>Punisher</Portuguese>
|
||||
<Hungarian>Punisher</Hungarian>
|
||||
<Italian>Punisher</Italian>
|
||||
<Portuguese>Karatel</Portuguese>
|
||||
<Hungarian>Karatel</Hungarian>
|
||||
<Italian>Karatel</Italian>
|
||||
<Japanese>パニッシャー</Japanese>
|
||||
<Korean>Punisher</Korean>
|
||||
<Korean>Karatel</Korean>
|
||||
<Chinese>"懲罰者"防地雷反伏擊車</Chinese>
|
||||
<Chinesesimp>"惩罚者"防地雷反伏击车</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_MRAP_02_hmg_Name">
|
||||
<English>Punisher (HMG)</English>
|
||||
<German>Punisher (SMG)</German>
|
||||
<Spanish>Punisher (HMG)</Spanish>
|
||||
<Polish>Punisher (CKM)</Polish>
|
||||
<Czech>Punisher (HMG)</Czech>
|
||||
<French>Punisher (HMG)</French>
|
||||
<English>Karatel (HMG)</English>
|
||||
<German>Karatel (sMG)</German>
|
||||
<Spanish>Karatel (HMG)</Spanish>
|
||||
<Polish>Karatel (CKM)</Polish>
|
||||
<Czech>Karatel (HMG)</Czech>
|
||||
<French>Karatel (HMG)</French>
|
||||
<Russian>Kаратель (Пулемёт)</Russian>
|
||||
<Portuguese>Punisher (HMG)</Portuguese>
|
||||
<Hungarian>Punisher (nehézgéppuska)</Hungarian>
|
||||
<Italian>Punisher (HMG)</Italian>
|
||||
<Portuguese>Karatel (HMG)</Portuguese>
|
||||
<Hungarian>Karatel (nehézgéppuska)</Hungarian>
|
||||
<Italian>Karatel (HMG)</Italian>
|
||||
<Japanese>パニッシャー (HMG)</Japanese>
|
||||
<Korean>Punisher (HMG)</Korean>
|
||||
<Korean>Karatel (HMG)</Korean>
|
||||
<Chinese>"懲罰者"防地雷反伏擊車 (重機槍)</Chinese>
|
||||
<Chinesesimp>"惩罚者"防地雷反伏击车 (重机枪)</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_MRAP_02_gmg_Name">
|
||||
<English>Punisher (GMG)</English>
|
||||
<German>Punisher (GMW)</German>
|
||||
<Spanish>Punisher (GMG)</Spanish>
|
||||
<Polish>Punisher (GMG)</Polish>
|
||||
<Czech>Punisher (GMG)</Czech>
|
||||
<French>Punisher (GMG)</French>
|
||||
<English>Karatel (GMG)</English>
|
||||
<German>Karatel (GMW)</German>
|
||||
<Spanish>Karatel (GMG)</Spanish>
|
||||
<Polish>Karatel (GMG)</Polish>
|
||||
<Czech>Karatel (GMG)</Czech>
|
||||
<French>Karatel (GMG)</French>
|
||||
<Russian>Kаратель (Гранатомёт)</Russian>
|
||||
<Portuguese>Punisher (GMG)</Portuguese>
|
||||
<Hungarian>Punisher (gránátgéppuska)</Hungarian>
|
||||
<Italian>Punisher (GMG)</Italian>
|
||||
<Portuguese>Karatel (GMG)</Portuguese>
|
||||
<Hungarian>Karatel (gránátgéppuska)</Hungarian>
|
||||
<Italian>Karatel (GMG)</Italian>
|
||||
<Japanese>パニッシャー (GMG)</Japanese>
|
||||
<Korean>Punisher (GMG)</Korean>
|
||||
<Korean>Karatel (GMG)</Korean>
|
||||
<Chinese>"懲罰者"防地雷反伏擊車 (榴彈機槍)</Chinese>
|
||||
<Chinesesimp>"惩罚者"防地雷反伏击车 (榴弹机枪)</Chinesesimp>
|
||||
</Key>
|
||||
@ -1089,6 +1089,20 @@
|
||||
<Chinese>L-159先進輕型戰鬥機 (空對空)</Chinese>
|
||||
<Chinesesimp>L-159先进轻型战斗机 (空对空)</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_Plane_Fighter_04_Name">
|
||||
<English>JAS 39 Gripen</English>
|
||||
<German>JAS 39 Gripen</German>
|
||||
<Spanish>JAS 39 Gripen</Spanish>
|
||||
<Polish>JAS 39 Gripen</Polish>
|
||||
<Czech>JAS 39 Gripen</Czech>
|
||||
<French>JAS 39 Gripen</French>
|
||||
<Russian>JAS 39 Грипен</Russian>
|
||||
<Portuguese>JAS 39 Gripen</Portuguese>
|
||||
<Italian>JAS 39 Gripen</Italian>
|
||||
<Japanese>サーブ 39 グリペン</Japanese>
|
||||
<Korean>JAS 39 그리펜</Korean>
|
||||
<Chinese>JAS 39 獅鷲戰鬥機</Chinese>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_Heli_Light_02_Name">
|
||||
<English>Ka-60 Kasatka</English>
|
||||
<German>Ka-60 Kasatka</German>
|
||||
@ -1250,7 +1264,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_SmokeShell_Name">
|
||||
<English>M83 Smoke Grenade (White)</English>
|
||||
<German>M83 Rauchgranate (Weiss)</German>
|
||||
<German>M83 Rauchgranate (Weiß)</German>
|
||||
<Spanish>Granada de humo M83 (Blanco)</Spanish>
|
||||
<Polish>Granat dymny M83 (Biały)</Polish>
|
||||
<Czech>M83 Kouřový Granát (Bílý)</Czech>
|
||||
@ -1921,20 +1935,20 @@
|
||||
<Chinesesimp>CTAR-21卡宾步枪</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_arifle_TRG21_GL_Name">
|
||||
<English>TAR-21 EGLM</English>
|
||||
<German>TAR-21 EGLM</German>
|
||||
<Czech>TAR-21 EGLM</Czech>
|
||||
<Polish>TAR-21 EGLM</Polish>
|
||||
<French>TAR-21 EGLM</French>
|
||||
<Hungarian>TAR-21 EGLM</Hungarian>
|
||||
<Spanish>TAR-21 EGLM</Spanish>
|
||||
<Russian>TAR-21 EGLM</Russian>
|
||||
<Portuguese>TAR-21 EGLM</Portuguese>
|
||||
<Italian>TAR-21 EGLM</Italian>
|
||||
<Japanese>TAR-21 EGLM</Japanese>
|
||||
<Korean>TAR-21 EGLM</Korean>
|
||||
<Chinese>TAR-21突擊步槍 (榴彈)</Chinese>
|
||||
<Chinesesimp>TAR-21突击步枪 (榴弹)</Chinesesimp>
|
||||
<English>GTAR-21 EGLM</English>
|
||||
<German>GTAR-21 EGLM</German>
|
||||
<Czech>GTAR-21 EGLM</Czech>
|
||||
<Polish>GTAR-21 EGLM</Polish>
|
||||
<French>GTAR-21 EGLM</French>
|
||||
<Hungarian>GTAR-21 EGLM</Hungarian>
|
||||
<Spanish>GTAR-21 EGLM</Spanish>
|
||||
<Russian>GTAR-21 EGLM</Russian>
|
||||
<Portuguese>GTAR-21 EGLM</Portuguese>
|
||||
<Italian>GTAR-21 EGLM</Italian>
|
||||
<Japanese>GTAR-21 EGLM</Japanese>
|
||||
<Korean>GTAR-21 EGLM</Korean>
|
||||
<Chinese>GTAR-21突擊步槍 (榴彈)</Chinese>
|
||||
<Chinesesimp>GTAR-21突击步枪 (榴弹)</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_SMG_01_Name">
|
||||
<English>Vector SMG</English>
|
||||
@ -2166,7 +2180,7 @@
|
||||
<French>Noreen "Bad News" ULR (Camo)</French>
|
||||
<Spanish>Noreen "Bad News" ULR (Camuflaje)</Spanish>
|
||||
<Russian>Noreen "Bad News" ULR (Камо)</Russian>
|
||||
<German>Noreen "Bad News" ULR (Camo)</German>
|
||||
<German>Noreen "Bad News" ULR (Tarnmuster)</German>
|
||||
<Polish>Noreen "Bad News" ULR (kamuflaż)</Polish>
|
||||
<Italian>Noreen "Bad News" ULR (Camo)</Italian>
|
||||
<Hungarian>Noreen "Bad News"ULR (Terepmintás)</Hungarian>
|
||||
@ -2182,7 +2196,7 @@
|
||||
<French>Noreen "Bad News" ULR (Beige)</French>
|
||||
<Spanish>Noreen "Bad News" ULR (Arena)</Spanish>
|
||||
<Russian>Noreen "Bad News" ULR (Песочный)</Russian>
|
||||
<German>Noreen "Bad News" ULR (Sand)</German>
|
||||
<German>Noreen "Bad News" ULR (sandfarben)</German>
|
||||
<Polish>Noreen "Bad News" ULR (piaskowy)</Polish>
|
||||
<Italian>Noreen "Bad News" ULR (Sabbia)</Italian>
|
||||
<Hungarian>Noreen "Bad News"ULR (Homok)</Hungarian>
|
||||
@ -2247,7 +2261,7 @@
|
||||
<Spanish>SIG 556 (Arena)</Spanish>
|
||||
<Russian>SIG 556 (Песочный)</Russian>
|
||||
<Polish>SIG 556 (piaskowy)</Polish>
|
||||
<German>SIG 556 (Sand)</German>
|
||||
<German>SIG 556 (sandfarben)</German>
|
||||
<Italian>SIG 556 (Sabbia)</Italian>
|
||||
<Hungarian>SIG 556 (Homok)</Hungarian>
|
||||
<Portuguese>SIG 556 (Deserto)</Portuguese>
|
||||
@ -2263,7 +2277,7 @@
|
||||
<Spanish>SIG 556 (Camuflaje)</Spanish>
|
||||
<Russian>SIG 556 (Камо)</Russian>
|
||||
<Polish>SIG 556 (kamuflaż)</Polish>
|
||||
<German>SIG 556 (Camo)</German>
|
||||
<German>SIG 556 (Tarnmuster)</German>
|
||||
<Italian>SIG 556 (Camo)</Italian>
|
||||
<Hungarian>SIG 556 (Terepmintás)</Hungarian>
|
||||
<Portuguese>SIG 556 (Camuflagem)</Portuguese>
|
||||
@ -2279,7 +2293,7 @@
|
||||
<Spanish>SIG 556 (Bosque)</Spanish>
|
||||
<Russian>SIG 556 (Лесной)</Russian>
|
||||
<Polish>SIG 556 (leśny)</Polish>
|
||||
<German>SIG 556 (Woodland)</German>
|
||||
<German>SIG 556 (Grünes Tarnmuster)</German>
|
||||
<Italian>SIG 556 (Woodland)</Italian>
|
||||
<Hungarian>SIG 556 (Erdőmintás)</Hungarian>
|
||||
<Portuguese>SIG 556 (Floresta)</Portuguese>
|
||||
@ -2423,7 +2437,7 @@
|
||||
<Spanish>M14 (Camuflaje)</Spanish>
|
||||
<Russian>M14 (Камо)</Russian>
|
||||
<Polish>M14 (kamuflaż)</Polish>
|
||||
<German>M14 (Camo)</German>
|
||||
<German>M14 (Tarnmuster)</German>
|
||||
<Italian>M14 (Camo)</Italian>
|
||||
<Hungarian>M14 (Terepmintás)</Hungarian>
|
||||
<Portuguese>M14 (Camuflagem)</Portuguese>
|
||||
@ -2439,7 +2453,7 @@
|
||||
<Spanish>M14 (Oliva)</Spanish>
|
||||
<Russian>M14 (Олива)</Russian>
|
||||
<Polish>M14 (oliwkowy)</Polish>
|
||||
<German>M14 (Olive)</German>
|
||||
<German>M14 (Olivgrün)</German>
|
||||
<Italian>M14 (Olive)</Italian>
|
||||
<Hungarian>M14 (Olíva)</Hungarian>
|
||||
<Portuguese>M14 (Oliva)</Portuguese>
|
||||
@ -2551,7 +2565,7 @@
|
||||
<Spanish>LWMMG (Arena)</Spanish>
|
||||
<Russian>LWMMG (Песочный)</Russian>
|
||||
<Polish>LWMMG (piaskowy)</Polish>
|
||||
<German>LWMMG (Sand)</German>
|
||||
<German>LWMMG (sandfarben)</German>
|
||||
<Italian>LWMMG (Sabbia)</Italian>
|
||||
<Hungarian>LWMMG (Homok)</Hungarian>
|
||||
<Portuguese>LWMMG (Deserto)</Portuguese>
|
||||
@ -2929,20 +2943,20 @@
|
||||
<Chinesesimp>GM6"天猫"反器材狙击步枪 (绿色数位蜂巢迷彩)</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_LMG_03">
|
||||
<English>M249 SPW</English>
|
||||
<German>M249 SPW</German>
|
||||
<Spanish>M249 SPW</Spanish>
|
||||
<Polish>M249 SPW</Polish>
|
||||
<Czech>M249 SPW</Czech>
|
||||
<French>M249 SPW</French>
|
||||
<Russian>M249 SPW</Russian>
|
||||
<Portuguese>M249 SPW</Portuguese>
|
||||
<Hungarian>M249 SPW</Hungarian>
|
||||
<Italian>M249 SPW</Italian>
|
||||
<Japanese>M249 SPW</Japanese>
|
||||
<Korean>M249 SPW</Korean>
|
||||
<Chinese>M249班用自動機槍</Chinese>
|
||||
<Chinesesimp>M249班用自动机枪</Chinesesimp>
|
||||
<English>FN Minimi SPW</English>
|
||||
<German>FN Minimi SPW</German>
|
||||
<Spanish>FN Minimi SPW</Spanish>
|
||||
<Polish>FN Minimi SPW</Polish>
|
||||
<Czech>FN Minimi SPW</Czech>
|
||||
<French>FN Minimi SPW</French>
|
||||
<Russian>FN Minimi SPW</Russian>
|
||||
<Portuguese>FN Minimi SPW</Portuguese>
|
||||
<Hungarian>FN Minimi SPW</Hungarian>
|
||||
<Italian>FN Minimi SPW</Italian>
|
||||
<Japanese>FN Minimi SPW</Japanese>
|
||||
<Korean>FN Minimi SPW</Korean>
|
||||
<Chinese>FN Minimi班用自動機槍</Chinese>
|
||||
<Chinesesimp>FN Minimi班用自动机枪</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_srifle_LRR_tna">
|
||||
<English>M200 Intervention (Tropic)</English>
|
||||
@ -3014,7 +3028,7 @@
|
||||
<French>HK416A5 11" (Beige)</French>
|
||||
<Spanish>HK416A5 11" (Arena)</Spanish>
|
||||
<Russian>HK416A5 11" (Песочный)</Russian>
|
||||
<German>HK416A5 11" (Sand)</German>
|
||||
<German>HK416A5 11" (sandfarben)</German>
|
||||
<Polish>HK416A5 11" (piaskowy)</Polish>
|
||||
<Italian>HK416A5 11" (Sabbia)</Italian>
|
||||
<Hungarian>HK416A5 11" (Homok)</Hungarian>
|
||||
@ -3062,7 +3076,7 @@
|
||||
<French>HK416A5 11" GL (Beige)</French>
|
||||
<Spanish>HK416A5 11" GL (Arena)</Spanish>
|
||||
<Russian>HK416A5 11" GL (Песочный)</Russian>
|
||||
<German>HK416A5 11" GL (Sand)</German>
|
||||
<German>HK416A5 11" GL (sandfarben)</German>
|
||||
<Polish>HK416A5 11" GL (piaskowy)</Polish>
|
||||
<Italian>HK416A5 11" GL (Sabbia)</Italian>
|
||||
<Hungarian>HK416A5 11" GL (Homok)</Hungarian>
|
||||
@ -3110,7 +3124,7 @@
|
||||
<French>HK416A5 14.5" (Beige)</French>
|
||||
<Spanish>HK416A5 14.5" (Arena)</Spanish>
|
||||
<Russian>HK416A5 14.5" (Песочный)</Russian>
|
||||
<German>HK416A5 14.5" (Sand)</German>
|
||||
<German>HK416A5 14.5" (sandfarben)</German>
|
||||
<Polish>HK416A5 14.5" (piaskowy)</Polish>
|
||||
<Italian>HK416A5 14.5" (Sabbia)</Italian>
|
||||
<Hungarian>HK416A5 14.5" (Homok)</Hungarian>
|
||||
@ -3158,7 +3172,7 @@
|
||||
<French>HK417A2 20" (Beige)</French>
|
||||
<Spanish>HK417A2 20" (Arena)</Spanish>
|
||||
<Russian>HK417A2 20" (Песочный)</Russian>
|
||||
<German>HK417A2 20" (Sand)</German>
|
||||
<German>HK417A2 20" (sandfarben)</German>
|
||||
<Polish>HK417A2 20" (piaskowy)</Polish>
|
||||
<Italian>HK417A2 20" (Sabbia)</Italian>
|
||||
<Hungarian>HK417A2 20" (Homok)</Hungarian>
|
||||
@ -3216,5 +3230,25 @@
|
||||
<Chinese>"馬卡洛夫"手槍</Chinese>
|
||||
<Chinesesimp>"马卡洛夫"手枪</Chinesesimp>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_lsv_01_armed">
|
||||
<English>Polaris DAGOR (XM312)</English>
|
||||
<German>Polaris DAGOR (XM312)</German>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_lsv_01_unarmed">
|
||||
<English>Polaris DAGOR</English>
|
||||
<German>Polaris DAGOR</German>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_lsv_01_light">
|
||||
<English>Polaris DAGOR (light)</English>
|
||||
<German>Polaris DAGOR (leicht)</German>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_lsv_02_armed">
|
||||
<English>LSV Mk. II (M134)</English>
|
||||
<German>LSV Mk. II (M134)</German>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_RealisticNames_lsv_02_unarmed">
|
||||
<English>LSV Mk. II</English>
|
||||
<German>LSV Mk. II</German>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
||||
|
@ -18,15 +18,16 @@
|
||||
#include "script_component.hpp"
|
||||
|
||||
params ["_truck", "_player", "_vehicle"];
|
||||
TRACE_3("rearmEntireVehicle",_truck,_player,_vehicle);
|
||||
|
||||
[
|
||||
TIME_PROGRESSBAR(10),
|
||||
[_truck, _player, _vehicle],
|
||||
[_truck, _vehicle, _player],
|
||||
FUNC(rearmEntireVehicleSuccess),
|
||||
"",
|
||||
format [localize LSTRING(BasicRearmAction), getText(configFile >> "CfgVehicles" >> (typeOf _vehicle) >> "displayName")],
|
||||
{
|
||||
param [0] params ["", "_player", "_vehicle"];
|
||||
param [0] params ["", "_vehicle", "_player"];
|
||||
(_player distanceSqr _vehicle) <= REARM_ACTION_DISTANCE_SQR
|
||||
},
|
||||
["isnotinside"]
|
||||
|
@ -17,6 +17,6 @@
|
||||
|
||||
params ["_unit"];
|
||||
|
||||
if (!isNull (GETMVAR(GVAR(ladder),objNull)) && {GVAR(ladder) in attachedObjects _unit}) then {
|
||||
if (!isNull GETMVAR(GVAR(ladder),objNull) && {GVAR(ladder) in attachedObjects _unit}) then {
|
||||
[_unit, GVAR(ladder)] call FUNC(cancelTLdeploy);
|
||||
};
|
||||
|
@ -17,6 +17,6 @@
|
||||
|
||||
params ["_unit"];
|
||||
|
||||
if (!isNull (GETMVAR(ladder,objNull)) && {GVAR(ladder) in attachedObjects _unit}) then {
|
||||
if (!isNull GETMVAR(ladder,objNull) && {GVAR(ladder) in attachedObjects _unit}) then {
|
||||
[_unit, GVAR(ladder)] call FUNC(cancelTLdeploy);
|
||||
};
|
||||
|
@ -16,7 +16,7 @@
|
||||
*/
|
||||
#include "script_component.hpp"
|
||||
|
||||
if (isNull (GETGVAR(ladder,objNull))) exitWith {};
|
||||
if (isNull GETGVAR(ladder,objNull)) exitWith {};
|
||||
|
||||
params ["_newPlayer", "_oldPlayer"];
|
||||
|
||||
|
@ -19,6 +19,6 @@ params ["_unit"];
|
||||
|
||||
if (!local _unit) exitWith {};
|
||||
|
||||
if (!isNull (GETMVAR(ladder,objNull)) && {GVAR(ladder) in attachedObjects _unit}) then {
|
||||
if (!isNull GETMVAR(ladder,objNull) && {GVAR(ladder) in attachedObjects _unit}) then {
|
||||
[_unit, GVAR(ladder)] call FUNC(cancelTLdeploy);
|
||||
};
|
||||
|
@ -211,7 +211,7 @@
|
||||
{% endif %}
|
||||
|
||||
{% if include.component == "maverick" %}
|
||||
`ace_hellfire`
|
||||
`ace_missileguidance`
|
||||
{% endif %}
|
||||
|
||||
{% if include.component == "medical" %}
|
||||
|
Before Width: | Height: | Size: 199 KiB |
Before Width: | Height: | Size: 210 KiB |
BIN
docs/img/wiki/feature/ab_module1.jpg
Normal file
After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 853 KiB After Width: | Height: | Size: 854 KiB |
Before Width: | Height: | Size: 854 KiB After Width: | Height: | Size: 854 KiB |
Before Width: | Height: | Size: 881 KiB |
BIN
docs/img/wiki/feature/atragmx41.png
Normal file
After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 199 KiB |
BIN
docs/img/wiki/feature/scope_module1.jpg
Normal file
After Width: | Height: | Size: 74 KiB |
BIN
docs/img/wiki/feature/simplified_zeroing.jpg
Normal file
After Width: | Height: | Size: 204 KiB |
@ -33,14 +33,16 @@ The Advanced Ballistics module improves internal and external ballistics.
|
||||
|
||||
### 2.1 Enabling Advanced Ballistics
|
||||
|
||||
#### 2.1.1 Editor
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/ab_module.jpg" width="799" height="620" alt="Advanced Ballistics module" />
|
||||
#### 2.1.1 OPTIONS → GAME → CONFIGURE ADDONS
|
||||
|
||||
#### 2.1.2 Settings Framework
|
||||
- [Settings Framework]({{ site.baseurl }}/wiki/framework/settings-framework.html)
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/ab_module1.jpg" width="800" height="484" alt="Advanced Ballistics module" />
|
||||
|
||||
#### 2.1.2 CBA Settings System
|
||||
- [CBA Settings System](https://github.com/CBATeam/CBA_A3/wiki/CBA-Settings-System)
|
||||
|
||||
#### 2.1.3 Enabled in-game ?
|
||||
- Pick up a [Range Card]({{ site.baseurl }}/wiki/feature/rangecard.html) and open it.
|
||||
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/ab_ingame.png" width="1400" height="280" alt="Advanced Ballistics vs Default Ballistic" />
|
||||
|
||||
### 2.2 Protractor
|
||||
|
@ -70,13 +70,6 @@ Horus ATragMX software considers atmospheric conditions, gun data, ammunition, r
|
||||
- Control the breath and press.
|
||||
|
||||
### 3.3 Example with Truing tool
|
||||
|
||||
**Start of the mission:**
|
||||
|
||||
- Select `Drag Coef Table` in the `Options` menu. [[Manual]](https://horusvision.com/download/manual_Horus_ATrag-v385.pdf#page=14)
|
||||
- Add the `ZR` and the `C1` (`Gun` column) in the table and `Done`.
|
||||
|
||||
**In position:**
|
||||
|
||||
- Open the `Truing Drop` in the `Options` menu. [[Manual]](https://horusvision.com/download/manual_Horus_ATrag-v385.pdf#page=23)
|
||||
- Add the actual `Target Range` in the `SUPER` column and `Calc`.
|
||||
@ -88,25 +81,24 @@ Horus ATragMX software considers atmospheric conditions, gun data, ammunition, r
|
||||
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/atragmx2.png" width="1127" height="600" alt="Calculation" />
|
||||
|
||||
- If a new `Target Range` is applied in the `Target` column, select `Drag Coef Table` in the `Options` menu and `Done`.
|
||||
- The ballistic coefficient `C1` and the elevation `Elev` will be recalculated.
|
||||
- If a new `Target Range` is applied in the `Target` column, the ballistic coefficient `C1` and the elevation `Elev` will be automatically recalculated.
|
||||
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/atragmx3.png" width="1123" height="600" alt="Interpolation" />
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/atragmx31.png" width="1123" height="600" alt="Interpolation" />
|
||||
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/atragmx3a.png" width="1123" height="600" alt="Extrapolation" />
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/atragmx31a.png" width="1123" height="600" alt="Extrapolation" />
|
||||
|
||||
### 3.4 Example with overwritten zero distance
|
||||
|
||||
- The `Default zero distance` can be overwritten with the [Scopes module]({{ site.baseurl }}/wiki/feature/scopes.html) or the [Settings Framework]({{ site.baseurl }}/wiki/framework/settings-framework.html).
|
||||
- The `Default zero distance` can be overwritten with the [Scopes module]({{ site.baseurl }}/wiki/feature/scopes.html), the [Scopes Framework]({{ site.baseurl }}/wiki/framework/scopes-framework.html) or the [CBA Settings System](https://github.com/CBATeam/CBA_A3/wiki/CBA-Settings-System).
|
||||
- In this case, the [Range Card]({{ site.baseurl }}/wiki/feature/rangecard.html) will be automatically updated, NOT the AtragMx.
|
||||
- Open the AtragMx and the `Atmsphr` column, select `Default` and `Done`. [[Manual]](https://horusvision.com/download/manual_Horus_ATrag-v385.pdf#page=15)
|
||||
- Open the `Gun` column, check and update the `Zero Range` and `Done`.
|
||||
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/atragmx4.png" width="1400" height="600" alt="Zero distance 300m" />
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/atragmx41.png" width="1400" height="600" alt="Zero distance 300m" />
|
||||
|
||||
### 3.5 Example with `Add New Gun` in `GunList`
|
||||
|
||||
- Open the [Range Card]({{ site.baseurl }}/wiki/feature/rangecard.html) and check the cartridge, the bullet diameter, the bullet weight and the muzzle velocities.
|
||||
- Open the [Range Card]({{ site.baseurl }}/wiki/feature/rangecard.html) and check the bullet diameter, the bullet weight, the **(bullet Class Name)** and the muzzle velocities.
|
||||
- Open the AtragMx and the `Atmsphr` column, select `Default` and `Done`. [[Manual]](https://horusvision.com/download/manual_Horus_ATrag-v385.pdf#page=15)
|
||||
- Select `Add New Gun` in the `GunList`. [[Manual]](https://horusvision.com/download/manual_Horus_ATrag-v385.pdf#page=25)
|
||||
- Add a `New Gun Name` and `Open Gun`.
|
||||
@ -117,9 +109,9 @@ Horus ATragMX software considers atmospheric conditions, gun data, ammunition, r
|
||||
- Edit manually the `Muzzle Velocity Table` according with the [Range Card]({{ site.baseurl }}/wiki/feature/rangecard.html) and `Done`. [[Manual]](https://horusvision.com/download/manual_Horus_ATrag-v385.pdf#page=22)
|
||||
- The `C1 coefficient` of the bullet can be found with the Eden Editor `Config Viewer`:
|
||||
|
||||
> configfile >> "CfgAmmo" >> "Range card cartridge" >> "ACE_ballisticCoefficients"
|
||||
> configfile >> "CfgAmmo" >> "**bullet Class Name**" >> "ACE_ballisticCoefficients"
|
||||
|
||||
> configfile >> "CfgAmmo" >> "Range card cartridge" >> "ACE_dragModel"
|
||||
> configfile >> "CfgAmmo" >> "**bullet Class Name**" >> "ACE_dragModel"
|
||||
|
||||
- *The AtragMx accepts only **G1 ballistic coefficient**.*
|
||||
- *G7 ballistic coefficient can be converted, for example, with the online [JBM Ballistics Calculators](http://www.jbmballistics.com/cgi-bin/jbmgf-5.1.cgi)*.
|
||||
@ -128,10 +120,14 @@ Horus ATragMX software considers atmospheric conditions, gun data, ammunition, r
|
||||
|
||||
> Note: The ballistic coefficient can be calculated by using the [360 Degree Training Course mission](https://forums.bistudio.com/forums/topic/171228-sp-360-degree-training-course/) as a chronograph at different distances and [JBM Ballistics Calculators](http://www.jbmballistics.com/cgi-bin/jbmbcv-5.1.cgi) for example, an another ballistic software at your own convenience, or the [AtragMx Truing Tool](#33-example-with-truing-tool).
|
||||
|
||||
> Example direct conversion with 0.408 Cheytac 305 grains G7 BC 0.279 at 2000 meters 15°C:
|
||||
> Example direct conversion with .408 Cheytac 305 grains G7 BC 0.279 at 2000 meters 15°C:
|
||||
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/atragmx5.png" width="1400" height="600" alt="Conversion G7/G1 BC" />
|
||||
|
||||
### 3.6 Adding ATragMX Presets
|
||||
|
||||
- [ATragMX Framework]({{ site.baseurl }}/wiki/framework/atragmx.html)
|
||||
|
||||
|
||||
## 4. Official Manual and Horus Videos
|
||||
|
||||
|
@ -35,7 +35,11 @@ Please not that the following key combinations are ACE3 default key binds.
|
||||
|
||||
### 2.3 Scopes Module
|
||||
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/scope_module.jpg" width="799" height="620" alt="Editor's scopes module" />
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/scope_module1.jpg" width="800" height="484" alt="CBA Settings scopes module" />
|
||||
|
||||
### 2.4 Simplified Zeroing
|
||||
|
||||
<img src="{{ site.baseurl }}/img/wiki/feature/simplified_zeroing.jpg" width="800" height="484" alt="Simplified zeroing" />
|
||||
|
||||
|
||||
## 3. Dependencies
|
||||
|
@ -88,8 +88,8 @@ class CfgAmmo {
|
||||
### 4.2 Custom Seeker Types
|
||||
|
||||
```cpp
|
||||
class ace_missileguidance_attackProfiles {
|
||||
class MyAttackProfile {
|
||||
class ace_missileguidance_seekerTypes {
|
||||
class MySeekerType {
|
||||
name = ""; // Name
|
||||
visualName = ""; // Visual name
|
||||
description = ""; // Description
|
||||
@ -102,8 +102,8 @@ class ace_missileguidance_attackProfiles {
|
||||
### 4.3 Custom Attack Profiles
|
||||
|
||||
```cpp
|
||||
class ace_missileguidance_seekerTypes {
|
||||
class MySeekerType {
|
||||
class ace_missileguidance_attackProfiles {
|
||||
class MyAttackProfile {
|
||||
name = ""; // Name
|
||||
visualName = ""; // Visual name
|
||||
description = ""; // Description
|
||||
|
@ -422,12 +422,14 @@ def cleanup_optionals(mod):
|
||||
|
||||
try:
|
||||
file_name = "{}{}.pbo".format(pbo_name_prefix,dir_name)
|
||||
folder= "@{}{}".format(pbo_name_prefix,dir_name)
|
||||
src_file_path = os.path.join(release_dir, project, "addons", file_name)
|
||||
dst_file_path = os.path.join(release_dir, project, "optionals", file_name)
|
||||
dst_file_path = os.path.join(release_dir, project, "optionals",folder,"addons",file_name)
|
||||
|
||||
sigFile_name = "{}.{}.bisign".format(file_name,key_name)
|
||||
src_sig_path = os.path.join(release_dir, project, "addons", sigFile_name)
|
||||
dst_sig_path = os.path.join(release_dir, project, "optionals", sigFile_name)
|
||||
dst_sig_path = os.path.join(release_dir, project, "optionals",folder,"addons", sigFile_name)
|
||||
|
||||
|
||||
if (os.path.isfile(src_file_path)):
|
||||
#print("Preserving {}".format(file_name))
|
||||
|
@ -45,20 +45,6 @@ def find_bi_tools():
|
||||
else:
|
||||
raise Exception("BadTools","Arma 3 Tools are not installed correctly or the P: drive needs to be created.")
|
||||
|
||||
def buildCompatFolder(folderName, copyFileNames):
|
||||
compatRelease_dir = os.path.join(release_dir, folderName)
|
||||
if os.path.exists(compatRelease_dir):
|
||||
shutil.rmtree(compatRelease_dir)
|
||||
os.makedirs(compatRelease_dir)
|
||||
os.makedirs(os.path.join(compatRelease_dir, "addons"))
|
||||
print("Adding files for folder {}".format(folderName))
|
||||
for copyFileName in copyFileNames:
|
||||
for file in os.listdir(ace_optionals_dir):
|
||||
if fnmatch.fnmatch(file, copyFileName):
|
||||
print(" Copying: {}".format(file))
|
||||
shutil.copyfile(os.path.join(ace_optionals_dir, file), os.path.join(compatRelease_dir, "addons", file))
|
||||
|
||||
return compatRelease_dir
|
||||
|
||||
def publishFolder(folder,modID,changeNotes):
|
||||
cmd = [publisherTool_path, "update", "/id:{}".format(modID), "/changeNoteFile:{}".format(changeNotes), "/path:{}".format(folder)]
|
||||
@ -105,30 +91,26 @@ def main(argv):
|
||||
return 0
|
||||
|
||||
|
||||
|
||||
|
||||
#ACE Main - http://steamcommunity.com/sharedfiles/filedetails/?id=463939057
|
||||
# Note: command line publisher doesn't like our file structure, just upload this one manually
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#RHS Compat USA - http://steamcommunity.com/sharedfiles/filedetails/?id=773125288
|
||||
folder = buildCompatFolder("@ace_compat_rhs_usf3", ["ace_compat_rhs_usf3.*"])
|
||||
publishFolder(folder, "773125288", changelog_path)
|
||||
|
||||
|
||||
publishFolder(os.path.join(ace_optionals_dir,"@ace_compat_rhs_usf3"), "773125288", changelog_path)
|
||||
|
||||
#RHS Compat Russians - http://steamcommunity.com/sharedfiles/filedetails/?id=773131200
|
||||
folder = buildCompatFolder("@ace_compat_rhs_afrf3", ["ace_compat_rhs_afrf3.*"])
|
||||
publishFolder(folder, "773131200", changelog_path)
|
||||
publishFolder(os.path.join(ace_optionals_dir,"@ace_compat_rhs_afrf3"), "773131200", changelog_path)
|
||||
|
||||
#RHS Compat GREF - http://steamcommunity.com/sharedfiles/filedetails/?id=884966711
|
||||
folder = buildCompatFolder("@ace_compat_rhs_gref3", ["ace_compat_rhs_gref3.*"])
|
||||
publishFolder(folder, "884966711", changelog_path)
|
||||
publishFolder(os.path.join(ace_optionals_dir,"@ace_compat_rhs_gref3"), "884966711", changelog_path)
|
||||
|
||||
#ADR97 (p90)- http://steamcommunity.com/sharedfiles/filedetails/?id=773136286
|
||||
folder = buildCompatFolder("@ace_adr97_compat", ["ace_compat_adr_97.*"])
|
||||
publishFolder(folder, "773136286", changelog_path)
|
||||
publishFolder(os.path.join(ace_optionals_dir,"@ace_compat_adr_97"), "773136286", changelog_path)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main(sys.argv)
|
||||
|
||||
|