mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Merge branch 'master' of https://github.com/KoffeinFlummi/ACE3
This commit is contained in:
commit
b5a82e313e
@ -67,6 +67,7 @@ rakowozz
|
||||
Raspu86
|
||||
Riccardo Petricca <petriccarcc@gmail.com>
|
||||
Robert Boklahánics <bokirobi@gmail.com>
|
||||
ramius86 <pasini86@hotmail.com>
|
||||
simon84
|
||||
Sniperwolf572 <tenga6@gmail.com>
|
||||
Tonic
|
||||
|
@ -29,11 +29,11 @@ if ((_unit getVariable [QGVAR(isHandcuffed), false]) isEqualTo _state) exitWith
|
||||
if (_state) then {
|
||||
_unit setVariable [QGVAR(isHandcuffed), true, true];
|
||||
[_unit, QGVAR(Handcuffed), true] call EFUNC(common,setCaptivityStatus);
|
||||
|
||||
|
||||
if (_unit getVariable [QGVAR(isSurrendering), false]) then { //If surrendering, stop
|
||||
[_unit, false] call FUNC(setSurrendered);
|
||||
};
|
||||
|
||||
|
||||
//Set unit cargoIndex (will be -1 if dismounted)
|
||||
_unit setVariable [QGVAR(CargoIndex), ((vehicle _unit) getCargoIndex _unit), true];
|
||||
|
||||
@ -47,30 +47,29 @@ if (_state) then {
|
||||
if (_unit getVariable [QGVAR(isHandcuffed), false] && {vehicle _unit == _unit}) then {
|
||||
[_unit] call EFUNC(common,fixLoweredRifleAnimation);
|
||||
[_unit, "ACE_AmovPercMstpScapWnonDnon", 1] call EFUNC(common,doAnimation);
|
||||
|
||||
|
||||
//Adds an animation changed eh
|
||||
//If we get a change in animation then redo the animation (handles people vaulting to break the animation chain)
|
||||
_animChangedEHID = _unit addEventHandler ["AnimChanged", {
|
||||
PARAMS_2(_unit,_newAnimation);
|
||||
if ((_newAnimation != "ACE_AmovPercMstpSsurWnonDnon") && {!(_unit getVariable ["ACE_isUnconscious", false])}) then {
|
||||
ERROR("Handcuff animation interrupted");
|
||||
// systemChat format ["debug %2: new %1", _newAnimation, time];
|
||||
TRACE_1("Handcuff animation interrupted",_newAnimation);
|
||||
[_unit, "ACE_AmovPercMstpScapWnonDnon", 1] call EFUNC(common,doAnimation);
|
||||
};
|
||||
}];
|
||||
_unit setVariable [QGVAR(handcuffAnimEHID), _animChangedEHID];
|
||||
|
||||
|
||||
};
|
||||
}, [_unit], 0.01, 0] call EFUNC(common,waitAndExecute);
|
||||
} else {
|
||||
_unit setVariable [QGVAR(isHandcuffed), false, true];
|
||||
[_unit, QGVAR(Handcuffed), false] call EFUNC(common,setCaptivityStatus);
|
||||
|
||||
//remove AnimChanged EH
|
||||
|
||||
//remove AnimChanged EH
|
||||
_animChangedEHID = _unit getVariable [QGVAR(handcuffAnimEHID), -1];
|
||||
_unit removeEventHandler ["AnimChanged", _animChangedEHID];
|
||||
_unit setVariable [QGVAR(handcuffAnimEHID), -1];
|
||||
|
||||
|
||||
if (((vehicle _unit) == _unit) && {!(_unit getVariable ["ACE_isUnconscious", false])}) then {
|
||||
//Break out of hands up animation loop
|
||||
[_unit, "ACE_AmovPercMstpScapWnonDnon_AmovPercMstpSnonWnonDnon", 2] call EFUNC(common,doAnimation);
|
||||
|
@ -51,8 +51,7 @@ if (_state) then {
|
||||
_animChangedEHID = _unit addEventHandler ["AnimChanged", {
|
||||
PARAMS_2(_unit,_newAnimation);
|
||||
if ((_newAnimation != "ACE_AmovPercMstpSsurWnonDnon") && {!(_unit getVariable ["ACE_isUnconscious", false])}) then {
|
||||
ERROR("Surrender animation interrupted");
|
||||
// systemChat format ["debug %2: new %1", _newAnimation, time];
|
||||
TRACE_1("Surrender animation interrupted",_newAnimation);
|
||||
[_unit, "ACE_AmovPercMstpSsurWnonDnon", 1] call EFUNC(common,doAnimation);
|
||||
};
|
||||
}];
|
||||
|
@ -14,6 +14,7 @@
|
||||
<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>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Interact_Menu_InteractKey">
|
||||
<English>Interact Key</English>
|
||||
|
@ -9,4 +9,10 @@ class Extended_PostInit_EventHandlers {
|
||||
init = QUOTE(call COMPILE_FILE(XEH_post_init));
|
||||
clientInit = QUOTE(call COMPILE_FILE(XEH_clientInit));
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_FiredBIS_EventHandlers {
|
||||
class All {
|
||||
ADDON = QUOTE(_this call FUNC(onFired));
|
||||
};
|
||||
};
|
@ -8,6 +8,9 @@ class CfgWeapons {
|
||||
weaponInfoType = "ACE_RscOptics_javelin";
|
||||
modelOptics = PATHTOF(data\reticle_titan.p3d);
|
||||
|
||||
canLock = 1;
|
||||
|
||||
|
||||
lockingTargetSound[] = {"",0,1};
|
||||
lockedTargetSound[] = {"",0,1};
|
||||
};
|
||||
|
@ -14,7 +14,7 @@ class RscInGameUI {
|
||||
idd = 300;
|
||||
controls[] = { "ACE_javelin_elements_group", "ACE_Targeting" }; //, "ACE_TargetingConstrains", "ACE_TargetingGate", "ACE_TargetingLines"};
|
||||
onLoad = QUOTE(_this call FUNC(onOpticLoad));
|
||||
onUnload = "uiNameSpace setVariable ['ACE_RscOptics_javelin',nil];uiNameSpace setVariable ['ACE_RscOptics_javelin_PFH',nil];";
|
||||
onUnload = QUOTE(_this call FUNC(onOpticUnload));
|
||||
|
||||
class ACE_javelin_elements_group: RscControlsGroup
|
||||
{
|
||||
|
@ -6,6 +6,7 @@ PREP(lockKeyUp);
|
||||
PREP(cycleFireMode);
|
||||
PREP(showFireMode);
|
||||
|
||||
PREP(onFired);
|
||||
PREP(onOpticLoad);
|
||||
PREP(onOpticDraw);
|
||||
|
||||
|
20
addons/javelin/functions/fnc_onFired.sqf
Normal file
20
addons/javelin/functions/fnc_onFired.sqf
Normal file
@ -0,0 +1,20 @@
|
||||
//#define DEBUG_MODE_FULL
|
||||
#include "script_component.hpp"
|
||||
|
||||
PARAMS_7(_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile);
|
||||
|
||||
// Bail on not missile
|
||||
if( _shooter != ACE_player) exitWith { false };
|
||||
|
||||
if( ! ([ (configFile >> "CfgWeapons" >> (currentWeapon (vehicle ACE_player)) ), "launch_Titan_base"] call EFUNC(common,inheritsFrom)) ) exitWith { };
|
||||
|
||||
_pfh_handle = uiNamespace getVariable ["ACE_RscOptics_javelin_PFH", nil];
|
||||
if(!isNil "_pfh_handle") then {
|
||||
//[_pfh_handle] call cba_fnc_removePerFrameHandler;
|
||||
//uiNamespace setVariable["ACE_RscOptics_javelin_PFH", nil];
|
||||
|
||||
__JavelinIGUITargeting ctrlShow false;
|
||||
__JavelinIGUITargetingGate ctrlShow false;
|
||||
__JavelinIGUITargetingLines ctrlShow false;
|
||||
__JavelinIGUITargetingConstraints ctrlShow false;
|
||||
};
|
@ -11,18 +11,6 @@ TRACE_1("enter", _this);
|
||||
|
||||
private["_isJavelin", "_args", "_lastTick", "_runTime", "_soundTime", "_lockTime", "_newTarget", "_currentTarget", "_range", "_pos", "_targetArray"];
|
||||
|
||||
if( ! ([ (configFile >> "CfgWeapons" >> (currentWeapon (vehicle ACE_player)) ), "launch_Titan_base"] call EFUNC(common,inheritsFrom))
|
||||
|| { (vehicle ACE_player) != ACE_player }
|
||||
) exitWith {
|
||||
__JavelinIGUITargeting ctrlShow false;
|
||||
__JavelinIGUITargetingGate ctrlShow false;
|
||||
__JavelinIGUITargetingLines ctrlShow false;
|
||||
__JavelinIGUITargetingConstraints ctrlShow false;
|
||||
|
||||
[(_this select 1)] call cba_fnc_removePerFrameHandler;
|
||||
uiNamespace setVariable["ACE_RscOptics_javelin_PFH", nil];
|
||||
};
|
||||
|
||||
// Reset arguments if we havnt rendered in over a second
|
||||
_args = uiNamespace getVariable[QGVAR(arguments), [] ];
|
||||
if( (count _args) > 0) then {
|
||||
@ -40,6 +28,19 @@ _runTime = _args select 2;
|
||||
_lockTime = _args select 3;
|
||||
_soundTime = _args select 4;
|
||||
_randomLockInterval = _args select 5;
|
||||
_fireDisabledEH = _args select 6;
|
||||
|
||||
if( ! ([ (configFile >> "CfgWeapons" >> (currentWeapon (vehicle ACE_player)) ), "launch_Titan_base"] call EFUNC(common,inheritsFrom)) ) exitWith {
|
||||
__JavelinIGUITargeting ctrlShow false;
|
||||
__JavelinIGUITargetingGate ctrlShow false;
|
||||
__JavelinIGUITargetingLines ctrlShow false;
|
||||
__JavelinIGUITargetingConstraints ctrlShow false;
|
||||
|
||||
_fireDisabledEH = [_fireDisabledEH] call FUNC(enableFire);
|
||||
|
||||
[(_this select 1)] call cba_fnc_removePerFrameHandler;
|
||||
uiNamespace setVariable["ACE_RscOptics_javelin_PFH", nil];
|
||||
};
|
||||
|
||||
// Find a target within the optic range
|
||||
_newTarget = objNull;
|
||||
@ -106,6 +107,27 @@ if((call CBA_fnc_getFoV) select 1 > 9) then {
|
||||
__JavelinIGUIWFOV ctrlSetTextColor __ColorGreen;
|
||||
};
|
||||
|
||||
FUNC(disableFire) = {
|
||||
_firedEH = _this select 0;
|
||||
|
||||
if(_firedEH < 0) then {
|
||||
_firedEH = [ACE_player, "DefaultAction", {true}, {
|
||||
_canFire = ACE_player getVariable["ace_missileguidance_target", nil];
|
||||
if(!isNil "_canFire") exitWith { false };
|
||||
true
|
||||
}] call EFUNC(common,addActionEventHandler);
|
||||
};
|
||||
_firedEH
|
||||
};
|
||||
FUNC(enableFire) = {
|
||||
_firedEH = _this select 0;
|
||||
|
||||
if(_firedEH > 0) then {
|
||||
[ACE_player, "DefaultAction", _firedEH] call EFUNC(common,removeActionEventHandler);
|
||||
};
|
||||
-1
|
||||
};
|
||||
|
||||
if (isNull _newTarget) then {
|
||||
// No targets found
|
||||
_currentTarget = objNull;
|
||||
@ -120,8 +142,7 @@ if (isNull _newTarget) then {
|
||||
ACE_player setVariable ["ace_missileguidance_target",nil, false];
|
||||
|
||||
// Disallow fire
|
||||
if (ACE_player ammo (currentWeapon ACE_player) > 0) then { ACE_player setWeaponReloadingTime [player, (currentWeapon ACE_player), 0.2]; };
|
||||
|
||||
_fireDisabledEH = [_fireDisabledEH] call FUNC(disableFire);
|
||||
} else {
|
||||
if (_newTarget distance ACE_player < 2500
|
||||
&& {(call CBA_fnc_getFoV) select 1 > 9}
|
||||
@ -176,7 +197,7 @@ if (isNull _newTarget) then {
|
||||
ACE_player setVariable["ace_missileguidance_target", _currentTarget, false];
|
||||
|
||||
// Allow fire
|
||||
ACE_player setWeaponReloadingTime [player, (currentWeapon ACE_player), 0];
|
||||
_fireDisabledEH = [_fireDisabledEH] call FUNC(enableFire);
|
||||
|
||||
if(diag_tickTime > _soundTime) then {
|
||||
playSound "ACE_Javelin_Locked";
|
||||
@ -217,7 +238,7 @@ if (isNull _newTarget) then {
|
||||
_soundTime = diag_tickTime + 0.25;
|
||||
};
|
||||
// Disallow fire
|
||||
if (ACE_player ammo (currentWeapon ACE_player) > 0) then { ACE_player setWeaponReloadingTime [player, (currentWeapon ACE_player), 0.2]; };
|
||||
_fireDisabledEH = [_fireDisabledEH] call FUNC(disableFire);
|
||||
};
|
||||
};
|
||||
} else {
|
||||
@ -234,7 +255,7 @@ if (isNull _newTarget) then {
|
||||
ACE_player setVariable ["ace_missileguidance_target",nil, false];
|
||||
|
||||
// Disallow fire
|
||||
if (ACE_player ammo (currentWeapon ACE_player) > 0) then { ACE_player setWeaponReloadingTime [player, (currentWeapon ACE_player), 0.2]; };
|
||||
_fireDisabledEH = [_fireDisabledEH] call FUNC(disableFire);
|
||||
};
|
||||
};
|
||||
|
||||
@ -246,5 +267,6 @@ _args set[1, _currentTarget];
|
||||
_args set[2, _runTime];
|
||||
_args set[3, _lockTime];
|
||||
_args set[4, _soundTime];
|
||||
_args set[6, _fireDisabledEH];
|
||||
|
||||
uiNamespace setVariable[QGVAR(arguments), _args ];
|
@ -25,7 +25,8 @@ uiNameSpace setVariable [QGVAR(arguments),
|
||||
0, // Run Time
|
||||
0, // Lock Time
|
||||
0, // Sound timer
|
||||
(random __LOCKONTIMERANDOM) // random lock time addition
|
||||
(random __LOCKONTIMERANDOM), // random lock time addition
|
||||
-1
|
||||
]
|
||||
];
|
||||
|
||||
|
20
addons/javelin/functions/fnc_onOpticUnload.sqf
Normal file
20
addons/javelin/functions/fnc_onOpticUnload.sqf
Normal file
@ -0,0 +1,20 @@
|
||||
//#define DEBUG_MODE_FULL
|
||||
#include "script_component.hpp"
|
||||
TRACE_1("enter", _this);
|
||||
|
||||
uiNameSpace setVariable ['ACE_RscOptics_javelin',nil];
|
||||
|
||||
_pfh = uiNamespace getVariable["ACE_RscOptics_javelin_PFH", nil ];
|
||||
if(!isNil "_pfh") then {
|
||||
[_pfh] call CBA_fnc_removePerFrameHandler;
|
||||
uiNameSpace setVariable ['ACE_RscOptics_javelin_PFH',nil];
|
||||
};
|
||||
|
||||
_args = uiNamespace getVariable[QGVAR(arguments), nil ];
|
||||
if(!isNil "_args") then {
|
||||
_disableFireEH = _args select 6;
|
||||
if(_disableFireEH > 0) then {
|
||||
[ACE_player, "DefaultAction", _disableFireEH] call EFUNC(common,removeActionEventHandler);
|
||||
};
|
||||
uiNameSpace setVariable [QGVAR(arguments),nil];
|
||||
};
|
@ -4,8 +4,8 @@ TRACE_1("enter", _this);
|
||||
|
||||
private["_player", "_currentFireMode"];
|
||||
|
||||
_currentFireMode = ACE_player getVariable["ace_missileguidance_attackProfile", "TOP"];
|
||||
if(_currentFireMode == "TOP") then {
|
||||
_currentFireMode = ACE_player getVariable["ace_missileguidance_attackProfile", "JAV_TOP"];
|
||||
if(_currentFireMode == "JAV_TOP") then {
|
||||
__JavelinIGUITop ctrlSetTextColor __ColorGreen;
|
||||
__JavelinIGUIDir ctrlSetTextColor __ColorGray;
|
||||
} else {
|
||||
|
@ -17,27 +17,33 @@
|
||||
<Key ID="STR_ACE_Kestrel_Description">
|
||||
<English>Kestrel 4500 Pocket Weather Tracker</English>
|
||||
<Polish>Anemomentr skrzydełkowy Kestrel 4500</Polish>
|
||||
<Russian>Карманная метеостанция Kestrel 4500NV</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Kestrel4500_OpenKestrel">
|
||||
<English>Open Kestrel 4500</English>
|
||||
<Polish>Otwórz Kestrel 4500</Polish>
|
||||
<Hungarian>Kestrel 4500 elővétele</Hungarian>
|
||||
<Russian>Открыть Kestrel 4500NV</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Kestrel4500_ShowKestrel">
|
||||
<English>Show Kestrel 4500</English>
|
||||
<Polish>Pokaż Kestrel 4500</Polish>
|
||||
<Russian>Показать Kestrel 4500NV</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Kestrel4500_HideKestrel">
|
||||
<English>Hide Kestrel 4500</English>
|
||||
<Polish>Ukryj Kestrel 4500</Polish>
|
||||
<Russian>Убрать Kestrel 4500NV</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Kestrel4500_KestrelDialogKey">
|
||||
<English>Open Kestrel 4500</English>
|
||||
<Polish>Otwórz Kestrel 4500</Polish>
|
||||
<Russian>Открыть Kestrel 4500NV</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Kestrel4500_DisplayKestrelKey">
|
||||
<English>Show Kestrel 4500</English>
|
||||
<Polish>Pokaż Kestrel 4500</Polish>
|
||||
<Russian>Показать Kestrel 4500NV</Russian>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
||||
|
@ -74,6 +74,7 @@
|
||||
<Czech>Aplikovat škrtidlo</Czech>
|
||||
<Polish>Załóż stazę</Polish>
|
||||
<French>Appliquer un garrot</French>
|
||||
<Russian>Наложить жгут</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Bandage">
|
||||
<English>Bandage</English>
|
||||
@ -165,7 +166,7 @@
|
||||
<Spanish>Inyectando Morfina ...</Spanish>
|
||||
<Polish>Wstrzykiwanie morfiny ...</Polish>
|
||||
<Czech>Aplikuji morfin ...</Czech>
|
||||
<Russian>Введение морфина...</Russian>
|
||||
<Russian>Введение морфина ...</Russian>
|
||||
<French>Injection de Morphine...</French>
|
||||
<Hungarian>Morfium beadása ...</Hungarian>
|
||||
<Portuguese>Injetando Morfina ...</Portuguese>
|
||||
@ -177,7 +178,7 @@
|
||||
<Spanish>Inyectando Epinefrina ...</Spanish>
|
||||
<Polish>Wstrzykiwanie adrenaliny ...</Polish>
|
||||
<Czech>Aplikuji adrenalin ...</Czech>
|
||||
<Russian>Введение адреналина...</Russian>
|
||||
<Russian>Введение адреналина ...</Russian>
|
||||
<French>Injection d'Adrénaline ...</French>
|
||||
<Hungarian>Epinefrin beadása ...</Hungarian>
|
||||
<Portuguese>Injetando Epinefrina ...</Portuguese>
|
||||
@ -190,7 +191,7 @@
|
||||
<Czech>Aplikuji atropin ...</Czech>
|
||||
<Polish>Wstrzykiwanie atropiny ...</Polish>
|
||||
<French>Injection d'Atropine ...</French>
|
||||
<Russian>Введение атропина...</Russian>
|
||||
<Russian>Введение атропина ...</Russian>
|
||||
<Hungarian>Atropin beadása ...</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Transfusing_Blood">
|
||||
@ -199,7 +200,7 @@
|
||||
<Spanish>Transfusión de sangre ...</Spanish>
|
||||
<Polish>Przetaczanie krwi ...</Polish>
|
||||
<Czech>Probíhá transfúze krve ...</Czech>
|
||||
<Russian>Переливание крови...</Russian>
|
||||
<Russian>Переливание крови ...</Russian>
|
||||
<French>Transfusion Sanguine ...</French>
|
||||
<Hungarian>Infúzió vérrel ...</Hungarian>
|
||||
<Portuguese>Transfundindo Sangue ...</Portuguese>
|
||||
@ -212,7 +213,7 @@
|
||||
<Czech>Probíha transfúze fyziologický roztoku ...</Czech>
|
||||
<Polish>Przetaczanie solanki ...</Polish>
|
||||
<French>Transfusion de saline ...</French>
|
||||
<Russian>Переливание физраствора...</Russian>
|
||||
<Russian>Переливание физраствора ...</Russian>
|
||||
<Hungarian>Infúzió sós vizzel ...</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Transfusing_Plasma">
|
||||
@ -222,7 +223,7 @@
|
||||
<Czech>Probíha transfúze plazmy ...</Czech>
|
||||
<Polish>Przetaczanie osocza ...</Polish>
|
||||
<French>Transfusion de Plasma ...</French>
|
||||
<Russian>Переливание плазмы...</Russian>
|
||||
<Russian>Переливание плазмы ...</Russian>
|
||||
<Hungarian>Infúzió vérplazmával ...</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Bandaging">
|
||||
@ -235,7 +236,7 @@
|
||||
<Italian>Sto applicando la benda ...</Italian>
|
||||
<Hungarian>Bekötözés ...</Hungarian>
|
||||
<Portuguese>Atando ...</Portuguese>
|
||||
<Russian>Перевязывание...</Russian>
|
||||
<Russian>Перевязывание ...</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Applying_Tourniquet">
|
||||
<English>Applying Tourniquet ...</English>
|
||||
@ -244,7 +245,7 @@
|
||||
<Czech>Aplikuji škrtidlo</Czech>
|
||||
<Polish>Zakładanie stazy ...</Polish>
|
||||
<French>Mise en place du Garrot ...</French>
|
||||
<Russian>Наложение жгута...</Russian>
|
||||
<Russian>Наложение жгута ...</Russian>
|
||||
<Hungarian>Érszorító felhelyezése ...</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_MEDICAL_ACTIONS_Medical">
|
||||
@ -1014,7 +1015,7 @@
|
||||
<Key ID="STR_ACE_MEDICAL_CHECK_BLOODPRESSURE_CONTENT">
|
||||
<English>Checking Blood Pressure..</English>
|
||||
<French>Mesure de la tension ...</French>
|
||||
<Russian>Проверка артериального давления...</Russian>
|
||||
<Russian>Проверка артериального давления ...</Russian>
|
||||
<Spanish>Comprobando presión arterial...</Spanish>
|
||||
<Polish>Sprawdzanie ciśnienia krwi...</Polish>
|
||||
<German>Blutdruck kontrollieren...</German>
|
||||
@ -1093,7 +1094,7 @@
|
||||
<Key ID="STR_ACE_MEDICAL_CHECK_PULSE_CONTENT">
|
||||
<English>Checking Heart Rate..</English>
|
||||
<French>Vérification du rythme cardiaque ...</French>
|
||||
<Russian>Проверка пульса...</Russian>
|
||||
<Russian>Проверка пульса ...</Russian>
|
||||
<Spanish>Comprobando ritmo cardíaco...</Spanish>
|
||||
<Polish>Sprawdzanie tętna...</Polish>
|
||||
<German>Kontrolliere Herzfrequenz</German>
|
||||
@ -1182,7 +1183,7 @@
|
||||
</Key>
|
||||
<Key ID="STR_ACE_MEDICAL_CHECK_REPONSE_UNRESPONSIVE">
|
||||
<English>%1 is not responsive</English>
|
||||
<Russian>%1 не реагирует</Russian>
|
||||
<Russian>%1 не реагирует на раздражители</Russian>
|
||||
<French>%1 est inconscient</French>
|
||||
<Spanish>%1 no reacciona</Spanish>
|
||||
<Polish>%1 jest nieprzytomny</Polish>
|
||||
@ -1350,7 +1351,7 @@
|
||||
<Key ID="STR_ACE_MEDICAL_PlacingInBodyBag">
|
||||
<English>Placing body in bodybag</English>
|
||||
<Spanish>Colocando cuerpo en bolsa para cadáveres</Spanish>
|
||||
<Russian>Упаковка тела</Russian>
|
||||
<Russian>Упаковка тела ...</Russian>
|
||||
<Polish>Pakowanie ciała do worka na zwłoki</Polish>
|
||||
<French>Placement du corps dans la housse</French>
|
||||
<Hungarian>Test hullazsákba helyezése ...</Hungarian>
|
||||
@ -1391,61 +1392,73 @@
|
||||
<English>Heavily wounded</English>
|
||||
<German>Schwer verwundet:</German>
|
||||
<Polish>Ciężko ranny</Polish>
|
||||
<Russian>Сильно ранен</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_LightlyWounded">
|
||||
<English>Lightly wounded</English>
|
||||
<German>Leicht verwundet:</German>
|
||||
<Polish>Lekko ranny</Polish>
|
||||
<Russian>Легко ранен</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_VeryLightlyWounded">
|
||||
<English>Very lightly wounded</English>
|
||||
<German>Sehr leicht verwundet:</German>
|
||||
<Polish>B. lekko ranny</Polish>
|
||||
<Russian>Очень легко ранен</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Head">
|
||||
<English>Head</English>
|
||||
<German>Kopf</German>
|
||||
<Polish>Głowa</Polish>
|
||||
<Russian>Голова</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_Torso">
|
||||
<English>Torso</English>
|
||||
<German>Torso</German>
|
||||
<Polish>Tors</Polish>
|
||||
<Russian>Торс</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_LeftArm">
|
||||
<English>Left Arm</English>
|
||||
<German>Linker Arm</German>
|
||||
<Polish>Lewe ramię</Polish>
|
||||
<Russian>Левая рука</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_RightArm">
|
||||
<English>Right Arm</English>
|
||||
<German>Rechter Arm</German>
|
||||
<Polish>Prawe ramię</Polish>
|
||||
<Russian>Правая рука</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_LeftLeg">
|
||||
<English>Left Leg</English>
|
||||
<German>Linkes Bein</German>
|
||||
<Polish>Lewa noga</Polish>
|
||||
<Russian>Левая нога</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_RightLeg">
|
||||
<English>Right Leg</English>
|
||||
<German>Rechtes Bein</German>
|
||||
<Polish>Prawa noga</Polish>
|
||||
<Russian>Правая нога</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_painEffectType">
|
||||
<English>Pain Effect Type</English>
|
||||
<German>Schmerzeffekt-Typ</German>
|
||||
<Polish>Rodzaj efektu bólu</Polish>
|
||||
<Russian>Вид боли</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_painEffect_Flash">
|
||||
<English>Colour Flashing</English>
|
||||
<German>Farbblinken</German>
|
||||
<Polish>Pulsujące kolory</Polish>
|
||||
<Russian>Разноцветные вспышки</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Medical_painEffect_Chroma">
|
||||
<English>Chromatic Aberration</English>
|
||||
<German>Chromatische Aberration</German>
|
||||
<Polish>Aberracja chromatyczna</Polish>
|
||||
<Russian>Хроматическая аберрация</Russian>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
||||
|
@ -50,6 +50,8 @@ class CfgAmmo {
|
||||
//maxDeflection = 0.5;
|
||||
//incDeflection = 0.005;
|
||||
|
||||
canVanillaLock = 0; // Can this default vanilla lock? Only applicable to non-cadet mode
|
||||
|
||||
// Guidance type for munitions
|
||||
defaultSeekerType = "SALH";
|
||||
seekerTypes[] = { "SALH", "LIDAR", "SARH", "Optic", "Thermal", "GPS", "SACLOS", "MCLOS" };
|
||||
@ -120,6 +122,8 @@ class CfgAmmo {
|
||||
//maxDeflection = 0.5;
|
||||
//incDeflection = 0.005;
|
||||
|
||||
canVanillaLock = 0;
|
||||
|
||||
// Guidance type for munitions
|
||||
defaultSeekerType = "Optic";
|
||||
seekerTypes[] = { "Optic" };
|
||||
|
@ -58,10 +58,11 @@ switch( (_state select 0) ) do {
|
||||
case STAGE_COAST: {
|
||||
TRACE_1("STAGE_COAST","");
|
||||
TRACE_1("", ((ASLToATL _projectilePos) select 2) - (( ASLToATL _seekerTargetPos) select 2) );
|
||||
if(_distanceShooterToTarget < 1250 || _distanceToTarget < ( ((ASLToATL _projectilePos) select 2) - (( ASLToATL _seekerTargetPos) select 2) ) * 1.5) then {
|
||||
if(_distanceToTarget < ( ((ASLToATL _projectilePos) select 2) - (( ASLToATL _seekerTargetPos) select 2) ) * 1.5) then {
|
||||
_state set[0, STAGE_TERMINAL];
|
||||
} else {
|
||||
_returnTargetPos = _seekerTargetPos vectorAdd [0,0,(_projectilePos select 2)];
|
||||
};
|
||||
_returnTargetPos = _seekerTargetPos vectorAdd [0,0,(_projectilePos select 2)];
|
||||
};
|
||||
case STAGE_TERMINAL: {
|
||||
TRACE_1("STAGE_TERMINAL","");
|
||||
|
@ -41,15 +41,14 @@ if ( isNil "_lockMode" || { ! ( _lockMode in (getArray (_config >> "seekerLockMo
|
||||
|
||||
// If we didn't get a target, try to fall back on tab locking
|
||||
if(isNil "_target") then {
|
||||
|
||||
if(!isPlayer _shooter) then {
|
||||
// This was an AI shot, lets still guide it on the AI target
|
||||
_target = _shooter getVariable[QGVAR(vanilla_target), nil];
|
||||
TRACE_1("Detected AI Shooter!", _target);
|
||||
} else {
|
||||
_canUseLock = getNumber (_config >> "canVanillaLock");
|
||||
if(_canUseLock > 0) then {
|
||||
// @TODO: Get vanilla target
|
||||
// @TODO: Get vanilla target
|
||||
if(_canUseLock > 0 || cadetMode) then {
|
||||
_vanillaTarget = cursorTarget;
|
||||
|
||||
TRACE_1("Using Vanilla Locking", _vanillaTarget);
|
||||
|
@ -5,6 +5,7 @@
|
||||
<Key ID="STR_ACE_Weather_WindInfoKey">
|
||||
<English>Show Wind Info</English>
|
||||
<Polish>Pokaż inf. o wietrze</Polish>
|
||||
<Russian>Показать информацию о погоде</Russian>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
||||
</Project>
|
||||
|
Loading…
Reference in New Issue
Block a user