diff --git a/addons/advanced_ballistics/XEH_postInit.sqf b/addons/advanced_ballistics/XEH_postInit.sqf
index e6417f9a02..f9d78b5045 100644
--- a/addons/advanced_ballistics/XEH_postInit.sqf
+++ b/addons/advanced_ballistics/XEH_postInit.sqf
@@ -1,7 +1,5 @@
#include "script_component.hpp"
-#include "initKeybinds.inc.sqf"
-
GVAR(currentbulletID) = -1;
GVAR(Protractor) = false;
@@ -11,6 +9,8 @@ GVAR(currentGrid) = 0;
if (!hasInterface) exitWith {};
+#include "initKeybinds.inc.sqf"
+
["CBA_settingsInitialized", {
//If not enabled, dont't add PFEH
if (!GVAR(enabled)) exitWith {};
diff --git a/addons/arsenal/functions/fnc_onArsenalClose.sqf b/addons/arsenal/functions/fnc_onArsenalClose.sqf
index 2cce9b13ee..f2316bc9d5 100644
--- a/addons/arsenal/functions/fnc_onArsenalClose.sqf
+++ b/addons/arsenal/functions/fnc_onArsenalClose.sqf
@@ -78,10 +78,10 @@ if (!isNull curatorCamera) then {
// Make face and voice selection JIP compatible; 3DEN doesn't need this though
if (isMultiplayer && {!is3DEN}) then {
- private _id = [QGVAR(broadcastFace), [GVAR(center), GVAR(currentFace)], QGVAR(centerFace_) + netId GVAR(center)] call CBA_fnc_globalEventJIP;
+ private _id = [QGVAR(broadcastFace), [GVAR(center), GVAR(currentFace)], QGVAR(centerFace_) + hashValue GVAR(center)] call CBA_fnc_globalEventJIP;
[_id, GVAR(center)] call CBA_fnc_removeGlobalEventJIP;
- _id = [QGVAR(broadcastVoice), [GVAR(center), GVAR(currentVoice)], QGVAR(centerVoice_) + netId GVAR(center)] call CBA_fnc_globalEventJIP;
+ _id = [QGVAR(broadcastVoice), [GVAR(center), GVAR(currentVoice)], QGVAR(centerVoice_) + hashValue GVAR(center)] call CBA_fnc_globalEventJIP;
[_id, GVAR(center)] call CBA_fnc_removeGlobalEventJIP;
};
diff --git a/addons/atragmx/XEH_postInit.sqf b/addons/atragmx/XEH_postInit.sqf
index 62d45555b1..7914657b08 100644
--- a/addons/atragmx/XEH_postInit.sqf
+++ b/addons/atragmx/XEH_postInit.sqf
@@ -1,5 +1,7 @@
#include "script_component.hpp"
+if (!hasInterface) exitWith {};
+
#include "initKeybinds.inc.sqf"
GVAR(active) = false;
diff --git a/addons/common/CfgMoves.hpp b/addons/common/CfgMoves.hpp
index 14686526e9..3c51140fed 100644
--- a/addons/common/CfgMoves.hpp
+++ b/addons/common/CfgMoves.hpp
@@ -1,5 +1,9 @@
class CfgMovesBasic {
- class Default;
+ // Idle affects legs when weapon switching - fixes units sliding when holstering weapons
+ class Default {
+ idle = "";
+ };
+
// From ACRE
class ManActions {
GVAR(stop) = QGVAR(stop);
diff --git a/addons/compat_cup_weapons/compat_cup_weapons_nightvision/CfgWeapons.hpp b/addons/compat_cup_weapons/compat_cup_weapons_nightvision/CfgWeapons.hpp
index 14114854aa..04d26b8ead 100644
--- a/addons/compat_cup_weapons/compat_cup_weapons_nightvision/CfgWeapons.hpp
+++ b/addons/compat_cup_weapons/compat_cup_weapons_nightvision/CfgWeapons.hpp
@@ -107,12 +107,12 @@ class CfgWeapons {
displayName = SUBCSTRING(CUP_NVG_GPNVG_tan_WP);
NVG_WP_PRESET;
};
- class CUP_GPNVG_green_WP: CUP_NVG_GPNVG_green {
- displayName = SUBCSTRING(CUP_GPNVG_green_WP);
+ class CUP_NVG_GPNVG_green_WP: CUP_NVG_GPNVG_green {
+ displayName = SUBCSTRING(CUP_NVG_GPNVG_green_WP);
NVG_WP_PRESET;
};
- class CUP_GPNVG_winter_WP: CUP_NVG_GPNVG_winter {
- displayName = SUBCSTRING(CUP_GPNVG_winter_WP);
+ class CUP_NVG_GPNVG_winter_WP: CUP_NVG_GPNVG_winter {
+ displayName = SUBCSTRING(CUP_NVG_GPNVG_winter_WP);
NVG_WP_PRESET;
};
};
diff --git a/addons/compat_cup_weapons/compat_cup_weapons_nightvision/config.cpp b/addons/compat_cup_weapons/compat_cup_weapons_nightvision/config.cpp
index 677ff00c0e..4730cdf3a9 100644
--- a/addons/compat_cup_weapons/compat_cup_weapons_nightvision/config.cpp
+++ b/addons/compat_cup_weapons/compat_cup_weapons_nightvision/config.cpp
@@ -6,7 +6,7 @@ class CfgPatches {
units[] = {};
weapons[] = {
"CUP_NVG_PVS14_WP", "CUP_NVG_PVS15_black_WP", "CUP_NVG_PVS15_green_WP", "CUP_NVG_PVS15_tan_WP", "CUP_NVG_PVS15_winter_WP",
- "CUP_NVG_GPNVG_black_WP", "CUP_NVG_GPNVG_tan_WP", "CUP_GPNVG_green_WP", "CUP_GPNVG_winter_WP"
+ "CUP_NVG_GPNVG_black_WP", "CUP_NVG_GPNVG_tan_WP", "CUP_NVG_GPNVG_green_WP", "CUP_NVG_GPNVG_winter_WP"
};
requiredVersion = REQUIRED_VERSION;
requiredAddons[] = {
diff --git a/addons/compat_cup_weapons/compat_cup_weapons_nightvision/stringtable.xml b/addons/compat_cup_weapons/compat_cup_weapons_nightvision/stringtable.xml
index b8344ae16b..001ecaf477 100644
--- a/addons/compat_cup_weapons/compat_cup_weapons_nightvision/stringtable.xml
+++ b/addons/compat_cup_weapons/compat_cup_weapons_nightvision/stringtable.xml
@@ -67,7 +67,7 @@
GPNVG (marron clair, WP)
GPNVG (Желтовато-коричневый, БФ)
-
+
GPNVG (Green, WP)
GPNVG (ブラック、白色蛍光)
GPNVG (Nero, FB)
@@ -77,7 +77,7 @@
GPNVG (noires, WP)
GPNVG (Зелёный, БФ)
-
+
GPNVG (Winter, WP)
GPNVG (冬季迷彩, WP)
GPNVG (설상, WP)
diff --git a/addons/explosives/XEH_postInit.sqf b/addons/explosives/XEH_postInit.sqf
index 40b3bb6959..6c32bb0563 100644
--- a/addons/explosives/XEH_postInit.sqf
+++ b/addons/explosives/XEH_postInit.sqf
@@ -57,6 +57,8 @@ if (isServer) then {
if (!hasInterface) exitWith {};
+#include "initKeybinds.inc.sqf"
+
GVAR(PlacedCount) = 0;
GVAR(Setup) = objNull;
GVAR(pfeh_running) = false;
diff --git a/addons/explosives/XEH_preInit.sqf b/addons/explosives/XEH_preInit.sqf
index 6141a1d3e0..e39270f0bb 100644
--- a/addons/explosives/XEH_preInit.sqf
+++ b/addons/explosives/XEH_preInit.sqf
@@ -8,7 +8,6 @@ PREP_RECOMPILE_START;
#include "XEH_PREP.hpp"
PREP_RECOMPILE_END;
-#include "initKeybinds.inc.sqf"
#include "initSettings.inc.sqf"
GVAR(activeTrigger) = "";
diff --git a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf
index 36b84f942f..e39a7730ce 100644
--- a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf
+++ b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf
@@ -145,11 +145,11 @@ if (hasInterface && {!isNull ACE_player} && {alive ACE_player}) then {
//PARTIALRECOVERY - start decreasing effect over time
[{
- params ["_strength"];
+ params ["_strength", "_blend"];
- GVAR(flashbangPPEffectCC) ppEffectAdjust [1,1,0,[1,1,1,0],[0,0,0,1],[0,0,0,0]];
+ GVAR(flashbangPPEffectCC) ppEffectAdjust [1, 1, 0, _blend, [0,0,0,1], [0,0,0,0]];
GVAR(flashbangPPEffectCC) ppEffectCommit (10 * _strength);
- }, [_strength], 7 * _strength] call CBA_fnc_waitAndExecute;
+ }, [_strength, _blend], 7 * _strength] call CBA_fnc_waitAndExecute;
//FULLRECOVERY - end effect
[{
diff --git a/addons/mk6mortar/XEH_postInit.sqf b/addons/mk6mortar/XEH_postInit.sqf
index 9f24a12a3b..aa5f2774df 100644
--- a/addons/mk6mortar/XEH_postInit.sqf
+++ b/addons/mk6mortar/XEH_postInit.sqf
@@ -1,6 +1,7 @@
#include "script_component.hpp"
if (hasInterface) then {
+ #include "initKeybinds.inc.sqf"
["ace_infoDisplayChanged", FUNC(turretDisplayLoaded)] call CBA_fnc_addEventHandler;
};
diff --git a/addons/mk6mortar/XEH_preInit.sqf b/addons/mk6mortar/XEH_preInit.sqf
index e3c1169aa4..894773534a 100644
--- a/addons/mk6mortar/XEH_preInit.sqf
+++ b/addons/mk6mortar/XEH_preInit.sqf
@@ -7,6 +7,5 @@ PREP_RECOMPILE_START;
PREP_RECOMPILE_END;
#include "initSettings.inc.sqf"
-#include "initKeybinds.inc.sqf"
ADDON = true;
diff --git a/addons/parachute/RscTitles.hpp b/addons/parachute/RscTitles.hpp
index 9e0a169937..48cf11bee4 100644
--- a/addons/parachute/RscTitles.hpp
+++ b/addons/parachute/RscTitles.hpp
@@ -39,10 +39,10 @@ class RscTitles {
};
class TimeText: RscText {
idc = 1001;
- text = "00:00";
- x = "0.206094 * safezoneW + safezoneX";
+ text = "00:00:00";
+ x = "0.202094 * safezoneW + safezoneX";
y = "0.819 * safezoneH + safezoneY";
- w = "0.0309375 * safezoneW";
+ w = "0.0380375 * safezoneW";
h = "0.022 * safezoneH";
colorText[] = {0,0,0,1};
};
diff --git a/addons/parachute/functions/fnc_showAltimeter.sqf b/addons/parachute/functions/fnc_showAltimeter.sqf
index d4533a7a6b..f86f785cc6 100644
--- a/addons/parachute/functions/fnc_showAltimeter.sqf
+++ b/addons/parachute/functions/fnc_showAltimeter.sqf
@@ -40,8 +40,10 @@ private _TimeText = _display displayCtrl 1001;
_pfhID call CBA_fnc_removePerFrameHandler;
};
- private _hour = floor daytime;
- private _minute = floor ((daytime - _hour) * 60);
+ private _daytime = dayTime;
+ private _hour = floor _daytime;
+ private _minute = floor ((_daytime - _hour) * 60);
+ private _seconds = floor ((((_daytime - _hour) * 60) - _minute) * 60);
private _curTime = CBA_missionTime;
private _timeDiff = _curTime - _prevTime;
@@ -52,7 +54,7 @@ private _TimeText = _display displayCtrl 1001;
0
};
- _TimeText ctrlSetText (format ["%1:%2", [_hour, 2] call CBA_fnc_formatNumber, [_minute, 2] call CBA_fnc_formatNumber]);
+ _TimeText ctrlSetText (format ["%1:%2:%3", [_hour, 2] call CBA_fnc_formatNumber, [_minute, 2] call CBA_fnc_formatNumber, [_seconds, 2] call CBA_fnc_formatNumber]);
_HeightText ctrlSetText str floor _height;
_DecendRate ctrlSetText str (_descentRate max 0);
diff --git a/addons/rangecard/XEH_postInit.sqf b/addons/rangecard/XEH_postInit.sqf
index 6adc4cf2a1..af4dfa923c 100644
--- a/addons/rangecard/XEH_postInit.sqf
+++ b/addons/rangecard/XEH_postInit.sqf
@@ -1,7 +1,5 @@
#include "script_component.hpp"
-#include "initKeybinds.inc.sqf"
-
GVAR(RangeCardOpened) = false;
GVAR(controls) = [];
@@ -17,3 +15,7 @@ GVAR(boreHeightCopy) = 3.81;
GVAR(ammoClassCopy) = "";//"ACE_762x51_Ball_M118LR";
GVAR(magazineClassCopy) = "";//"ACE_20Rnd_762x51_M118LR_Mag";
GVAR(weaponClassCopy) = "";//srifle_DMR_06_olive_F";
+
+if (!hasInterface) exitWith {};
+
+#include "initKeybinds.inc.sqf"
diff --git a/addons/repair/stringtable.xml b/addons/repair/stringtable.xml
index 016f2fc78d..2e1e3ba546 100644
--- a/addons/repair/stringtable.xml
+++ b/addons/repair/stringtable.xml
@@ -2224,13 +2224,13 @@
Порог починки колеса
- Maximum level to which a wheel can be patched.
- タイヤを補修できる最大の度合い。
- Maksymalny poziom, do którego koło może zostać załatane.
+ Maximum damage to which a wheel can be patched.\n0% means all damage can be repaired.
+ タイヤを補修できる最大の度合い。/n 0% は、すべてのダメージが修復可能であることを意味します
+ Maksymalny poziom, do którego koło może zostać załatane.\n0% oznacza że każde uszkodzenia mogą być naprawione.
Livello di integrità massimo di una ruota rattoppata.
- Maximales Level, bis zu dem ein Rad geflickt werden kann.
+ Maximales Level, bis zu dem ein Rad geflickt werden kann.\n0% bedeutet, dass das Rad vollständig repariert werden kann.
바퀴를 수리할 수 있는 최대 레벨입니다.
- Niveau maximum de rafistolage d'une roue.
+ Niveau maximum de dégâts jusqu'à laquelle une roue peut être réparée.\n0% signifie que la roue peut être reparée entièrement.
Максимальный уровень, до которого колесо может быть починено.
diff --git a/addons/yardage450/XEH_postInit.sqf b/addons/yardage450/XEH_postInit.sqf
index 2959360f7d..1f3cb1a1cf 100644
--- a/addons/yardage450/XEH_postInit.sqf
+++ b/addons/yardage450/XEH_postInit.sqf
@@ -1,5 +1,7 @@
#include "script_component.hpp"
+if (!hasInterface) exitWith {};
+
#include "initKeybinds.inc.sqf"
GVAR(active) = false;