From 7617908ad363970e5935c1bee310d719592f71b5 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sat, 4 Apr 2015 01:44:49 -0300 Subject: [PATCH 001/246] Make menu open linearly to the right of the action point --- addons/interact_menu/functions/fnc_renderIcon.sqf | 6 +++--- addons/interact_menu/functions/fnc_renderMenu.sqf | 6 +++--- addons/interact_menu/functions/fnc_renderSelector.sqf | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/addons/interact_menu/functions/fnc_renderIcon.sqf b/addons/interact_menu/functions/fnc_renderIcon.sqf index 8054e9d800..018b3e2865 100644 --- a/addons/interact_menu/functions/fnc_renderIcon.sqf +++ b/addons/interact_menu/functions/fnc_renderIcon.sqf @@ -35,8 +35,8 @@ GVAR(iconCount) = GVAR(iconCount) + 1; if(_icon == "") then { _icon = DEFAULT_ICON; }; -_text = format ["
%4", _icon, _color, _color, _text]; +_text = format ["%4", _icon, _color, _color, _text]; _ctrl ctrlSetStructuredText (parseText _text); -_ctrl ctrlSetPosition [(_sPos select 0)-(0.125*SafeZoneW), (_sPos select 1)-(0.0095*SafeZoneW), 0.25*SafeZoneW, 0.1*SafeZoneW]; -//_ctrl ctrlSetBackgroundColor [1, 0, 0, 0.1]; +_ctrl ctrlSetPosition [(_sPos select 0)-(0.0095*SafeZoneW), (_sPos select 1)-(0.0095*SafeZoneW), 0.10*SafeZoneW, 0.035*SafeZoneW]; +//_ctrl ctrlSetBackgroundColor [0, 1, 0, 0.1]; _ctrl ctrlCommit 0; diff --git a/addons/interact_menu/functions/fnc_renderMenu.sqf b/addons/interact_menu/functions/fnc_renderMenu.sqf index 42e8de16a2..b3e3d3b401 100644 --- a/addons/interact_menu/functions/fnc_renderMenu.sqf +++ b/addons/interact_menu/functions/fnc_renderMenu.sqf @@ -92,7 +92,7 @@ if (_numChildren == 1) then { }; // Scale menu based on the amount of children -_scale = 0.17 * (((0.8 * (0.46 / sin (0.5 * _angleInterval))) min 1.1) max 0.5); +_scale = 0.17; // Animate menu scale if (_menuInSelectedPath && (_menuDepth == count _path)) then { _scale = _scale * (0.3 + 0.7 * (((diag_tickTime - GVAR(expandedTime)) * 8) min 1)); @@ -106,8 +106,8 @@ _angle = _centerAngle - _angleSpan / 2; { //BEGIN_COUNTER(children); private ["_offset","_newPos"]; - _newPos = [(_sPos select 0) -_scale * cos _angle, - (_sPos select 1) +_scale * (sin _angle) * 4/3]; + _newPos = [(_sPos select 0) + _scale * 1.10, + (_sPos select 1) + _scale * 0.30 * 4/3 * (_foreachindex - _numChildren/2 + 0.5)]; //drawLine3D [_pos, _newPos, [1,0,0,0.8]]; //END_COUNTER(children); diff --git a/addons/interact_menu/functions/fnc_renderSelector.sqf b/addons/interact_menu/functions/fnc_renderSelector.sqf index 44ed15e9c4..099d917c0f 100644 --- a/addons/interact_menu/functions/fnc_renderSelector.sqf +++ b/addons/interact_menu/functions/fnc_renderSelector.sqf @@ -24,7 +24,7 @@ private "_ctrl"; _ctrl = GVAR(iconCtrls) select GVAR(iconCount); GVAR(iconCount) = GVAR(iconCount) + 1; -_ctrl ctrlSetStructuredText (parseText format ["", _icon]); -_ctrl ctrlSetPosition [(_sPos select 0)-(0.05*SafeZoneW), (_sPos select 1)-(0.014*SafeZoneW), 0.1*SafeZoneW, 0.035*SafeZoneW]; +_ctrl ctrlSetStructuredText (parseText format ["", _icon]); +_ctrl ctrlSetPosition [(_sPos select 0)-(0.014*SafeZoneW), (_sPos select 1)-(0.014*SafeZoneW), 0.05*SafeZoneW, 0.035*SafeZoneW]; //_ctrl ctrlSetBackgroundColor [1, 0, 0, 0.1]; _ctrl ctrlCommit 0; From a658cafb4e46c92882da97fa8e5d5b5a09958f23 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sat, 4 Apr 2015 01:45:03 -0300 Subject: [PATCH 002/246] Remove line breaks from actions --- addons/interaction/stringtable.xml | 100 +++++++++++++------------- addons/magazinerepack/stringtable.xml | 20 +++--- addons/overheating/stringtable.xml | 20 +++--- 3 files changed, 70 insertions(+), 70 deletions(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index a4417df4e8..9c4a8932a6 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -435,16 +435,16 @@ A Terra! - Team<br/>Management - Team<br/>Management - Gestión<br/>de equipo - Gestion<br/>d'équipe - Zarządzanie<br/>oddziałem - Správa<br/>týmu - Управление<br/>группой - Gerenciamento<br/>de Equipe - Organizzazione<br/>Squadra - Csapat<br/>kezelés + Team Management + Team Management + Gestión de equipo + Gestion d'équipe + Zarządzanie oddziałem + Správa týmu + Управление группой + Gerenciamento de Equipe + Organizzazione Squadra + Csapat kezelés Red @@ -495,52 +495,52 @@ Sárga - Join Team<br/>Red - Team Rot<br/>beitreten - Unirse al<br/>equipo rojo - Rejoindre<br/>Rouge - Dołącz do drużyny<br/>czerwonej - Připojit do<br/>Červeného Týmu - Присоединиться<br/>к красной группе - Unir-se à<br/>Equipe Vermelha - Entra nella<br/>Squadra Rossa - Csatlakozás a<br/>piros csapathoz + Join Team Red + Team Rot beitreten + Unirse al equipo rojo + Rejoindre Rouge + Dołącz do drużyny czerwonej + Připojit do Červeného Týmu + Присоединиться к красной группе + Unir-se à Equipe Vermelha + Entra nella Squadra Rossa + Csatlakozás a piros csapathoz - Join Team<br/>Green - Team Grün<br/>beitreten - Unirse al<br/>equipo verde - Rejoindre<br/>Verte - Dołącz do<br/>drużyny zielonej - Připojit do<br/>Zeleného Týmu - Присоединиться<br/>к зеленой группе - Unir-se à<br/>Equipe Verde - Entra nella<br/>Squadra Verde - Csatlakozás a<br/>zöld csapathoz + Join Team Green + Team Grün beitreten + Unirse al equipo verde + Rejoindre Verte + Dołącz do drużyny zielonej + Připojit do Zeleného Týmu + Присоединиться к зеленой группе + Unir-se à Equipe Verde + Entra nella Squadra Verde + Csatlakozás a zöld csapathoz - Join Team<br/>Blue - Team Blau<br/>beitreten - Unirse al<br/>equipo azul - Rejoindre<br/>Bleue - Dołącz do<br/>drużyny niebieskiej - Připojit do<br/>Modrého Týmu - Присоединиться<br/>к синей группе - Unir-se à<br/>Equipe Azul - Entra nella<br/>Squadra Blu - Csatlakozás a<br/>kék csapathoz + Join Team Blue + Team Blau beitreten + Unirse al equipo azul + Rejoindre Bleue + Dołącz do drużyny niebieskiej + Připojit do Modrého Týmu + Присоединиться к синей группе + Unir-se à Equipe Azul + Entra nella Squadra Blu + Csatlakozás a kék csapathoz - Join Team<br/>Yellow - Team Gelb<br/>beitreten - Unirse al<br/>equipo amarillo - Rejoindre<br/>Jaune - Dołącz do<br/>drużyny żółtej - Připojit do<br/>Žlutého Týmu - Присоединиться<br/>к желтой группе - Unir-se à<br/>Equipe Amarela - Entra nella<br/>Squadra Gialla - Csatlakozás a<br/>sárga csapathoz + Join Team Yellow + Team Gelb beitreten + Unirse al equipo amarillo + Rejoindre Jaune + Dołącz do drużyny żółtej + Připojit do Žlutého Týmu + Присоединиться к желтой группе + Unir-se à Equipe Amarela + Entra nella Squadra Gialla + Csatlakozás a sárga csapathoz You joined Team %1 diff --git a/addons/magazinerepack/stringtable.xml b/addons/magazinerepack/stringtable.xml index d8fd5ca177..dad91754db 100644 --- a/addons/magazinerepack/stringtable.xml +++ b/addons/magazinerepack/stringtable.xml @@ -3,16 +3,16 @@ - Repack<br/>Magazines - Magazine<br/>umpacken - Reorganizar<br/>cargadores - Réorganiser<br/>chargeurs - Przepakuj<br/>magazynki - Přepáskovat<br/>Zásobníky - Ricarica<br/>Caricatori - Reorganizar<br/>Carregadores - Újratárazás<br/> - Перепаковать<br/>магазины + Repack Magazines + Magazine umpacken + Reorganizar cargadores + Réorganiser chargeurs + Przepakuj magazynki + Přepáskovat Zásobníky + Ricarica Caricatori + Reorganizar Carregadores + Újratárazás + Перепаковать магазины Select Magazine Menu diff --git a/addons/overheating/stringtable.xml b/addons/overheating/stringtable.xml index 5d2c9595df..bea2c61ca2 100644 --- a/addons/overheating/stringtable.xml +++ b/addons/overheating/stringtable.xml @@ -117,16 +117,16 @@ Проверить температуру оружия - Check<br/>temperature - Temperatur<br/>prüfen - Verificar<br/>temperatura - Sprawdź<br/>temperaturę - Vérifier la<br/>température - Hőmérséklet<br/>ellenőrzése - Zjistit<br/>teplotu - Conferir<br/>temperatura - Controlla la<br/>temperatura - Проверить<br/>температуру + Check temperature + Temperatur prüfen + Verificar temperatura + Sprawdź temperaturę + Vérifier la température + Hőmérséklet ellenőrzése + Zjistit teplotu + Conferir temperatura + Controlla la temperatura + Проверить температуру Checking temperature ... From 5bd1ee7ecd09525a204647c01136578e551bfb13 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Wed, 8 Apr 2015 07:21:34 +0200 Subject: [PATCH 003/246] Do not use a treshold for unassigned damage. --- addons/medical/functions/fnc_handleDamage_basic.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/medical/functions/fnc_handleDamage_basic.sqf b/addons/medical/functions/fnc_handleDamage_basic.sqf index 2986e1b2f7..6472c4af81 100644 --- a/addons/medical/functions/fnc_handleDamage_basic.sqf +++ b/addons/medical/functions/fnc_handleDamage_basic.sqf @@ -120,7 +120,7 @@ if (_selectionName == "") then { (_unit getHitPointDamage "HitRightArm") + (_unit getHitPointDamage "HitLeftLeg") + (_unit getHitPointDamage "HitRightLeg"); - if (_damagesum < 0.06 and damage _unit > 0.06 and alive _unit) then { + if (damage _unit > _damagesum and alive _unit) then { _unit setHitPointDamage ["HitBody", damage _unit]; }; }, [_unit], 2, 0.1] call EFUNC(common,waitAndExecute); From 1dcff94ec73a046050cd8eddd2d45510f49be16c Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Wed, 8 Apr 2015 07:35:31 +0200 Subject: [PATCH 004/246] Remove hitpart from bandage action name Since the context of the interaction menu makes it clear what body part you mean anyways, this is unnecessary. --- addons/medical/ACE_Medical_Actions.hpp | 12 ++-- addons/medical/ACE_Medical_SelfActions.hpp | 14 ++-- addons/medical/stringtable.xml | 74 +--------------------- 3 files changed, 14 insertions(+), 86 deletions(-) diff --git a/addons/medical/ACE_Medical_Actions.hpp b/addons/medical/ACE_Medical_Actions.hpp index 1fd6a99252..8a8c2adcca 100644 --- a/addons/medical/ACE_Medical_Actions.hpp +++ b/addons/medical/ACE_Medical_Actions.hpp @@ -6,7 +6,7 @@ icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitHead"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'head', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'head', 'Bandage')] call DFUNC(treatment)); @@ -77,7 +77,7 @@ icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitBody"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'body', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'body', 'Bandage')] call DFUNC(treatment)); @@ -177,7 +177,7 @@ distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitLeftArm"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'hand_l', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'hand_l', 'Bandage')] call DFUNC(treatment)); @@ -333,7 +333,7 @@ distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitRightArm"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'hand_r', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'hand_r', 'Bandage')] call DFUNC(treatment)); @@ -486,7 +486,7 @@ distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitLeftLeg"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'leg_l', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'leg_l', 'Bandage')] call DFUNC(treatment)); @@ -627,7 +627,7 @@ distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitRightLeg"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'leg_r', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'leg_r', 'Bandage')] call DFUNC(treatment)); diff --git a/addons/medical/ACE_Medical_SelfActions.hpp b/addons/medical/ACE_Medical_SelfActions.hpp index e77e276af2..c2a60898f4 100644 --- a/addons/medical/ACE_Medical_SelfActions.hpp +++ b/addons/medical/ACE_Medical_SelfActions.hpp @@ -14,7 +14,7 @@ class Medical { runOnHover = 1; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitHead"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'head', 'Bandage')] call DFUNC(canTreatCached)); exceptions[] = {"isNotInside"}; @@ -84,7 +84,7 @@ class Medical { icon = PATHTOF(UI\icons\medical_cross.paa); class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitBody"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'body', 'Bandage')] call DFUNC(canTreatCached)); exceptions[] = {"isNotInside"}; @@ -149,7 +149,7 @@ class Medical { icon = PATHTOF(UI\icons\medical_cross.paa); class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitLeftArm"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'hand_l', 'Bandage')] call DFUNC(canTreatCached)); exceptions[] = {"isNotInside"}; @@ -249,7 +249,7 @@ class Medical { icon = PATHTOF(UI\icons\medical_cross.paa); class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitRightArm"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'hand_r', 'Bandage')] call DFUNC(canTreatCached)); exceptions[] = {"isNotInside"}; @@ -345,7 +345,7 @@ class Medical { icon = PATHTOF(UI\icons\medical_cross.paa); class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitLeftLeg"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'leg_l', 'Bandage')] call DFUNC(canTreatCached)); exceptions[] = {"isNotInside"}; @@ -430,7 +430,7 @@ class Medical { icon = PATHTOF(UI\icons\medical_cross.paa); class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitRightLeg"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'leg_r', 'Bandage')] call DFUNC(canTreatCached)); exceptions[] = {"isNotInside"}; @@ -506,4 +506,4 @@ class Medical { statement = QUOTE([ARR_4(_player, _target, 'leg_r', 'RemoveTourniquet')] call DFUNC(treatment)); }; }; -}; \ No newline at end of file +}; diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 70506fa3e0..5121b6e452 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -63,78 +63,6 @@ Atadura Перевязать - - Bandage Head - Kopf verbinden - Vendar la cabeza - Bandażuj głowę - Obvázat hlavu - Перевязать голову - Pansement Tête - Fej kötözése - Atar Cabeça - Benda la testa - - - Bandage Torso - Torso verbinden - Vendar el torso - Bandażuj tors - Obvázat hruď - Перевязать торс - Pansement Torse - Felsőtest kötözése - Atar Tronco - Benda il torso - - - Bandage Left Arm - Arm links verbinden - Vendar el brazo izquierdo - Bandażuj lewe ramię - Obvázat levou ruku - Перевязать левую руку - Pansement Bras Gauche - Bal kar kötözése - Atar Braço Esquerdo - Benda il braccio sinistro - - - Bandage Right Arm - Arm rechts verbinden - Vendar el brazo derecho - Bandażuj prawe ramię - Obvázat pravou ruku - Перевязать правую руку - Pansement Bras Droit - Jobb kar kötözése - Atar Braço Direito - Benda il braccio destro - - - Bandage Left Leg - Bein links verbinden - Vendar la pierna izquierda - Bandażuj lewą nogę - Obvázat levou nohu - Перевязать левую ногу - Pansement Jambe Gauche - Bal láb kötözése - Atar Perna Esquerda - Benda la gamba sinistra - - - Bandage Right Leg - Bein rechts verbinden - Vendar la pierna derecha - Bandażuj prawą nogę - Obvázat pravou nohu - Перевязать правую ногу - Pansement Jambe Droite - Jobb láb kötözése - Atar Perna Direita - Benda la gamba destra - Injecting Morphine ... Morphin injizieren ... @@ -898,4 +826,4 @@ - \ No newline at end of file + From a209e49f1cba97ff82936a93711a4da5087cf4ac Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Wed, 8 Apr 2015 07:39:16 +0200 Subject: [PATCH 005/246] Remove partname from patientInfoDisplay for basic. --- addons/medical/functions/fnc_displayPatientInformation.sqf | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/addons/medical/functions/fnc_displayPatientInformation.sqf b/addons/medical/functions/fnc_displayPatientInformation.sqf index 2e0525f1a3..fb374f8631 100644 --- a/addons/medical/functions/fnc_displayPatientInformation.sqf +++ b/addons/medical/functions/fnc_displayPatientInformation.sqf @@ -47,8 +47,10 @@ if (_show) then { _allInjuryTexts = []; _genericMessages = []; - _partText = ["STR_ACE_Interaction_Head", "STR_ACE_Interaction_Torso", "STR_ACE_Interaction_ArmLeft" ,"STR_ACE_Interaction_ArmRight" ,"STR_ACE_Interaction_LegLeft", "STR_ACE_Interaction_LegRight"] select _selectionN; - _genericMessages pushback [localize _partText, [1, 1, 1, 1]]; + if (GVAR(level) >= 2) then { + _partText = ["STR_ACE_Interaction_Head", "STR_ACE_Interaction_Torso", "STR_ACE_Interaction_ArmLeft" ,"STR_ACE_Interaction_ArmRight" ,"STR_ACE_Interaction_LegLeft", "STR_ACE_Interaction_LegRight"] select _selectionN; + _genericMessages pushback [localize _partText, [1, 1, 1, 1]]; + }; if (_target getvariable[QGVAR(isBleeding), false]) then { _genericMessages pushback [localize "STR_ACE_MEDICAL_STATUS_BLEEDING", [1, 0.1, 0.1, 1]]; From d7bdb48547492d3b2a2fbfb7de04b4b0d0e73a01 Mon Sep 17 00:00:00 2001 From: Clon1998 Date: Fri, 10 Apr 2015 01:15:20 +0200 Subject: [PATCH 006/246] Update stringtable.xml --- addons/interaction/stringtable.xml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index dcd87056e2..6e82383964 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -4,27 +4,35 @@ Interactions + Interaktionen Torso + Körper Head + Kopf Left Arm + Linker Arm Right Arm + Rechter Arm Left Leg + Linker Arm Right Leg + Rechter Arm Weapon + Waffe Interaction Menu @@ -655,6 +663,7 @@ Passengers + Passagiere From eb60910aab10ddccfae9b139014f392a65222c6d Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Thu, 9 Apr 2015 21:58:45 -0500 Subject: [PATCH 007/246] Flashbangs: eyePos LOS check, 3d eye direction --- .../functions/fnc_flashbangExplosionEH.sqf | 31 ++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf index 3868994bee..29c3aedbe5 100644 --- a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf +++ b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf @@ -19,13 +19,15 @@ private ["_affected", "_strength", "_posGrenade", "_posUnit", "_angleGrenade", " PARAMS_1(_grenade); -_affected = _grenade nearEntities ["CAManBase", 50]; +_affected = _grenade nearEntities ["CAManBase", 20]; { if ((local _x) && {alive _x}) then { _strength = 1 - ((_x distance _grenade) min 15) / 15; + TRACE_3("FlashBangEffect Start",_x,(_x distance _grenade),_strength); + if (_x != ACE_player) then { //must be AI _x disableAI "MOVE"; @@ -48,30 +50,31 @@ _affected = _grenade nearEntities ["CAManBase", 50]; //Do effects for player // is there line of sight to the grenade? _posGrenade = getPosASL _grenade; + _eyePos = eyePos ACE_player; //PositionASL _posGrenade set [2, (_posGrenade select 2) + 0.2]; // compensate for grenade glitching into ground - if (lineIntersects [_posGrenade, getPosASL _x, _grenade, _x]) then { + + //Check for line of sight: + if (lineIntersects [_posGrenade, _eyePos, _grenade, _x]) then { _strength = _strength / 10; }; - // beeeeeeeeeeeeeeeeeeeeeeeeeeeeep - if (isClass (configFile >> "CfgPatches" >> "ACE_Hearing") and _strength > 0) then { + //Add ace_hearing ear ringing sound effect + if ((isClass (configFile >> "CfgPatches" >> "ACE_Hearing")) && {_strength > 0}) then { [_x, 0.5 + (_strength / 2)] call EFUNC(hearing,earRinging); }; // account for people looking away by slightly // reducing the effect for visual effects. - _posUnit = getPos _x; - _posGrenade = getPos _grenade; - _angleGrenade = ((_posGrenade select 0) - (_posUnit select 0)) atan2 ((_posGrenade select 1) - (_posUnit select 1)); - _angleGrenade = (_angleGrenade + 360) % 360; + _eyeDir = (positionCameraToWorld [0,0,1] vectorDiff positionCameraToWorld [0,0,0]); + _dirToUnitVector = _eyePos vectorFromTo _posGrenade; + _angleDiff = acos (_eyeDir vectorDotProduct _dirToUnitVector); - _angleView = (eyeDirection ACE_player select 0) atan2 (eyeDirection ACE_player select 1); - _angleView = (_angleView + 360) % 360; + //From 0-45deg, full effect + if (_angleDiff > 45) then { + _strength = _strength - _strength * ((_angleDiff - 45) / 120); + }; - _angleDiff = 180 - abs (abs (_angleGrenade - _angleView) - 180); - _angleDiff = ((_angleDiff - 45) max 0); - - _strength = _strength - _strength * (_angleDiff / 135); + TRACE_1("Final strength for player %1",_strength); // create flash to illuminate environment _light = "#lightpoint" createVehicleLocal (getPos _grenade); From 170985295d7d70badb5f29b94af5649b2e456d35 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Thu, 9 Apr 2015 22:00:03 -0500 Subject: [PATCH 008/246] Flashbangs: Medical Pain --- addons/grenades/functions/fnc_flashbangExplosionEH.sqf | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf index 29c3aedbe5..cbc9b647ea 100644 --- a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf +++ b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf @@ -76,6 +76,15 @@ _affected = _grenade nearEntities ["CAManBase", 20]; TRACE_1("Final strength for player %1",_strength); + + //Add ace_medical pain effect: + if ((isClass (configFile >> "CfgPatches" >> "ACE_Medical")) && {_strength > 0}) then { + private "_curPain"; + _curPain = ACE_player getVariable [QEGVAR(medical,pain), 0]; + _curPain = (_curPain + (_strength / 2)) min 1; + ACE_player setVariable [QEGVAR(medical,pain), _curPain]; + }; + // create flash to illuminate environment _light = "#lightpoint" createVehicleLocal (getPos _grenade); _light setLightBrightness 200; From 8fc73af1c41b9265170e4938cfa470804d5d3a81 Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Fri, 10 Apr 2015 16:26:09 +0200 Subject: [PATCH 009/246] Translation update Addition of french translation --- addons/interact_menu/stringtable.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index b3de5efddf..9a7e100fa8 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -4,23 +4,28 @@ Always display cursor for self interaction + Toujours afficher le curseur pour l'interaction personnelle Immer den Cursor für Selbst-Interaktionen anzeigen. Interact Key + Touche d'interaction Interaktionstaste Self Interaction Key + Touche d'interaction personnelle Selbst-Interaktionstaste Self Actions + Interaction personnelle Selbst-Interaktion Vehicle Actions + Interaction véhicule Fahrzeug-Interaktion - \ No newline at end of file + From 3541500947cd52a0b0598366c145401d152bee9f Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Fri, 10 Apr 2015 16:41:51 +0200 Subject: [PATCH 010/246] Translation changes --- addons/interaction/stringtable.xml | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index e85d0d3b47..36a1eebe3c 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -4,34 +4,42 @@ Interactions + Interactions Interaktion Torso + Torse Torso Head + Tête Kopf Left Arm + Bras gauche Arm links Right Arm + Bras droit Arm rechts Left Leg + Jambe gauche Bein links Right Leg + Jambe droite Bein rechts Weapon + Arme Waffe @@ -374,7 +382,7 @@ You were tapped on the RIGHT shoulder Te tocaron el hombro DERECHO Dir wurde auf die Rechte Schulter geklopft - On te tape sur l'épaule + On te tape sur l'épaule droite Zostałeś klepnięty po ramieniu Vállonveregettek Někdo tě poklepal na rameno @@ -386,7 +394,7 @@ You were tapped on the LEFT shoulder. Te tocaron el hombro IZQUIERDO. Dir wurde auf die Linke Schulter geklopft - On te tape sur l'épaule. + On te tape sur l'épaule gauche Zostałeś klepnięty po ramieniu Vállonveregettek Někdo tě poklepal na rameno. @@ -637,7 +645,7 @@ Equipment Ausrüstung Equipamiento - Équipment + Équipement Ekwipunek Vybavení Felszerelés @@ -656,6 +664,7 @@ Interact Interagiere + Interagir Interakce Взаимодействовать Interakcja @@ -664,6 +673,7 @@ Passengers Passagiere + Passagers - \ No newline at end of file + From 6de5cd76dcc94ce280985c5dff7001fbdba2c1ff Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Fri, 10 Apr 2015 17:10:51 +0200 Subject: [PATCH 011/246] Translation changes --- addons/inventory/stringtable.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/addons/inventory/stringtable.xml b/addons/inventory/stringtable.xml index f93e0d9627..03212ef203 100644 --- a/addons/inventory/stringtable.xml +++ b/addons/inventory/stringtable.xml @@ -4,11 +4,13 @@ Make Inventory Display Bigger + Agrandir la taille de l'affichage de l'inventaire Die Anzeige des Inventar vergrößern. 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. + 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 Normalerweise wird die Größe des Inventars mit der Größe der UI skaliert. Diese Einstellung allerdings vergrößert das Inventar bei gleichbleibender Schriftgröße, so dass mehr Einträge angzeigt werden können. - \ No newline at end of file + From 62bb1c6907240eacb058c5348e77bfe029b469c5 Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Fri, 10 Apr 2015 17:11:15 +0200 Subject: [PATCH 012/246] Translation changes --- addons/inventory/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/inventory/stringtable.xml b/addons/inventory/stringtable.xml index 03212ef203..8052da9b2b 100644 --- a/addons/inventory/stringtable.xml +++ b/addons/inventory/stringtable.xml @@ -4,7 +4,7 @@ Make Inventory Display Bigger - Agrandir la taille de l'affichage de l'inventaire + Agrandir la taille d'affichage de l'inventaire Die Anzeige des Inventar vergrößern. From 31a08d22d8897192df405a7df8237792fccc9558 Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Fri, 10 Apr 2015 18:18:45 +0200 Subject: [PATCH 013/246] Translation changes --- addons/nametags/stringtable.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/addons/nametags/stringtable.xml b/addons/nametags/stringtable.xml index 622df44aca..2f3b156c83 100644 --- a/addons/nametags/stringtable.xml +++ b/addons/nametags/stringtable.xml @@ -60,6 +60,7 @@ Show vehicle crew info + Afficher les informations de l'équipage Zeige Fahrzeugbesatzung Mostrar tripulantes Pokaż informacje o załodze pojazdu @@ -68,14 +69,17 @@ Show name tags for AI units + Afficher les noms des IA Show SoundWaves (requires player names) + Afficher "qui parle" (si noms affichés) Zeigen Schallwelle (benötigt spielernamen) Mostrar onda sonora (requiere Mostrar nombres de jugadores) Default Nametag Color (Non Group Members) + Couleur d'affichage par défaut (si dans aucun groupe) - \ No newline at end of file + From 100954da0660234bff27d821db379c6178f1437e Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Fri, 10 Apr 2015 20:19:19 +0300 Subject: [PATCH 014/246] Update stringtable.xml --- addons/captives/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/captives/stringtable.xml b/addons/captives/stringtable.xml index 897782747f..6bc9209abc 100644 --- a/addons/captives/stringtable.xml +++ b/addons/captives/stringtable.xml @@ -134,6 +134,7 @@ Surrender Kapitulieren Rendirse + Сдаться Stop Surrendering From a3a40a711cd8c55d179d054677453c5a7c5e1899 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Fri, 10 Apr 2015 20:24:23 +0300 Subject: [PATCH 015/246] Update stringtable.xml --- addons/captives/stringtable.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/addons/captives/stringtable.xml b/addons/captives/stringtable.xml index 6bc9209abc..168e0c06d3 100644 --- a/addons/captives/stringtable.xml +++ b/addons/captives/stringtable.xml @@ -134,27 +134,31 @@ Surrender Kapitulieren Rendirse - Сдаться + Сдаться в плен Stop Surrendering Den Kampf erneut aufnehmen Dejar de rendirse + Отменить сдачу в плен Only use on alive units Nur bei lebenden Einheiten verwendbar Utilizar solo en unidades vivas + Применимо только к живым юнитам Only use on dismounted inf Nur bei abgesessener Infanterie verwendbar Utilizar solo en infanteria desmontada + Применимо только к пехоте вне техники Nothing under mouse Es wurde nichts ausgewählt Nada bajo el ratón + Ничего не выделено From 9c8c38aaae64a661b8c38921f8a6cb647ebb9797 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Fri, 10 Apr 2015 20:28:05 +0300 Subject: [PATCH 016/246] Update stringtable.xml --- addons/attach/stringtable.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/addons/attach/stringtable.xml b/addons/attach/stringtable.xml index 27a0517f9a..a5ed43abf4 100644 --- a/addons/attach/stringtable.xml +++ b/addons/attach/stringtable.xml @@ -156,6 +156,7 @@ Colocar Posiziona Elhelyez + Установить Cancel @@ -167,12 +168,13 @@ Cancelar Annulla Mégse + Отмена Attach Failed Échec du Attacher Befestigen fehlgeschlagen - Присоединить Ошибка + Не удалось присоединить Error al acoplar From d198cb25e970911f4d148429704846b6517898c2 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Fri, 10 Apr 2015 20:37:21 +0300 Subject: [PATCH 017/246] Update stringtable.xml --- addons/common/stringtable.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/addons/common/stringtable.xml b/addons/common/stringtable.xml index a5f5368cd0..f1053e5a23 100644 --- a/addons/common/stringtable.xml +++ b/addons/common/stringtable.xml @@ -300,24 +300,28 @@ Aceptar Peticiones Accept Requests Anfrage annehmen + Принять запросы Ignoruj prośby Rechazar Peticiones Decline Requests Anfrage ablehnen + Отклонить запросы Akceptuj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. Acepta Peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones. Accept Requests send by other players. These can be requests to use / share equipment, perform certain actions. Anfragen anderer Spieler annehmen. Diese Anfragen können sich auf das Benutzen / Teilen von Equipment beziehen oder das Ausführen bestimmter Aktionen. + Принять запросы, отправленные другими игроками. Например, запросы на использование/совместное использование снаряжения, выполнение определенных действий Ignoruj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. Rechazar Peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones. Decline Requests send by other players. These can be requests to use / share equipment, perform certain actions. Anfragen anderer Spieler ablehnen. Diese Anfragen können sich auf das Benutzen / Teilen von Equipment beziehen oder das Ausführen bestimmter Aktionen. + Отклонить запросы, отправленные другими игроками. Например, запросы на использование/совместное использование снаряжения, выполнение определенных действий Feedback icons @@ -360,4 +364,4 @@ Die Bananen (Musa) sind eine Pflanzengattung in der Familie der Bananengewächse (Musaceae) innerhalb der Einkeimblättrigen Pflanzen (Monokotyledonen). - \ No newline at end of file + From 8ea96b3086029b7fc9ba54cb5996fe73ff5c15fd Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Fri, 10 Apr 2015 21:21:40 +0300 Subject: [PATCH 018/246] Update stringtable.xml --- addons/medical/stringtable.xml | 52 ++++++++++++++++++++++------------ 1 file changed, 34 insertions(+), 18 deletions(-) diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index a5dfdbba49..75f75b887a 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -5,6 +5,7 @@ Inject Atropine Atropin + Ввести атропин Inject Epinephrine @@ -12,7 +13,7 @@ Inyectar Epinefrina Wtrzyknij adrenalinę Aplikovat Adrenalin - Ввести андреналил + Ввести адреналин Adrénaline Adrenalin Injetar Epinefrina @@ -45,14 +46,17 @@ Transfuse Plasma Plasmatransfusion + Перелить плазму Transfuse Saline Salzlösungtransfusion + Перелить физраствор Apply Tourniquet Aderpresse anwenden + Наложить жгут Bandage @@ -156,7 +160,7 @@ Inyectando Epinefrina ... Wstrzykiwanie adrenaliny ... Aplikuju Adrenalin ... - Введение андреналина + Введение адреналина... Injection d'Adrénaline ... Adrenalin beadása... Injetando Epinefrina ... @@ -165,6 +169,7 @@ Injecting Atropine ... Atropin injizieren ... + Введение атропина... Transfusing Blood ... @@ -181,10 +186,12 @@ Transfusing Saline ... Sallösungtransfusion ... + Переливание физраствора... Transfusing Plasma ... Plasmatransfusion ... + Переливание плазмы... Bandaging ... @@ -196,11 +203,12 @@ Sto applicando la benda ... Bekötözés... Atando ... - Перевязывание.... + Перевязывание... Applying Tourniquet ... Aderpresse ... + Наложение жгута... Medical @@ -228,10 +236,12 @@ Check Pulse Puls überprüfen + Проверить пульс Check Blood Pressure Blutdruck messen + Проверить давление Triage Card @@ -240,10 +250,12 @@ Tourniquet Tourniquet + Жгут Remove Tourniquet Entferne Tourniquet + Снять жгут Give Blood IV (1000ml) @@ -275,6 +287,7 @@ Minor Gering + Незначительная Delayed @@ -297,7 +310,7 @@ No breathing - Дыхания нет + Дыхание отсутствует No respira Apnée Brak oddechu @@ -311,7 +324,7 @@ Almost no breathing - Дыхания почти нет + Дыхание очень слабое Casi sin respirar Respiration Faible Prawie brak oddechu @@ -421,7 +434,7 @@ - + Давящая повязка обеспечивает равномерное сжатие и дополнительную поддержку поврежденной области Ce bandage peut etre utiliser pour compresser la plaie afin de ralentire le seignement et assurer la tenue du bandage lors de mouvment. @@ -437,7 +450,7 @@ Slows down blood loss when bleeding - Уменьшает кровопотерю при кровотечении. + Замедляет кровопотерю при кровотечении Reduce la velocidad de pérdida de sangre Ralentit le seignement Zmniejsza ubytek krwi z kończyn w przypadku krwawienia. @@ -446,9 +459,7 @@ A constricting device used to compress venous and arterial circulation in effect inhibiting or slowing blood flow and therefore decreasing loss of blood. - Жгут используется для прижатия сосудов, приводящего к остановке или значительному уменьшению - кровотечения и сокращению кровопотери. - + Жгут используется для прижатия сосудов к костным выступам, которое приводит к остановке или значительному уменьшению кровотечения Dispositivo utilizado para eliminar el pulso distal y de ese modo controlar la pérdida de sangre Un appareil servent a compresser les artères et veines afin de reduire la perte de sang. @@ -465,14 +476,14 @@ Used to combat moderate to severe pain experiences - Для снятия средних и сильных болевых ощущений. + Для снятия средних и сильных болевых ощущений Usado para combatir los estados dolorosos moderados a severos Utiliser pour contrer les douleurs modéré à severes. Morfina. Ma silne działanie przeciwbólowe. An analgesic used to combat moderate to severe pain experiences. - Анальгетик для снятия средних и сильных болевых ощущений. + Обезболивающее для снятия средних и сильных болевых ощущений. Analgésico usado para combatir los estados dolorosos de moderado a severo. Un Analgésique puissant servant a contrer les douleur modéré a severe. Organiczny związek chemiczny z grupy alkaloidów. Ma silne działanie przeciwbólowe. @@ -509,7 +520,7 @@ Increase heart rate and counter effects given by allergic reactions - Стимулирует работу сердца и купирует аллергические реакции. + Стимулирует работу сердца и купирует аллергические реакции Aumenta la frecuencia cardiaca y contraresta los efectos de las reacciones alérgicas Augmente la Fréquance cadiaque et contré les effet d'une reaction Anaphylactique Adrenalina. Zwiększa puls i przeciwdziała efektom wywołanym przez reakcje alergiczne @@ -521,7 +532,7 @@ Препарат, вызывающий симпатическую реакцию, приводящую к расширению бронхов, увеличению частоты сердечных сокращений и купированию аллергических реакций (анафилактического шока). Применяется при - остановке сердца с уменьшением вероятности благоприятного исхода. + остановке сердца с уменьшенной вероятностью благоприятного исхода. Medicamento que dilata los bronquios, aumenta la frecuencia cardiaca y contrarresta los efectos de las reacciones alérgicas (anafilaxis). Se utiliza en caso de paros cardiacos repentinos. @@ -634,9 +645,7 @@ A medical volume-replenishing agent introduced into the blood system through an IV infusion. - Пакет физиологического раствора для возмещения объема потерянной крови путем внутривенного - вливания. - + Пакет физиологического раствора для возмещения объема потерянной крови путем внутривенного вливания Suero fisiológico inoculado al torrente sanguíneo de forma intravenosa. Un remplacment temporaire pour rétablir la tention artériel lors de perte sanguine, étant ajouter par intraveineuse @@ -675,7 +684,7 @@ - + Медицинский коагулянт для экстренной остановки кровотечения Un bandage servant a coaguler les seignements mineur à moyen. Proszkowy opatrunek adsorbcyjny przeznaczony do tamowania zagrażających życiu krwawień średniej i dużej intensywności. @@ -946,28 +955,35 @@ Unload patient + Выгрузить пациента Load patient + Погрузить пациента Place body in bodybag + Поместить тело в мешок для трупов Placing body in bodybag + Упаковка тела %1 has bandaged patient + %1 перевязал пациента %1 used %2 + %1 использовал %2 %1 has given an IV %1 applied a tourniquet + %1 наложил жгут From 4dbba270f9e33b85efe5c8f2119e8f9763e46584 Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Fri, 10 Apr 2015 21:07:38 +0200 Subject: [PATCH 019/246] Translations fixes --- addons/medical/stringtable.xml | 142 +++++++++++++++++++++++++-------- 1 file changed, 108 insertions(+), 34 deletions(-) diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index a5dfdbba49..7a40735c30 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -4,6 +4,7 @@ Inject Atropine + Atropine Atropin @@ -44,14 +45,17 @@ Transfuse Plasma + Plasma Plasmatransfusion Transfuse Saline + Solution Saline Salzlösungtransfusion Apply Tourniquet + Garrot Aderpresse anwenden @@ -164,6 +168,7 @@ Injecting Atropine ... + Injection d'Atropine ... Atropin injizieren ... @@ -180,10 +185,12 @@ Transfusing Saline ... + Transfusion de Solution Saline Sallösungtransfusion ... Transfusing Plasma ... + Transfusion de Plasma Plasmatransfusion ... @@ -200,6 +207,7 @@ Applying Tourniquet ... + Mise en place du Garrot ... Aderpresse ... @@ -218,75 +226,97 @@ Packing Bandage + Elastic Bandage + Pansement élastique QuikClot + Hémostatique Check Pulse + Vérification du Pouls Puls überprüfen Check Blood Pressure + Vérification de la Tension Blutdruck messen Triage Card + Carte de Triage Triage Karte Tourniquet + Garrot Tourniquet Remove Tourniquet + Enlever le Garrot Entferne Tourniquet Give Blood IV (1000ml) + Administrer du Sang en IV (1000ml) Give Blood IV (500ml) + Administrer du Sang en IV (500ml) Give Blood IV (250ml) + Administrer du Sang en IV (250ml) Give Plasma IV (1000ml) + Administrer du Plasma en IV (1000ml) Give Plasma IV (500ml) + Administrer du Plasma en IV (500ml) Give Plasma IV (250ml) + Administrer du Plasma en IV (250ml) Give Saline IV (1000ml) + Administrer de la Solution Saline en IV (1000ml) Give Saline IV (500ml) + Administrer de la Solution Saline en IV (500ml) Give Saline IV (250ml) + Administrer de la Solution Saline en IV (250ml) Minor + Blessé léger Gering Delayed + Différé Immediate + Urgence Immédiate Deceased + Décédé None + Aucun Normal breathing @@ -299,7 +329,7 @@ No breathing Дыхания нет No respira - Apnée + Aucune Respiration Brak oddechu @@ -320,14 +350,14 @@ Bleeding Кровотечение Sangrando - Seignement + Saignement Krwawienie zewnętrzne In Pain Испытывает боль Con Dolor - A De La Douleur + Ressent de la Douleur W bólu @@ -341,11 +371,12 @@ Tourniquet [CAT] Жгут Torniquete [CAT] - Garot [CAT] + Garrot [CAT] Opaska uciskowa [CAT] Receiving IV [%1ml] + Transfusion en IV [%1ml] @@ -370,8 +401,8 @@ Un apósito, material específico utilizado para cubrir una herida, se aplica sobre la herida una vez ha dejado de sangrar. - C'est un bandage, qui est fait d'un matériel spécial utiliser pour couvrir une blessure, qui peut - etre appliquer des que le seignement as ete stopper. + C'est un bandage, qui est fait d'un matériel spécial utilisé pour couvrir une blessure, qui peut + etre appliqué dès que le saignement a été stoppé. Opatrunek materiałowy, używany do przykrywania ran, zakładany na ranę po zatamowaniu krwawienia. @@ -387,7 +418,7 @@ Used to pack medium to large wounds and stem the bleeding Для тампонирования ран среднего и большого размера и остановки кровотечения. Se utiliza para vendar heridas medianas y grandes y detener el sangrado - Utiliser pour remplire la cavité créé dans une blessure moyenne et grande. + Utilisé pour remplir la cavité créé dans une blessure moyenne à grande. Używany w celu opatrywania średnich i dużych ran oraz tamowania krwawienia. @@ -400,8 +431,8 @@ Se utiliza para detener la hemorragia de una herida y favorecer su cicatrización. Se usa en grandes lesiones o politraumatismos. - Un bandage servent a etre inseré dans les blessure pour éponger le seignement et faciliter la - guerrison. Ce bandage est une option pour soigner les lession de politrauma. + Bandage pouvant être inseré dans les blessures pour éponger le saignement et faciliter la + guerrison. Ce bandage est optionnel pour soigner les lesions polytraumatique. Opatrunek stosowany w celu zatrzymania krwawienia i osłony większych ran. @@ -422,8 +453,8 @@ - Ce bandage peut etre utiliser pour compresser la plaie afin de ralentire le seignement et assurer la - tenue du bandage lors de mouvment. + Ce bandage peut être utilisé pour compresser la plaie afin de ralentir le saignement et assurer la + tenue du bandage lors de mouvement. Elastyczna opaska podtrzymująca opatrunek oraz usztywniająca okolice stawów. Brinda una compresión uniforme y ofrece soporte extra a una zona lesionada @@ -432,14 +463,14 @@ Tourniquet (CAT) Жгут Torniquete (CAT) - Garot (CAT) + Garrot (CAT) Staza (typ. CAT) Slows down blood loss when bleeding Уменьшает кровопотерю при кровотечении. Reduce la velocidad de pérdida de sangre - Ralentit le seignement + Ralentit le saignement Zmniejsza ubytek krwi z kończyn w przypadku krwawienia. @@ -451,7 +482,7 @@ Dispositivo utilizado para eliminar el pulso distal y de ese modo controlar la pérdida de sangre - Un appareil servent a compresser les artères et veines afin de reduire la perte de sang. + Un dispositif permettant de compresser les artères et veines afin de réduire la perte de sang. Opaska zaciskowa CAT służy do tamowanie krwotoków w sytuacji zranienia kończyn z masywnym krwawieniem tętniczym lub żylnym. @@ -467,14 +498,14 @@ Used to combat moderate to severe pain experiences Для снятия средних и сильных болевых ощущений. Usado para combatir los estados dolorosos moderados a severos - Utiliser pour contrer les douleurs modéré à severes. + Utilisé pour réduire les douleurs modérées à sévères. Morfina. Ma silne działanie przeciwbólowe. An analgesic used to combat moderate to severe pain experiences. Анальгетик для снятия средних и сильных болевых ощущений. Analgésico usado para combatir los estados dolorosos de moderado a severo. - Un Analgésique puissant servant a contrer les douleur modéré a severe. + Un Analgésique puissant servant à réduire les douleurs modérées à sévères. Organiczny związek chemiczny z grupy alkaloidów. Ma silne działanie przeciwbólowe. @@ -488,7 +519,7 @@ Used in NBC scenarios Применяется для защиты от ОМП Usado en escenarios NBQ - Utiliser en cas d'attaque CBRN + Utilisé en cas d'attaque CBRN Atropina. Stosowana jako lek rozkurczowy i środek rozszerzający źrenice. @@ -511,7 +542,7 @@ Increase heart rate and counter effects given by allergic reactions Стимулирует работу сердца и купирует аллергические реакции. Aumenta la frecuencia cardiaca y contraresta los efectos de las reacciones alérgicas - Augmente la Fréquance cadiaque et contré les effet d'une reaction Anaphylactique + Augmente la fréquence cadiaque et annule les effets d'une réaction anaphylactique Adrenalina. Zwiększa puls i przeciwdziała efektom wywołanym przez reakcje alergiczne @@ -526,9 +557,9 @@ Medicamento que dilata los bronquios, aumenta la frecuencia cardiaca y contrarresta los efectos de las reacciones alérgicas (anafilaxis). Se utiliza en caso de paros cardiacos repentinos. - Un medicament qui fonctione sur le systeme sympatique créan une dilatation des bronches, augmente la - fréquance cardiaque et contre les effet d'une reaction alergique (anaphylaxie). Utiliser lors d'arret - cardio-respiratoire pour augmenté les chances retrouver un ryhtme. + Medicament qui fonctionne sur le système nerveux sympathique créant une dilatation des bronches, augmente la + fréquence cardiaque et annule les effets d'une réaction allergique (anaphylaxie). Utilisé lors d'arrêt + cardio-respiratoire pour augmenter les chances de retrouver un pouls. EpiPen z adrenaliną ma działanie sympatykomimetyczne, tj. pobudza receptory alfa- i beta-adrenergiczne. Pobudzenie układu współczulnego prowadzi do zwiększenia częstotliwości pracy serca, @@ -548,14 +579,14 @@ A volume-expanding blood supplement. Дополнительный препарат, применяемый при возмещении объема крови. Suplemento para expandir el volumen sanguíneo. - Supplement visant a remplacer les volume sanguin + Supplément visant à remplacer les volumes sanguin Składnik krwi, używany do zwiększenia jej objętości. A volume-expanding blood supplement. Дополнительный препарат, применяемый при возмещении объема крови. Suplemento para expandir el volumen sanguíneo. - Supplement visant a remplacer le volume sanguin et remplace les plaquettes. + Supplément visant à remplacer le volume sanguin et remplace les plaquettes. Składnik krwi, używany do zwiększenia jej objętości. @@ -583,7 +614,7 @@ Blood IV, for restoring a patients blood (keep cold) Пакет крови для возмещения объема потерянной крови (хранить в холодильнике) Sangre Intravenosa, para restarurar el volumen sanguíneo (mantener frío) - Cullot Sanguin IV, pour remplacer le volume sanguin (garder Réfrigeré) + Cullot Sanguin IV, pour remplacer le volume sanguin (garder réfrigéré) Krew IV, używana do uzupełnienia krwi u pacjenta, trzymać w warunkach chłodniczych @@ -593,8 +624,8 @@ Кровь I группы, резус-отрицательная, применяется по жизненным показаниям для возмещения объема потерянной крови на догоспитальном этапе оказания медицинской помощи. - Cullot Sanguin O- ,utiliser seulement lors de perte sanguine majeur afin de remplacer le volume - sanguin perdu. Habituelment utiliser lors du transport ou dans un etablisement de soin. + Cullot Sanguin O- ,utilisé seulement lors de perte sanguine majeure afin de remplacer le volume + sanguin perdu. Habituellement utilisé lors du transport ou dans un établisement de soin. Krew 0 Rh-, używana w rzadkich i szczególnych przypadkach do uzupełnienia krwi u pacjenta, zazwyczaj w trakcie fazie transportu rannej osoby do szpitala. @@ -621,14 +652,14 @@ Saline IV (1000ml) Физраствор для в/в вливания (1000 мл) Solución Salina Intravenosa (1000ml) - solution Saline 0.9% IV (1000ml) + Solution Saline 0.9% IV (1000ml) Solanka 0,9% IV (1000ml) Saline IV, for restoring a patients blood Пакет физраствора для возмещения объема потерянной крови Solución Salina Intravenosa, para restaurar el volumen sanguíneo - Solution Saline 0.9% IV, pour retablir temporairement la tention arteriel + Solution Saline 0.9% IV, pour rétablir temporairement la tension artérielle Solanka 0,9%, podawana dożylnie (IV), używana w celu uzupełnienia krwi u pacjenta @@ -638,8 +669,8 @@ вливания. Suero fisiológico inoculado al torrente sanguíneo de forma intravenosa. - Un remplacment temporaire pour rétablir la tention artériel lors de perte sanguine, étant ajouter - par intraveineuse + Un remplacement temporaire pour rétablir la tension artérielle lors de perte sanguine, administré + par intra-veineuse Używany w medycynie w formie płynu infuzyjnego jako środek nawadniający i uzupełniający niedobór elektrolitów, podawany dożylnie (IV). @@ -676,7 +707,7 @@ - Un bandage servant a coaguler les seignements mineur à moyen. + Un bandage aidnat à coaguler les saignements mineurs à moyens. Proszkowy opatrunek adsorbcyjny przeznaczony do tamowania zagrażających życiu krwawień średniej i dużej intensywności. @@ -686,7 +717,7 @@ Personal Aid Kit Аптечка Kit de Soporte Vital Avanzado - Équipement de support Vitale + Équipement de support vital Apteczka osobista @@ -694,7 +725,7 @@ Содержит различные материалы и инструменты для зашивания ран и оказания специальной медпомощи. Incluye material médico para tratamientos avanzados - Inclue du matériel medical pour les traitement avancé, tel les point de suture. + Inclue du matériel medical pour les traitements avancés, tel les points de suture. Zestaw środków medycznych do opatrywania ran i dodatkowego leczenia po-urazowego @@ -706,182 +737,218 @@ Surgical Kit Хирургический набор + Trousse chirurgicale Kit Quirúrgico Surgical Kit for in field advanced medical treatment Набор для хирургической помощи в полевых условиях + Trousse chirurgicale pour le traitement sur le terrain Kit Quirúrgico para el tratamiento avanzado en el campo de batalla Surgical Kit for in field advanced medical treatment Набор для хирургической помощи в полевых условиях + Trousse chirurgicale pour le traitement sur le terrain Kit Quirúrgico para el tratamiento avanzado en el campo de batalla Bodybag Мешок для трупов + Housse mortuaire Bolsa para cadáveres A bodybag for dead bodies Мешок для упаковки трупов + Housse de transport des corps Bolsa para cadáveres A bodybag for dead bodies Мешок для упаковки трупов + Housse de transport des corps Bolsa para cadáveres Blood Pressure Артериальное давление + Tension artérielle Presión Arterial Checking Blood Pressure.. Проверка артериального давления... + Mesure de la tension ... Comprobando Presión Arterial... You checked %1 Вы осмотрели раненого %1 + Vous examinez %1 Examinando a %1 You find a blood pressure of %2/%3 Артериальное давление %2/%3 + Vous avez trouvé une tension de %2/%3 La Presión Arterial es %2/%3 You find a low blood pressure Давление низкое + Tension basse La Presión Arterial es baja You find a normal blood pressure Давление нормальное + Tension normale La Presión Arterial es normal You find a high blood pressure Давление высокое + Tension haute La Presión Arterial es alta You find no blood pressure Давления нет + Pas de tension No hay Presión Arterial You fail to find a blood pressure Артериальное давление не определяется + Vous n'avez pas pu mesurer de tension No puedes encontrar Presión Arterial Pulse Пульс + Pouls Pulso Checking Heart Rate.. Проверка пульса... + Vérification du rythme cardiaque ... Comprobando Pulso... You checked %1 Вы осмотрели раненого %1 + Vous examinez %1 Examinando a %1 You find a Heart Rate of %2 Пульс %2 уд./мин. + Rythme carquiaque de %2 El Pulso es %2 You find a weak Heart Rate Пульс слабый + Rythme cardiaque faible El Pulso es débil You find a strong Heart Rate Пульс учащенный + Rythme cardiaque élevé El Pulso está acelerado You find a normal Heart Rate Пульс в норме + Rythme cardiaque normal El Pulso es bueno You find no Heart Rate Пульс не прощупывается + Pas de rythme cardiaque No tiene Pulso Response Реакция + Etat de Conscience Reacciona You check response of patient Вы проверяете реакцию раненого + Vérification de l'état de conscience du patient Compruebas si el paciente reacciona %1 is responsive %1 реагирует на раздражители + %1 est conscient %1 ha reaccionado %1 is not responsive %1 не реагирует + %1 est inconscient %1 no reacciona You checked %1 Вы осмотрели раненого %1 + Vous avez examiné %1 Examinas a %1 Bandaged Повязка наложена + Pansement appliqué Vendado You bandage %1 (%2) Вы перевязали раненого %1 (%2) + Vous avez pansé %1 (%2) Aplicas vendaje a %1 en %2 %1 is bandaging you %1 перевязывает вас + %1 vous applique un pansement %1 te está vendando You start stitching injures from %1 (%2) Вы зашиваете ранения от %1 (%2) + Vous suturez %1 (%2) Estás suturando heridas de %1 en %2 Stitching Наложение швов + Sutures Suturando You treat the airway of %1 Вы интубируете раненого %1 + Vous traitez les voies respiratoires de %1 Estás intubando a %1 Airway Дыхательные пути + Voies respiratoires Vías Aéreas %1 is treating your airway %1 проводит вам интубацию + %1 traite vos voies respiratoires %1 te está intubando @@ -891,7 +958,7 @@ Ciągnij Táhnout Тащить - Tracter + Trainer Húzás Arrastar Trascina @@ -946,12 +1013,15 @@ Unload patient + Débarquer le Patient Load patient + Embarquer le Patient Place body in bodybag + Mettre le corps dans la housse mortuaire Placing body in bodybag @@ -959,15 +1029,19 @@ %1 has bandaged patient + %1 a pansé le patient %1 used %2 + %1 utilise %2 %1 has given an IV + %1 a administré une IV %1 applied a tourniquet + %1 a appliqué un garrot From e09a3b29d7e1a6ff14aad1faea54daf43c88ed29 Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Fri, 10 Apr 2015 21:20:09 +0200 Subject: [PATCH 020/246] Update stringtable.xml --- addons/medical/stringtable.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 7a40735c30..a744b55e82 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -401,7 +401,7 @@ Un apósito, material específico utilizado para cubrir una herida, se aplica sobre la herida una vez ha dejado de sangrar. - C'est un bandage, qui est fait d'un matériel spécial utilisé pour couvrir une blessure, qui peut + Bandage fait d'un matériel spécial utilisé pour couvrir une blessure, qui peut etre appliqué dès que le saignement a été stoppé. Opatrunek materiałowy, używany do przykrywania ran, zakładany na ranę po zatamowaniu krwawienia. @@ -432,7 +432,7 @@ lesiones o politraumatismos. Bandage pouvant être inseré dans les blessures pour éponger le saignement et faciliter la - guerrison. Ce bandage est optionnel pour soigner les lesions polytraumatique. + guerrison. Ce bandage est optionnel pour soigner les lésions polytraumatique. Opatrunek stosowany w celu zatrzymania krwawienia i osłony większych ran. From 4a996bf1473f8bf5aaf17aa768f356e0556e47c8 Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Fri, 10 Apr 2015 21:22:07 +0200 Subject: [PATCH 021/246] Update stringtable.xml --- addons/medical/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index a744b55e82..fee0f7ff47 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -418,7 +418,7 @@ Used to pack medium to large wounds and stem the bleeding Для тампонирования ран среднего и большого размера и остановки кровотечения. Se utiliza para vendar heridas medianas y grandes y detener el sangrado - Utilisé pour remplir la cavité créé dans une blessure moyenne à grande. + Utilisé pour remplir la cavité créée dans une blessure de taille moyenne à grande. Używany w celu opatrywania średnich i dużych ran oraz tamowania krwawienia. From d06e1b4a2a83143b84175764021f0cdf3e648f72 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sat, 11 Apr 2015 22:22:19 -0300 Subject: [PATCH 022/246] Break line extension --- addons/interaction/stringtable.xml | 100 ++++++++++----------- addons/laser_selfdesignate/stringtable.xml | 12 +-- addons/magazinerepack/stringtable.xml | 20 ++--- addons/overheating/stringtable.xml | 4 +- extensions/CMakeLists.txt | 1 + extensions/breakLine/CMakeLists.txt | 11 +++ extensions/breakLine/ace_breakLine.cpp | 71 +++++++++++++++ 7 files changed, 151 insertions(+), 68 deletions(-) create mode 100644 extensions/breakLine/CMakeLists.txt create mode 100644 extensions/breakLine/ace_breakLine.cpp diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index cd2d6ece01..0065833e0f 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -451,16 +451,16 @@ A Terra! - Team<br/>Management - Team<br/>Management - Gestión<br/>de equipo - Gestion<br/>d'équipe - Zarządzanie<br/>oddziałem - Správa<br/>týmu - Управление<br/>группой - Gerenciamento<br/>de Equipe - Organizzazione<br/>Squadra - Csapat<br/>kezelés + Team Management + Team Management + Gestión de equipo + Gestion d'équipe + Zarządzanie oddziałem + Správa týmu + Управление группой + Gerenciamento de Equipe + Organizzazione Squadra + Csapat kezelés Red @@ -511,52 +511,52 @@ Sárga - Join Team<br/>Red - Team Rot<br/>beitreten - Unirse al<br/>equipo rojo - Rejoindre<br/>Rouge - Dołącz do drużyny<br/>czerwonej - Připojit do<br/>Červeného Týmu - Присоединиться<br/>к красной группе - Unir-se à<br/>Equipe Vermelha - Entra nella<br/>Squadra Rossa - Csatlakozás a<br/>piros csapathoz + Join Team Red + Team Rot beitreten + Unirse al equipo rojo + Rejoindre Rouge + Dołącz do drużyny czerwonej + Připojit do Červeného Týmu + Присоединиться к красной группе + Unir-se à Equipe Vermelha + Entra nella Squadra Rossa + Csatlakozás a piros csapathoz - Join Team<br/>Green - Team Grün<br/>beitreten - Unirse al<br/>equipo verde - Rejoindre<br/>Verte - Dołącz do<br/>drużyny zielonej - Připojit do<br/>Zeleného Týmu - Присоединиться<br/>к зеленой группе - Unir-se à<br/>Equipe Verde - Entra nella<br/>Squadra Verde - Csatlakozás a<br/>zöld csapathoz + Join Team Green + Team Grün beitreten + Unirse al equipo verde + Rejoindre Verte + Dołącz do drużyny zielonej + Připojit do Zeleného Týmu + Присоединиться к зеленой группе + Unir-se à Equipe Verde + Entra nella Squadra Verde + Csatlakozás a zöld csapathoz - Join Team<br/>Blue - Team Blau<br/>beitreten - Unirse al<br/>equipo azul - Rejoindre<br/>Bleue - Dołącz do<br/>drużyny niebieskiej - Připojit do<br/>Modrého Týmu - Присоединиться<br/>к синей группе - Unir-se à<br/>Equipe Azul - Entra nella<br/>Squadra Blu - Csatlakozás a<br/>kék csapathoz + Join Team Blue + Team Blau beitreten + Unirse al equipo azul + Rejoindre Bleue + Dołącz do drużyny niebieskiej + Připojit do Modrého Týmu + Присоединиться к синей группе + Unir-se à Equipe Azul + Entra nella Squadra Blu + Csatlakozás a kék csapathoz - Join Team<br/>Yellow - Team Gelb<br/>beitreten - Unirse al<br/>equipo amarillo - Rejoindre<br/>Jaune - Dołącz do<br/>drużyny żółtej - Připojit do<br/>Žlutého Týmu - Присоединиться<br/>к желтой группе - Unir-se à<br/>Equipe Amarela - Entra nella<br/>Squadra Gialla - Csatlakozás a<br/>sárga csapathoz + Join Team Yellow + Team Gelb beitreten + Unirse al equipo amarillo + Rejoindre Jaune + Dołącz do drużyny żółtej + Připojit do Žlutého Týmu + Присоединиться к желтой группе + Unir-se à Equipe Amarela + Entra nella Squadra Gialla + Csatlakozás a sárga csapathoz You joined Team %1 diff --git a/addons/laser_selfdesignate/stringtable.xml b/addons/laser_selfdesignate/stringtable.xml index da8030cb69..c19dcb92ae 100644 --- a/addons/laser_selfdesignate/stringtable.xml +++ b/addons/laser_selfdesignate/stringtable.xml @@ -3,14 +3,14 @@ - Laser<br/>Designator On - Lasermarkierer<br/>an - Laser<br/>Designador encendido + Laser Designator On + Lasermarkierer an + Laser Designador encendido - Laser<br/>Designator Off - Lasermarkierer<br/>aus - Laser<br/>Designador apagado + Laser Designator Off + Lasermarkierer aus + Laser Designador apagado diff --git a/addons/magazinerepack/stringtable.xml b/addons/magazinerepack/stringtable.xml index d63dd2d2cd..e292d33b0b 100644 --- a/addons/magazinerepack/stringtable.xml +++ b/addons/magazinerepack/stringtable.xml @@ -3,16 +3,16 @@ - Repack<br/>Magazines - Magazine<br/>umpacken - Reorganizar<br/>cargadores - Réorganiser<br/>chargeurs - Przepakuj<br/>magazynki - Přepáskovat<br/>Zásobníky - Ricarica<br/>Caricatori - Reorganizar<br/>Carregadores - Újratárazás<br/> - Перепаковать<br/>магазины + Repack Magazines + Magazine umpacken + Reorganizar cargadores + Réorganiser chargeurs + Przepakuj magazynki + Přepáskovat Zásobníky + Ricarica Caricatori + Reorganizar Carregadores + Újratárazás + Перепаковать магазины Select Magazine Menu diff --git a/addons/overheating/stringtable.xml b/addons/overheating/stringtable.xml index 93025c41bb..9c12421fb8 100644 --- a/addons/overheating/stringtable.xml +++ b/addons/overheating/stringtable.xml @@ -119,8 +119,8 @@ Проверить температуру оружия - Check weapon<br/>temperature - Verificar temperatura<br/>del arma + Check weapon temperature + Verificar temperatura del arma Checking temperature ... diff --git a/extensions/CMakeLists.txt b/extensions/CMakeLists.txt index f0e21e9207..f5e6034d28 100644 --- a/extensions/CMakeLists.txt +++ b/extensions/CMakeLists.txt @@ -27,5 +27,6 @@ include_directories(AFTER "common") # Add extensions to build here add_subdirectory(fcs) +add_subdirectory(breakline) message("Build Type: ${CMAKE_BUILD_TYPE}") \ No newline at end of file diff --git a/extensions/breakLine/CMakeLists.txt b/extensions/breakLine/CMakeLists.txt new file mode 100644 index 0000000000..8981ec487e --- /dev/null +++ b/extensions/breakLine/CMakeLists.txt @@ -0,0 +1,11 @@ +set(ACE_EXTENSION_NAME "ace_breakLine") + +file(GLOB SOURCES *.h *.hpp *.c *.cpp) +add_library( ${ACE_EXTENSION_NAME} SHARED ${SOURCES}) +add_dependencies(${ACE_EXTENSION_NAME} ace_common) +SET_TARGET_PROPERTIES(${ACE_EXTENSION_NAME} PROPERTIES PREFIX "") + +if(CMAKE_COMPILER_IS_GNUCXX) + set_target_properties(${ACE_EXTENSION_NAME} PROPERTIES LINK_SEARCH_START_STATIC 1) + set_target_properties(${ACE_EXTENSION_NAME} PROPERTIES LINK_SEARCH_END_STATIC 1) +endif() \ No newline at end of file diff --git a/extensions/breakLine/ace_breakLine.cpp b/extensions/breakLine/ace_breakLine.cpp new file mode 100644 index 0000000000..f74eabdfc2 --- /dev/null +++ b/extensions/breakLine/ace_breakLine.cpp @@ -0,0 +1,71 @@ +/* + * ace_breakLine.cpp + * + * Takes a string and insert as many line breaks as needed so it fits a given width + * + * Takes: + * Localized string as string + * Example: "Check weapon temperature" + * + * Returns: + * String with line breaks + */ + +#include "ace_common.h" + +#include +#include +#include + +#define MAXCHARACTERS 11 + +static char version[] = "1.0"; + +extern "C" { + __declspec (dllexport) void __stdcall RVExtension(char *output, int outputSize, const char *function); +}; + +std::vector splitString(std::string input) { + std::istringstream ss(input); + std::string token; + + std::vector output; + while (std::getline(ss, token, ',')) { + output.push_back(token); + } + + return output; +} + +std::string addLineBreaks(std::string input) { + std::stringstream sstream; + int numChar = 0; + for ( int i = 0 ; i < input.length(); i++) { + if (numChar >= MAXCHARACTERS && input[i] == ' ') { + sstream << "
";//"<br/>"; + numChar = 0; + } else { + sstream << input[i]; + numChar++; + } + } + return sstream.str(); +} + +// i like to live dangerously. jk, fix strncpy sometime pls. +#pragma warning( push ) +#pragma warning( disable : 4996 ) + +void __stdcall RVExtension(char *output, int outputSize, const char *function) { + if (!strcmp(function, "version")) { + strncpy(output, version, outputSize); + } else { + std::vector argStrings = splitString(function); + std::string originalString = argStrings[0]; + + strcpy(output, addLineBreaks(originalString).c_str()); + output[outputSize - 1] = '\0'; + } +} + +#pragma warning( pop ) From 3be70556abfa3ccf92f015cf876fd5bc1dcfdc0a Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Sat, 11 Apr 2015 21:21:33 -0500 Subject: [PATCH 023/246] Medical: adjustPainLevels from outside functions --- addons/medical/XEH_preInit.sqf | 1 + .../medical/functions/fnc_adjustPainLevel.sqf | 40 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 addons/medical/functions/fnc_adjustPainLevel.sqf diff --git a/addons/medical/XEH_preInit.sqf b/addons/medical/XEH_preInit.sqf index c18a116e31..24ebe65024 100644 --- a/addons/medical/XEH_preInit.sqf +++ b/addons/medical/XEH_preInit.sqf @@ -17,6 +17,7 @@ PREP(addToLog); PREP(addToTriageCard); PREP(addUnconsciousCondition); PREP(addUnloadPatientActions); +PREP(adjustPainLevel); PREP(canAccessMedicalEquipment); PREP(canTreat); PREP(canTreatCached); diff --git a/addons/medical/functions/fnc_adjustPainLevel.sqf b/addons/medical/functions/fnc_adjustPainLevel.sqf new file mode 100644 index 0000000000..7e6ce2d5f1 --- /dev/null +++ b/addons/medical/functions/fnc_adjustPainLevel.sqf @@ -0,0 +1,40 @@ +/* + * Author: PabstMirror + * Interface to allow external modules to safely adjust pain levels. + * + * Arguments: + * 0: The patient + * 1: Added ammount of pain (can be negative) + * + * Return Value: + * The new pain level + * + * Example: + * [guy, 0.5] call ace_medical_fnc_adjustPainLevel + * + * Public: Yes + */ +#include "script_component.hpp" + +private ["_pain"]; + +PARAMS_2(_unit,_addedPain); + +//Only run on local units: +if (!local _unit) exitWith {ERROR("unit is not local");}; + +//Ignore if medical system disabled: +if (GVAR(level) == 0) exitWith {}; + +_pain = _unit getVariable [QGVAR(pain), 0]; + +_pain = _pain + _addedPain; +if (GVAR(level) == 1) then {_pain = _pain min 1;}; //for basic, cap at 1 +_pain = _pain max 0; + +_unit setVariable [QGVAR(pain), _pain]; + +//Start up the vital watching (if not already running) +[_unit] call FUNC(addToInjuredCollection); + +_pain From 8fc3b535079411ddc375b788449381ccb938a33b Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Sat, 11 Apr 2015 21:22:34 -0500 Subject: [PATCH 024/246] Use new medical func --- addons/grenades/functions/fnc_flashbangExplosionEH.sqf | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf index cbc9b647ea..ecba6f6233 100644 --- a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf +++ b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf @@ -79,10 +79,7 @@ _affected = _grenade nearEntities ["CAManBase", 20]; //Add ace_medical pain effect: if ((isClass (configFile >> "CfgPatches" >> "ACE_Medical")) && {_strength > 0}) then { - private "_curPain"; - _curPain = ACE_player getVariable [QEGVAR(medical,pain), 0]; - _curPain = (_curPain + (_strength / 2)) min 1; - ACE_player setVariable [QEGVAR(medical,pain), _curPain]; + [ACE_player, (_strength / 2)] call EFUNC(medical,adjustPainLevel); }; // create flash to illuminate environment From df17df61f980269842f0f9060bcc4cccd3e5a9ff Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sat, 11 Apr 2015 23:39:06 -0300 Subject: [PATCH 025/246] Improve the way lines are split --- .../functions/fnc_renderIcon.sqf | 2 +- extensions/breakLine/ace_breakLine.cpp | 34 ++++++++++++------- 2 files changed, 22 insertions(+), 14 deletions(-) diff --git a/addons/interact_menu/functions/fnc_renderIcon.sqf b/addons/interact_menu/functions/fnc_renderIcon.sqf index 1cfc13923e..068a1cdc46 100644 --- a/addons/interact_menu/functions/fnc_renderIcon.sqf +++ b/addons/interact_menu/functions/fnc_renderIcon.sqf @@ -35,7 +35,7 @@ GVAR(iconCount) = GVAR(iconCount) + 1; if(_icon == "") then { _icon = DEFAULT_ICON; }; -_text = format ["
%4", _icon, _color, _color, _text]; +_text = format ["
%4", _icon, _color, _color, "ace_breakLine" callExtension _text]; _ctrl ctrlSetStructuredText (parseText _text); _ctrl ctrlSetPosition [(_sPos select 0)-(0.125*SafeZoneW), (_sPos select 1)-(0.0095*SafeZoneW), 0.25*SafeZoneW, 0.1*SafeZoneW]; //_ctrl ctrlSetBackgroundColor [1, 0, 0, 0.1]; diff --git a/extensions/breakLine/ace_breakLine.cpp b/extensions/breakLine/ace_breakLine.cpp index f74eabdfc2..74a32cc66d 100644 --- a/extensions/breakLine/ace_breakLine.cpp +++ b/extensions/breakLine/ace_breakLine.cpp @@ -17,7 +17,7 @@ #include #include -#define MAXCHARACTERS 11 +#define MAXCHARACTERS 14 static char version[] = "1.0"; @@ -30,23 +30,32 @@ std::vector splitString(std::string input) { std::string token; std::vector output; - while (std::getline(ss, token, ',')) { + while (std::getline(ss, token, ' ')) { output.push_back(token); } return output; } -std::string addLineBreaks(std::string input) { +std::string addLineBreaks(const std::vector &words) { + std::stringstream sstream; int numChar = 0; - for ( int i = 0 ; i < input.length(); i++) { - if (numChar >= MAXCHARACTERS && input[i] == ' ') { - sstream << "
";//"<br/>"; - numChar = 0; + int i = 0; + while (i < words.size()) { + if (numChar == 0) { + sstream << words[i]; + numChar += words[i].size(); + i++; } else { - sstream << input[i]; - numChar++; + if (numChar + 1 + words[i].size() > MAXCHARACTERS) { + sstream << "
"; + numChar = 0; + } else { + sstream << " " << words[i]; + numChar += 1 + words[i].size(); + i++; + } } } return sstream.str(); @@ -57,13 +66,12 @@ std::string addLineBreaks(std::string input) { #pragma warning( disable : 4996 ) void __stdcall RVExtension(char *output, int outputSize, const char *function) { + //strncpy(output, function, outputSize); + if (!strcmp(function, "version")) { strncpy(output, version, outputSize); } else { - std::vector argStrings = splitString(function); - std::string originalString = argStrings[0]; - - strcpy(output, addLineBreaks(originalString).c_str()); + strcpy(output, addLineBreaks(splitString(function)).c_str()); output[outputSize - 1] = '\0'; } } From c3c815db8dc5a59f188a377b4a876bf1da75f918 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Sat, 11 Apr 2015 21:42:57 -0500 Subject: [PATCH 026/246] Better LOS check --- .../functions/fnc_flashbangExplosionEH.sqf | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf index ecba6f6233..8954d6c5cc 100644 --- a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf +++ b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf @@ -15,7 +15,7 @@ */ #include "script_component.hpp" -private ["_affected", "_strength", "_posGrenade", "_posUnit", "_angleGrenade", "_angleView", "_angleDiff", "_light"]; +private ["_affected", "_strength", "_posGrenade", "_posUnit", "_angleGrenade", "_angleView", "_angleDiff", "_light", "_losCount"]; PARAMS_1(_grenade); @@ -53,8 +53,15 @@ _affected = _grenade nearEntities ["CAManBase", 20]; _eyePos = eyePos ACE_player; //PositionASL _posGrenade set [2, (_posGrenade select 2) + 0.2]; // compensate for grenade glitching into ground - //Check for line of sight: - if (lineIntersects [_posGrenade, _eyePos, _grenade, _x]) then { + _losCount = 0; + //Check for line of sight (check 4 points in case grenade is stuck in an object or underground) + { + if (!lineIntersects [(_posGrenade vectorAdd _x), _eyePos, _grenade, ACE_player]) then { + _losCount = _losCount + 1; + }; + } forEach [[0,0,0], [0,0,0.2], [0.1, 0.1, 0.1], [-0.1, -0.1, 0.1]]; + TRACE_1("Line of sight count (out of 4)",_losCount); + if (_losCount == 0) then { _strength = _strength / 10; }; @@ -74,7 +81,7 @@ _affected = _grenade nearEntities ["CAManBase", 20]; _strength = _strength - _strength * ((_angleDiff - 45) / 120); }; - TRACE_1("Final strength for player %1",_strength); + TRACE_1("Final strength for player",_strength); //Add ace_medical pain effect: From 18cd0e7f39eef3ebabb350b4f5b8315ac061d613 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Sat, 11 Apr 2015 21:48:12 -0500 Subject: [PATCH 027/246] Use DisableAI from common --- .../functions/fnc_flashbangExplosionEH.sqf | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf index 8954d6c5cc..c84ee33b33 100644 --- a/addons/grenades/functions/fnc_flashbangExplosionEH.sqf +++ b/addons/grenades/functions/fnc_flashbangExplosionEH.sqf @@ -30,20 +30,15 @@ _affected = _grenade nearEntities ["CAManBase", 20]; if (_x != ACE_player) then { //must be AI - _x disableAI "MOVE"; - _x disableAI "ANIM"; - _x disableAI "AUTOTARGET"; - _x disableAI "TARGET"; - _x disableAI "FSM"; + [_x, true] call EFUNC(common,disableAI); _x setSkill ((skill _x) / 50); [{ PARAMS_1(_unit); - _unit enableAI "MOVE"; - _unit enableAI "ANIM"; - _unit enableAI "AUTOTARGET"; - _unit enableAI "TARGET"; - _unit enableAI "FSM"; + //Make sure we don't enable AI for unconscious units + if (!(_unit getVariable ["ace_isunconscious", false])) then { + [_unit, false] call EFUNC(common,disableAI); + }; _unit setSkill (skill _unit * 50); }, [_x], (7 * _strength), 0.1] call EFUNC(common,waitAndExecute); //0.1 precision is fine for AI } else { From 3d4a94a26407fbfa8fb416a65203af4e51728f3d Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sun, 12 Apr 2015 00:42:58 -0300 Subject: [PATCH 028/246] Make the fcs extension compile without C++11 --- extensions/fcs/ace_fcs.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/extensions/fcs/ace_fcs.cpp b/extensions/fcs/ace_fcs.cpp index a1a3b64ba7..9ab4939058 100644 --- a/extensions/fcs/ace_fcs.cpp +++ b/extensions/fcs/ace_fcs.cpp @@ -12,7 +12,7 @@ */ #include "ace_common.h" - + #define _USE_MATH_DEFINES #include @@ -113,9 +113,11 @@ void __stdcall RVExtension(char *output, int outputSize, const char *function) { double distance = std::stod(argStrings[3]); double result = getSolution(initSpeed, airFriction, angleTarget, distance); - std::string resultString = std::to_string(result); - strcpy(output, resultString.c_str()); + std::stringstream sstream; + sstream << result; + + strcpy(output, sstream.str().c_str()); output[outputSize - 1] = '\0'; } } From 69f147b202acf4ef77f404ac6edff0c9c6a6f291 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sun, 12 Apr 2015 00:43:36 -0300 Subject: [PATCH 029/246] Add the compiled ace_breakLine extension --- ace_breakLine.dll | Bin 0 -> 208384 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 ace_breakLine.dll diff --git a/ace_breakLine.dll b/ace_breakLine.dll new file mode 100644 index 0000000000000000000000000000000000000000..edd00c78eb0218bb0d24ec14735be5de37c859d9 GIT binary patch literal 208384 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

Z;yo~t)NG>!wW-PpWm+?pIg&LLwL1o^w5oA z!fyjLf`I(Sbleo%o*y^~20GbV=n;~ciG~!H3=*Td9*=%c-CmBe05ubai3D>l%nxAW zLcWU$tY*-J{pgCzAPI>C6A4VJISY=+VL9o@BAd0$_=4LpL3 zq9xQ*uYisn>D#OuN9gBn2y-E&cRv5oV7}QPG>W24-joCj4&z9@n0bO}WB=6MKvg(n zAJIS$;E@d!!p#~9Mk}3SD+ON^dZ95(g&Sw0Y@9XSWYsP2**H75SxNq;_woaFP=i(y z-3krWETrCK8cto|I^>LhU=5H2Y;p~d1!PzQkQYnS^Ak1=)w_n9X(=KtsHGlD&$rgz z$k!^<9SNHT>VF`}&B6EZR*m=IMen(rHy!i84j6TC>U%Se^dDb09~b2M&!wI^3meP% zfgAf(9azZ9LwO7um9WWa@^QTfp zK7?;o2<38H(jbgh+Mt?-E&ZYW4GQ+7%+Wdz5_Gh*d3}3ogBP$`e=u!ZOcoNs4Qw!B zVzTOI!3{$?k$^}OhyKUz6pWCm$MQ1Hfk_`)uCtK!_~pK1b7o}5D~YL;tpXg z+2=r)!v7>^u6`FrQy7@=senVc76e>7NUj~6Sc?xtT$q&&RG1>-agk#}hQsPi9;8{& z#di$C9mn>BO6ua=Z2{Xj2pb*#1MsK7U>#G*xQOJ&h~yskID^Nz*t!NQ@^Jj9UH>_V z^tw6}@3g16Y{jVpZJYbi@M_cFQu7`@gACo(KaGn@cP)}~IX_sc&$F{m;YZb+p|{+d zneY^mgx=RKF+SXcs+S|{GlbB5jo=Ki1Aam)O`oetPbZAvipNz#&G z*VS8r2O*MsU;J<9#|W9obrKr8K)hZ%v?V;} ziD?UK%>h_z;!7@9>(j0^CAJu*MSd3tjppEahyke$>wNu#fAqh#&N~&Gz1~By3&abb ze;a$!@uJ8pr7k9-2%A!N{l$rNlMR>7Z(zKBb(A=gQHOEKA5YffRa z5Z7*BWh`m29cvIXRNu#}!p_jTn8XDCD8Hw=&KDbOj-V6Tsv^=0leMEOn0wsu(m9ZzR^BYLD{~T*iIN6nB$oVDAZM(*-Pok)gV6L6px&6r6 zKl|Sr+iZCuVVy5A)}S)X%F|@!6U=Y0@+Dci19x|C#^oZh+wm#II4$YP7EH(ajl%N{ zkq^2X`HXMweLENZrzt#$!QR8qrE(FIM|0RZT#*5|O$i=L z24FW1oIe%`*Dp>x`D)&C~GIDv9j9kSx%mHN{+LuHW~!NPjJ z?n*^j?w;4vn9s*b?tdouhdhdF)@T_B-oOhuu`!H0^0DB#+Kr(AT#m!1K>!HnNE~_4 zm?rZBPnd0Kj8(hw9A0Z+0D>xKv?vVWR4LJKb^W<_gr@K^X~_6f zTkKKgHUQ#g`uqz=>|ZE2dZB|M74daTx=P{};fjL`F!EIhg7xk1UBnVNg<~c5Tk%CW ze9y(+rQ(_b$GL-T34;$BBsw~2VhJmO-f2_;74#W<0@Pn>zgG&DNu`cMdzhQJS(`R> z-mFlGQHb9}fg;j&o@F)rhD6H)atkErrE)x zRiBU7`g-pO4kz5Q)hc+^Ai^V)?P*St5{Pd1M*_5UAU#KA(uSi9HD`CM9_1 zt^t{w)gjmlVN?R6Mk2uduizkWmsPtO;F?uH#b++l`tK@;@g9vucchw=HbaRi>@so&xln>~5Ko&?P%3~2m73)vN1f%l3m&n`)d<4yLg{;rqNjh(#F~EJn0;@L8 zbU!PsHAzOdq@ZE8BP28q{aZZ}4e_Mi!+_BYJfK-$*8?^Jh=}I&Nc47OVzCCa* z2gt4i0-p$N_&B6D2H)=(r7Ks3rFZOnuG^Z~p-)KRO+6J@fNdDwEZjqSckzbx!%Kbn z9k_t2))B&&b-XXjK99Yu!(v03GQ14tX#i4&ujD4P|6w7=80{d$xLqq@*8m(Xm>oQX zvsmMO+qw){?vKZ@+Q3}{W+M&&CD!GQ}NHKT+`JL|H4oC%3O2#MBhbrr`lw4}-mSi>mP84lgEa1)NBb!6DvJ?N3`>Glq7 zD5ClK%cc-6(a^=JAfcCCkO2|%51#tKzBzgt6H>%JzMx$#iX4e>kOT{)_>*>#-3~=Vnk@;9r{^Ik8U!^>*&CxK%KZvU37_o)L_xt_;wQ#d>Tr%7Odhxgyo+v zLBQbU8s7ShIq{@&_8k)E=&ah-EQUiNQA}UbX}%TnrM+cZ4>|7DTWmcNzr44cxj-Xn zxZ8DiDfX7P%|vMs#eUq!N*hwtRonCUdVp#zUOUqbCg}T3~JvsKpj1(0iR1f z0&$9&`ZrJisejoN8~fqZqX;!3bYyB9?$QawXeY7N+@=mZfaVB!V$Z(gKe%F50k>3p z{80&^>N2>AyIuGa8usGOz7HKD_w4(I8UvLiPAW9-$Gy1%Nug1XLTL|;dQAL2E`GUz z6dLuk_}wFZ_lnZJcbWKIDSlUr-y-o#y(%<{hQH9L3h}Fo z-_7E8tN5)Fzt!TmR{TCBes_!CN5$`B;`ed<_Gr@RLzDwi4n#Q+vHxybMB983rdeEW+~BR=YuP&fUIe{N@Llit4mVyM3PgIH@|Lea(0W$VNI zft)}P`DOMl|J*ak{!?b}{0p*wyf!ksC@((ngFJjnNfg)NpQ{62BfPC0@UQfOZx3Y5 z<#(6by$9n1@4bU^7)%T_o57^O@6F)w!0#9oh;{$mb|4;3#4Cw-T@S>UsS)T49G}DT zz?b;I{Q@(BiGkH-Fe$La3=R*>4VP!|ZSOji*TC{VTN7FF%av!3cj_ze!xxGT_P^wx zTMx2bL^J%aK=W)5GzPy{x0uy5_&tU2^9aAAH+Bu0!JMYY9K;5_q$| z9l+Z_xOTz~>J4W$cb%gn@aQQMzai|k%$KYq->KET_(c9+bJ~PA8h07ta|r*FzTnUO zp%?rZ!fz(Lr#C#lKpHp(c>32E{(*3Q@QdxCqo>p#X8uW+=5Go3M81~5+n}?~(Gu7a znV)j7hxxMt$p2|U@A~yM{#XM(u*m2D29Jt};|b#URc{<7Z|V0ro+Ss;1wQs+YhZGi zJOlMWqSlEz_sdX=V(J`ifo}jAeI?v3;8QExAHAV|+24U^(B%;M(ZA8A3-zJM>^+=d zRPusPzz9!~6}*@4IaNKF0fHfoo5a-;zH`td=7& z@ah|;7#Tz7`w;5-gdnhwy$trt@PBpSKyx?#{p^k`Dmic%#p27Dfr4;R?f$uKV8lii zHJL><6guKls}`d{LeCf zdKyffgF>F_0|$hEI`C`wa?aZCpSus-a089E0YY{G4=adsCUO3>51irp zJO|cZ!jGGncQf-A_mP(@#n(F}KP&sn|7VDG{T}AO^>X>m@sQ)}K7z-81n~1K`mX*7 ze@za)=Z3H887jz6`S?YhV{hPJUWdrk)vd&HU?+&FtK%1V1K*^m)MYVv>uZeVN2&u) zQjiQ(rZyu`L7|BctVXKrXkX6+w0~C`enFp=^i3pv_g#)YL(IaSY!@^I>(`8KP~Xb@ z*Ih0@=b!f>{B?DcN#}V`U*|X-cpXvxnsJB{+SgUozJAKbi~hQa1RT~)GN1jsn1~|t zQKYvaL5hNt<&XIfl>dEb3}G5C3E%_Mf&SU%Bn#p>Sq)|8mCT%v%mn#MRxglF2z`Am zL8clY4ZT5LBglS&Tmul!R?|+PYO;GzV=YaAV3|KAv`*;2a#?11Z-iS3lJqe^jsT=b z?m{Mw`4maNK++|(j7CH`5amFW15pk{IS}PQlmk%?L^%-UK$HVf4n#Q+&2;3ZvulMz@>cW*J_^@L?JDFkCOg+Zf&}!?g@QA;JghiLsa% zzs=ZP65@vpZx`YJs=7q+MmZ4WK$HVf4n#Q+3h!xg{z;I?i zz)VxdG1E&3UU)dxdVqmI_W0-ljQ>xhAxdVH15pk{IS}PQlmk%?L^%-UK$HVf4n#Q+ zmvRD za5yU zX>Z0_|6s%ymu)O8EiSTEs-EJq^|p%g%3`&+yo}k!A8F>_M%P-k+>^QZZkt+OZYwP> zTQB2{d_5wa!2c}hi9;E`flEzNtea8xzrz15+z7;-HE1W6eSkk2QBUjXSnIz>JQtT& z7OW|(bWNS=DqpvzShZEUR9U*Bbf>K=EH3St*qyefu&8H}$gZNCpMf49Xek4|D#FzW zPXeu@hbh*fa91Plr%1aOap&P?e~e;`So_kkQUeUt3ri=1C-BX8SP{`>Of3%nZPH zMub-zVH^C+HJ;n=hQHC}sWfHcHasW41sU@x))@#FA^gK#iq&>Zx_G~0O@~W{Tkk4! zd5YI6djaznp51Vn4?#bNZ^EFBRFA8015hblfa^k<7p|ZeT;-NZ)di@TZ^v4%L)uRb zT+j4@i^2?)HkZd!?g3s5MdI&Kiu#JHPI&uKAa5 z)cSV$AF6x!k=@_?*0&%1&UgRyvG0BV2ao^oM?Zez$)7y+^iO~GZ+o8k`7ieV@>kF9 z`}J?0+yC3=U#LIuyBA;j_m^L3IC!Y>@b8ZtZ94Yq@e{AT{zmi3Q*WOB!&`5+yz}mR zt$+N}pWEL5;4kfe{qS#k;P1hXkN)H1&QCu5$C>~9>}=P$^PgY%;$ldNiH(cz*MC65 zz(Io(hg@N?UU}8fq^pNrlYH%U*AKtp#+z&-ZXTI3>Xy-CZoO^nxbYKipLoZl)X7us zyelnzYDVU?yYI;=T(h>wwQjw;xa9uQ4Q1sO4|pn7ZR4iRTOM4oGJjRU>dU8pZR@t} zJN|Fi|NnOR|J(e}o<3uyeb(%pIdkuw=a|31xo}bL;w5=Ymo2|f^8fPb|4;CL-i(69 za~yUB{`@5l`=U8e%n)`gm~UU4y=XbZGZrs*+Bsn`ykOqE?8SIOID6haMRET??yKDX zqGDZ%@ctoj)=4+USe-`r$Uen7(+HosF2g!f+)W1VP(e>5z{`oG%^F3;w#)D4t^ z3FDLrsABFGZrnLYMWoK+FWJj+IqKbgKI;%XA9OewzcIO zDoS0d3z~FkDI=&vQh}VHSYA`CMbO=@JuY=R>S~d?-@S?*HiY^3ou{NKlR(2vguqz* z%_^;&<#D;_=epFq!ct9yXGesysrC^zAvw;v8g53p$G*8(b$ZIzx+*IbWrI?wtX0Yt zkK)3=2}+StihpAL+hDHgZ@^NNYhC_*HzHhzu(<|!I3oN=M0j^Z_?r>oZ$*T^9TDCi z+l}+L5n<}6Tzdnbk_eZBe^WvI2K-jyAODJsf8#KBJB)ue5yzM<#y>@*+%Dp87jew% zL@fWZ4Sy!Mu@-KFvIf7@^cA#1xw5fW+yX$Uh&Q2fkzRqA$eh`VrmTmnL_GiIB3z1+ z&2Sl@`In8H9;I0D-=P#DycRkK+8OC<@T7@2Ghd-n77-)qHEC27NtdEXdWf4em}N_! zD{+=XjIwO`%-YH_3CD7Xrx4U@prXjgK^Rio{k#~|5~4C9ZYgLl0tQz^>|#JgK0Cm_ zvWPsnNbmW~vd!`oMV6x|5;vcTkF*mHX=Q%MNY2y^8>UjqAshG`XLI1s#=sW*DGtZ& zMMbwGfIlaiKO1hQYprX;8kcDB`Q;nK;RP^JFgh2jGBYw;Td#3tJXb3fIOb|)q9L;@ zJjLuojzZ5`(SEKq9<9(LVG7Gc5alSquK+J`D!@fNaAnB1MF9@xS7y1^D02(Tl-xp9 z^AsTgf3rNrBDC18c`A*#rLLkfm+`PzlOacWnMlpm48KriUIqCSz$<`L0HYvX(aMTd zSJC)NwNQ1DVaD_QFx(WCZ%`DPa8PQI?G}t*YYNww1E#WEQ{Ch5FUNw|2p6uyn!J!S ziZok9nk^!&w0vXX{fbhdxjbt5cw{M8Dm>%Yx{J$1-U^Q`94>oMQOaDK#y{vPEG;Z6 zQrxf(p-5pOa+jBixb+}FwXN|KtA)jEcUReZ5x@39m*BsN%!GiQLy)Oe7AhJltAUov zO~pb`DmS@`iYwjY*A)8BvTnkl9LOs8 z7JxBvDTC4SVMuVfVf!*eDRcLEUVP*-#u7ypdkX4MJcWrrT`Gz&c zET$XIU0lk}V3x6_ytH^DK+NYt4=gyUZ19S5j|xt@DqZ8(cnTjZE-gmI@K;vu+2mS} zhw)`w5UxZsMZ~QszaMq$0fz_30JD!b+q2li)}utgNBVk~XG27?`CO`PMz1c{JRBnp z7}VRXy2@Z1f>arCh3N1elDE#|DqHIg7h^v6z+=FGk%dJOdDgf}St%)}q>gfEP>66u zJSuF)hx;ED3Zws-X|k_%_b)S^ea8%!K*HE)=5w(J^S$KCct~6Enl&!L^zJx}*+x1D zE`AV=X+DDq-C^06M0*u!Dp(S(p2B{|MpZqiKTS_)E;FtY14|(qo-)!M2Q{g9T``8H za2)%)(cR5B`fzR~%vj(sOBD?yL_krDeqI*Q{NXs8Q5j?n$1$ArvskNrKDKWRzvHL! zxlQ=lN(=n?^QJ2&#PbZL3I2UKIm%(-&rx22KO-ks*<-{%YCKmN>80X%v9c0A@#Mf~ zd6~k`R>lc`o?;XJ3?)(c(-lSdbCk}f2|rh97yf<93E}4|`-Hz(d0P0hmB)m?M0v>Y zx5A&bXu47={29tJ;m=cYgrBRV!Jlc*R#JpNL$L~fo}vgpSLu9;<<3#s;Lll{tDJ^E zf59T9!SMGAf4=f4eCOinN)>#2Zmv=x{OQVS;X`v3{sJXU_%oE@!k?)m3V)W;^%Lf^ zEA7IctuzZiM`;kgL)j<%`O4$MpQAh^{A^{j@b6RH!e68;7XA`trtp_56NR6r*x={p z%~F!#&$Q<%NsOOATd@j%iIQme@$i@AW-Aw-jJ3|5zDPL(e@4!HrGx%`pwEauZTKhP z&!0C_X@H+|?`&m1pYNNe>@)nQ;WPhZhW`+J=b|}EHT>MXdleP_ec7`VH~f3S*JZ}@ zJmWbH{^G?81ihqZ44&yH!zZ1jpMGNEb%_J4cg80sjE|3tPqbPSZb(=#!>MG$%@2>K z^TXpQwaPMRSH;kDU5X9PgMVBP*w`JEA<7`(FUFc<0W_=J9xyUBSDB;CS7!H-0(}a( z9MCQa5sBTzyGXec+gqvl$C&Ye$p$r2f2JO7gDb}`wP(`j00nbEi%qOribUKxLGcCw z>qbo~5yDI(a!`M#uFZ7-b<<+hc0HcTgg#p=^!Z3!OfN>6#Yiv3?}G*$HOoOl^OX1r zSA_JnBAwbS%e0|1>e)7=l;L*^XlJQRtH3{ElsSrpt~voJb3`pA)(wc|D#0co??>$< z?J6{D)}E`hN?mZQ z!!zs5S~7+bKz_1DmvRbP2cRiAa_z(VNr~ysIaAQY)dlIA5SAmey(fj+y9{|*V;A7a zt@Ws@4JA|{FIQlsM`AC9FKf$K;*}{I0BKU+TdwX1m(#ag5lheZCT^48GqCnvjAynB zc`s8Whsi6_H{riTE_&BvVz?eAO(x&^szFgNeos=;!ui?Sg`!u;`mlHPg@g8P7a%Lb zxHu5V_M4>K6~<@M@zvUI6Uyql#7o;Svb;P0iSj6=?4$ooc~ipWRX`?X+iwIe4{&lF zUJ9;V+H=glXtrKAzb1$AeRX~nfO4*!H=|q?eU=pV*a(@TrDn4_bBKJ8es2EQ< zj=B-US%8)xlecnYCTC0;fmo#svduVObLNhuZ(>CIe099EG|@g~Vyp~P zYs%9^SRT!KuS2_(3*K!SS#&_ zE&Fip9DWsiY8`3txuMP={TH!T8~iHxBjE3TCf2$ceg%9QSQf*_(n(2!e*ykP_#yaK_zuxG zI6tz_tP^$4LmcZZM}-;6Sp2hLq@-k1f~96P43Bel#;T=xrZZo)55POxoymS9Idsk@C3xSc()O$9zhnNwQoT3=XdTeAh`=t|cE z8kVtKgU!T(kf(6A*ve?Z-cX@#QD$jnYq@L_QN=W2Z@`+Jt1|_}{@GER}RAqB+H;F+p`{3 zsWe(&+VgtW*;eieQw@HVRcPw%FgU_9k<5WGdOR8ovMAG(Rc^6>eiN5LTKHMe2Fwwx zR~DG9D+C=68;VtmIdGWdDz+Ks9?pU_CFm)(c|1;2?ir1;Y%@v=D=Td|#Sju$e7D$U zhU?B`#Wo!W%nYDxkEd`8Vk6_a!ENBs7{#`DONFZ!lGW%t=(e=a7O%CbZkRlaY%uV7 zibgA|(J2bog9-8=9i+Bm3q=>EDvf>G2GcIYR}j0}fZ51HZ(j zWw5UVp$eCZ7PpD|uQp*|RaA>%oOuv(Y^1JsxlOYFrzAzdei=!Z@FRkz2u`4Wm+-Am zmMN<%N-=t{=c0Pt$6JwaTU%OQsd-$oe!bHpQdgI6C@U8GewD@R+3qF=$^{JDEAl~y zY}<|NRF0!PS}t5nPZ+fMqQ#5n0LN;3jP?zI&Q73gO$~#>0(;yA5vZR>0tZG(2S$+;+Gzw<^jw z_{btO24shhp(vx^ZigFx_if@#^;m}K@G}+<pa9biSb^;=gez3fos;3a3fC0#d2Ol37^e#g*5P!id?+YT z-NkG(4B!O?m1p&akHS3!R|QuAw-|0RTq0ci z3!npTH=GLRgc}E^z@2^``QgaFr{UMasc?(o(%{TYZ!u4MtW4!@x zE!=vzPfBB~*STY?cDO>gm+^cE?lhe3o_lO;)32>7EmXJB$4r9f)n(;nKU0(o z6v}8ISzU+)|Q(w41+r^&pN8cNK$UauWK`6%4|2!xY?$xP~E_uk5af-%YDG9 zfI!$&u0jQJ72y%e@^Ox2~R5c`KX8iURBi1FCwc9mkp!8rJ3 z@R8%RnE_?>9A~?S<1kXf6c&|W@2=eQHH0_9=bRK7c5TL!qHF^Xw~Yqhs6N>!Cy+C) z6Oc9|PgFA;hbYBn0w65%z&E9^s2ohgs%A}jxfr`LjkbcQDVr#W1*)=S{=M@TES-<> z3~h18q%$~yA_O3FFHM9(;kqEn}qX{Du* zMHHvxinH$K%5Gxnoq)-Pl|B!@PS~P*pE1H=BB#{umll^5m2b+W0*W&Oh+k6a@%7G{cq8x~FAj*L#2cjH^av;iqCYDgOf+!F6!}YB zGmUt&jL7tPz*W>MA8Ffc#8tyL^AWZ$+Ir_V@vDGu=!Kj4PaAQqhEF&%Ph@?1=QUv- z2YfQ_H!z>+ljdagV~UH^PMN3wLDxHoy=!_sJvc z*4nEK!Vp)d5#MF_W`3rBS$^W@UwllQb@IucyopDAjuE#Keid8?oE7&!n0ewDz+Yq; zk$C0-FL`YK5vLRGX#=krPoKEzjrb<`kvxmU6IoUyo=CnDAIr*uyBuGU6o%=|S5rtH z0{!!h`VyXh#Jk#vQ{ngK3-k2Fm)>}ImVtk#0lzPz4Cdvzh{Hx)C;Z;!B;lTm-sPIO z%r=eWQzU-2HOpWfBVi)jjkwG|@;;K!X8iEjIIA0Un9uZycdHTi5d6qKMR-#dBFpWK z!^D>b_@+Maw;FLB@FT|=!uN&0Hx3iO8}MUr&xZL-pKY6I#5v*jE`xdcYTMp;Oq`Db z{-IuFu)jWG#O*PB!kKv@dDAV|6h?w;vr7TH2)&&7g-L|mhlIFPXPXK1PzSq2iIc6oq^xGPY{NG z%*%G=Nve5J|IkAJdDgoeDeUeIRY2+)Z%%!5yy1G z@h_6L$UID|09-=^9@5l|=hg^Zgz1Z>$b7{0IN%cB?peR#cpd|1(nXlQa7E@Lt|q`O zi@-(MaN~J1TqJFT>#HwD<|V!)d=+U=1U}}e$Ma!0Q-2^#U$jN$Bd*DS`ycIn4OmrG z_V)qF$jF$aBBLTQW6F>7{rzzjEG#NgN-PT$NK6z0EG#Q3r=fC+iZP}fMPrJ}8Z;^@ z$0)6sA|<6_jEanm9Hy9J%F3DE-#YgmJzPKMoq7Ln@AGn==XduxXRp2X+H3E<_S*a2 zyLZ2j7s(dYf$#4CKR=?|pKSiL#4ihUsYpxrbP>NyJm-b+Bf9nhTB0gDo&I7#q zA)5Wwk3Suy9fkGz>M&k)cy93VBAWg2@~0zSsi5of@uIrvqvve{`4Qdz%I;4~{0czF zA}!t1MKT2NoECaV@ooe@{QcIShT>~MSMK9Oc~|1O8u0W*H2W)~KOONJyaqK8u7Tne z40A&*+U9o*Q_&Q`6u%I`EYl;I4}hbMNG1OHSq6gfP9V$Ju)^4`}UFV(6W86uj1$A`4#jo zGqk5;%%?$Gvc3tpH$%@vL+geVdOl4I?kj0yuF&PJ8T#Yvu{WU?|1tKRr2FC!PnvgC z;=Uee0sMK<+?i-SUU9h34(&@x?`i%{p+CMLR0eua>xlk%lJ#xcLJSwBY4ho)CnOKW z`7cjDZXU*7ea3emTAy!)%Gwa3rMjRwX~jX(Qa&v5AsJMJlz$3Bs*8&dlHWQ#6pvem z-uw0D<Jd^N&mbgT>k(2Oe-6dt*40(4xwq_bpB=pHREB_$KJ_r@i+%KE zhe2QKqpv#zeSiuPx^B;4Vgud-!lN%?Vo6?l<%M3Idm-tR+G#)XAswkZ29}@b=skgS zN6+0pnY?%HzIPzmbDbILAB`ctt{m20eJ>8n&r9gZNBM39jlb{E9E<3@GEv*_59LGe zSReoHL+}p}qtF#|8RNDWugnz2eUAS>;mQF|3W?MUNq1C!6*NRU3L(XNmsbYwnbKAH zWUC0H_vpNI0q+IEPp9o$mtHi{6B@veWFnn4hh%CC%fsVMX-S?wpFFWW1LY?gy1X<* zpJ?x`yTD=4XZYxg4?!Pra|?dFn$5WF(ckWBk>0ZbJ-Bzv9LAI0k(?FCm%>Vfp8Q@& z@2l|MmmL%EJ&exXH}8Zm_U4_3d*U?)p)Z-MC*s{4%Dd$NdAEh-O=%csuU>1y_{I^7?ekA@~q&fIdRkgLC#RcihgP9vi@)D`weky3`-6(_} zPYOLc?;Y{!10PC9ag|~89-Wtt=-I$t`liF6F9yBGhr%UzCjC4Z;zKsC=Ma1-9m#kk z!mPgzAX3V|oY5PcqTvm7VTM#*9!JdS85qG(=zJqpv*#eSk6v zT`ygCX#3a(ek4D&gD%{YOnqT__~j>BTBpza+kwkUGGCAqibv?B_xd7*r{TS~22b&4 z4?@af|N>#{DzIw>HGL zA&hU5PCc)^lXV&uEsF^ zT)H(_uGh9Ov6}#o&R|4muQub4jw=HFulKAl>a%O96Ua-W3SFG_T7i`iR{@+ zH{5scryIW$=Y#;1@BZ|B3*v4Mi*F9A&uhOLm_A&eFa2|1e0V>5D;Hpw5wTwar2oNdPy>S+ z_<3u{rh8^$51rv34OOoz>5zv=PEb)2tt*gQy*{qp(WD9}JY zZVhpZ;GSTUA*efQmzxq0m{6RI$T5$EhrHTFPg7)EoOE^|h? zeSkLnK#BRleyiKn!9X1a+fI=G!7J`?v)CVhY!gKV`0r#8R)^I8bMa?&e~D=x<(DHn zy(kykpY79Y{WNaB2dA?9+1NyFFE>9;_IbfW>w+z2U*Z9@=(%oBH~{eg+Tfr14?v0E zli!DR4PZCW3naq+(Q_O^8r%K63X5jL8Vs~z{`k~U2xXLbSh%gX&_BByEmSe|7? z>}!{pG4A|vi5Z167huo!G1z1*7ym)RrXYw(#lCS1=3PItB!5g|dRgAML>y6*IA!vA zX_-?Kr(oA<_${f}@xw0*wGT4IbMm~B4vf#v#vUHoC1quEvWwh}!9rwy9=skhfdxDeh>%izB|2mcnBJ;!8r(JKB%&xDe?5=>WZ# z0D7JfdQJ&FXCS0BQ$p{jhC=TDhJV503`FRq3||@ z6n{HF@rwcCb06?aV0q|yB|?&~4xs!V1BmW`f2I_%2pcYsL)Bx2$6|e-T1S)_spb*Fdh<*l;38Vu7Kn2DCi9iAn55xewRzMEm zC=9+4Ax(7Sxf5syT7iwgI-n7#1FC_=Krt`_NC#Aa1(Jb8ARdSXq5%fjwH*Jq0(yWh zpaW zWlfIVn+N$-4K>i?Lud!cJMq{cs2};|ARe^Io5zdp35noUop5N}61ql#z6SIMf?qZ- zFE2!P?&Upu;ep;CDE{B2_xO0Bm;V1|IOaLbOMqR^qJ0CcKohVGs07M@93UM?2I2q) z=x;>-2ik!apb4l4YJf_h49ElmKmtItF+l$_xCdH+bwC493oHSMrZ^PNK$r%M0pbA$ zp!jpblofuC_L*--#2ya9*bF`nYG6GFdygB_WI)|mE$WSEZ#EP@z&eYKLzKn;)Kb-HgMc7i?^r=Mm7cPnPzq%(Sb&ykU#{bnZxkCxaRnU+7Z z*gY7ViI196R(R?B>#=n$vu4PYnR80>Av=!nB>|b&B9Jm=K?#oXEX#CHRG6H{Fn73b zi{{~QfIQl;Y6A0%Bc|cRk`(Nyn^|-r_KTl05r?NRV~3=tTsX6Ms{7ppmN91!*%Oyp zlT%qi}P#o1yKgJOou4U+b&%Sz6V1#%qI6K zm3C7vTFAT>m04ICWWl^a_b5W}-6L*A)fSeVNu?K!u&K8sW2b1mPUb) z_UH}iY~wzfz%K(S9f>$0baV&~0nenfG3G<8km&f2g)gP|a%~=@!MYn^VpC}aMJO@41B9WhoIoV9ajRV;{nPeb58EuP+4BtSDR>(3tidV zjhi#^9rJ`zS8Cib1w>CrJ2DE*7>8>+L(+?8qQ|;VNOi%aDHlyj7x;1Xla#@0Py_qXK!p1p z8NMg07#JDheh0+v=RK|MrGdD3!VqTZ&uQUgU;%zMPhY+Cvgwr1E5so`C8Zd3tt9*c zCkdx7V+hB0`c~4VndgpGlM-=W01m0gsSWv7(!%`GB*#8xn2A%Ba8Ljao&tmUrB)IS zxY0{<3vi}+=~$dOR8mx0bamO-+@g8<%+h(|uH%yEc(6HFW2n5$pBq>uCYm@9p|p%_ z-C=SQlH7DiS&9SFVWJj>p7ExH4o<_t;CUH1{s4w+c7ExeNPje)e6@g_jr9EMaPoQ~ zeOgH~OL0OOjx{SuN?b5!LM|PhWhGrbv#>Nj$u`ID;XN?%9{xUxeR4O)50KRyzo*bh zZjSf#Y5#1R$DkmC8u*{p09OC$cM&g}Tg=bQ@%9sTgI(fOI!q$|w}tmR*^@b*JD(dN zh{CzTi^5i6nD~U)B)%@rlggyuOLfxQ(g)HPQlC^UKPs=$HfUS5UD{9DiTW%0>E?CT z?bc9xgnhA{=YSao5KJhTcy1h*$`x=`TsLeEn;tASF(?A&vIM2ZQS=<1b-wS!=J{N z@D=<+e2OqdC>4Gs)CzwTc8I$~6*+w^FI65@x|QMTR`oOWHLcUlC)c>vxY}F=4OLoS zlH6cUx_ORmVW$Wi#COFX#0cpmX@m5x^n(;3N6U$Fk$j^ZP)4h&xG1vr79$Y<~) z#6)p})Fxdmm&<1;nleqvRu(Hg%6H1~YLdE4eMZ%_=ZqHP3&XUYab9!Yb(jkL*9JTq zx%auF`6XhtxLkZ%d{Jx`-xRlrpNe0I--tt`80k1EK^h}j(oE@Q>2B!>={4yS>7UX) z@(THVdAt0L{F8j7a*UFooT)shJg>AUpD9PEC#X$o7ivP)GPE4+4y{pJueED2`bqj3 zda{15UZMY5e^Q@ey4X@JBpi_MXiYE7_mty=5P z*4Ng_cB)-u-(WAb*V%8NMvrph9M-wand#i&+~+V=_-``&mMLrzJBh!FFXI>U)qEYl zhTp*dncvL6$A8T4;CuOR_@DS=g;9bftP%btj1gjr(K36Z*%k@Rj%H#TG z{cn1|zDwVY_8VnH8!<+#ak-IWU{mz0g{eU1C4yY;v|zyQ#&0r4i`-<@^KuTK-S`mwZ3}J$lnG zgp-BS1xc7D+$Fpr{v<|8!=;JR<p1sii#{S7(=={q0 zfn;fL#bJiBo7pwoRl+Dy7gNQH#D(Im;(A!6Zn0M!hStYQCM?KwX`yr*>f|+PleA45 zAt%Vma=tuYzCnISUMW8=pQN0soTbRhbmb}~SGhsij&^^6daL@ax?8;w8oys#u05`; z(LT^V*OK*{^&j+ijcd#oVTnXbw=%3Os~Y{R**e9Z4@=?p+BsA1OxBui&9$~#-&ng~ z#d7R?TXHUSE_YsV);k>z(*-9U?R_-c&2Hw~`BlPt;S-@>cwXEfwu)QC4)J5LNBl}; zq@mI;(56q9#!3QoIZ>J>T`3j7=HCE~R!Y^UoBH_Q}0r%(AJl$jp_^PE9x8SCbeDt zK>bAhLhV!kq5e}HsvW1Ds3mAg+Gz9vPE*hWF3@Ibv$Z0vOk1Sgs@88;e> zVMFeP4OwM8WxQalH#QktjlUQl8~-qN8%LX`n`fE4shLyF>1Mt;*IZ)WZ$1p0z0thZ zT4_CJt%rT>v_65R|7k_qr`pN3ZBMpy(H5?=@35EHzqjAByX>LPG0s`eIA^-^Pint? z*uN9O8SF3Fsca3qf^B4fWRKujE{(gIyNi2~Yvq36PT|ksRX&TqiLc}zgcbS=KTqDytJ^yI?c$6gFzTIxJ z-?9xS%UMZs;}-$N_>5)evD?`%*$8d~Msb<5xl6hEkoy7dcibxOG446;LvAR4B7Y8l zJ^wmCT$m-CDNYsN5X+#S`VIOL zl(Rv96?SkTM!s(>+s?3AM|aM17C1M;-rwykb(WzgG&`R=e}j(`f%B*t#$nH8bJzm* zdiHkqF1DI|l>HO?7W)p{kD7_&l2J~RyO^8B-NC)ijpTLy1d$UbinCz(SBTGur%6{x zUDD}ts{FMw9=7{+^?2=6j9+uKXSDCM3HteZuKujv0<90Fa1B8sZ@}ByENzwkCNs)$u!q+wH!4e&<sjJjB^(*vG zO|!KWEe&;0sFi5t=!^HFFZOF^=)crc(8^xZJ5i697*`lGF;?GXJZY@KD812W#aPs3 zd}jR3_{NAZhnmC9I5P>o>~`}_bF+DrHQYMh8fl$wjkZMVx7Kp2&ML9*x1Y6Nv)k=n z`)J2REmk{BPK4WsUS{8A&*8?QpA_(A!u`Th;UQtUuu6DTctUtuSSvg)yee!KJ{0~c zd@md+o`f-5!l-?bI9<#WOT?SRD)=s+i+9V*F^8 zajn=1$)1$fNv}$Om!``F@R&v_rzxYAv5KfnP|jBhl;<#ttXE!DURT~!Hn}n$rH)r6 zb%L6v7OFR^i(z3ORBP2gsO!|t>Mr$k?K15O*v#iqOS*ogK3iX@f2Q}MT@HsmEH~~n z>#V<9KfzzW%${i%!-B1}SKEE|E<3_G${7I*HW9X9uJfStEc%Y?Yga_jaDq17!G6m2 zu+iLT?qRMOUj0Ad8@>-8VTdq7;9vuOBXkJg3de~Se5Pp_t8W$`g2(uo_@fvv8B!M7 zZj_7uGTNasQ3oFhHo)4CK~4$ zli=l)8+RKoLi2sb_r?(ODDy<~6myI@3$}W*`2pq)Uz%}NBF5|#>qhGi>p`o*`qL_EvZrGn``QVdpXD9jdRY2y%CslUb9!1ikGB_I_CFm)KX?Snhc4 z94>>q8&>ZQY#^x%ztj0;AE0 zHoq}PV2oaG9SL2}v43a3Z+~p}+rypH9NBSTrJ9^p=R=37jbN(X{4c;cMC5FeS#%sifv+_I18T7Ez;xCRQW^s0%bPZ$C+xL z`nY;xHk-rO{#`+Q$8`t6RkPFrWBH+%E1A z|0P;zBe~KNjCJdz?b289i&< zzr)WJTEu+$6fFSH;}ZBDS8La6w`jj|ZQTm=dGb3pXf4`1@DF!rr|X7(sXooT%FHt> z%}lG%dW+VT+9Jq(X2x+6cMW$FH$%)7Ys4qTJ5ZYYr5b5D{NyLxQJngE3;fh}c&c5} z4yjlA8h+Kkq$qiq94nsy-!%!|>o{4IbvYoPE2m?`&vL!4Yvf}2I(dLpGb1o6tzi?mTv)VEIfXApi`>rN z2Fp89yhU6kzJ~eW2@)qU8Q3=$^c!7Id-;@9!b{6@Y7J*o}Wq40wb1|zsz`S{O+@=*Wfl5NlQYn^ zaxm@`qc$qguBu?uYUO(P_Dym#{QEY!L+(O*>XUb&HAQ2N8?Pjy|FMdy1e7!-L&?JG zN`X?Wl*4zc#H_alGv0coL1}_rZ^7)RL+Qf&rw{XAMvYcu)p#{gO;%Z~ZUiubWvE$d zj#{7=tL2y}i|Yp)w6sWO}+!Rt_v##Jw`9aihj(CcN>fuoEgW$8;Lg)%tUh())6q1GDTB0O*3Go znrUXbnPFy{S>_Bg2R*#NEW}DfnOSZwGAqo*=LbK2=bP8QUx6ms@i3wQ65=9ff zQ>vH-52HY=5EsMB)?&`xj2Uew#=~9WZmdouNTQ@l=~5=flNnNul!qB@p;U}nZ8_$& zwNewtmo}_hbix96OFdG*6eEv9uLxS1H1vpK*r&yAf2c=KSSPolC$zh(JyGZd@mSHK zUJyY0&s6fz{tMk6P=&T%r!=DNufxoryvaVa`Y5#f7&T5Eqnc>*8EPil{0xlJi_|4( z@3m?j+WTtEkXzMGtc&%j{qW*;t5KL0)2dKFOVu*5QZPfy!+e<5hH5bzuGbncB6VPu zu~+MZN4^W|0`XWq8>5?gKu^P}VKG)*7VDLmD^=^Ob*3xQT@Pr5<=D+f39-<6BK(N} z#^oHL0D3QXHNOOFnyaDrR%pFf*d-*0$znQujXY?YRsolZbz-B~B(`AnfV9m>(NerL zN=k#S%caFqz0?Su_DKoQXPP_%T3iGzR=YZEf&O|hE+xXZHC?;081`Zv>_acs$KqfY zQlXtP*n!pP`>j|h=!Gs~uu@`T4w8YDl47k=TZXc?qTGF2qAsGesVHj!N?D_?!|baU zbHXUBqnO4FqYRdD3GCr&qYc)8!I~J0ejY#%FGF9hGaJxH87l_8QAK~tK_9C`->R`1 ztq!Xjt79>CoSk5gvROOJ&a)TWRai4$hyK+KZ#fpD5B08etW0Nyde{=oS(Z6(KLu!(Mu3t&D*;z{0UuGbnJ!3K}6+^9>jsn%$A1o$o<^N=9EQ5GsXwp;2f<|LI3P z#)xs~NvONa67j4xx?EqGH)8MIQ*qNw} z8CdTsw#)2tdy!p%nyJJpOqE@2*VxPKTD#7!$Bd={-yJlezMA3jx7e+A8*F2TYaP2` zAA3=U{h0HRKM@u3DB|E#l;b;*8q{DDEM$+<8}b@@V@{>WK5v| literal 0 HcmV?d00001 From 630a2a0f7a63a5a1e118ec49991950b69b68f8eb Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sun, 12 Apr 2015 01:15:38 -0300 Subject: [PATCH 030/246] Make the list menu optional via a client setting --- addons/interact_menu/config.cpp | 6 ++++++ .../interact_menu/functions/fnc_renderIcon.sqf | 13 ++++++++++--- .../interact_menu/functions/fnc_renderMenu.sqf | 16 +++++++++++++--- .../functions/fnc_renderSelector.sqf | 9 +++++++-- addons/interact_menu/stringtable.xml | 3 +++ 5 files changed, 39 insertions(+), 8 deletions(-) diff --git a/addons/interact_menu/config.cpp b/addons/interact_menu/config.cpp index 17900c2f6b..830e58df82 100644 --- a/addons/interact_menu/config.cpp +++ b/addons/interact_menu/config.cpp @@ -23,4 +23,10 @@ class ACE_Settings { isClientSetable = 1; displayName = "$STR_ACE_Interact_Menu_AlwaysUseCursorSelfInteraction"; }; + class GVAR(UseListMenu) { + value = 0; + typeName = "BOOL"; + isClientSetable = 1; + displayName = "$STR_ACE_Interact_Menu_UseListMenu"; + }; }; diff --git a/addons/interact_menu/functions/fnc_renderIcon.sqf b/addons/interact_menu/functions/fnc_renderIcon.sqf index f26e4a5ca8..3da1777bed 100644 --- a/addons/interact_menu/functions/fnc_renderIcon.sqf +++ b/addons/interact_menu/functions/fnc_renderIcon.sqf @@ -36,10 +36,17 @@ if(_icon == "") then { _icon = DEFAULT_ICON; }; -_text = format ["%4", _icon, _color, _color, _text]; -//_text = format ["
%4", _icon, _color, _color, "ace_breakLine" callExtension _text]; +_text = if (GVAR(UseListMenu)) then { + format ["%4", _icon, _color, _color, _text] +} else { + format ["
%4", _icon, _color, _color, "ace_breakLine" callExtension _text]; +}; _ctrl ctrlSetStructuredText (parseText _text); -_ctrl ctrlSetPosition [(_sPos select 0)-(0.0095*SafeZoneW), (_sPos select 1)-(0.0095*SafeZoneW), 0.10*SafeZoneW, 0.035*SafeZoneW]; +_text = if (GVAR(UseListMenu)) then { + _ctrl ctrlSetPosition [(_sPos select 0)-(0.0095*SafeZoneW), (_sPos select 1)-(0.0095*SafeZoneW), 0.20*SafeZoneW, 0.035*SafeZoneW]; +} else { + _ctrl ctrlSetPosition [(_sPos select 0)-(0.0750*SafeZoneW), (_sPos select 1)-(0.0095*SafeZoneW), 0.15*SafeZoneW, 0.100*SafeZoneW]; +}; //_ctrl ctrlSetBackgroundColor [0, 1, 0, 0.1]; _ctrl ctrlCommit 0; diff --git a/addons/interact_menu/functions/fnc_renderMenu.sqf b/addons/interact_menu/functions/fnc_renderMenu.sqf index b3e3d3b401..b46740921e 100644 --- a/addons/interact_menu/functions/fnc_renderMenu.sqf +++ b/addons/interact_menu/functions/fnc_renderMenu.sqf @@ -92,7 +92,12 @@ if (_numChildren == 1) then { }; // Scale menu based on the amount of children -_scale = 0.17; +_scale = if (GVAR(UseListMenu)) then { + 0.17 +} else { + 0.17 * (((0.8 * (0.46 / sin (0.5 * _angleInterval))) min 1.1) max 0.5) +}; + // Animate menu scale if (_menuInSelectedPath && (_menuDepth == count _path)) then { _scale = _scale * (0.3 + 0.7 * (((diag_tickTime - GVAR(expandedTime)) * 8) min 1)); @@ -106,8 +111,13 @@ _angle = _centerAngle - _angleSpan / 2; { //BEGIN_COUNTER(children); private ["_offset","_newPos"]; - _newPos = [(_sPos select 0) + _scale * 1.10, - (_sPos select 1) + _scale * 0.30 * 4/3 * (_foreachindex - _numChildren/2 + 0.5)]; + _newPos = if (GVAR(UseListMenu)) then { + [(_sPos select 0) + _scale * 1.10, + (_sPos select 1) + _scale * 0.30 * 4/3 * (_foreachindex - _numChildren/2 + 0.5)]; + } else { + [(_sPos select 0) -_scale * cos _angle, + (_sPos select 1) +_scale * (sin _angle) * 4/3]; + }; //drawLine3D [_pos, _newPos, [1,0,0,0.8]]; //END_COUNTER(children); diff --git a/addons/interact_menu/functions/fnc_renderSelector.sqf b/addons/interact_menu/functions/fnc_renderSelector.sqf index 099d917c0f..5afcf63cc6 100644 --- a/addons/interact_menu/functions/fnc_renderSelector.sqf +++ b/addons/interact_menu/functions/fnc_renderSelector.sqf @@ -24,7 +24,12 @@ private "_ctrl"; _ctrl = GVAR(iconCtrls) select GVAR(iconCount); GVAR(iconCount) = GVAR(iconCount) + 1; -_ctrl ctrlSetStructuredText (parseText format ["", _icon]); -_ctrl ctrlSetPosition [(_sPos select 0)-(0.014*SafeZoneW), (_sPos select 1)-(0.014*SafeZoneW), 0.05*SafeZoneW, 0.035*SafeZoneW]; +if (GVAR(UseListMenu)) then { + _ctrl ctrlSetStructuredText (parseText format ["", _icon]); + _ctrl ctrlSetPosition [(_sPos select 0)-(0.014*SafeZoneW), (_sPos select 1)-(0.014*SafeZoneW), 0.05*SafeZoneW, 0.035*SafeZoneW]; +} else { + _ctrl ctrlSetStructuredText (parseText format ["", _icon]); + _ctrl ctrlSetPosition [(_sPos select 0)-(0.050*SafeZoneW), (_sPos select 1)-(0.014*SafeZoneW), 0.1*SafeZoneW, 0.035*SafeZoneW]; +}; //_ctrl ctrlSetBackgroundColor [1, 0, 0, 0.1]; _ctrl ctrlCommit 0; diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index e0f2c4967e..6b6b001c90 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -7,6 +7,9 @@ Immer den Cursor für Selbst-Interaktionen anzeigen. Mostrar siempre el cursor para la interacción propia + + Display interact menu as a list + Interact Key Interaktionstaste From 0420a94938cc490b094e28ae193cc23519265b53 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sun, 12 Apr 2015 01:19:38 -0300 Subject: [PATCH 031/246] Streamline Team management actions --- addons/interaction/stringtable.xml | 60 +++++++----------------------- 1 file changed, 14 insertions(+), 46 deletions(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index 0065833e0f..29acca014e 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -451,16 +451,12 @@ A Terra! - Team Management - Team Management - Gestión de equipo - Gestion d'équipe - Zarządzanie oddziałem - Správa týmu - Управление группой - Gerenciamento de Equipe - Organizzazione Squadra - Csapat kezelés + Team + Team + Grupo + Équipe + Equipe + Squadra Red @@ -511,52 +507,24 @@ Sárga - Join Team Red - Team Rot beitreten - Unirse al equipo rojo + Join Red + Unirse al rojo Rejoindre Rouge - Dołącz do drużyny czerwonej - Připojit do Červeného Týmu - Присоединиться к красной группе - Unir-se à Equipe Vermelha - Entra nella Squadra Rossa - Csatlakozás a piros csapathoz - Join Team Green - Team Grün beitreten - Unirse al equipo verde + Join Green + Unirse al verde Rejoindre Verte - Dołącz do drużyny zielonej - Připojit do Zeleného Týmu - Присоединиться к зеленой группе - Unir-se à Equipe Verde - Entra nella Squadra Verde - Csatlakozás a zöld csapathoz - Join Team Blue - Team Blau beitreten - Unirse al equipo azul + Join Blue + Unirse al azul Rejoindre Bleue - Dołącz do drużyny niebieskiej - Připojit do Modrého Týmu - Присоединиться к синей группе - Unir-se à Equipe Azul - Entra nella Squadra Blu - Csatlakozás a kék csapathoz - Join Team Yellow - Team Gelb beitreten - Unirse al equipo amarillo + Join Yellow + Unirse al amarillo Rejoindre Jaune - Dołącz do drużyny żółtej - Připojit do Žlutého Týmu - Присоединиться к желтой группе - Unir-se à Equipe Amarela - Entra nella Squadra Gialla - Csatlakozás a sárga csapathoz You joined Team %1 From 654ab4daf587e89dacc9e671ec75818cf82a1b21 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sun, 12 Apr 2015 01:24:42 -0300 Subject: [PATCH 032/246] Remove >> from attach actions --- addons/attach/stringtable.xml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/addons/attach/stringtable.xml b/addons/attach/stringtable.xml index 27a0517f9a..eba4bf1a1f 100644 --- a/addons/attach/stringtable.xml +++ b/addons/attach/stringtable.xml @@ -3,15 +3,15 @@ - Attach item >> - Gegenstand befestigen >> - Acoplar objeto >> - Przyczep przedmiot >> - Attacher l'objet >> - Připnout předmět >> - Acoplar item >> - Attacca l'oggetto >> - Tárgy hozzácsatolása >> + Attach item + Gegenstand befestigen + Acoplar objeto + Przyczep przedmiot + Attacher l'objet + Připnout předmět + Acoplar item + Attacca l'oggetto + Tárgy hozzácsatolása Добавить приспособления From dfea99debfe2218f0284dbdb5670114d73eaadea Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sun, 12 Apr 2015 01:32:03 -0300 Subject: [PATCH 033/246] Switch "Team" for "Group" --- addons/interaction/stringtable.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index 8e8c8f4e60..8ae1966f88 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -450,8 +450,8 @@ A Terra! - Team - Team + Group + Gruppe Grupo Équipe Equipe From d0fb3872553a220043b1a24d5b37261fec35eb04 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 13:45:47 +0200 Subject: [PATCH 034/246] Update Stringtable: Disarming --- addons/disarming/stringtable.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/disarming/stringtable.xml b/addons/disarming/stringtable.xml index 845d0c286e..3d5fa57850 100644 --- a/addons/disarming/stringtable.xml +++ b/addons/disarming/stringtable.xml @@ -4,6 +4,7 @@ Open Inventory + Öffne Inventar - \ No newline at end of file + From 7eaee37ff6fae671ea1626a41f913105bbe1949b Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 13:48:59 +0200 Subject: [PATCH 035/246] Update stringtable.xml --- addons/common/stringtable.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/common/stringtable.xml b/addons/common/stringtable.xml index c66cc22992..246c9664cc 100644 --- a/addons/common/stringtable.xml +++ b/addons/common/stringtable.xml @@ -354,7 +354,7 @@ Set the desired location of the progress bar on your screen. - Setze die gewünschte Position der Fortschrittsanzeige fest + Setze die gewünschte Position der Fortschrittsanzeige fest. Seleccionar la ubicación deseada de la barra de progreso en tu pantalla Modifica la posizione su schermo della barra di avanzamento. Установите желаемое положение строки состояния на экране. @@ -382,7 +382,7 @@ The color of the text font from the ACE hints. This color is the default color for all text displayed through the ACE Hint system, if the hint text has no other color specified. - Wähle die Textfarbe für ACE-Hinweise. + Wähle die Textfarbe für ACE-Hinweise. Die gewählte Farbe wird als Standartfarbe der Hinweise angezeigt, wenn der Hinweis selbst keine spezifische Farbe hat. El color del texto de las notificaciones del ACE. Este es el color predeterminado para todo el texto que se muestra a través del sistema de notificaciones del ACE, si el texto de notificación no tiene otro color especificado. Il colore del testo dei suggerimenti dell'ACE. Questo è il colore standard per tutti i caratteri mostrati dal sistema di suggerimenti dell'ACE, se questo non è altrimenti specificato. Цвет шрифта текста всплывающих подсказок АСЕ. Этот цвет является стандартным для всего текста, транслирующегося через систему подсказок АСЕ, если не установлено другого цвета для текста подсказок. @@ -402,4 +402,4 @@ Банан - это съедобный фрукт, ягода с ботанической точки зрения, произрастающий на нескольких видах травянистых растениях рода Банан (Musa). - \ No newline at end of file + From 2222192aee6ebc49d47a92dfc7c9d68251553a24 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 13:51:47 +0200 Subject: [PATCH 036/246] Update stringtable.xml --- addons/hearing/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/hearing/stringtable.xml b/addons/hearing/stringtable.xml index 577d041236..a14e95157b 100644 --- a/addons/hearing/stringtable.xml +++ b/addons/hearing/stringtable.xml @@ -16,7 +16,7 @@ Protective Ear Plugs allow the wearer to be near loud weaponry without damage to his hearing. - Schützende Ohrenstöpsel, die es dem Träger ermöglichen, sich in der Nähe lauter Waffen aufzuhalten. + Schützende Ohrenstöpsel, die es dem Träger ermöglichen, sich in der Nähe lauter Waffen aufzuhalten ohne Gehörschäden davonzutragen.. Los tapones para los oídos permiten al usuario operar armamento ruidoso sin sufrir pérdida de audición. Stopery do uszu umożliwiają użytkownikowi przebywać w pobliżu głośnej broni bez poniesienia konsekwencji jaką jest utrata słuchu. Ochranné špunty umožňují uživateli, aby neutrpěl zranění jeho sluchu v blízkosti hlasitých zbraní. From a01c4a0e0b0a3b76b08202222855b0b4529119a9 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 13:55:55 +0200 Subject: [PATCH 037/246] Update stringtable.xml --- addons/interaction/stringtable.xml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index e1837865ae..b2d2843d4f 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -380,7 +380,7 @@ You were tapped on the RIGHT shoulder Te tocaron el hombro DERECHO - Dir wurde auf die Rechte Schulter geklopft + Dir wurde auf die rechte Schulter geklopft On te tape sur l'épaule Zostałeś klepnięty po ramieniu Vállonveregettek @@ -392,7 +392,7 @@ You were tapped on the LEFT shoulder. Te tocaron el hombro IZQUIERDO. - Dir wurde auf die Linke Schulter geklopft + Dir wurde auf die linke Schulter geklopft On te tape sur l'épaule. Zostałeś klepnięty po ramieniu Vállonveregettek @@ -451,7 +451,7 @@ Team<br/>Management - Team<br/>Management + Gruppen<br/>Verwaltung Gestión<br/>de equipo Gestion<br/>d'équipe Zarządzanie<br/>oddziałem @@ -511,7 +511,7 @@ Join Team<br/>Red - Team Rot<br/>beitreten + Gruppe Rot<br/>beitreten Unirse al<br/>equipo rojo Rejoindre<br/>Rouge Dołącz do drużyny<br/>czerwonej @@ -523,7 +523,7 @@ Join Team<br/>Green - Team Grün<br/>beitreten + Gruppe Grün<br/>beitreten Unirse al<br/>equipo verde Rejoindre<br/>Verte Dołącz do<br/>drużyny zielonej @@ -535,7 +535,7 @@ Join Team<br/>Blue - Team Blau<br/>beitreten + Gruppe Blau<br/>beitreten Unirse al<br/>equipo azul Rejoindre<br/>Bleue Dołącz do<br/>drużyny niebieskiej @@ -547,7 +547,7 @@ Join Team<br/>Yellow - Team Gelb<br/>beitreten + Gruppe Gelb<br/>beitreten Unirse al<br/>equipo amarillo Rejoindre<br/>Jaune Dołącz do<br/>drużyny żółtej @@ -559,7 +559,7 @@ You joined Team %1 - Du bist Team %1 beigetreten + Du bist Gruppe %1 beigetreten Te has unido al equipo %1 Tu as rejoint l'équipe %1 Dołączyłeś do drużyny %1 @@ -571,7 +571,7 @@ Leave Team - Team verlassen + Gruppe verlassen Dejar equipo Quitter l'équipe Opuść drużynę @@ -583,7 +583,7 @@ You left the Team - Du hast das Team verlassen + Du hast die Gruppe verlassen Has dejado el equipo Tu as quitté l'équipe Opuściłeś drużynę @@ -619,7 +619,7 @@ Modifier Key - Modifikator + Modifikator Taste Modyfikator Modifier la touche Tecla modificadora From 6b39edbddfad9bcf46e5f19a134d474fe06c2beb Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 13:58:02 +0200 Subject: [PATCH 038/246] Update stringtable.xml --- addons/logistics_uavbattery/stringtable.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/logistics_uavbattery/stringtable.xml b/addons/logistics_uavbattery/stringtable.xml index 3a8d958709..de63452031 100644 --- a/addons/logistics_uavbattery/stringtable.xml +++ b/addons/logistics_uavbattery/stringtable.xml @@ -52,7 +52,7 @@ Used to refuel Carried UAV's - Verwendet zum Aufladen von tragbaren UAV's + Verwendet zum Aufladen von tragbaren UAVs Usada para reabastecer el VANT Utilisée pour recharger l'UAV Używana do naładowania UAV @@ -75,4 +75,4 @@ Заряжается ... - \ No newline at end of file + From 15e9b2ccccaf51400b443bc86d3bb6723d50c6b7 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 13:59:09 +0200 Subject: [PATCH 039/246] Update stringtable.xml --- addons/hearing/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/hearing/stringtable.xml b/addons/hearing/stringtable.xml index a14e95157b..3841ad8102 100644 --- a/addons/hearing/stringtable.xml +++ b/addons/hearing/stringtable.xml @@ -28,7 +28,7 @@ Earplugs in - Ohrenstöpsel drinnen + Ohrenstöpsel rein Poner tapones Załóż stopery Dát špunty do uší From e4ec9d14d4a484a083fb2d731641ceddb1f96d81 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:00:56 +0200 Subject: [PATCH 040/246] Update stringtable.xml --- addons/maptools/stringtable.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/maptools/stringtable.xml b/addons/maptools/stringtable.xml index 2e5fee49ab..de14a5a771 100644 --- a/addons/maptools/stringtable.xml +++ b/addons/maptools/stringtable.xml @@ -19,7 +19,7 @@ Las herramientas de mapa permiten medir distancias y ángulos en el mapa. Les outils de navigation permettent de mesurer des distances et des angles sur la carte. Narzędzia nawigacyjne pozwalają na mierzenie odległości i kątów na mapie. - Das Kartenwerkzeug erlaubt es dir, Distanzen und Winkel zu messen. + Das Kartenwerkzeug ermöglicht es dir, Distanzen und Winkel zu messen. Pomůcky k mapě slouží k měření vzdáleností a úhlů na mapě. Gli Strumenti Cartografici ti consentono di misurare distanze ed angoli sulla mappa. As Ferramentas de Mapa permitem que você meça distâncias e ângulos no mapa. @@ -145,4 +145,4 @@ Направление: %1° - \ No newline at end of file + From a3f97efbc38638af9e8cecec680949a6fb9c2293 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:07:49 +0200 Subject: [PATCH 041/246] Update stringtable.xml What does WDG and MGRS mean? --- addons/microdagr/stringtable.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/addons/microdagr/stringtable.xml b/addons/microdagr/stringtable.xml index 2ede1316b4..eece5ddd2a 100644 --- a/addons/microdagr/stringtable.xml +++ b/addons/microdagr/stringtable.xml @@ -14,13 +14,13 @@ Многофункциональный GPS-приёмник. - Angular Unit: + Grad Einheit: Unidad angular: Угловые единицы: Mils - Mils + Mil Mils Тысячные @@ -60,6 +60,7 @@ Enter Grid Cords: + Gebe Koordinaten ein: Introducir coordenadas de cuadrícula: Введите координаты: From 88a71042e30299ba4598286125996353210f21d2 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:12:05 +0200 Subject: [PATCH 042/246] Update stringtable.xml --- addons/missileguidance/stringtable.xml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/addons/missileguidance/stringtable.xml b/addons/missileguidance/stringtable.xml index fc17de4722..d44d8c916d 100644 --- a/addons/missileguidance/stringtable.xml +++ b/addons/missileguidance/stringtable.xml @@ -7,7 +7,7 @@ Avanzada Misiles Orientación Avancée Missile orientation Asystent Missile - Erweiterte Missile Guidance + Erweiterte Raketenlenkung Advanced Missile Guidance Avanzato Missile Guidance Avançado Missile Guidance @@ -19,7 +19,7 @@ - + Aktiviert die erweiterten Mechaniken für unterschiedliche Racketen und Feuermodi. @@ -33,7 +33,7 @@ - + Hydra-70 DAGR Racketee @@ -45,7 +45,7 @@ - + DAGR @@ -57,7 +57,7 @@ - + Hydra-70 Lasergelenkte DAGR Rakete @@ -71,7 +71,7 @@ - + Hellfire II AGM-114K Rakete @@ -83,7 +83,7 @@ - + AGM-114K @@ -95,7 +95,7 @@ - + Hellfire II AGM-114K Lasergelenkte Rakete @@ -104,4 +104,4 @@ - \ No newline at end of file + From 8f88158a2e67d6c4bc4d3d6be474b6d850986424 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:13:38 +0200 Subject: [PATCH 043/246] Update stringtable.xml --- addons/nightvision/stringtable.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/nightvision/stringtable.xml b/addons/nightvision/stringtable.xml index 16ead016da..898ee7fa08 100644 --- a/addons/nightvision/stringtable.xml +++ b/addons/nightvision/stringtable.xml @@ -101,7 +101,7 @@ Increase NVG Brightness - Nachtsichtgerätshelligkeit erhöhen + NS-Helligkeit erhöhen Aumentar el brillo de las NVG Zwiększ czułość noktowizji Zvýšení jasu noktovizoru @@ -113,7 +113,7 @@ Decrease NVG Brightness - Nachtsichtgerätshelligkeit verringern + NS-Helligkeit verringern Disminuir el brillo de las NVG Zmniejsz czułość noktowizji Snížení jasu noktovizoru From 400b8f4270b8cfa8b7421cc998674d09f1f065bd Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:14:48 +0200 Subject: [PATCH 044/246] Update stringtable.xml --- addons/overheating/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/overheating/stringtable.xml b/addons/overheating/stringtable.xml index aab3ebac6d..dceb922603 100644 --- a/addons/overheating/stringtable.xml +++ b/addons/overheating/stringtable.xml @@ -9,7 +9,7 @@ Display a notification whenever your weapon gets jammed - Zeige einen Hinweis wenn die Waffe eine Ladehemmung hat + Zeige einen Hinweis, wenn die Waffe eine Ladehemmung hat. Mostrar notificación cada vez que el arma se encasquille Демонстровать уведомление, каждый раз, когда клинит Ваше оружие. From 45ff6c7ce93ae7060c80a193f3286372feef9290 Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Sun, 12 Apr 2015 14:15:45 +0200 Subject: [PATCH 045/246] French: (Nearly) Complete French translations Some entries (3 or 4) are still missing. I dont understand what you mean / what the input is related to. --- addons/aircraft/stringtable.xml | 96 +- addons/attach/stringtable.xml | 354 +++---- addons/captives/stringtable.xml | 318 +++---- addons/common/stringtable.xml | 736 ++++++++------- addons/dragging/stringtable.xml | 95 +- addons/explosives/stringtable.xml | 991 ++++++++++---------- addons/frag/stringtable.xml | 25 +- addons/hearing/stringtable.xml | 209 +++-- addons/laser_selfdesignate/stringtable.xml | 24 +- addons/laserpointer/stringtable.xml | 60 +- addons/logistics_uavbattery/stringtable.xml | 150 +-- addons/logistics_wirecutter/stringtable.xml | 98 +- addons/magazinerepack/stringtable.xml | 183 ++-- addons/medical/stringtable.xml | 12 +- addons/microdagr/stringtable.xml | 234 ++--- addons/movement/stringtable.xml | 88 +- addons/nightvision/stringtable.xml | 251 ++--- addons/optionsmenu/stringtable.xml | 223 +++-- addons/overheating/stringtable.xml | 308 +++--- addons/realisticnames/stringtable.xml | 86 +- addons/reload/stringtable.xml | 86 +- addons/reloadlaunchers/stringtable.xml | 10 +- addons/respawn/stringtable.xml | 43 +- addons/safemode/stringtable.xml | 82 +- addons/switchunits/stringtable.xml | 41 +- addons/vehiclelock/stringtable.xml | 226 ++--- addons/weaponselect/stringtable.xml | 506 +++++----- addons/wep_javelin/stringtable.xml | 12 +- addons/winddeflection/stringtable.xml | 70 +- 29 files changed, 2890 insertions(+), 2727 deletions(-) diff --git a/addons/aircraft/stringtable.xml b/addons/aircraft/stringtable.xml index 4d1c49fff6..cf93a513b3 100644 --- a/addons/aircraft/stringtable.xml +++ b/addons/aircraft/stringtable.xml @@ -1,50 +1,50 @@  - + - - - Burst - Feuerstoß - Ráfaga - Seria - Dávka - Rafale - Очередь - Sorozat - Rajada - Raffica - - - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - - - Open Cargo Door - Laderampe öffnen - Abrir compuerta de carga - Ourvir Rampe Cargo - Otwórz drzwi ładowni - Otevřít nákladní prostor - Rámpát kinyitni - Открыть грузовой отсек - - - Close Cargo Door - Laderampe schließen - Cerrar compuerta de carga - Fermer Rampe Cargo - Zamknij drzwi ładowni - Zavřít nákladní prostor - Rámpát zárni - Закрыть грузовой отсек - - - + + + Burst + Feuerstoß + Ráfaga + Seria + Dávka + Contre mesure + Очередь + Sorozat + Rajada + Raffica + + + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + + + Open Cargo Door + Laderampe öffnen + Abrir compuerta de carga + Ourvir rampe cargo + Otwórz drzwi ładowni + Otevřít nákladní prostor + Rámpát kinyitni + Открыть грузовой отсек + + + Close Cargo Door + Laderampe schließen + Cerrar compuerta de carga + Fermer rampe cargo + Zamknij drzwi ładowni + Zavřít nákladní prostor + Rámpát zárni + Закрыть грузовой отсек + + + \ No newline at end of file diff --git a/addons/attach/stringtable.xml b/addons/attach/stringtable.xml index 27a0517f9a..c953f67b90 100644 --- a/addons/attach/stringtable.xml +++ b/addons/attach/stringtable.xml @@ -1,179 +1,179 @@  - + - - - Attach item >> - Gegenstand befestigen >> - Acoplar objeto >> - Przyczep przedmiot >> - Attacher l'objet >> - Připnout předmět >> - Acoplar item >> - Attacca l'oggetto >> - Tárgy hozzácsatolása >> - Добавить приспособления - - - Attach - Befestigen - Acoplar - Przyczep - Attacher - Připnout - Acoplar - Attacca - Hozzácsatolás - Присоединить - - - Detach item - Gegenstand entfernen - Quitar objeto - Odczep przedmiot - Détacher l'objet - Odepnout předmět - Separar item - Stacca l'oggetto - Tárgy lecsatolása - Отсоединить - - - IR Strobe Attached - IR-Stroboskop befestigt - Marcador IR acoplado - Przyczepiono stroboskop IR - Strobe IR attaché - IR Značkovač Připnutý - Marcador IV Acoplado - Strobo IR attaccata - Infravörös jeladó hozzácsatolva - ИК строб присоединён - - - IR Strobe Detached - IR-Stroboskop entfernt - Marcador IR quitado - Odczepiono stroboskop IR - Strobe IR détaché - IR Značkovač Odepnutý - Marcador IV Separado - Strobo IR staccata - Infravörös jeladó lecsatolva - ИК строб отсоединён - - - IR Grenade Attached - IR-Granate befestigt - Granada IR acoplada - Przyczepiono granat IR - Grenade IR attachée - IR Granát Připnutý - Granada IV Acoplada - Granata IR attaccata - Infravörös gránát hozzácsatolva - ИК граната присоединена - - - IR Grenade Detached - IR-Granate entfernt - Granada IR quitada - Odczepiono granat IR - Grenade IR détachée - IR Granát Odepnutý - Granada IV Separada - Granata IR staccata - Infravörös gránát lecsatolva - ИК граната отсоединена - - - Chemlight Attached - Leuchtstab befestigt - Barra de luz acoplada - Przyczepiono światło chemiczne - Chemlight attaché - Chemické světlo Připnuto - Chemlight Acoplada - Chemlight attaccata - Chemlight hozzácsatolva - Химсвет присоединён - - - Chemlight Detached - Leuchtstab entfernt - Barra de luz quitada - Odczepiono światło chemiczne - Chemlight détaché - Chemické světlo Odepnuto - Chemlight Separada - Chemlight staccata - Chemlight hozzácsatolva - Химсвет отсоединён - - - No inventory space - Kein Platz im Inventar - Sin espacio en inventario - Brak miejsca w ekwipunku - Pas de place dans l'inventaire - Není místo v inventáři - Sem espaço no inventário - Non hai più spazio - Nincs több hely - В инвентаре нет места - - - IR Strobe - IR-Stroboskop - Marcador IR - Stroboskop IR - Strobe IR - IR Značkovač - Marcador IV - Strobo IR - Infravörös jeladó - ИК строб - - - IR Strobe allows you to signal your position through a pulsating beacon only visible with NVGs. - Das IR-Stroboskop erlaubt es dir deine Position mit einem blinkenden Leuchtfeuer zu signalisieren, welches nur mit Nachtsichtgerät zu erkennen ist. - Stroboskop światła podczerwieni umożliwia oznaczenie swojej pozycji pulsacyjnym światłem widocznym tylko przez optykę noktowizyjną i gogle noktowizyjne. - El Marcador IR permite señalizar su posisición a través de una baliza visible solo a través de dispositivos de visión nocturna. - Le Strobe IR permet de signaler votre position grace à un clignotement visible par des JVN. - IR Značkovač je Infračerveně zářící stroboskop umožňující signalizaci vaší pozice díky blikajícímu světlu, které je vidět pouze při užití noktovizoru. - O Marcador IV permite que você sinalize sua posição através de um pulso visível somente com equipamento de visão noturna. - La Strobo IR è una luce stroboscopica che ti permette di segnalare la tua posizione grazie all'emissione di impulsi ad infrarossi visibili solo con i visori notturni. - Az infravörös jeladóval megjelölheted a helyzetedet úgy, hogy annak pulzáló fénye csak éjjellátó készülékkel látható. - ИК строб позволяет сигнализировать свое местоположение через пульсирующий маяк, видимый только через ПНВ. - - - Place - Platzieren - Colocar - Umieść - Placer - Položit - Colocar - Posiziona - Elhelyez - - - Cancel - Abbrechen - Cancelar - Anuluj - Annuler - Zrušit - Cancelar - Annulla - Mégse - - - Attach Failed - Échec du Attacher - Befestigen fehlgeschlagen - Присоединить Ошибка - Error al acoplar - - - + + + Attach item >> + Gegenstand befestigen >> + Acoplar objeto >> + Przyczep przedmiot >> + Attacher l'objet >> + Připnout předmět >> + Acoplar item >> + Attacca l'oggetto >> + Tárgy hozzácsatolása >> + Добавить приспособления + + + Attach + Befestigen + Acoplar + Przyczep + Attacher + Připnout + Acoplar + Attacca + Hozzácsatolás + Присоединить + + + Detach item + Gegenstand entfernen + Quitar objeto + Odczep przedmiot + Détacher l'objet + Odepnout předmět + Separar item + Stacca l'oggetto + Tárgy lecsatolása + Отсоединить + + + IR Strobe Attached + IR-Stroboskop befestigt + Marcador IR acoplado + Przyczepiono stroboskop IR + Strobe IR attaché + IR Značkovač Připnutý + Marcador IV Acoplado + Strobo IR attaccata + Infravörös jeladó hozzácsatolva + ИК строб присоединён + + + IR Strobe Detached + IR-Stroboskop entfernt + Marcador IR quitado + Odczepiono stroboskop IR + Strobe IR détaché + IR Značkovač Odepnutý + Marcador IV Separado + Strobo IR staccata + Infravörös jeladó lecsatolva + ИК строб отсоединён + + + IR Grenade Attached + IR-Granate befestigt + Granada IR acoplada + Przyczepiono granat IR + Grenade IR attachée + IR Granát Připnutý + Granada IV Acoplada + Granata IR attaccata + Infravörös gránát hozzácsatolva + ИК граната присоединена + + + IR Grenade Detached + IR-Granate entfernt + Granada IR quitada + Odczepiono granat IR + Grenade IR détachée + IR Granát Odepnutý + Granada IV Separada + Granata IR staccata + Infravörös gránát lecsatolva + ИК граната отсоединена + + + Chemlight Attached + Leuchtstab befestigt + Barra de luz acoplada + Przyczepiono światło chemiczne + Chemlight attachée + Chemické světlo Připnuto + Chemlight Acoplada + Chemlight attaccata + Chemlight hozzácsatolva + Химсвет присоединён + + + Chemlight Detached + Leuchtstab entfernt + Barra de luz quitada + Odczepiono światło chemiczne + Chemlight détachée + Chemické světlo Odepnuto + Chemlight Separada + Chemlight staccata + Chemlight hozzácsatolva + Химсвет отсоединён + + + No inventory space + Kein Platz im Inventar + Sin espacio en inventario + Brak miejsca w ekwipunku + Pas de place dans l'inventaire + Není místo v inventáři + Sem espaço no inventário + Non hai più spazio + Nincs több hely + В инвентаре нет места + + + IR Strobe + IR-Stroboskop + Marcador IR + Stroboskop IR + Strobe IR + IR Značkovač + Marcador IV + Strobo IR + Infravörös jeladó + ИК строб + + + IR Strobe allows you to signal your position through a pulsating beacon only visible with NVGs. + Das IR-Stroboskop erlaubt es dir deine Position mit einem blinkenden Leuchtfeuer zu signalisieren, welches nur mit Nachtsichtgerät zu erkennen ist. + Stroboskop światła podczerwieni umożliwia oznaczenie swojej pozycji pulsacyjnym światłem widocznym tylko przez optykę noktowizyjną i gogle noktowizyjne. + El Marcador IR permite señalizar su posisición a través de una baliza visible solo a través de dispositivos de visión nocturna. + Le Strobe IR permet de signaler votre position grace à un clignotement visible par des JVN. + IR Značkovač je Infračerveně zářící stroboskop umožňující signalizaci vaší pozice díky blikajícímu světlu, které je vidět pouze při užití noktovizoru. + O Marcador IV permite que você sinalize sua posição através de um pulso visível somente com equipamento de visão noturna. + La Strobo IR è una luce stroboscopica che ti permette di segnalare la tua posizione grazie all'emissione di impulsi ad infrarossi visibili solo con i visori notturni. + Az infravörös jeladóval megjelölheted a helyzetedet úgy, hogy annak pulzáló fénye csak éjjellátó készülékkel látható. + ИК строб позволяет сигнализировать свое местоположение через пульсирующий маяк, видимый только через ПНВ. + + + Place + Platzieren + Colocar + Umieść + Placer + Položit + Colocar + Posiziona + Elhelyez + + + Cancel + Abbrechen + Cancelar + Anuluj + Annuler + Zrušit + Cancelar + Annulla + Mégse + + + Attach Failed + Impossible d'attacher + Befestigen fehlgeschlagen + Присоединить Ошибка + Error al acoplar + + + \ No newline at end of file diff --git a/addons/captives/stringtable.xml b/addons/captives/stringtable.xml index 897782747f..22d0cee9fd 100644 --- a/addons/captives/stringtable.xml +++ b/addons/captives/stringtable.xml @@ -1,159 +1,163 @@  - + - - - Take Prisoner - Gefangen nehmen - Tomar prisionero - Capturer le prisonnier - Weź więźnia - Zajmout Osobu - Arresta il Prigioniero - Tomar Prisioneiro - Foglyul ejtés - Взять в плен - - - Free Prisoner - Gefangenen freilassen - Liberar prisionero - Wypuść więźnia - Libérer le prisonnier - Osvobodit Zajatce - Libera il Prigioniero - Libertar Prisioneiro - Fogoly szabadon elengedése - Освободить пленника - - - Escort Prisoner - Gefangenen eskortieren - Escoltar prisionero - Eskortuj więźnia - Escorter le prisonnier - Eskortovat Zajatce - Scorta il Prigioniero - Escoltar Prisioneiro - Fogoly kísérése - Конвоировать пленника - - - Release Prisoner - Gefangenen loslassen - Soltar prisionero - Anuluj eskortowanie - Relâcher le prisonnier - Uvolnit Zajatce - Rilascia il Prigioniero - Largar Prisioneiro - Fogoly elengedése - Прекратить конвоирование - - - You need to take him as prisoner first! - Du musst ihn zuerst gefangen nehmen. - Necesitas hacerle prisionero primero! - Najpierw musisz wziąć go jako więźnia! - Vous devez d'abord le capturer! - Musíš ho nejdříve zajmout! - Prima devi arrestarlo! - Você deve tomá-lo como prisioneiro primeiro! - Először foglyul kell ejtened! - Вы должны сначала взять его в плен! - - - Load Captive - Gefangenen einladen - Cargar prisionero - Embarquer le prisonnier - Załaduj więźnia - Naložit zajatce - Fogoly berakása - Загрузить пленного - Embarcar Prisioneiro - - - Unload Captive - Gefangenen ausladen - Descargar prisionero - Débarquer le prisonnier - Wyładuj więźnia - Vyložit zajatce - Fogoly kivevése - Выгрузить пленного - Desembarcar Prisioneiro - - - Cable Tie - Kabelbinder - Opaska zaciskowa - Precinto - Serflex - Stahovací Pásek - Algema Plástica - Fascietta - Gyorskötöző - Кабельная стяжка - - - Cable ties that allow you to restrain prisoners. - Kabelbinder ermöglichen es, Gefangene zu fesseln. - Opaska zaciskowa pozwala na skrępowanie dłoni u więźnia. - Los precintos permiten maniatar prisioneros - Les Serflex permettent de menotter les prisonniers. - Stahovací pásky vám umožní zadržet vězně. - A algema plástica permite que você contenha prisioneiros. - Fascietta che ti consente di arrestare i prigionieri. - Gyorskötöző emberek fogjulejtéséhez. - Кабельные стяжки позволяют связывать пленников. - - - Inventory of frisked person - Inventar der durchsuchten Person - Inventaire de la fouille - Inventario de la persona cacheada - Motozott személy felszerelése - Inventář prohledávané osoby - Ekwipunek rewidowanej osoby - Инвентарь обысканных лиц - Inventário da pessoa revistada - - - Frisk person - Person durchsuchen - Fouiller - Cachear - Prohledávaná osoba - Rewiduj osobę - Motozás - Обыскать человека - Revistar - - - Surrender - Kapitulieren - Rendirse - - - Stop Surrendering - Den Kampf erneut aufnehmen - Dejar de rendirse - - - Only use on alive units - Nur bei lebenden Einheiten verwendbar - Utilizar solo en unidades vivas - - - Only use on dismounted inf - Nur bei abgesessener Infanterie verwendbar - Utilizar solo en infanteria desmontada - - - Nothing under mouse - Es wurde nichts ausgewählt - Nada bajo el ratón - - - + + + Take Prisoner + Gefangen nehmen + Tomar prisionero + Capturer le prisonnier + Weź więźnia + Zajmout Osobu + Arresta il Prigioniero + Tomar Prisioneiro + Foglyul ejtés + Взять в плен + + + Free Prisoner + Gefangenen freilassen + Liberar prisionero + Wypuść więźnia + Libérer le prisonnier + Osvobodit Zajatce + Libera il Prigioniero + Libertar Prisioneiro + Fogoly szabadon elengedése + Освободить пленника + + + Escort Prisoner + Gefangenen eskortieren + Escoltar prisionero + Eskortuj więźnia + Escorter le prisonnier + Eskortovat Zajatce + Scorta il Prigioniero + Escoltar Prisioneiro + Fogoly kísérése + Конвоировать пленника + + + Release Prisoner + Gefangenen loslassen + Soltar prisionero + Anuluj eskortowanie + Relâcher le prisonnier + Uvolnit Zajatce + Rilascia il Prigioniero + Largar Prisioneiro + Fogoly elengedése + Прекратить конвоирование + + + You need to take him as prisoner first! + Du musst ihn zuerst gefangen nehmen. + Necesitas hacerle prisionero primero! + Najpierw musisz wziąć go jako więźnia! + Vous devez d'abord le capturer! + Musíš ho nejdříve zajmout! + Prima devi arrestarlo! + Você deve tomá-lo como prisioneiro primeiro! + Először foglyul kell ejtened! + Вы должны сначала взять его в плен! + + + Load Captive + Gefangenen einladen + Cargar prisionero + Embarquer le prisonnier + Załaduj więźnia + Naložit zajatce + Fogoly berakása + Загрузить пленного + Embarcar Prisioneiro + + + Unload Captive + Gefangenen ausladen + Descargar prisionero + Débarquer le prisonnier + Wyładuj więźnia + Vyložit zajatce + Fogoly kivevése + Выгрузить пленного + Desembarcar Prisioneiro + + + Cable Tie + Kabelbinder + Opaska zaciskowa + Precinto + Serflex + Stahovací Pásek + Algema Plástica + Fascietta + Gyorskötöző + Кабельная стяжка + + + Cable ties that allow you to restrain prisoners. + Kabelbinder ermöglichen es, Gefangene zu fesseln. + Opaska zaciskowa pozwala na skrępowanie dłoni u więźnia. + Los precintos permiten maniatar prisioneros + Les Serflex permettent de menotter les prisonniers. + Stahovací pásky vám umožní zadržet vězně. + A algema plástica permite que você contenha prisioneiros. + Fascietta che ti consente di arrestare i prigionieri. + Gyorskötöző emberek fogjulejtéséhez. + Кабельные стяжки позволяют связывать пленников. + + + Inventory of frisked person + Inventar der durchsuchten Person + Inventaire de la fouille + Inventario de la persona cacheada + Motozott személy felszerelése + Inventář prohledávané osoby + Ekwipunek rewidowanej osoby + Инвентарь обысканных лиц + Inventário da pessoa revistada + + + Frisk person + Person durchsuchen + Fouiller + Cachear + Prohledávaná osoba + Rewiduj osobę + Motozás + Обыскать человека + Revistar + + + Surrender + Kapitulieren + Rendirse + Capituler + + + Stop Surrendering + Den Kampf erneut aufnehmen + Dejar de rendirse + Annuler la capitulation + + + Only use on alive units + Nur bei lebenden Einheiten verwendbar + Utilizar solo en unidades vivas + Utiliser uniquement sur unité vivante + + + Only use on dismounted inf + Nur bei abgesessener Infanterie verwendbar + Utilizar solo en infanteria desmontada + Utiliser uniquement sur personnel à pied + + + Nothing under mouse + Es wurde nichts ausgewählt + Nada bajo el ratón + + + \ No newline at end of file diff --git a/addons/common/stringtable.xml b/addons/common/stringtable.xml index a5f5368cd0..5ba4a670d1 100644 --- a/addons/common/stringtable.xml +++ b/addons/common/stringtable.xml @@ -1,363 +1,379 @@  - + - - - ACE-Team - ACE-Team - ACE-Team - ACE-Team - ACE-Team - ACE-Team - Команда ACE - ACE-Team - ACE-Team - ACE-Team - - - Save - Speichern - Guardar - Zapisz - Uložit - Sauvegarder - Сохранить - Salvar - Mentés - Salva - - - Cancel - Abbrechen - Cancelar - Anuluj - Zrušit - Annuler - Отмена - Cancelar - Mégse - Annulla - - - ACE Options - ACE Optionen - Opciones ACE - Opcje ACE - ACE Nastavení - ACE Options - ACE Настройки - Opções do ACE - ACE Opciók - Opzioni ACE - - - - N - N - N - N - S - N - С - N - É - N - - - NNE - NNO - NNE - NNE - SSV - NNE - ССВ - NNE - ÉÉK - NNE - - - NE - NO - NE - NE - SV - NE - СВ - NE - ÉK - NE - - - ENE - ONO - ENE - ENE - VSV - ENE - ВСВ - LNE - KÉK - ENE - - - E - O - E - E - V - E - В - L - K - E - - - ESE - OSO - ESE - ESE - VJV - ESE - ВЮВ - LSE - KDK - ESE - - - SE - SO - SE - SE - JV - SE - ЮВ - SE - DK - SE - - - SSE - SSO - SSE - SSE - JJV - SSE - ЮЮВ - SSE - DDK - SSE - - - S - S - S - S - J - S - Ю - S - D - S - - - SSW - SSW - SSO - SSW - JJZ - SSO - ЮЮЗ - SSO - DDNy - SSO - - - SW - SW - SO - SW - JZ - SO - ЮЗ - SO - DNy - SO - - - WSW - WSW - OSO - WSW - ZJZ - OSO - ЗЮЗ - OSO - NyDNy - OSO - - - W - W - O - W - Z - O - З - O - Ny - O - - - WNW - WNW - ONO - WNW - ZSZ - ONO - ЗСЗ - ONO - NyÉNy - ONO - - - NW - NW - NO - NW - SZ - NO - СЗ - NO - ÉNy - NO - - - NNW - NNW - NNO - NNW - SSZ - NNO - ССЗ - NNO - ÉÉNy - NNO - - - Action cancelled. - Aktion abgebrochen. - Acción cancelada. - Przerwano czynność - Akce přerušena - Action annulée. - Действие отменено. - Ação cancelada. - Művelet megszakítva. - Azione cancellata. - - - [ACE] Miscellaneous Items - [ACE] Verschiedenes - [ACE] Objetos varios - [ACE] Różne przedmioty - [ACE] Ostatní předměty - [ACE] Objets divers - [ACE] Различные предметы - [ACE] Itens diversos - [ACE] Egyéb tárgyak - [ACE] Oggetti vari - - - Disable Command Menu - Befehlsmenü ausschalten - Desactivar menú de mando - Wyłącz menu dowodzenia - Vypnout velící menu - Désactiver Menu Commande - Выключить командное меню - Parancsnoki menü kikapcsolása - - - Unknown - Unbekannt - Desconocido - Nieznany - Neznámý - Неизвестно - Ismeretlen - - - No Voice - Keine Stimme - Sin voz - Brak głosu - Žádný hlas - Без голоса - Nincs hang - - - Akceptuj prośby - Aceptar Peticiones - Accept Requests - Anfrage annehmen - - - Ignoruj prośby - Rechazar Peticiones - Decline Requests - Anfrage ablehnen - - - Akceptuj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. - Acepta Peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones. - Accept Requests send by other players. These can be requests to use / share equipment, perform certain actions. - Anfragen anderer Spieler annehmen. Diese Anfragen können sich auf das Benutzen / Teilen von Equipment beziehen oder das Ausführen bestimmter Aktionen. - - - Ignoruj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. - Rechazar Peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones. - Decline Requests send by other players. These can be requests to use / share equipment, perform certain actions. - Anfragen anderer Spieler ablehnen. Diese Anfragen können sich auf das Benutzen / Teilen von Equipment beziehen oder das Ausführen bestimmter Aktionen. - - - Feedback icons - Feedback-Icons - - - Select the position of or disable the feedback icons on your screen. These icons will show to provide extra feedback on your character status and actions performed. - Wähle die Position der Feedback-Icons aus oder deaktiviere Sie. Die Feedback-Icons zeigen den Status deiner Einheit an, oder die ausgeführte Aktion. - - - Progress bar location - Position des Fortschrittsanzeige - - - Set the desired location of the progress bar on your screen. - Wähle die Position der Fortschrittsanzeige. - - - Hint Background color - Hinweis Hintergrundfarbe - - - The color of the background from the ACE hints. - Wähle die Hintergrundfarbe für ACE-Hinweise. - - - Hint text font color - Hinweis Textfarbe - - - The color of the text font from the ACE hints. This color is the default color for all text displayed through the ACE Hint system, if the hint text has no other color specified. - Wähle die Textfarbe für ACE-Hinweise. - - - Banana - Banane - - - A banana is an edible fruit, botanically a berry, produced by several kinds of large herbaceous flowering plants in the genus Musa. - Die Bananen (Musa) sind eine Pflanzengattung in der Familie der Bananengewächse (Musaceae) innerhalb der Einkeimblättrigen Pflanzen (Monokotyledonen). - - + + + ACE-Team + ACE-Team + ACE-Team + ACE-Team + ACE-Team + ACE-Team + Команда ACE + ACE-Team + ACE-Team + ACE-Team + + + Save + Speichern + Guardar + Zapisz + Uložit + Sauvegarder + Сохранить + Salvar + Mentés + Salva + + + Cancel + Abbrechen + Cancelar + Anuluj + Zrušit + Annuler + Отмена + Cancelar + Mégse + Annulla + + + ACE Options + ACE Optionen + Opciones ACE + Opcje ACE + ACE Nastavení + Options ACE + ACE Настройки + Opções do ACE + ACE Opciók + Opzioni ACE + + + + N + N + N + N + S + N + С + N + É + N + + + NNE + NNO + NNE + NNE + SSV + NNE + ССВ + NNE + ÉÉK + NNE + + + NE + NO + NE + NE + SV + NE + СВ + NE + ÉK + NE + + + ENE + ONO + ENE + ENE + VSV + ENE + ВСВ + LNE + KÉK + ENE + + + E + O + E + E + V + E + В + L + K + E + + + ESE + OSO + ESE + ESE + VJV + ESE + ВЮВ + LSE + KDK + ESE + + + SE + SO + SE + SE + JV + SE + ЮВ + SE + DK + SE + + + SSE + SSO + SSE + SSE + JJV + SSE + ЮЮВ + SSE + DDK + SSE + + + S + S + S + S + J + S + Ю + S + D + S + + + SSW + SSW + SSO + SSW + JJZ + SSO + ЮЮЗ + SSO + DDNy + SSO + + + SW + SW + SO + SW + JZ + SO + ЮЗ + SO + DNy + SO + + + WSW + WSW + OSO + WSW + ZJZ + OSO + ЗЮЗ + OSO + NyDNy + OSO + + + W + W + O + W + Z + O + З + O + Ny + O + + + WNW + WNW + ONO + WNW + ZSZ + ONO + ЗСЗ + ONO + NyÉNy + ONO + + + NW + NW + NO + NW + SZ + NO + СЗ + NO + ÉNy + NO + + + NNW + NNW + NNO + NNW + SSZ + NNO + ССЗ + NNO + ÉÉNy + NNO + + + Action cancelled. + Aktion abgebrochen. + Acción cancelada. + Przerwano czynność + Akce přerušena + Action annulée. + Действие отменено. + Ação cancelada. + Művelet megszakítva. + Azione cancellata. + + + [ACE] Miscellaneous Items + [ACE] Verschiedenes + [ACE] Objetos varios + [ACE] Różne przedmioty + [ACE] Ostatní předměty + [ACE] Objets divers + [ACE] Различные предметы + [ACE] Itens diversos + [ACE] Egyéb tárgyak + [ACE] Oggetti vari + + + Disable Command Menu + Befehlsmenü ausschalten + Desactivar menú de mando + Wyłącz menu dowodzenia + Vypnout velící menu + Désactiver Menu Commande + Выключить командное меню + Parancsnoki menü kikapcsolása + + + Unknown + Unbekannt + Desconocido + Nieznany + Neznámý + Неизвестно + Ismeretlen + Inconnu + + + No Voice + Keine Stimme + Sin voz + Brak głosu + Žádný hlas + Без голоса + Nincs hang + Pas de voix + + + Akceptuj prośby + Aceptar Peticiones + Accept Requests + Anfrage annehmen + Accepter requête + + + Ignoruj prośby + Rechazar Peticiones + Decline Requests + Anfrage ablehnen + Rejeter requête + + + Akceptuj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. + Acepta Peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones. + Accept Requests send by other players. These can be requests to use / share equipment, perform certain actions. + Anfragen anderer Spieler annehmen. Diese Anfragen können sich auf das Benutzen / Teilen von Equipment beziehen oder das Ausführen bestimmter Aktionen. + Accepter les requêtes d'autres joueurs. Comme l'utilisation / l'échange d'équipement, la réalistion d'actions. + + + Ignoruj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. + Rechazar Peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones. + Decline Requests send by other players. These can be requests to use / share equipment, perform certain actions. + Anfragen anderer Spieler ablehnen. Diese Anfragen können sich auf das Benutzen / Teilen von Equipment beziehen oder das Ausführen bestimmter Aktionen. + Rejeter les requêtes d'autres joueurs. Comme l'utilisation / l'échange d'équipement, la réalistion d'actions. + + + Feedback icons + Feedback-Icons + Icones d'information + + + Select the position of or disable the feedback icons on your screen. These icons will show to provide extra feedback on your character status and actions performed. + Wähle die Position der Feedback-Icons aus oder deaktiviere Sie. Die Feedback-Icons zeigen den Status deiner Einheit an, oder die ausgeführte Aktion. + Sélection de la position ou la désactivation des icones de feedback. Ces icones vous apportent des informations complémentaires sur votre status et sur les actions en cours. + + + Progress bar location + Position des Fortschrittsanzeige + Position de la barre de progression + + + Set the desired location of the progress bar on your screen. + Wähle die Position der Fortschrittsanzeige. + Appliquer la postion de la barre de progression sur l'écran + + + Hint Background color + Hinweis Hintergrundfarbe + Notification: couleur de l'arrière plan + + + The color of the background from the ACE hints. + Wähle die Hintergrundfarbe für ACE-Hinweise. + Notifications ACE: couleur de l'arrière plan + + + Hint text font color + Hinweis Textfarbe + Notification: couleur du texte + + + The color of the text font from the ACE hints. This color is the default color for all text displayed through the ACE Hint system, if the hint text has no other color specified. + Wähle die Textfarbe für ACE-Hinweise. + Notification ACE: couleur du texte. C'est la couleur par défaut de tout texte afficher dans les notifications ACE, si aucune couleur n'est spécifiée pour les notifications + + + Banana + Banane + Banane + + + A banana is an edible fruit, botanically a berry, produced by several kinds of large herbaceous flowering plants in the genus Musa. + Die Bananen (Musa) sind eine Pflanzengattung in der Familie der Bananengewächse (Musaceae) innerhalb der Einkeimblättrigen Pflanzen (Monokotyledonen). + Une banane est un fruit qui, d'un point de vue botanique, fait partie du groupe des baies. Produite par plusieurs sortes de grandes plantes à fleurs herbacées du type Musa. + + \ No newline at end of file diff --git a/addons/dragging/stringtable.xml b/addons/dragging/stringtable.xml index 9193d2712e..615b3c13d9 100644 --- a/addons/dragging/stringtable.xml +++ b/addons/dragging/stringtable.xml @@ -1,36 +1,36 @@ - - + + - - - Drag - Тащить - Arrastrar - Ciągnij - Táhnout - Tracter - Ziehen - Arrastar - Trascina - Húzás - - - Release - Отпустить - Soltar - Puść - Položit - Lâcher - Loslassen - Largar - Lascia - Elengedés - - - Item to heavy - Gegenstand zu schwer - Articulo demasiado pesado - - - - Carry - Tragen - Portar - Nieś - Porter - Nést - Carregar - Trascina - Felvesz - Нести - - - + Objet trop lourd + + + Carry + Tragen + Portar + Nieś + Porter + Nést + Carregar + Trascina + Felvesz + Нести + + + \ No newline at end of file diff --git a/addons/explosives/stringtable.xml b/addons/explosives/stringtable.xml index 1d010a0a7e..7ee05f04d1 100644 --- a/addons/explosives/stringtable.xml +++ b/addons/explosives/stringtable.xml @@ -1,498 +1,499 @@  - + - - - Explosives - Sprengstoffe - Explosivos - Ładunki wybuchowe - Explosifs - Výbušniny - Esplosivi - Robbanóanyagok - Explosivos - Взрывчатка - - - Place >> - Platzieren >> - Colocar >> - Umieść >> - Placer >> - Položit >> - Piazza >> - Lerakás >> - Colocar >> - Установить >> - - - Detonate >> - Zünden >> - Detonar >> - Detonuj >> - Mise à feu >> - Odpálit >> - Detona >> - Robbantás >> - Detonar >> - Подрыв >> - - - Explosive code: %1 - Sprengstoffcode: %1 - Código del explosivo: %1 - Kod ładunku: %1 - Code explosif: %1 - Kód výbušniny: %1 - Codice dell'esplosivo : %1 - Robbanóanyag kódja: %1 - Código do explosivo: %1 - Взрывная код: %1 - - - Place - Platzieren - Colocar - Umieść - Placer - Položit - Piazza - Elhelyezés - Colocar - Положить - - - Cancel - Abbrechen - Cancelar - Anuluj - Annuler - Zrušit - Annulla - Mégsem - Cancelar - Отмена - - - + Modifier, rotates - + Modifikator, drehen - + Modificador, girar - + Modificateur, tourner - + Modificatore, rotazione - + Otočit - + Változtatás, forgatás - + modyfikator, obracanie - + Modificador, rotaciona - + Bращать - - - Turn On Thor III - Thor III aktivieren - Encender Thor III - Włącz Thor III - Allumer Thor III - Zapnout Thor III - Accendi Thor III - Thor III bekapcsolása - Ativar Thor III - Активировать Thor III - - - Turn Off Thor III - Thor III deaktivieren - Apagar Thor III - Wyłącz Thor III - Éteindre Thor III - Vypnout Thor III - Spegni Thor III - Thor III kikapcsolása - Desativar Thor III - Деактивировать Thor III - - - Cellphone - Mobiltelefon - Télefono móvil - Telefon komórkowy - Téléphone Portable - Telefon - Cellulare - Mobil - Celular - Сотовый телефон - - - Used to remotely trigger explosives - Wird benutzt um Sprengstoffe fernzuzünden - Usado para detonar remotamente explosivos - Używany do zdalnego detonowania ładunków wybuchowych - Utilisé pour déclencher des explosifs à distance - Používaný ke vzdálenému odpalování výbušnin - Usato per l'attivazione a distanza degli esplosivi - Robbanóanyagok távoli robbantásához - Usado para acionar explosivos remotamente - Используется для удаленного запуска взрывчатку - - - M57 Firing Device - M57 Zündvorrichtung - Dispositivo de detonación M57 - Zapalnik M57 - M57 Dispositif de mise à feu - M57 Odpalovací Zařízení - Detonatore M57 - M57 Detonátor - M57 Dispositivo de Detonação - Взрыватель M57 - - - Used to remotely trigger explosives - Wird benutzt um Sprengstoffe fernzuzünden - Usado para detonar remotamente explosivos - Używany do zdalnego detonowania ładunków wybuchowych - Utilisé pour déclencher des explosifs à distance - Použévané ke vzdálenému odpalování výbušnin - Usato per l'attivazione a distanza degli esplosivi - Robbanóanyagok távoli robbantásához - Usado para acionar explosivos remotamente - Используется для удаленного запуска взрывчатку - - - M26 Firing Device - M26 Zündvorrichtung - Dispositivo de detonación MK26 - Zapalnik M26 - M26 Dispositif de mise à feu - M26 Odpalovací Zařízení - Detonatore M26 - M26 Detonátor - M26 Dispositivo de Detonação - Взрыватель M26 - - - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - - - Defusal Kit - Entschärfungskit - Kit de desactivación - Zestaw do rozbrajania - Kit de désamorçage - Zneškodňovací sada - Kit E.O.D. - Hatástalanító felszerelés - Kit de desarme - Разминирование комплект - - - Allows defusing of explosives - Erlaubt die Entschärfung von Sprengstoffen - Permite desactivar explosivos - Umożliwia rozbrajanie ładunków wybuchowych - Permet de désamorçer des explosifs - Dovoluje zneškodňování výbušnin - Consente la disattivazione degli ordigni esplosivi - Robbanóanyagok hatástalanításához - Permite o desarme de explosivos - Allows defusing of explosives - - - Add to Speed Dial - Zur Schnellauswahl hinzufügen - Agregar a marcado rápido - Dodaj do szybkiego wybierania - Ajouter à la composition rapide - Přidat jako rychlou volbu - Aggiungi alla selezione rapida - Hozzáadás gyorshíváshoz - Adicionar à ligação rápida - Добавить в ускоренный набор - - - Clear - Löschen - Borrar - Usuń - Désamorçé - Čistý - Libera - Törlés - Limpar - Pассеиваться - - - Dial - Wählen - Marcar - Wybierz mumer - Composer - Vytočit - Composizione numero - Tárcsázás - Discar - Hабрать - - - Up - Hoch - Arriba - W górę - Haut - Nahoru - Sopra - Fel - Cima - Поднять - - - Down - Runter - Abajo - W dół - Bas - Dolu - Sotto - Le - Baixo - Опустить - - - Cancel - Abbrechen - Cancelar - Anuluj - Annuler - Zrušit - Annulla - Mégsem - Cancelar - Отмена - - - Detonate Menu - "Zünden"-Menü - Menú de detonación - Menu detonowania - Menu de mise à feu - Menu Detonace - Menù di detonazione - Robbantás menü - Menu de detonação - Меню Подрыв - - - Place Menu - "Platzieren"-Menü - Menú de colocación - Menu umieszczania - Menu Placement - Menu Umístění - Menù di collocamento - Lerakás menü - Menu de posicionamento - Меню Установить - - - Defuse - Entschärfen - Desactivar - Rozbrój - Désamorçer - Zneškodnit - Disinnesca - Hatástalanítás - Desarmar - Обезвредить - - - Defusing Explosive... - Entschärfe Sprengstoff... - Desactivando explosivo... - Rozbrajanie ładunku... - Désamorçage des explosifs... - Zneškodňuji Výbušninu... - Esposivo in fase di disattivazione... - Robbanóanyag hatástalaníása... - Desarmando Explosivo... - Обезвреживание... - - - Timer - Zeitzünder - Temporizador - Czasomierz - Retard - Časovač - Cronometro - Időzített - Timer - Временной - - - Time: %1m %2s - Zeit: %1m %2s - Tiempo: %1m %2s - Czas: %1m %2s - Temps : %1m %2s - Čas: %1m %2s - Tempo : %1m %2s - Idő: %1m %2s - Tempo: %1m %2s - Tемп: %1m %2c - - - Set Time - Zeit einstellen - Configurar tiempo - Ustaw czas - Régler retard - Nastavit Čas - Modifica il conto alla rovescia - Idő állítása - Configurar Tempo - Xронометр - - - Select a Trigger - Wähle einen Zünder - Seleccionar un disparador - Wybierz zapalnik - Sélectionner une mise à feu - Zvolit Detonátor - Seleziona un Attivatore - Detonátor kiválasztása - Selecionar um Gatilho - Выберите - - - Select - Wählen - Seleccionar - Wybierz - Sélectionner - Zvolit - Seleziona - Kiválasztás - Selecionar - Выбрать защелка - - - Pressure Plate - Płyta naciskowa - Placa de presión - Druckplatte - Plaque de pression - Nášlapná nástraha - Piastra a Pressione - Nyomólap - Placa de pressão - Давление - - - Tripwire - Linka naciągu - Cable trampa - Stolperdraht - Fil de butée - Nástražný drát - Filo a Inciampo - Botlódrót - Linha de tração - Натяжной - - - IR Sensor - Czujnik podczerwieni - Sensor IR - Infrarotsensor - Capteur IR - IR Značkovač - Sensore IR - IR szenzor - Sensor IV - ИК - - - No triggers available for %1 - Brak dostępnych zapalników dla %1 - No hay detonadores disponibles para %1 - Keine Auslöser vorhanden für %1 - Pas de mise à feu disponible pour %1 - Žádný detonátor k dispozici pro %1 - Nessun attivatore disponibile per %1 - Nincs detonátor a %1 - Nenhum gatilho disponível para %1 - Нет защелка доступны для %1 - - - IR Sensor (Side Attack) - Czujnik podczerwieni (wybuch na bok) - Sensor IR (ataque lateral) - Infrarotsensor (Seitenangriff) - Capteur IR (de flanc) - IR Značkovač (Výbuch stranou) - Sensore IR (Attacco laterale) - IR Sensor (Side Attack) - Sensor infravermelho (ataque lateral) - ИК (боковая атака) - - - Magnetic Influence Sensor (Bottom Attack) - Czujnik magnetyczny (wybuch w górę) - Sensor IM (ataque inferior) - Magnetfeldsensor (Bodenangriff) - Capteur Magnétique (par le bas) - Magnetický Senzor (Výbuch ze spoda) - Sensore Magnetico di Prossimità (Attacco inferiore) - Mágneses (Bottom Attack) - Influência magnética (ataque inferior) - Магнитный (дно атака) - - - No explosives on trigger. - Keine Sprengladungen auf diesem Auslöser. - Ningún explosivo en el detonador. - Pas d'explosif à mettre à feu. - Nessun esplosivo sul sensore. - Žádná výbušnina k odpálení. - Nincs robbanóanyag a detonátorhoz. - Brak ładunków na zapalnik. - Nenhum explosivo no gatilho. - Нет взрывчатки на курок. - - - Dead Man's Switch - Totmannschalter - Mise à feu par relâchement de pression - Spínač mrtvého muže - Czuwak - Detonador de hombre muerto - Dead Man's Switch - Кнопка мертвеца - - - Used to remotely trigger explosives when released. - Zündet Sprengladungen wenn losgelassen. - Déclenche la mise à feu d'un explosif lorsqu'il est libéré. - Používaný k vzdálenému odpálení, při uvolnění odpálí výbušniny - Używany w celu zdalnej detonacji ładunków kiedy jego operator zostanie zabity. - Utilizado para detonar explosivos remotamente al soltarlo. - Robbanóanyagok távoli robbantásához - Используется для дистанционного подрыва, после смерти оператора. - - - Pick up - Aufnehmen - - + + + Explosives + Sprengstoffe + Explosivos + Ładunki wybuchowe + Explosifs + Výbušniny + Esplosivi + Robbanóanyagok + Explosivos + Взрывчатка + + + Place >> + Platzieren >> + Colocar >> + Umieść >> + Placer >> + Položit >> + Piazza >> + Lerakás >> + Colocar >> + Установить >> + + + Detonate >> + Zünden >> + Detonar >> + Detonuj >> + Mise à feu >> + Odpálit >> + Detona >> + Robbantás >> + Detonar >> + Подрыв >> + + + Explosive code: %1 + Sprengstoffcode: %1 + Código del explosivo: %1 + Kod ładunku: %1 + Code explosif: %1 + Kód výbušniny: %1 + Codice dell'esplosivo : %1 + Robbanóanyag kódja: %1 + Código do explosivo: %1 + Взрывная код: %1 + + + Place + Platzieren + Colocar + Umieść + Placer + Položit + Piazza + Elhelyezés + Colocar + Положить + + + Cancel + Abbrechen + Cancelar + Anuluj + Annuler + Zrušit + Annulla + Mégsem + Cancelar + Отмена + + + + Modifier, rotates + + Modifikator, drehen + + Modificador, girar + + Modificateur, tourner + + Modificatore, rotazione + + Otočit + + Változtatás, forgatás + + modyfikator, obracanie + + Modificador, rotaciona + + Bращать + + + Turn On Thor III + Thor III aktivieren + Encender Thor III + Włącz Thor III + Allumer Thor III + Zapnout Thor III + Accendi Thor III + Thor III bekapcsolása + Ativar Thor III + Активировать Thor III + + + Turn Off Thor III + Thor III deaktivieren + Apagar Thor III + Wyłącz Thor III + Éteindre Thor III + Vypnout Thor III + Spegni Thor III + Thor III kikapcsolása + Desativar Thor III + Деактивировать Thor III + + + Cellphone + Mobiltelefon + Télefono móvil + Telefon komórkowy + Téléphone Portable + Telefon + Cellulare + Mobil + Celular + Сотовый телефон + + + Used to remotely trigger explosives + Wird benutzt um Sprengstoffe fernzuzünden + Usado para detonar remotamente explosivos + Używany do zdalnego detonowania ładunków wybuchowych + Utilisé pour déclencher des explosifs à distance + Používaný ke vzdálenému odpalování výbušnin + Usato per l'attivazione a distanza degli esplosivi + Robbanóanyagok távoli robbantásához + Usado para acionar explosivos remotamente + Используется для удаленного запуска взрывчатку + + + M57 Firing Device + M57 Zündvorrichtung + Dispositivo de detonación M57 + Zapalnik M57 + M57 Dispositif de mise à feu + M57 Odpalovací Zařízení + Detonatore M57 + M57 Detonátor + M57 Dispositivo de Detonação + Взрыватель M57 + + + Used to remotely trigger explosives + Wird benutzt um Sprengstoffe fernzuzünden + Usado para detonar remotamente explosivos + Używany do zdalnego detonowania ładunków wybuchowych + Utilisé pour déclencher des explosifs à distance + Použévané ke vzdálenému odpalování výbušnin + Usato per l'attivazione a distanza degli esplosivi + Robbanóanyagok távoli robbantásához + Usado para acionar explosivos remotamente + Используется для удаленного запуска взрывчатку + + + M26 Firing Device + M26 Zündvorrichtung + Dispositivo de detonación MK26 + Zapalnik M26 + M26 Dispositif de mise à feu + M26 Odpalovací Zařízení + Detonatore M26 + M26 Detonátor + M26 Dispositivo de Detonação + Взрыватель M26 + + + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + + + Defusal Kit + Entschärfungskit + Kit de desactivación + Zestaw do rozbrajania + Kit de désamorçage + Zneškodňovací sada + Kit E.O.D. + Hatástalanító felszerelés + Kit de desarme + Разминирование комплект + + + Allows defusing of explosives + Erlaubt die Entschärfung von Sprengstoffen + Permite desactivar explosivos + Umożliwia rozbrajanie ładunków wybuchowych + Permet de désamorçer des explosifs + Dovoluje zneškodňování výbušnin + Consente la disattivazione degli ordigni esplosivi + Robbanóanyagok hatástalanításához + Permite o desarme de explosivos + Allows defusing of explosives + + + Add to Speed Dial + Zur Schnellauswahl hinzufügen + Agregar a marcado rápido + Dodaj do szybkiego wybierania + Ajouter à la composition rapide + Přidat jako rychlou volbu + Aggiungi alla selezione rapida + Hozzáadás gyorshíváshoz + Adicionar à ligação rápida + Добавить в ускоренный набор + + + Clear + Löschen + Borrar + Usuń + Désamorçé + Čistý + Libera + Törlés + Limpar + Pассеиваться + + + Dial + Wählen + Marcar + Wybierz mumer + Composer + Vytočit + Composizione numero + Tárcsázás + Discar + Hабрать + + + Up + Hoch + Arriba + W górę + Haut + Nahoru + Sopra + Fel + Cima + Поднять + + + Down + Runter + Abajo + W dół + Bas + Dolu + Sotto + Le + Baixo + Опустить + + + Cancel + Abbrechen + Cancelar + Anuluj + Annuler + Zrušit + Annulla + Mégsem + Cancelar + Отмена + + + Detonate Menu + "Zünden"-Menü + Menú de detonación + Menu detonowania + Menu de mise à feu + Menu Detonace + Menù di detonazione + Robbantás menü + Menu de detonação + Меню Подрыв + + + Place Menu + "Platzieren"-Menü + Menú de colocación + Menu umieszczania + Menu Placement + Menu Umístění + Menù di collocamento + Lerakás menü + Menu de posicionamento + Меню Установить + + + Defuse + Entschärfen + Desactivar + Rozbrój + Désamorçer + Zneškodnit + Disinnesca + Hatástalanítás + Desarmar + Обезвредить + + + Defusing Explosive... + Entschärfe Sprengstoff... + Desactivando explosivo... + Rozbrajanie ładunku... + Désamorçage des explosifs... + Zneškodňuji Výbušninu... + Esposivo in fase di disattivazione... + Robbanóanyag hatástalaníása... + Desarmando Explosivo... + Обезвреживание... + + + Timer + Zeitzünder + Temporizador + Czasomierz + Minuteur + Časovač + Cronometro + Időzített + Timer + Временной + + + Time: %1m %2s + Zeit: %1m %2s + Tiempo: %1m %2s + Czas: %1m %2s + Temps : %1m %2s + Čas: %1m %2s + Tempo : %1m %2s + Idő: %1m %2s + Tempo: %1m %2s + Tемп: %1m %2c + + + Set Time + Zeit einstellen + Configurar tiempo + Ustaw czas + Régler minuteur + Nastavit Čas + Modifica il conto alla rovescia + Idő állítása + Configurar Tempo + Xронометр + + + Select a Trigger + Wähle einen Zünder + Seleccionar un disparador + Wybierz zapalnik + Sélectionner une mise à feu + Zvolit Detonátor + Seleziona un Attivatore + Detonátor kiválasztása + Selecionar um Gatilho + Выберите + + + Select + Wählen + Seleccionar + Wybierz + Sélectionner + Zvolit + Seleziona + Kiválasztás + Selecionar + Выбрать защелка + + + Pressure Plate + Płyta naciskowa + Placa de presión + Druckplatte + Plaque de pression + Nášlapná nástraha + Piastra a Pressione + Nyomólap + Placa de pressão + Давление + + + Tripwire + Linka naciągu + Cable trampa + Stolperdraht + Fil de détente + Nástražný drát + Filo a Inciampo + Botlódrót + Linha de tração + Натяжной + + + IR Sensor + Czujnik podczerwieni + Sensor IR + Infrarotsensor + Capteur IR + IR Značkovač + Sensore IR + IR szenzor + Sensor IV + ИК + + + No triggers available for %1 + Brak dostępnych zapalników dla %1 + No hay detonadores disponibles para %1 + Keine Auslöser vorhanden für %1 + Pas de mise à feu disponible pour %1 + Žádný detonátor k dispozici pro %1 + Nessun attivatore disponibile per %1 + Nincs detonátor a %1 + Nenhum gatilho disponível para %1 + Нет защелка доступны для %1 + + + IR Sensor (Side Attack) + Czujnik podczerwieni (wybuch na bok) + Sensor IR (ataque lateral) + Infrarotsensor (Seitenangriff) + Capteur IR (de flanc) + IR Značkovač (Výbuch stranou) + Sensore IR (Attacco laterale) + IR Sensor (Side Attack) + Sensor infravermelho (ataque lateral) + ИК (боковая атака) + + + Magnetic Influence Sensor (Bottom Attack) + Czujnik magnetyczny (wybuch w górę) + Sensor IM (ataque inferior) + Magnetfeldsensor (Bodenangriff) + Capteur Magnétique (par le bas) + Magnetický Senzor (Výbuch ze spoda) + Sensore Magnetico di Prossimità (Attacco inferiore) + Mágneses (Bottom Attack) + Influência magnética (ataque inferior) + Магнитный (дно атака) + + + No explosives on trigger. + Keine Sprengladungen auf diesem Auslöser. + Ningún explosivo en el detonador. + Pas d'explosif à mettre à feu. + Nessun esplosivo sul sensore. + Žádná výbušnina k odpálení. + Nincs robbanóanyag a detonátorhoz. + Brak ładunków na zapalnik. + Nenhum explosivo no gatilho. + Нет взрывчатки на курок. + + + Dead Man's Switch + Totmannschalter + Mise à feu par relâchement de pression + Spínač mrtvého muže + Czuwak + Detonador de hombre muerto + Dead Man's Switch + Кнопка мертвеца + + + Used to remotely trigger explosives when released. + Zündet Sprengladungen wenn losgelassen. + Déclenche la mise à feu d'un explosif lorsqu'il est libéré. + Používaný k vzdálenému odpálení, při uvolnění odpálí výbušniny + Używany w celu zdalnej detonacji ładunków kiedy jego operator zostanie zabity. + Utilizado para detonar explosivos remotamente al soltarlo. + Robbanóanyagok távoli robbantásához + Используется для дистанционного подрыва, после смерти оператора. + + + Pick up + Aufnehmen + Ramasser + + \ No newline at end of file diff --git a/addons/frag/stringtable.xml b/addons/frag/stringtable.xml index 4ae3979667..1c07f90dda 100644 --- a/addons/frag/stringtable.xml +++ b/addons/frag/stringtable.xml @@ -1,15 +1,16 @@  - + - - - - Disable Fragmentation - Zakázat fragmentaci granátů - Weapons: Keine Schrapnelle - Wyłącz głowice fragmentacyjne - Выключить разлёт осколков - - - + + + + Disable Fragmentation + Zakázat fragmentaci granátů + Weapons: Keine Schrapnelle + Wyłącz głowice fragmentacyjne + Выключить разлёт осколков + Désactive la fragmentation + + + \ No newline at end of file diff --git a/addons/hearing/stringtable.xml b/addons/hearing/stringtable.xml index f042128301..3022695f2a 100644 --- a/addons/hearing/stringtable.xml +++ b/addons/hearing/stringtable.xml @@ -1,107 +1,108 @@  - + - - - Ear Plugs - Ohrenstöpsel - Tapones para los oídos - Stopery do uszu - Špunty - Беруши - Bouchons Anti-Bruits - Füldugó - Protetor auricular - Tappi auricolari - - - Protective Ear Plugs allow the wearer to be near loud weaponry without damage to his hearing. - Schützende Ohrenstöpsel, die es dem Träger ermöglichen, sich in der Nähe lauter Waffen aufzuhalten. - Los tapones para los oídos permiten al usuario operar armamento ruidoso sin sufrir pérdida de audición. - Stopery do uszu umożliwiają użytkownikowi przebywać w pobliżu głośnej broni bez poniesienia konsekwencji jaką jest utrata słuchu. - Ochranné špunty umožňují uživateli, aby neutrpěl zranění jeho sluchu v blízkosti hlasitých zbraní. - Беруши позволяют избежать потери слуха при близкой громкой стрельбе. - Bouchons Anti-Bruits pour la prévention des traumatismes sonores aigus. - Erősebb hanghatásoktól védő füldugó, megakadályozza a nagy hanggal járó fegyverzettől való halláskárosodást. - Protetor para ouvidos permitem que o usuário esteja próximo a ruídos sem danificar sua audição. - Proteggono l'apparato uditivo, permettendo a chi li indossa di resistere ai suoni particolarmente forti senza alcun danno. - - - Earplugs in - Ohrenstöpsel drinnen - Poner tapones - Załóż stopery - Dát špunty do uší - Беруши надеты - Bouchons mis - Füldugó berakva - Protetores colocados - Indossa i tappi auricolari - - - Earplugs out - Ohrenstöpsel raus - Quitar tapones - Zdejmij stopery - Vyndat špunty z uší - Беруши сняты - Bouchons enlevés - Füldugó kivéve - Protetores retirados - Levati i tappi auricolari - - - Earplugs in - Ohrenstöpsel drinnen - Tapones puestos - Stopery założone - Špunty v uších - Беруши надеты - Bouchons mis - Füldugó berakva - Protetores colocados - Indossa i tappi auricolari - - - Earplugs out - Ohrenstöpsel raus - Tapones quitados - Stopery zdjęte - Špunty venku z uší - Беруши сняты - Bouchons enlevés - Füldugó kivéve - Protetores retirados - Levati i tappi auricolari - - - You have no ear plugs - Keine Ohrenstöpsel im Inventar - No tienes tapones para los oídos - Nie masz stoperów - Nemáš žádné špunty - У вас нет беруш - Vous n'avez pas de Bouchons Anti-Bruits - Nincs füldugód - Você não possui protetores auriculares - Non hai i tappi auricolari - - - No inventory space - Kein Platz im Inventar - Sin espacio en el inventario - Brak miejsca w ekwipunku - Pas de place dans l'inventaire - Není místo v inventáři - Non hai abbastanza spazio - Não há espaço no inventário - Nincs több hely - Нет места в инвентаре - - - Disable ear ringing - Desactivar zumbido de oídos - Knalltrauma deaktivieren - - + + + Ear Plugs + Ohrenstöpsel + Tapones para los oídos + Stopery do uszu + Špunty + Беруши + Bouchons Anti-Bruits + Füldugó + Protetor auricular + Tappi auricolari + + + Protective Ear Plugs allow the wearer to be near loud weaponry without damage to his hearing. + Schützende Ohrenstöpsel, die es dem Träger ermöglichen, sich in der Nähe lauter Waffen aufzuhalten. + Los tapones para los oídos permiten al usuario operar armamento ruidoso sin sufrir pérdida de audición. + Stopery do uszu umożliwiają użytkownikowi przebywać w pobliżu głośnej broni bez poniesienia konsekwencji jaką jest utrata słuchu. + Ochranné špunty umožňují uživateli, aby neutrpěl zranění jeho sluchu v blízkosti hlasitých zbraní. + Беруши позволяют избежать потери слуха при близкой громкой стрельбе. + Bouchons Anti-Bruits pour la prévention des traumatismes sonores aigus. + Erősebb hanghatásoktól védő füldugó, megakadályozza a nagy hanggal járó fegyverzettől való halláskárosodást. + Protetor para ouvidos permitem que o usuário esteja próximo a ruídos sem danificar sua audição. + Proteggono l'apparato uditivo, permettendo a chi li indossa di resistere ai suoni particolarmente forti senza alcun danno. + + + Earplugs in + Ohrenstöpsel drinnen + Poner tapones + Załóż stopery + Dát špunty do uší + Беруши надеты + Bouchons mis + Füldugó berakva + Protetores colocados + Indossa i tappi auricolari + + + Earplugs out + Ohrenstöpsel raus + Quitar tapones + Zdejmij stopery + Vyndat špunty z uší + Беруши сняты + Bouchons enlevés + Füldugó kivéve + Protetores retirados + Levati i tappi auricolari + + + Earplugs in + Ohrenstöpsel drinnen + Tapones puestos + Stopery założone + Špunty v uších + Беруши надеты + Bouchons mis + Füldugó berakva + Protetores colocados + Indossa i tappi auricolari + + + Earplugs out + Ohrenstöpsel raus + Tapones quitados + Stopery zdjęte + Špunty venku z uší + Беруши сняты + Bouchons enlevés + Füldugó kivéve + Protetores retirados + Levati i tappi auricolari + + + You have no ear plugs + Keine Ohrenstöpsel im Inventar + No tienes tapones para los oídos + Nie masz stoperów + Nemáš žádné špunty + У вас нет беруш + Vous n'avez pas de Bouchons Anti-Bruits + Nincs füldugód + Você não possui protetores auriculares + Non hai i tappi auricolari + + + No inventory space + Kein Platz im Inventar + Sin espacio en el inventario + Brak miejsca w ekwipunku + Pas de place dans l'inventaire + Není místo v inventáři + Non hai abbastanza spazio + Não há espaço no inventário + Nincs több hely + Нет места в инвентаре + + + Disable ear ringing + Desactivar zumbido de oídos + Knalltrauma deaktivieren + Désactiver le bourdonnement + + \ No newline at end of file diff --git a/addons/laser_selfdesignate/stringtable.xml b/addons/laser_selfdesignate/stringtable.xml index 03d28814ec..e472e37e82 100644 --- a/addons/laser_selfdesignate/stringtable.xml +++ b/addons/laser_selfdesignate/stringtable.xml @@ -1,14 +1,16 @@  - + - - - Laser<br/>Designator On - Lasermarkierer<br/>an - - - Laser<br/>Designator Off - Lasermarkierer<br/>aus - - + + + Laser<br/>Designator On + Lasermarkierer<br/>an + Désignateur Laser Allumé + + + Laser<br/>Designator Off + Lasermarkierer<br/>aus + Désignateur Laser Eteint + + \ No newline at end of file diff --git a/addons/laserpointer/stringtable.xml b/addons/laserpointer/stringtable.xml index 87b36618a6..fd4e29342f 100644 --- a/addons/laserpointer/stringtable.xml +++ b/addons/laserpointer/stringtable.xml @@ -1,32 +1,32 @@  + - - - - Laser Pointer (red) - Laserpointer (rot) - - - Laser Pointer (green) - Laserpointer (grün) - - - - Emits visible light. - Strahlt sichtbares Licht aus. - - - - <t color='#9cf953'>Use: </t>Turn Laser ON/OFF - <t color='#9cf953'>Použití: </t>Zapnout/vypnout laser - <t color='#9cf953'>Utiliser : </t>laser on/off - <t color='#9cf953'>Benutzen: </t>Laser EIN/AUS - <t color='#9cf953'>Uso: </t>Laser ON/OFF - <t color='#9cf953'>Użyj: </t>wł./wył. lasera - <t color='#9cf953'>Uso: </t>Ativar/Desativar laser - <t color='#9cf953'>Использовать: </t>вкл/выкл лазер - <t color='#9cf953'>Usar: </t>encender/apagar láser - - - - + + + Laser Pointer (red) + Laserpointer (rot) + Pointeur laser (rouge) + + + Laser Pointer (green) + Laserpointer (grün) + Pointeur laser (vert) + + + Emits visible light. + Strahlt sichtbares Licht aus. + Emettre de la lumière visible + + + <t color='#9cf953'>Use: </t>Turn Laser ON/OFF + <t color='#9cf953'>Použití: </t>Zapnout/vypnout laser + <t color='#9cf953'>Utiliser : </t>laser on/off + <t color='#9cf953'>Benutzen: </t>Laser EIN/AUS + <t color='#9cf953'>Uso: </t>Laser ON/OFF + <t color='#9cf953'>Użyj: </t>wł./wył. lasera + <t color='#9cf953'>Uso: </t>Ativar/Desativar laser + <t color='#9cf953'>Использовать: </t>вкл/выкл лазер + <t color='#9cf953'>Usar: </t>encender/apagar láser + + + \ No newline at end of file diff --git a/addons/logistics_uavbattery/stringtable.xml b/addons/logistics_uavbattery/stringtable.xml index fbd9004290..022c8f911c 100644 --- a/addons/logistics_uavbattery/stringtable.xml +++ b/addons/logistics_uavbattery/stringtable.xml @@ -1,78 +1,78 @@  - + - - - Drone is full - Drohne ist voll - El VANT está lleno - L'UAV est chargé - Dron jest naładowany - A drón fel van töltve - Dron je nabitý - O VANT está cheio - Il drone è pieno - БПЛА заполнен - - - You need a UAV Battery - Du brauchst eine UAV-Batterie - Necesitas una batería para VANT - Pas de batterie UAV - Potrzebujesz baterii UAV - Szükséged van egy UAV akkumulátorra - Potřebuješ UAV-Baterii - Você precisa de uma Bateria para VANT - Hai bisogno di una Batteria UAV - Требуется аккумулятор БПЛА - - - Recharge - Aufladen - Recargar - Recharger - Naładuj - Feltöltés - Dobít - Recarregar - Ricarica - Подзарядить - - - UAV Battery - UAV-Batterie - Batería para VANT - Batterie UAV - Bateria UAV - UAV akkumulátor - UAV-Baterie - Bateria para VANT - Batteria UAV - Аккумулятор БПЛА - - - Used to refuel Carried UAV's - Verwendet zum Aufladen von tragbaren UAV's - Usada para reabastecer el VANT - Utilisée pour recharger l'UAV - Używana do naładowania UAV - Hordozható UAV-ok működéséhez való akkumulátor - Používané k dobíjení UAV - Usada para reabastecer VANT - Usata per ricaricare la Batteria dell'UAV - Используется для подзарядки БПЛА - - - Recharging ... - Aufladen ... - Recargando ... - Rechargement ... - Ładowanie ... - Akku feltöltése ... - Dobíjení ... - Recarregando ... - In ricarica ... - Подзаряжаем ... - - + + + Drone is full + Drohne ist voll + El VANT está lleno + L'UAV est chargé + Dron jest naładowany + A drón fel van töltve + Dron je nabitý + O VANT está cheio + Il drone è pieno + БПЛА заполнен + + + You need a UAV Battery + Du brauchst eine UAV-Batterie + Necesitas una batería para VANT + L'UAV nécessite une batterie + Potrzebujesz baterii UAV + Szükséged van egy UAV akkumulátorra + Potřebuješ UAV-Baterii + Você precisa de uma Bateria para VANT + Hai bisogno di una Batteria UAV + Требуется аккумулятор БПЛА + + + Recharge + Aufladen + Recargar + Recharger + Naładuj + Feltöltés + Dobít + Recarregar + Ricarica + Подзарядить + + + UAV Battery + UAV-Batterie + Batería para VANT + Batterie UAV + Bateria UAV + UAV akkumulátor + UAV-Baterie + Bateria para VANT + Batteria UAV + Аккумулятор БПЛА + + + Used to refuel Carried UAV's + Verwendet zum Aufladen von tragbaren UAV's + Usada para reabastecer el VANT + Utilisée pour recharger l'UAV + Używana do naładowania UAV + Hordozható UAV-ok működéséhez való akkumulátor + Používané k dobíjení UAV + Usada para reabastecer VANT + Usata per ricaricare la Batteria dell'UAV + Используется для подзарядки БПЛА + + + Recharging ... + Aufladen ... + Recargando ... + Rechargement ... + Ładowanie ... + Akku feltöltése ... + Dobíjení ... + Recarregando ... + In ricarica ... + Подзаряжаем ... + + \ No newline at end of file diff --git a/addons/logistics_wirecutter/stringtable.xml b/addons/logistics_wirecutter/stringtable.xml index f23af6b1e5..35c4c009b2 100644 --- a/addons/logistics_wirecutter/stringtable.xml +++ b/addons/logistics_wirecutter/stringtable.xml @@ -1,51 +1,53 @@  - + - - - Wirecutter - Drahtschneider - Wirecutter - - - Wirecutter - Schneidet Draht. - - - Cut Fence - Zaun schneiden - Cortar alambrado - Przetnij płot - Přestřihnout plot - Cisailler Clôture - Cortar Cerca - Taglia - Drótkerítés átvágása - Вырезать забор - - - Cutting Fences / Wires ... - Zaun / Draht schneiden ... - Cortando alambrado / cables ... - Przecinanie płotu / drutów ... - Přestřihnout plot / dráty ... - Cisaille l'obstacle ... - Cortando Cerca / Arame ... - Sto tagliando ... - Drótok elvágása ... - Вырезаем забор / провода ... - - - Fence cut - Zaun geschnitten - Alambrado cortado - Płot przecięty - Plot přestřižen - Clôture cisaillée - Cerca cortada - Fatto! - Drótkerítés átvágva - Забор вырезан - - + + + Wirecutter + Drahtschneider + Wirecutter + Pince coupante + + + Wirecutter + Schneidet Draht. + Pince coupante + + + Cut Fence + Zaun schneiden + Cortar alambrado + Przetnij płot + Přestřihnout plot + Cisailler Clôture + Cortar Cerca + Taglia + Drótkerítés átvágása + Вырезать забор + + + Cutting Fences / Wires ... + Zaun / Draht schneiden ... + Cortando alambrado / cables ... + Przecinanie płotu / drutów ... + Přestřihnout plot / dráty ... + Cisaille l'obstacle ... + Cortando Cerca / Arame ... + Sto tagliando ... + Drótok elvágása ... + Вырезаем забор / провода ... + + + Fence cut + Zaun geschnitten + Alambrado cortado + Płot przecięty + Plot přestřižen + Clôture cisaillée + Cerca cortada + Fatto! + Drótkerítés átvágva + Забор вырезан + + \ No newline at end of file diff --git a/addons/magazinerepack/stringtable.xml b/addons/magazinerepack/stringtable.xml index d8fd5ca177..81f8924144 100644 --- a/addons/magazinerepack/stringtable.xml +++ b/addons/magazinerepack/stringtable.xml @@ -1,93 +1,96 @@  - + - - - Repack<br/>Magazines - Magazine<br/>umpacken - Reorganizar<br/>cargadores - Réorganiser<br/>chargeurs - Przepakuj<br/>magazynki - Přepáskovat<br/>Zásobníky - Ricarica<br/>Caricatori - Reorganizar<br/>Carregadores - Újratárazás<br/> - Перепаковать<br/>магазины - - - Select Magazine Menu - Magazinauswahlmenü - Menú de selección de cargador - Sélectionner menu des chargeurs - Menu wyboru magazynków - Zvolit Menu Zásobníků - Seleziona Menù di Ricarica - Menu de Seleção de Carregador - Fegyvertár menü kiválasztás - Меню выбора магазинов - - - Select Mag - Magazin auswählen - Seleccionar cargador - Sélectionner chargeur - Wybierz magazynek - Zvolit Zásobník - Seleziona Caricatore - Selecionar Carregador - Tár kiválasztása - Выбрать магазин - - - Repacking Magazines ... - Magazine umpacken ... - Reorganizando cargadores ... - Réorganisation des chargeurs ... - Przepakowywanie magazynków ... - Páskuji Zásobníky ... - Sto ricaricando le munizioni ... - Reorganizando Carregadores ... - Újratárazás ... - Перепаковка магазинов ... - - - Repacked Magazines - Magazine umgepackt - Cargadores reorganizados - Chargeurs réorganisés - Magazynki przepakowane - Přepáskované Zásobníky - Caricatore ricaricato - Carregadores Reorganizados - Újratárazott tárak - Магазины перепакованы - - - %1 full mag(s) and %2 extra round(s) - %1 volle(s) Magazin(e) und %2 übrig gebliebene Patrone(n) - %1 cargador(es) completo(s) y %2 bala(s) extra(s) - %1 chargeur(s) plein(s) et %2 cartouche(s) en rab - %1 pełnych magazynków i %2 dodatkowych naboi - %1 plný zásobník(y) a %2 munice navíc - %1 caricatore/i pieno e %2 munizioni extra - %1 carregador(es) cheio(s) e %2 disparo(s) a mais - %1 tejles tár és %2 extra lőszer. - %1 полных магазина(ов) и %2 патрона(ов) - - - Repacking Finished - Wiederverpacken Fertig - Reembalaje Finalizado - - - Repacking Interrupted - Umpacken Unterbrochen - Reempaque Interrupted - - - %1 Full and %2 Partial - %1 Vollständigen und %2 Teilweisen - %1 Total y %2 Parcial - - + + + Repack<br/>Magazines + Magazine<br/>umpacken + Reorganizar<br/>cargadores + Réorganiser<br/>chargeurs + Przepakuj<br/>magazynki + Přepáskovat<br/>Zásobníky + Ricarica<br/>Caricatori + Reorganizar<br/>Carregadores + Újratárazás<br/> + Перепаковать<br/>магазины + + + Select Magazine Menu + Magazinauswahlmenü + Menú de selección de cargador + Sélectionner menu des chargeurs + Menu wyboru magazynków + Zvolit Menu Zásobníků + Seleziona Menù di Ricarica + Menu de Seleção de Carregador + Fegyvertár menü kiválasztás + Меню выбора магазинов + + + Select Mag + Magazin auswählen + Seleccionar cargador + Sélectionner chargeur + Wybierz magazynek + Zvolit Zásobník + Seleziona Caricatore + Selecionar Carregador + Tár kiválasztása + Выбрать магазин + + + Repacking Magazines ... + Magazine umpacken ... + Reorganizando cargadores ... + Réorganisation des chargeurs ... + Przepakowywanie magazynków ... + Páskuji Zásobníky ... + Sto ricaricando le munizioni ... + Reorganizando Carregadores ... + Újratárazás ... + Перепаковка магазинов ... + + + Repacked Magazines + Magazine umgepackt + Cargadores reorganizados + Chargeurs réorganisés + Magazynki przepakowane + Přepáskované Zásobníky + Caricatore ricaricato + Carregadores Reorganizados + Újratárazott tárak + Магазины перепакованы + + + %1 full mag(s) and %2 extra round(s) + %1 volle(s) Magazin(e) und %2 übrig gebliebene Patrone(n) + %1 cargador(es) completo(s) y %2 bala(s) extra(s) + %1 chargeur(s) plein(s) et %2 cartouche(s) en rab + %1 pełnych magazynków i %2 dodatkowych naboi + %1 plný zásobník(y) a %2 munice navíc + %1 caricatore/i pieno e %2 munizioni extra + %1 carregador(es) cheio(s) e %2 disparo(s) a mais + %1 tejles tár és %2 extra lőszer. + %1 полных магазина(ов) и %2 патрона(ов) + + + Repacking Finished + Wiederverpacken Fertig + Reembalaje Finalizado + Réorganisation terminée + + + Repacking Interrupted + Umpacken Unterbrochen + Reempaque Interrupted + Réorganisation interrompue + + + %1 Full and %2 Partial + %1 Vollständigen und %2 Teilweisen + %1 Total y %2 Parcial + %1 plein(s) et %2 partiel(s) + + \ No newline at end of file diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index fee0f7ff47..c262e53c13 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1,5 +1,5 @@  - + @@ -226,7 +226,6 @@ Packing Bandage - Elastic Bandage @@ -378,7 +377,6 @@ Receiving IV [%1ml] Transfusion en IV [%1ml] - Bandage (Basic) Повязка (обычная) @@ -707,7 +705,7 @@ - Un bandage aidnat à coaguler les saignements mineurs à moyens. + Un bandage aidant à coaguler les saignements mineurs à moyens. Proszkowy opatrunek adsorbcyjny przeznaczony do tamowania zagrażających życiu krwawień średniej i dużej intensywności. @@ -770,7 +768,6 @@ Housse de transport des corps Bolsa para cadáveres - Blood Pressure Артериальное давление @@ -1025,8 +1022,8 @@ Placing body in bodybag + Placement du corps dans la housse - %1 has bandaged patient %1 a pansé le patient @@ -1043,6 +1040,5 @@ %1 applied a tourniquet %1 a appliqué un garrot - - + \ No newline at end of file diff --git a/addons/microdagr/stringtable.xml b/addons/microdagr/stringtable.xml index 772a7a172f..ea5520e000 100644 --- a/addons/microdagr/stringtable.xml +++ b/addons/microdagr/stringtable.xml @@ -1,109 +1,131 @@  - + - - - MicroDAGR GPS - - - MicroDAGR advanced GPS receiver - - - Angular Unit: - - - Mils - - - Show Waypoints On Map: - - - Degrees - - - On - Zapnuto - Oui - Ein - - Wł. - Ativar - Вкл. - - - - Off - Vypnuto - Non - Aus - No - Wył. - Desativar - Выкл. - No - - - Enter Grid Cords: - - - Name of [%1] - - - MGRS-New - - - WGD - - - Range: - Reichweite: - - - Compass Direction - - - Mark - - - Waypoints - Wegpunkte - - - Connect To - - - Settings - Einstellungen - Configuración - - - SetWP - - - Add - - - Delete - Smazat - Supprimer - Löschen - Elimina - Usuń - Excluir - Удалить - Suprimir - - - Toggle MicroDAGR Display Mode - - - Show MicoDAGR - - - Configure MicroDAGR - - - Close MicroDAGR - - + + + MicroDAGR GPS + MicroDAGR GPS + + + MicroDAGR advanced GPS receiver + Récepteur GPS MicroDAGR + + + Angular Unit: + Unité angulaire + + + Mils + Mils + + + Show Waypoints On Map: + Montrer points de passage sur la carte + + + Degrees + Degrés + + + On + Zapnuto + Allumé + Ein + + Wł. + Ativar + Вкл. + + + + Off + Vypnuto + Eteint + Aus + No + Wył. + Desativar + Выкл. + No + + + Enter Grid Cords: + Entrer coordonnées + + + Name of [%1] + Nom de %1 + + + MGRS-New + Info-MGRS + + + WGD + WGD + + + Range: + Reichweite: + Distance: + + + Compass Direction + Azimut + + + Mark + Marque + + + Waypoints + Wegpunkte + Point de passage + + + Connect To + Connecter + + + Settings + Einstellungen + Configuración + Paramètres + + + SetWP + Définir point de passage + + + Add + Ajouter + + + Delete + Smazat + Supprimer + Löschen + Elimina + Usuń + Excluir + Удалить + Suprimir + + + Toggle MicroDAGR Display Mode + Basculer le mode d'affichage MicroDAGR + + + Show MicroDAGR + Afficher MicroDAGR + + + Configure MicroDAGR + Configurer MicroDAGR + + + Close MicroDAGR + Fermer MicroDAGR + + \ No newline at end of file diff --git a/addons/movement/stringtable.xml b/addons/movement/stringtable.xml index d31896acaa..ddeb521077 100644 --- a/addons/movement/stringtable.xml +++ b/addons/movement/stringtable.xml @@ -1,46 +1,48 @@  - + - - - Show weight in lb - Zeige Gewicht in Pfund - Mostrar peso en libras - Afficher le poids en lb - Pokaż ciężar w funtach - Zobrazit váhu v lb - Mostra peso in libbre - Mostrar peso em libras - Súly megjelenítése fontban. - Показать вес в фунтах - - - Weight: - Gewicht: - Peso: - Poids: - Waga: - Váha: - Peso: - Peso: - Súly: - Вес: - - - Climb - Klettern - Wspinaczka - Trepar - Vylézt - Подняться - - - Can't climb here - Kann hier nicht klettern - Nie możesz wspiąć się tutaj - No se puede trepar aquí - Zde není možné vylézt - Не можете подняться здесь - - + + + Show weight in lb + Zeige Gewicht in Pfund + Mostrar peso en libras + Afficher le poids en lb + Pokaż ciężar w funtach + Zobrazit váhu v lb + Mostra peso in libbre + Mostrar peso em libras + Súly megjelenítése fontban. + Показать вес в фунтах + + + Weight: + Gewicht: + Peso: + Poids: + Waga: + Váha: + Peso: + Peso: + Súly: + Вес: + + + Climb + Klettern + Wspinaczka + Trepar + Vylézt + Подняться + Grimper + + + Can't climb here + Kann hier nicht klettern + Nie możesz wspiąć się tutaj + No se puede trepar aquí + Zde není možné vylézt + Не можете подняться здесь + Impossible de grimper ici + + \ No newline at end of file diff --git a/addons/nightvision/stringtable.xml b/addons/nightvision/stringtable.xml index 16ead016da..a254dd29e9 100644 --- a/addons/nightvision/stringtable.xml +++ b/addons/nightvision/stringtable.xml @@ -1,127 +1,128 @@  - + - - - NV Goggles (Gen1) - Noktovizor (Gen1) - JVN (Gen1) - NS-Brille (Gen1) - Occhiali notturni (Gen1) - Gogle noktowizyjne (Gen1) - Óculos de visão noturna (Gen1) - ПНВ (Gen1) - Sistema de visión nocturna (Gen1) - - - NV Goggles (Gen2) - Noktovizor (Gen2) - JVN (Gen2) - NS-Brille (Gen2) - Occhiali notturni (Gen2) - Gogle noktowizyjne (Gen2) - Óculos de visão noturna (Gen2) - ПНВ (Gen2) - Sistema de visión nocturna (Gen2) - - - NV Goggles (Gen3) - Noktovizor (Gen3) - JVN (Gen3) - NS-Brille (Gen3) - Occhiali notturni (Gen3) - Gogle noktowizyjne (Gen3) - Óculos de visão noturna (Gen3) - ПНВ (Gen3) - Sistema de visión nocturna (Gen3) - - - NV Goggles (Gen3, Brown) - Noktovizor (Gen3, hnědý) - JVN (Gen3, marron) - NS-Brille (Gen3, Braun) - Occhiali notturni (Gen3, marroni) - Gogle noktowizyjne (Gen3, brązowe) - Óculos de visão noturna (Gen3, marrons) - ПНВ (Gen3, коричневый) - Sistema de visión nocturna (Gen3, marrón) - - - NV Goggles (Gen3, Green) - Noktovizor (Gen3, zelený) - JVN (Gen3, vertes) - NS-Brille (Gen3, Grün) - Occhiali notturni (Gen3, verdi) - Gogle noktowizyjne (Gen3, zielone) - Óculos de visão noturna (Gen3, verdes) - ПНВ (Gen3, зеленый) - Sistema de visión nocturna (Gen3, verde) - - - NV Goggles (Gen3, Black) - Noktovizor (Gen3, černý) - JVN (Gen3, noires) - NS-Brille (Gen3, Schwarz) - Occhiali notturni (Gen3, neri) - Gogle noktowizyjne (Gen3, czarne) - Óculos de visão noturna (Gen3, pretos) - ПНВ (Gen3, черный) - Sistema de visión nocturna (Gen3, negro) - - - NV Goggles (Gen4) - Noktovizor (Gen4) - JVN (Gen4) - NS-Brille (Gen4) - Occhiali notturni (Gen4) - Gogle noktowizyjne (Gen4) - Óculos de visão noturna (Gen4) - ПНВ (Gen4) - Sistema de visión nocturna (Gen4) - - - NV Goggles (Wide) - NS-Brille (Weitwinkel) - Sistema de visión nocturna (Panorámicas) - Gogle noktowizyjne (panoramiczne) - Noktovizor (Široký) - ПНВ (Широкий) - - - Brightness: %1 - Helligkeit: %1 - Brillo: %1 - Czułość: %1 - Zvýšení: %1 - Luminosité : %1 - Контраст: - Fényerő: %1 - Luminosidade: %1 - Luminosità: %1 - - - Increase NVG Brightness - Nachtsichtgerätshelligkeit erhöhen - Aumentar el brillo de las NVG - Zwiększ czułość noktowizji - Zvýšení jasu noktovizoru - Augmenter la luminosité des JVN - Увеличить яркость ПНВ - Fényerő növelése - Aumentar Luminosidade do EVN - Aumenta la luminosità dell'NVG - - - Decrease NVG Brightness - Nachtsichtgerätshelligkeit verringern - Disminuir el brillo de las NVG - Zmniejsz czułość noktowizji - Snížení jasu noktovizoru - Baisser la luminosité des JVN - Уменьшить яркость ПНВ - Fényerő csökkentése - Diminuir Luminosidade do EVN - Riduci la luminosità dell'NVG - - - + + + NV Goggles (Gen1) + Noktovizor (Gen1) + JVN (Gen1) + NS-Brille (Gen1) + Occhiali notturni (Gen1) + Gogle noktowizyjne (Gen1) + Óculos de visão noturna (Gen1) + ПНВ (Gen1) + Sistema de visión nocturna (Gen1) + + + NV Goggles (Gen2) + Noktovizor (Gen2) + JVN (Gen2) + NS-Brille (Gen2) + Occhiali notturni (Gen2) + Gogle noktowizyjne (Gen2) + Óculos de visão noturna (Gen2) + ПНВ (Gen2) + Sistema de visión nocturna (Gen2) + + + NV Goggles (Gen3) + Noktovizor (Gen3) + JVN (Gen3) + NS-Brille (Gen3) + Occhiali notturni (Gen3) + Gogle noktowizyjne (Gen3) + Óculos de visão noturna (Gen3) + ПНВ (Gen3) + Sistema de visión nocturna (Gen3) + + + NV Goggles (Gen3, Brown) + Noktovizor (Gen3, hnědý) + JVN (Gen3, marron) + NS-Brille (Gen3, Braun) + Occhiali notturni (Gen3, marroni) + Gogle noktowizyjne (Gen3, brązowe) + Óculos de visão noturna (Gen3, marrons) + ПНВ (Gen3, коричневый) + Sistema de visión nocturna (Gen3, marrón) + + + NV Goggles (Gen3, Green) + Noktovizor (Gen3, zelený) + JVN (Gen3, vertes) + NS-Brille (Gen3, Grün) + Occhiali notturni (Gen3, verdi) + Gogle noktowizyjne (Gen3, zielone) + Óculos de visão noturna (Gen3, verdes) + ПНВ (Gen3, зеленый) + Sistema de visión nocturna (Gen3, verde) + + + NV Goggles (Gen3, Black) + Noktovizor (Gen3, černý) + JVN (Gen3, noires) + NS-Brille (Gen3, Schwarz) + Occhiali notturni (Gen3, neri) + Gogle noktowizyjne (Gen3, czarne) + Óculos de visão noturna (Gen3, pretos) + ПНВ (Gen3, черный) + Sistema de visión nocturna (Gen3, negro) + + + NV Goggles (Gen4) + Noktovizor (Gen4) + JVN (Gen4) + NS-Brille (Gen4) + Occhiali notturni (Gen4) + Gogle noktowizyjne (Gen4) + Óculos de visão noturna (Gen4) + ПНВ (Gen4) + Sistema de visión nocturna (Gen4) + + + NV Goggles (Wide) + NS-Brille (Weitwinkel) + Sistema de visión nocturna (Panorámicas) + Gogle noktowizyjne (panoramiczne) + Noktovizor (Široký) + ПНВ (Широкий) + JVN (Large) + + + Brightness: %1 + Helligkeit: %1 + Brillo: %1 + Czułość: %1 + Zvýšení: %1 + Luminosité : %1 + Контраст: + Fényerő: %1 + Luminosidade: %1 + Luminosità: %1 + + + Increase NVG Brightness + Nachtsichtgerätshelligkeit erhöhen + Aumentar el brillo de las NVG + Zwiększ czułość noktowizji + Zvýšení jasu noktovizoru + Augmenter la luminosité des JVN + Увеличить яркость ПНВ + Fényerő növelése + Aumentar Luminosidade do EVN + Aumenta la luminosità dell'NVG + + + Decrease NVG Brightness + Nachtsichtgerätshelligkeit verringern + Disminuir el brillo de las NVG + Zmniejsz czułość noktowizji + Snížení jasu noktovizoru + Baisser la luminosité des JVN + Уменьшить яркость ПНВ + Fényerő csökkentése + Diminuir Luminosidade do EVN + Riduci la luminosità dell'NVG + + + \ No newline at end of file diff --git a/addons/optionsmenu/stringtable.xml b/addons/optionsmenu/stringtable.xml index 76407da435..81ba3b457a 100644 --- a/addons/optionsmenu/stringtable.xml +++ b/addons/optionsmenu/stringtable.xml @@ -1,107 +1,122 @@  - + - - - ACE Options - ACE Optionen - Opciones ACE - Opcje ACE - ACE Nastavení - ACE Options - ACE Настройки - Opções do ACE - ACE Opciók - Opzioni ACE - - - Fix Animation - - - Reset All - Rücksetzen - - - Colors - Farben - цвета - Colors - - - Options - Optionen - Opciones - Opcje - Nastavení - Options - Настройки - Opções - Opciók - Opzioni - - - Values - - - Yes - Ja - Si - Tak - Ano - Oui - Да - Igen - Sim - Si - - - No - Nein - No - Nie - Ne - Non - Нет - Nem - Não - No - - - Setting: - Nastavení: - Einstellung: - Yстановки: - Ajuste: - - - Export - - - Open Export Menu - - - String input. - - - Array. Seperate elements by using ,. - - - Number - - - Uknown input type - - - Save input - - - Include Client Settings - - - Exclude Client Settings - - - Settings exported to clipboard - - + + + ACE Options + ACE Optionen + Opciones ACE + Opcje ACE + ACE Nastavení + Options ACE + ACE Настройки + Opções do ACE + ACE Opciók + Opzioni ACE + + + Fix Animation + Corriger animation + + + Reset All + Rücksetzen + Défaut + + + Colors + Farben + цвета + Colors + Couleurs + + + Options + Optionen + Opciones + Opcje + Nastavení + Options + Настройки + Opções + Opciók + Opzioni + + + Values + Valeurs + + + Yes + Ja + Si + Tak + Ano + Oui + Да + Igen + Sim + Si + + + No + Nein + No + Nie + Ne + Non + Нет + Nem + Não + No + + + Setting: + Nastavení: + Einstellung: + Yстановки: + Ajuste: + Paramètres + + + Export + Exporter + + + Open Export Menu + Ouvrir le menu d'exportation + + + String input. + Entrée + + + Array. Seperate elements by using ,. + Tableau. Séparation par ,. + + + Number + Nombre + + + Uknown input type + Type d'entrée inconnue + + + Save input + Sauvegarder + + + Include Client Settings + Inclure paramètres client + + + Exclude Client Settings + Exclure paramètres client + + + Settings exported to clipboard + Paramètres exportés dans le presse papier + + \ No newline at end of file diff --git a/addons/overheating/stringtable.xml b/addons/overheating/stringtable.xml index 5d2c9595df..9f593ec056 100644 --- a/addons/overheating/stringtable.xml +++ b/addons/overheating/stringtable.xml @@ -1,156 +1,158 @@  - + - - - Display text on jam - - - Display a notification whenever your weapon gets jammed - - - Spare barrel - Ersatzlauf - Cañón de repuesto - Zapasowa lufa - Náhradní hlaveň - Deuxième canon - Запасной ствол - Tartalék cső - Cano Reserva - Canna di ricambio - - - Use to swap barrel. - Benutzen, um Lauf zu wechseln. - Permite intercambiar el cañón - Umożliwia wymianę lufy - Používané k výměně hlavně - Utilisé pour changer de canon. - Используется для смены ствола. - Cső kicseréléséhez. - Use para trocar o cano/estriamento. - Usata per cambiare la canna. - - - Weapon jammed! - Ladehemmung! - Arma encasquillada! - Broń się zacięła! - Zbraň se zasekla! - Arme enrayée - Оружие заклинило! - Elakadt a fegyver! - Arma travada! - Arma inceppata! - - - Clear jam - Ladehemmung beheben - Desencasquillar el arma - Usuń zacięcie - Uvolnit zbraň - Désenrayer l'arme - Исправить клин оружия. - Hárítsd el az akadályt! - Destravar arma - Ripulisci l'arma - - - Jam cleared - Ladehemmung behoben - Arma desencasquillada - Zacięcie usunięte - Zbraň uvolněna - Arme désenrayée - Оружие исправлено - Akadály elhárítva! - Arma destravada - Arma pronta al fuoco - - - Swap barrel - Lauf wechseln - Cambiar el cañón - Wymień lufę - Vyměnit hlaveň - Changer de canon - Сменить ствол - Cserélj csövet! - Substituir cano - Sostiuisci la canna - - - Swapping barrel... - Lauf wird gewechselt... - Cambiando el cañón... - Wymienianie lufy... - Vyměňuji hlaveň ... - Changement du canon... - Смена ствола... - Cső cserélése... - Substituindo cano... - Sto sostituendo la canna ... - - - Swapped barrel - Lauf gewechselt - Cañón cambiado - Lufa wymieniona - Hlaveň vyměněna - Canon changé - Ствол сменен - Cső kicserélve! - Cano substituído - Canna sostituita - - - Check weapons temperature - Temperatur der Waffe prüfen - Verificar temperatura del arma - Sprawdź temperaturę broni - Vérifier la température de l'arme - Hőmérséklet ellenőrzése - Zjistit teplotu zbraně - Conferir temperatura da arma - Controlla la temperatura della canna - Проверить температуру оружия - - - Check<br/>temperature - Temperatur<br/>prüfen - Verificar<br/>temperatura - Sprawdź<br/>temperaturę - Vérifier la<br/>température - Hőmérséklet<br/>ellenőrzése - Zjistit<br/>teplotu - Conferir<br/>temperatura - Controlla la<br/>temperatura - Проверить<br/>температуру - - - Checking temperature ... - Prüfe Temperatur ... - Verificando temperatura ... - Sprawdzanie temperatury ... - Vérification de la température ... - Hőmérséklet ellenőrzése... - Zjišťuju teplotu ... - Conferindo temperatura ... - Sto controllando la temperatura ... - Проверка температуры ... - - - Temperature - Temperatur - Temperatura - Temperatura - Température - Hőmérséklet - Teplota - Temperatura - Temperatura - Температура - - + + + Display text on jam + Affiche texte si enrayé + + + Display a notification whenever your weapon gets jammed + Affiche une notification lors d'un enrayement + + + Spare barrel + Ersatzlauf + Cañón de repuesto + Zapasowa lufa + Náhradní hlaveň + Deuxième canon + Запасной ствол + Tartalék cső + Cano Reserva + Canna di ricambio + + + Use to swap barrel. + Benutzen, um Lauf zu wechseln. + Permite intercambiar el cañón + Umożliwia wymianę lufy + Používané k výměně hlavně + Utilisé pour changer de canon. + Используется для смены ствола. + Cső kicseréléséhez. + Use para trocar o cano/estriamento. + Usata per cambiare la canna. + + + Weapon jammed! + Ladehemmung! + Arma encasquillada! + Broń się zacięła! + Zbraň se zasekla! + Arme enrayée + Оружие заклинило! + Elakadt a fegyver! + Arma travada! + Arma inceppata! + + + Clear jam + Ladehemmung beheben + Desencasquillar el arma + Usuń zacięcie + Uvolnit zbraň + Désenrayer l'arme + Исправить клин оружия. + Hárítsd el az akadályt! + Destravar arma + Ripulisci l'arma + + + Jam cleared + Ladehemmung behoben + Arma desencasquillada + Zacięcie usunięte + Zbraň uvolněna + Arme désenrayée + Оружие исправлено + Akadály elhárítva! + Arma destravada + Arma pronta al fuoco + + + Swap barrel + Lauf wechseln + Cambiar el cañón + Wymień lufę + Vyměnit hlaveň + Changer de canon + Сменить ствол + Cserélj csövet! + Substituir cano + Sostiuisci la canna + + + Swapping barrel... + Lauf wird gewechselt... + Cambiando el cañón... + Wymienianie lufy... + Vyměňuji hlaveň ... + Changement du canon... + Смена ствола... + Cső cserélése... + Substituindo cano... + Sto sostituendo la canna ... + + + Swapped barrel + Lauf gewechselt + Cañón cambiado + Lufa wymieniona + Hlaveň vyměněna + Canon changé + Ствол сменен + Cső kicserélve! + Cano substituído + Canna sostituita + + + Check weapons temperature + Temperatur der Waffe prüfen + Verificar temperatura del arma + Sprawdź temperaturę broni + Vérifier la température de l'arme + Hőmérséklet ellenőrzése + Zjistit teplotu zbraně + Conferir temperatura da arma + Controlla la temperatura della canna + Проверить температуру оружия + + + Check<br/>temperature + Temperatur<br/>prüfen + Verificar<br/>temperatura + Sprawdź<br/>temperaturę + Vérifier la<br/>température + Hőmérséklet<br/>ellenőrzése + Zjistit<br/>teplotu + Conferir<br/>temperatura + Controlla la<br/>temperatura + Проверить<br/>температуру + + + Checking temperature ... + Prüfe Temperatur ... + Verificando temperatura ... + Sprawdzanie temperatury ... + Vérification de la température ... + Hőmérséklet ellenőrzése... + Zjišťuju teplotu ... + Conferindo temperatura ... + Sto controllando la temperatura ... + Проверка температуры ... + + + Temperature + Temperatur + Temperatura + Temperatura + Température + Hőmérséklet + Teplota + Temperatura + Temperatura + Температура + + \ No newline at end of file diff --git a/addons/realisticnames/stringtable.xml b/addons/realisticnames/stringtable.xml index 9ccd7752d2..3800209cb5 100644 --- a/addons/realisticnames/stringtable.xml +++ b/addons/realisticnames/stringtable.xml @@ -1,5 +1,5 @@  - + @@ -117,6 +117,7 @@ YABHON-R3 (CAS) YABHON-R3 (CAS) YABHON-R3 (штурмовик) + YABHON-R3 (CAS) M-ATV @@ -725,6 +726,7 @@ CH-47I Chinook (nieuzbrojony) CH-47I Chinook (невооруженный) CH-47I Chinook (Neozbrojený) + CH-47I Chinook (Neozbrojený) A-10D Thunderbolt II @@ -1041,270 +1043,334 @@ P99 P99 + P99 MP-443 Grach MP-443 Grach + MP-443 Grach ACP-C2 ACP-C2 + ACP-C2 FNX-45 Tactical FNX-45 Tactical + FNX-45 Tactical Chiappa Rhino 60DS Chiappa Rhino 60DS + Chiappa Rhino 60DS Taurus Judge Taurus Judge + Taurus Judge NLAW NLAW + NLAW RPG-32 RPG-32 + RPG-32 Mini-Spike (AA) Mini-Spike (AA) + Mini-Spike (AA) Mini-Spike (AT) Mini-Spike (AT) + Mini-Spike (AT) MX MX + MX MX (Black) MX (Black) + MX ( Noir) MXC MXC + MXC MXC (Black) MXC (Black) + MXC (Noir) MX 3GL MX 3GL + MX 3GL MX 3GL (Black) MX 3GL (Black) + MX 3 GL (Noir) MX LSW MX LSW + MX LSW MX LSW (Black) MX LSW (Black) + MX LSW (Noir) MXM MXM + MXM MXM (Black) MXM (Black) + MXM (Noir) KT2002 Katiba KT2002 Katiba + KT2002 Katiba KT2002C Katiba KT2002C Katiba + KT2002C Katiba KT2002 Katiba KGL KT2002 Katiba KGL + KT2002 Katiba KGL F2000 (Camo) F2000 (Camo) + F2000 (Camo) F2000 F2000 + F2000 F2000 Tactical (Camo) F2000 Tactical (Camo) + F2000 Tactical (Camo) F2000 Tactical F2000 Tactical + F2000 Tactical F2000 EGLM (Camo) F2000 EGLM (Camo) + F2000 EGLM (Camo) F2000 EGLM F2000 EGLM + F2000 EGLM TAR-21 TAR-21 + TAR-21 CTAR-21 CTAR-21 + CTAR-21 TAR-21 EGLM TAR-21 EGLM + TAR-21 EGLM Vector SMG Vector SMG + Vector SMG Scorpion Evo 3 A1 Scorpion Evo 3 A1 + Scorpion Evo 3 A1 CPW CPW + CPW RFB SDAR RFB SDAR + RFB SDAR Stoner 99 LMG Stoner 99 LMG + Stoner 99 LMG Negev NG7 Negev NG7 + Negev NG7 Mk14 Mod 1 EBR Mk14 Mod 1 EBR + Mk 14 Mod 1 EBR GM6 Lynx GM6 Lynx + GM6 Lynx GM6 Lynx (Camo) GM6 Lynx (Camo) + GM6 Lynx (Camo) M200 Intervention M200 Intervention + M200 Intervention M200 Intervention (Camo) M200 Intervention (Camo) + M200 Intervention (Camo) VS-121 VS-121 + VS-121 - TODO: MAR-10 .338 + MAR-10 .338 TODO: MAR-10 .338 (Black) + MAR-10 .338 (Noir) TODO: MAR-10 .338 (Camo) + MAR-10 .338 (Camo) TODO: MAR-10 .338 (Sand) + MAR-10 .338 (Beige) - TODO: Mk-I EMR 7.62 mm + Mk-l EMR 7.62 mm TODO: Mk-I EMR 7.62 mm (Black) + Mk-l EMR 7.62 mm (Noir) TODO: Mk-I EMR 7.62 mm (Khaki) + Mk-l EMR 7.62 mm (Kaki) TODO: Mk-I EMR 7.62 mm (Sand) + Mk-l EMR 7.62 mm (Beige) TODO: Mk-I EMR 7.62 mm (Camo) + Mk-l EMR 7.62 mm (Camo) TODO: Mk-I EMR 7.62 mm (Woodland) + Mk-l EMR 7.62 mm (Woodland) TODO: NATO DMR (provisional) spotter + NATO DMR (provisoire) Observateur - TODO: ASP-1 Kir 12.7 mm + ASP-1 Kir 12.7 mm TODO: ASP-1 Kir 12.7 mm (Black) + ASP-1 Kir 12.7 mm (Noir) TODO: ASP-1 Kir 12.7 mm (Tan) + ASP-1 Kir 12.7 mm (Tan) - TODO: Cyrus 9.3 mm + Cyrus 9.3 mm TODO: Cyrus 9.3 mm (Black) + Cyrus 9.3 mm (Noir) TODO: Cyrus 9.3 mm (Hex) + Cyrus 9.3 mm (Hex) TODO: Cyrus 9.3 mm (Tan) + Cyrus 9.3 mm (Tan) - TODO: Mk14 7.62 mm + Mk 14 7.62 mm TODO: Mk14 7.62 mm (Camo) + Mk 14 7.62 mm (Camo) TODO: Mk14 7.62 mm (Olive) + Mk 14 7.62 mm (Olive) - TODO: Navid 9.3 mm + Navid 9.3 mm TODO: Navid 9.3 mm (Hex) + Navid 9.3 mm (Hex) TODO: Navid 9.3 mm (Tan) + Navid 9.3 mm (Tan) - TODO: SPMG .338 + SPMG .338 TODO: SPMG .338 (MTP) + SPMG .338 (MTP) TODO: SPMG .338 (Black) + SPMG .338 (Noir) TODO: SPMG .338 (Sand) + SPMG .338 (Beige) - - + \ No newline at end of file diff --git a/addons/reload/stringtable.xml b/addons/reload/stringtable.xml index 40f36c6549..00e176d65c 100644 --- a/addons/reload/stringtable.xml +++ b/addons/reload/stringtable.xml @@ -1,42 +1,46 @@ - - + + - - - Check ammo on weapon reload - - - Check the ammo in your new magazine on magazine reload. - - - Check Ammo - Munition prüfen - Verificar munición - Sprawdź amunicję - Vérifier Munitions - Lőszerellenőrzés - Zkontrolovat Munici - Controlla le munizioni - Conferir munições - Kонтроль Боеприпасы - - - Ammo - Munition - Munición - Amunicja - Munitions - Lőszer - Munice - Munizioni - Munições - Боеприпасы - - - Link belt - - - Linking belt... - - - + + + Check ammo on weapon reload + Vérification des munitions au rechargement + + + Check the ammo in your new magazine on magazine reload. + Vérification du nombre de munition au rechargement + + + Check Ammo + Munition prüfen + Verificar munición + Sprawdź amunicję + Vérifier Munitions + Lőszerellenőrzés + Zkontrolovat Munici + Controlla le munizioni + Conferir munições + Kонтроль Боеприпасы + + + Ammo + Munition + Munición + Amunicja + Munitions + Lőszer + Munice + Munizioni + Munições + Боеприпасы + + + Link belt + Attacher bande + + + Linking belt... + Attache d'une bande + + + \ No newline at end of file diff --git a/addons/reloadlaunchers/stringtable.xml b/addons/reloadlaunchers/stringtable.xml index 6677153419..9065fa6e0a 100644 --- a/addons/reloadlaunchers/stringtable.xml +++ b/addons/reloadlaunchers/stringtable.xml @@ -1,24 +1,26 @@  - + Load launcher Panzerabwehr laden + Charger lanceur Loading launcher ... Panzerabwehr wird geladen ... + Chargement du lanceur Launcher loaded Panzerabwehr geladen + Lanceur chargé - Load %1 Lade %1 + Charge %1 - - + \ No newline at end of file diff --git a/addons/respawn/stringtable.xml b/addons/respawn/stringtable.xml index 59a9b2b31c..aa9f43e1ed 100644 --- a/addons/respawn/stringtable.xml +++ b/addons/respawn/stringtable.xml @@ -1,21 +1,26 @@  + - - - Deploy in 5 seconds ... - Wird in 5 Sekunden errichtet ... - - - Rallypoint deployed - Rallypoint errichtet - - - Teleported to Base - Zur Basis teleportiert - - - Teleported to Rallypoint - Zum Rallypoint teleportiert - - - + + + Deploy in 5 seconds ... + Wird in 5 Sekunden errichtet ... + Déploiement dans 5 secondes ... + + + Rallypoint deployed + Rallypoint errichtet + Point de ralliement déployé + + + Teleported to Base + Zur Basis teleportiert + Téléporté à la base + + + Teleported to Rallypoint + Zum Rallypoint teleportiert + Téléporté au point de déploiement + + + \ No newline at end of file diff --git a/addons/safemode/stringtable.xml b/addons/safemode/stringtable.xml index 9684babfdf..81f84f56d3 100644 --- a/addons/safemode/stringtable.xml +++ b/addons/safemode/stringtable.xml @@ -1,42 +1,46 @@  - + - - - Safe Mode - Waffe sichern - Seguro puesto - Bezpiecznik - Pojistka - Veszélytelenités - Предохранитель - - - Take off Safety - Waffe entsichern - Quitar seguro - Zwolnij bezpiecznik - Uvolnit pojistku - Veszélyesités - Снять с предохранителя - - - Put on Safety - Waffe gesichert - Poner seguro - Zabezpiecz broń - Přepnout pojistku - Veszélytelenitve - Поставить на предохранитель - - - Took off Safety - Waffe entsichert - Seguro quitado - Odbezpieczono broń - Odstranit pojistku - veszélyes - Снят с предохранителя - - + + + Safe Mode + Waffe sichern + Seguro puesto + Bezpiecznik + Pojistka + Veszélytelenités + Предохранитель + Sécurité + + + Take off Safety + Waffe entsichern + Quitar seguro + Zwolnij bezpiecznik + Uvolnit pojistku + Veszélyesités + Снять с предохранителя + Enlever sécurité + + + Put on Safety + Waffe gesichert + Poner seguro + Zabezpiecz broń + Přepnout pojistku + Veszélytelenitve + Поставить на предохранитель + Sécurité mise + + + Took off Safety + Waffe entsichert + Seguro quitado + Odbezpieczono broń + Odstranit pojistku + veszélyes + Снят с предохранителя + Sécurité enlevée + + \ No newline at end of file diff --git a/addons/switchunits/stringtable.xml b/addons/switchunits/stringtable.xml index 842bf89127..2933563bff 100644 --- a/addons/switchunits/stringtable.xml +++ b/addons/switchunits/stringtable.xml @@ -1,21 +1,24 @@  + - - - Switched unit - Einheit gewechselt - Юнит переключен - Prohozená jednotka - Przełącz jednostkę - Cambiado de unidad - - - This unit is too close to the enemy. - Diese Einheit ist zu nah am Feind. - Юнит слишком близок к противнику - Tato jednotka je moc blízko k nepříteli. - Ta jednostka jest zbyt blisko przeciwnika. - Esta unidad está demasiado cerca del enemigo. - - - + + + Switched unit + Einheit gewechselt + Юнит переключен + Prohozená jednotka + Przełącz jednostkę + Cambiado de unidad + Unité changée + + + This unit is too close to the enemy. + Diese Einheit ist zu nah am Feind. + Юнит слишком близок к противнику + Tato jednotka je moc blízko k nepříteli. + Ta jednostka jest zbyt blisko przeciwnika. + Esta unidad está demasiado cerca del enemigo. + Cette unité est trop proche des ennemis + + + \ No newline at end of file diff --git a/addons/vehiclelock/stringtable.xml b/addons/vehiclelock/stringtable.xml index 580283dcab..61e2c0ffab 100644 --- a/addons/vehiclelock/stringtable.xml +++ b/addons/vehiclelock/stringtable.xml @@ -1,116 +1,116 @@  - + - - - Unlock Vehicle - Fahrzeug aufschließen - Vehículo abierto - Déverrouiller le véhicule - Odblokuj pojazd - Odemknout vozidlo - Jármű nyitása - Открыть машину - - - Lock Vehicle - Fahrzeug abschließen - Vehículo cerrado - Verrouiller le véhicule - Zablokuj pojazd - Zamknout vozidlo - Jármű zárása - Закрыть машину - - - Lockpick Vehicle - Fahrzeug knacken - Forzar vehículo - Crocheter le véhicule - Otwórz zamek - Vypáčit vozidlo - Jármű feltörése - Взломать замок - - - Picking Lock.... - Schloss knacken... - Forzando cierre... - Crochetage... - Otwieranie zamka... - Páčim vozidlo... - Feltörés... - Взламываем замок... - - - A custom key that will open a specific vehicle. - Ein Schlüssel der ein bestimmtes Fahrzeug aufschließt. - Una llave concreta abrirá un vehículo concreto. - Une clé propre à un seul véhicule. - Unikatowy klucz który otworzy konkretny pojazd. - Vlastní klíč, který otevře konkrétní vozidlo. - Kulcs egy járműhez - Ключ от конкретной машины. - - - A Master Key will open any lock, no matter what! - Ein Generalschlüssel der jedes Schloss öffnet... - Una llave maestra abrirá cualquier cierre, no importa cual! - Un passe-partout qui ouvrira n'importe quelle serrure. - Uniwersalny klucz który otworzy każdy zamek. - Hlavní klíč otevře libovolný zámek, bez vyjímek! - Általános kulcs minden járműhez - Универсальный ключ, открывающий любой замок. - - - A lockpick set that can pick the locks of most vehicles. - Ein Dietrich der die meisten Fahrzeugschlösser knacken kann... - Un set de ganzúas puede abrir la mayoría de cerraduras de vehículos. - Un crochet qui ouvrira la plupart des véhicules. - Zestaw wytrychów dzięki któremu można otworzyć zamki w większości pojazdów. - Sada paklíčů, která dokáže odemknout zámky u většiny vozidel. - Álkulcs melyik minden járműt nyitni tud - Набор отмычек, которым можно взломать почти любую машину. - - - A key that should open most WEST vehicles. - Ein Schlüssel der die meisten westlichen Fahrzeuge öffnen sollte... - Una llave que puede abrir la mayoría de vehículos occidentales. - Une clé qui ouvrira la plupart des véhicules WEST. - Klucz który powinien otworzyć większość pojazdów ZACHODU. - Klíč který by měl otevřít většinou Západních vozidel. - Általános kulcs WEST járművekhez - Ключ для открытия большинства машин Запада. - - - A key that should open most EAST vehicle. - Ein Schlüssel der die meisten östlichen Fahrzeuge öffnen sollte... - Una llave que puede abrir la mayoría de vehículos orientales. - Une clé qui ouvrira la plupart des véhicules EAST. - Klucz który powinien otworzyć większość pojazdów WSCHODU. - Általános kulcs EAST járművekhez - Klíč který by měl otevřít vetšinu Východních vozidel. - Ключ для открытия большинства машин Востока. - - - A key that should open most INDEP vehicle. - Ein Schlüssel der die meisten Fahrzeuge der Aufständischen öffnen sollte... - Una llave que puede abrir la mayoría de vehículos independientes. - Une clé qui ouvrira la plupart des véhicules INDEP. - Klucz który powinien otworzyć większość pojazdów INDFOR. - Általános kulcs INDEPENDENT járművekhez - Klíč který by měl otevřít většinu Nezávislých vozidel. - Ключ для открытия большинства машин Независимых. - - - A key that should open most CIV vehicle. - Ein Schlüssel der die meisten zivilen Fahrzeuge öffnen sollte... - Una llave que puede abrir la mayoría de vehículos civiles. - Une clé qui ouvrira la plupart des véhicules CIV. - Klucz który powinien otworzyć większość pojazdów CYWILNYCH. - Klíč který by měl otevřít většinu Civilních vozidel. - Általános kulcs CIVILIAN járművekhez - Ключ для открытия большинства машин Гражданских. - - + + + Unlock Vehicle + Fahrzeug aufschließen + Vehículo abierto + Déverrouiller le véhicule + Odblokuj pojazd + Odemknout vozidlo + Jármű nyitása + Открыть машину + + + Lock Vehicle + Fahrzeug abschließen + Vehículo cerrado + Verrouiller le véhicule + Zablokuj pojazd + Zamknout vozidlo + Jármű zárása + Закрыть машину + + + Lockpick Vehicle + Fahrzeug knacken + Forzar vehículo + Crocheter le véhicule + Otwórz zamek + Vypáčit vozidlo + Jármű feltörése + Взломать замок + + + Picking Lock.... + Schloss knacken... + Forzando cierre... + Crochetage... + Otwieranie zamka... + Páčim vozidlo... + Feltörés... + Взламываем замок... + + + A custom key that will open a specific vehicle. + Ein Schlüssel der ein bestimmtes Fahrzeug aufschließt. + Una llave concreta abrirá un vehículo concreto. + Une clé propre à un seul véhicule. + Unikatowy klucz który otworzy konkretny pojazd. + Vlastní klíč, který otevře konkrétní vozidlo. + Kulcs egy járműhez + Ключ от конкретной машины. + + + A Master Key will open any lock, no matter what! + Ein Generalschlüssel der jedes Schloss öffnet... + Una llave maestra abrirá cualquier cierre, no importa cual! + Un passe-partout qui ouvrira n'importe quelle serrure. + Uniwersalny klucz który otworzy każdy zamek. + Hlavní klíč otevře libovolný zámek, bez vyjímek! + Általános kulcs minden járműhez + Универсальный ключ, открывающий любой замок. + + + A lockpick set that can pick the locks of most vehicles. + Ein Dietrich der die meisten Fahrzeugschlösser knacken kann... + Un set de ganzúas puede abrir la mayoría de cerraduras de vehículos. + Un crochet qui ouvrira la plupart des véhicules. + Zestaw wytrychów dzięki któremu można otworzyć zamki w większości pojazdów. + Sada paklíčů, která dokáže odemknout zámky u většiny vozidel. + Álkulcs melyik minden járműt nyitni tud + Набор отмычек, которым можно взломать почти любую машину. + + + A key that should open most WEST vehicles. + Ein Schlüssel der die meisten westlichen Fahrzeuge öffnen sollte... + Una llave que puede abrir la mayoría de vehículos occidentales. + Une clé qui ouvrira la plupart des véhicules OUEST. + Klucz który powinien otworzyć większość pojazdów ZACHODU. + Klíč který by měl otevřít většinou Západních vozidel. + Általános kulcs WEST járművekhez + Ключ для открытия большинства машин Запада. + + + A key that should open most EAST vehicle. + Ein Schlüssel der die meisten östlichen Fahrzeuge öffnen sollte... + Una llave que puede abrir la mayoría de vehículos orientales. + Une clé qui ouvrira la plupart des véhicules EST. + Klucz który powinien otworzyć większość pojazdów WSCHODU. + Általános kulcs EAST járművekhez + Klíč který by měl otevřít vetšinu Východních vozidel. + Ключ для открытия большинства машин Востока. + + + A key that should open most INDEP vehicle. + Ein Schlüssel der die meisten Fahrzeuge der Aufständischen öffnen sollte... + Una llave que puede abrir la mayoría de vehículos independientes. + Une clé qui ouvrira la plupart des véhicules INDEP. + Klucz który powinien otworzyć większość pojazdów INDFOR. + Általános kulcs INDEPENDENT járművekhez + Klíč který by měl otevřít většinu Nezávislých vozidel. + Ключ для открытия большинства машин Независимых. + + + A key that should open most CIV vehicle. + Ein Schlüssel der die meisten zivilen Fahrzeuge öffnen sollte... + Una llave que puede abrir la mayoría de vehículos civiles. + Une clé qui ouvrira la plupart des véhicules CIV. + Klucz który powinien otworzyć większość pojazdów CYWILNYCH. + Klíč který by měl otevřít většinu Civilních vozidel. + Általános kulcs CIVILIAN járművekhez + Ключ для открытия большинства машин Гражданских. + + \ No newline at end of file diff --git a/addons/weaponselect/stringtable.xml b/addons/weaponselect/stringtable.xml index 3a39d59396..d6d76c2744 100644 --- a/addons/weaponselect/stringtable.xml +++ b/addons/weaponselect/stringtable.xml @@ -1,254 +1,258 @@  - + - - - Display text on grenade throw - - - Display a hint or text on grenade throw. - - - Select Pistol - Pistole auswählen - Seleccionar pistola - Wybierz pistolet - Zvolit příruční zbraň - Выбрать пистолет - Sélectionner Pistolet - Pisztoly Kiválasztása - Selecionar Pistola - Seleziona la Pistola - - - Select Rifle - Gewehr auswählen - Seleccionar fusil - Wybierz karabin - Zvolit hlavní zbraň - Выбрать автомат - Sélectionner Fusil - Puska Kiválasztása - Selecionar Rifle - Seleziona il Fucile - - - Select Launcher - Raketenwerfer auswählen - Seleccionar lanzador - Wybierz wyrzutnię - Zvolit Raketomet - Выбрать гранатомет - Sélectionner Lanceur - Rakétavető Kiválasztása - Selecionar Lançador - Seleziona il Lanciatore - - - Select Grenade Launcher - Granatwerfer auswählen - Seleccionar lanzador de granadas - Wybierz granatnik - Zvolit Granátomet - Выбрать подствольный гранатомет - Sélectionner Lance-grenades - Gránátvető Kiválasztása - Selecionar Lança-Granadas - Seleziona il Lanciagranate - - - Select Binoculars - Fernglas auswählen - Seleccionar prismáticos - Wybierz lornetkę - Zvolit Dalekohled - Выбрать бинокль - Sélectionner Jumelles - Távcső Kiválasztása - Selecionar Binóculos - Seleziona il Binocolo - - - Holster Weapon - Waffe holstern - Enfundar el arma - Schowaj broń - Schovat zbraň - Убрать оружие - Arme à la bretelle - Fegyvert tokba - Guardar Arma - Nascondi l'arma - - - Engine on - Motor an - Encender motor - Włącz silnik - Moteur allumé - Motor indítása - Zapnout motor - Ligar Motor - Motore acceso - Включить двигатель - - - Engine off - Motor aus - Apagar motor - Wyłącz silnik - Moteur éteint - Motor leállítása - Vypnout motor - Desligar Motor - Motore spento - Выключить двигатель - - - Select Main Gun - Hauptgeschütz auswählen - Seleccionar arma principal - Wybierz główną broń - Sélectionner l'Arme Principale - Elsődleges Fegyver Kiválasztása - Zvolit Hlavní Zbraň - Selecionar Arma Principal - Seleziona Arma Primaria - Выбрать основное оружие - - - Select Machine Gun - Maschinengewehr auswählen - Seleccionar ametralladora - Wybierz karabin maszynowy - Sélectionner Mitrailleuse - Géppuska Kiválasztása - Zvolit Kulomet - Selecionar Metralhadora - Seleziona Mitragliatrice - Выбрать пулемёт - - - Select Missiles - Raketen auswählen - Seleccionar misiles - Wybierz rakiety - Sélectionner Missiles - Rakéták Kiválasztása - Zvolit Rakety - Selecionar Mísseis - Seleziona Missili - Выбрать ракеты - - - Grenade %1 - Granate %1 - Granada %1 - Granat %1 - Granát %1 - Gránát Kiválasztása - Граната %1 - - - Ready Grenade - Granate nehmen - Granada lista - Przygotuj granat - Odjistit granát - Kész Gránát - Подготовить гранату - - - Select Frag Grenade - Explosive Granate auswählen - Seleccionar granada de fragmenación - Wybierz granat odłamkowy - Sélectionner grenade à fragmentation - Repeszgránát Kiválasztása - Zvolit Výbušný Granát - Selecionar Granada de Fragmentação - Seleziona Granata a Frammentazione - Выбрать осколочную гранату - - - Select Non-Frag Grenade - Nichtexplosive Granate auswählen - Seleccionar granada de no fragmentación - Wybierz granat nieodłamkowy - Sélectionner grenade non-léthale - Nem Robbanó Gránát Kiválasztása - Zvolit Ne-Výbušný Granát - Selecionar Granada - Seleziona Altre Granate - Выбрать гранату - - - Throw Selected Grenade - Gewählte Granate werfen - Arrojar granada seleccionada - Rzuć wybrany granat - Lancer la grenade sélectionnée - Kiválasztott Gránát Eldobása - Hodit Zvolený Granát - Lançar Granada Selecionada - Lancia la Granata Selezionata - Бросить выбранную гранату - - - No grenades left - Keine Granaten übrig - No quedan granadas - Plus de grenades - Brak granatów - Žádné granáty - Nincs több gránát - Гранат не осталось - - - No frags left - Keine explosiven Granaten übrig - Sin granadas de fragmentación - Brak granatów odłamkowych - Plus de grenades à fragmentation - Nincs több repeszgránát - Už nejsou granáty - Não há granadas de fragmentação restantes - Nessuna granata a frammentazione rimanente - Осколочныких гранат нет - - - No misc. grenades left - Keine nichtexplosiven Granaten übrig - Sin granadas de varias - Brak granatów nieodłamkowych - Plus de grenades non-léthales - Nincs több egyéb gránát - Už nejsou žádné ostatní granáty - Não há outras granadas restantes - Nessun'altra granata rimanente. - Невзрывоопасные гранаты закончились - - - No grenade selected - Keine Granate ausgewählt - Granada no seleccionada - Nie wybrano żadnego granatu - Aucune grenade sélectionnée - Nincs kiválasztva gránát - Není zvolen žádný granát - Nenhuma granada selecionada - Nessuna granata selezionata - Нет выбранной гранаты - - - Fire Smoke Launcher - Rauchwand abfeuern - Disparar lanzador de humo - Kouřový odpalovač - Tirer le lance-pots fumigènes - Wystrzel granat dymny - Füst kilövése - Запустить дымовую завесу - - + + + Display text on grenade throw + Afficher texte lors d'un lancé de grenade + + + Display a hint or text on grenade throw. + Afficher texte/info au lancé de grenade + + + Select Pistol + Pistole auswählen + Seleccionar pistola + Wybierz pistolet + Zvolit příruční zbraň + Выбрать пистолет + Sélectionner Pistolet + Pisztoly Kiválasztása + Selecionar Pistola + Seleziona la Pistola + + + Select Rifle + Gewehr auswählen + Seleccionar fusil + Wybierz karabin + Zvolit hlavní zbraň + Выбрать автомат + Sélectionner Fusil + Puska Kiválasztása + Selecionar Rifle + Seleziona il Fucile + + + Select Launcher + Raketenwerfer auswählen + Seleccionar lanzador + Wybierz wyrzutnię + Zvolit Raketomet + Выбрать гранатомет + Sélectionner Lanceur + Rakétavető Kiválasztása + Selecionar Lançador + Seleziona il Lanciatore + + + Select Grenade Launcher + Granatwerfer auswählen + Seleccionar lanzador de granadas + Wybierz granatnik + Zvolit Granátomet + Выбрать подствольный гранатомет + Sélectionner Lance-grenades + Gránátvető Kiválasztása + Selecionar Lança-Granadas + Seleziona il Lanciagranate + + + Select Binoculars + Fernglas auswählen + Seleccionar prismáticos + Wybierz lornetkę + Zvolit Dalekohled + Выбрать бинокль + Sélectionner Jumelles + Távcső Kiválasztása + Selecionar Binóculos + Seleziona il Binocolo + + + Holster Weapon + Waffe holstern + Enfundar el arma + Schowaj broń + Schovat zbraň + Убрать оружие + Arme à la bretelle + Fegyvert tokba + Guardar Arma + Nascondi l'arma + + + Engine on + Motor an + Encender motor + Włącz silnik + Moteur allumé + Motor indítása + Zapnout motor + Ligar Motor + Motore acceso + Включить двигатель + + + Engine off + Motor aus + Apagar motor + Wyłącz silnik + Moteur éteint + Motor leállítása + Vypnout motor + Desligar Motor + Motore spento + Выключить двигатель + + + Select Main Gun + Hauptgeschütz auswählen + Seleccionar arma principal + Wybierz główną broń + Sélectionner l'Arme Principale + Elsődleges Fegyver Kiválasztása + Zvolit Hlavní Zbraň + Selecionar Arma Principal + Seleziona Arma Primaria + Выбрать основное оружие + + + Select Machine Gun + Maschinengewehr auswählen + Seleccionar ametralladora + Wybierz karabin maszynowy + Sélectionner Mitrailleuse + Géppuska Kiválasztása + Zvolit Kulomet + Selecionar Metralhadora + Seleziona Mitragliatrice + Выбрать пулемёт + + + Select Missiles + Raketen auswählen + Seleccionar misiles + Wybierz rakiety + Sélectionner Missiles + Rakéták Kiválasztása + Zvolit Rakety + Selecionar Mísseis + Seleziona Missili + Выбрать ракеты + + + Grenade %1 + Granate %1 + Granada %1 + Granat %1 + Granát %1 + Gránát Kiválasztása + Граната %1 + Grenade %1 + + + Ready Grenade + Granate nehmen + Granada lista + Przygotuj granat + Odjistit granát + Kész Gránát + Подготовить гранату + Grenade prête + + + Select Frag Grenade + Explosive Granate auswählen + Seleccionar granada de fragmenación + Wybierz granat odłamkowy + Sélectionner grenade à fragmentation + Repeszgránát Kiválasztása + Zvolit Výbušný Granát + Selecionar Granada de Fragmentação + Seleziona Granata a Frammentazione + Выбрать осколочную гранату + + + Select Non-Frag Grenade + Nichtexplosive Granate auswählen + Seleccionar granada de no fragmentación + Wybierz granat nieodłamkowy + Sélectionner grenade non-léthale + Nem Robbanó Gránát Kiválasztása + Zvolit Ne-Výbušný Granát + Selecionar Granada + Seleziona Altre Granate + Выбрать гранату + + + Throw Selected Grenade + Gewählte Granate werfen + Arrojar granada seleccionada + Rzuć wybrany granat + Lancer la grenade sélectionnée + Kiválasztott Gránát Eldobása + Hodit Zvolený Granát + Lançar Granada Selecionada + Lancia la Granata Selezionata + Бросить выбранную гранату + + + No grenades left + Keine Granaten übrig + No quedan granadas + Plus de grenades + Brak granatów + Žádné granáty + Nincs több gránát + Гранат не осталось + + + No frags left + Keine explosiven Granaten übrig + Sin granadas de fragmentación + Brak granatów odłamkowych + Plus de grenades à fragmentation + Nincs több repeszgránát + Už nejsou granáty + Não há granadas de fragmentação restantes + Nessuna granata a frammentazione rimanente + Осколочныких гранат нет + + + No misc. grenades left + Keine nichtexplosiven Granaten übrig + Sin granadas de varias + Brak granatów nieodłamkowych + Plus de grenades non-léthales + Nincs több egyéb gránát + Už nejsou žádné ostatní granáty + Não há outras granadas restantes + Nessun'altra granata rimanente. + Невзрывоопасные гранаты закончились + + + No grenade selected + Keine Granate ausgewählt + Granada no seleccionada + Nie wybrano żadnego granatu + Aucune grenade sélectionnée + Nincs kiválasztva gránát + Není zvolen žádný granát + Nenhuma granada selecionada + Nessuna granata selezionata + Нет выбранной гранаты + + + Fire Smoke Launcher + Rauchwand abfeuern + Disparar lanzador de humo + Kouřový odpalovač + Tirer le lance-pots fumigènes + Wystrzel granat dymny + Füst kilövése + Запустить дымовую завесу + + \ No newline at end of file diff --git a/addons/wep_javelin/stringtable.xml b/addons/wep_javelin/stringtable.xml index 4068d6f0a6..49db9824b4 100644 --- a/addons/wep_javelin/stringtable.xml +++ b/addons/wep_javelin/stringtable.xml @@ -1,24 +1,24 @@ - - + + Lock Target (Hold) Lock Target (Hold) - Lock Target (Hold) + Verrouiller cible (maintenir) Lock Target (Hold) Lock Target (Hold) Lock Target (Hold) Lock Target (Hold) - + Cycle Fire Mode Cycle Fire Mode - Cycle Fire Mode + Cycle mode de tir Cycle Fire Mode Cycle Fire Mode Cycle Fire Mode Cycle Fire Mode - + \ No newline at end of file diff --git a/addons/winddeflection/stringtable.xml b/addons/winddeflection/stringtable.xml index b52100046f..a0063281f4 100644 --- a/addons/winddeflection/stringtable.xml +++ b/addons/winddeflection/stringtable.xml @@ -1,32 +1,38 @@ - - - - - - Wind Information - Informacje o wietrze - Información del viento - - - Direction: %1 - Kierunek: %1 - Dirección: %1 - - - Speed: %1 m/s - Prędkość: %1 - Velocidad: %1 m/s - - - Weather Information - Informacje o pogodzie - Información Meteorológica - - - Humidity: %1% - Wilgotność: %1 - Humedad: %1% - - - - + + + + + + + Wind Information + Informacje o wietrze + Información del viento + Vent + + + Direction: %1 + Kierunek: %1 + Dirección: %1 + Direction %1 + + + Speed: %1 m/s + Prędkość: %1 + Velocidad: %1 m/s + Vitesse %1 m/s + + + Weather Information + Informacje o pogodzie + Información Meteorológica + Météo + + + Humidity: %1% + Wilgotność: %1 + Humedad: %1% + Humidité: %1% + + + + \ No newline at end of file From a04abcf972fc6f566528907e7bb73a18d57ce9e7 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:25:41 +0200 Subject: [PATCH 046/246] Update stringtable.xml --- addons/realisticnames/stringtable.xml | 32 +++++++++++++-------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/addons/realisticnames/stringtable.xml b/addons/realisticnames/stringtable.xml index 29fb5a736b..026b4288ea 100644 --- a/addons/realisticnames/stringtable.xml +++ b/addons/realisticnames/stringtable.xml @@ -76,7 +76,7 @@ Mini-Spike Launcher (AT) - Mini-Spike Lenkflugkörper (AT) + Mini-Spike Lenkflugkörper (PALR) Lanzador Mini-Spike (AT) Poste de tir Mini-Spike (AC) Mini-Spike Odpalovač (AT) @@ -88,7 +88,7 @@ Mini-Spike Launcher (AA) - Mini-Spike Lenkflugkörper (AA) + Mini-Spike Lenkflugkörper (FlaRak) Lanzador Mini-Spike (AA) Poste de tir Mini-Spike (AA) Mini-Spike Odpalovač (AA) @@ -156,7 +156,7 @@ Merkava Mk IV M - Merkava Mk IV M + Merkava MK IV M Merkava Mk IV M Merkawa Mk IV M Merkava Mk IV M @@ -1072,11 +1072,11 @@ Mini-Spike (AA) - Mini-Spike (AA) + Mini-Spike (FlaRak) Mini-Spike (AT) - Mini-Spike (AT) + Mini-Spike (PA) MX @@ -1084,7 +1084,7 @@ MX (Black) - MX (Black) + MX (Schwarz) MXC @@ -1092,7 +1092,7 @@ MXC (Black) - MXC (Black) + MXC (Schwarz) MX 3GL @@ -1100,7 +1100,7 @@ MX 3GL (Black) - MX 3GL (Black) + MX 3GL (Schwarz) MX LSW @@ -1108,7 +1108,7 @@ MX LSW (Black) - MX LSW (Black) + MX LSW (Schwarz) MXM @@ -1116,7 +1116,7 @@ MXM (Black) - MXM (Black) + MXM (Schwarz) KT2002 Katiba @@ -1132,7 +1132,7 @@ F2000 (Camo) - F2000 (Camo) + F2000 (Tarnmuster) F2000 @@ -1140,7 +1140,7 @@ F2000 Tactical (Camo) - F2000 Tactical (Camo) + F2000 Tactical (Tarnmuster) F2000 Tactical @@ -1148,7 +1148,7 @@ F2000 EGLM (Camo) - F2000 EGLM (Camo) + F2000 EGLM (Tarnmuster) F2000 EGLM @@ -1200,7 +1200,7 @@ GM6 Lynx (Camo) - GM6 Lynx (Camo) + GM6 Lynx (Tarnmuster) M200 Intervention @@ -1208,7 +1208,7 @@ M200 Intervention (Camo) - M200 Intervention (Camo) + M200 Intervention (Tarnmuster) VS-121 @@ -1299,4 +1299,4 @@ TODO: SPMG .338 (Sand) - \ No newline at end of file + From 4bb9f0cf77b5a54b779098f4ad0147ec06731099 Mon Sep 17 00:00:00 2001 From: Legolasindar Date: Sun, 12 Apr 2015 14:27:42 +0200 Subject: [PATCH 047/246] Update stringtable.xml added spanish translate --- addons/disarming/stringtable.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/disarming/stringtable.xml b/addons/disarming/stringtable.xml index 845d0c286e..f4d324bfcd 100644 --- a/addons/disarming/stringtable.xml +++ b/addons/disarming/stringtable.xml @@ -4,6 +4,7 @@ Open Inventory + Abrir inventario - \ No newline at end of file + From 2c0e93271c8ade8cb5e77029f8ca6e5dfe8a0d4a Mon Sep 17 00:00:00 2001 From: Legolasindar Date: Sun, 12 Apr 2015 14:29:47 +0200 Subject: [PATCH 048/246] Update stringtable.xml added spanish translate --- addons/laserpointer/stringtable.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/addons/laserpointer/stringtable.xml b/addons/laserpointer/stringtable.xml index 279fdeb5e8..0479f8474b 100644 --- a/addons/laserpointer/stringtable.xml +++ b/addons/laserpointer/stringtable.xml @@ -6,16 +6,19 @@ Laser Pointer (red) Laserpointer (rot) Лазерный прицел (красный) + Puntero láser (rojo) Laser Pointer (green) Laserpointer (grün) Лазерный прицел (зелёный) + Puntero láser (verde) Emits visible light. Strahlt sichtbares Licht aus. Испускает узкий пучок видимого света. + Emite luz visible. <t color='#9cf953'>Use: </t>Turn Laser ON/OFF @@ -29,4 +32,4 @@ <t color='#9cf953'>Usar: </t>encender/apagar láser - \ No newline at end of file + From b144a42e630c290574e748229586101bc75379c4 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:30:40 +0200 Subject: [PATCH 049/246] Update stringtable.xml --- addons/winddeflection/stringtable.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/addons/winddeflection/stringtable.xml b/addons/winddeflection/stringtable.xml index a6ae43ae33..311aaaba13 100644 --- a/addons/winddeflection/stringtable.xml +++ b/addons/winddeflection/stringtable.xml @@ -4,30 +4,35 @@ Wind Information + Informationen über den Wind Informacje o wietrze Información del viento Ветер - Direction: %1 + Windrichtung: %1 + Interaktionen Kierunek: %1 Dirección: %1 Направление: %1 Speed: %1 m/s + Windstärke: %1 Prędkość: %1 Velocidad: %1 m/s Скорость: %1 м/с Weather Information + Wetterbericht Informacje o pogodzie Información Meteorológica Погода Humidity: %1% + Luftfeuchtigkeit Wilgotność: %1 Humedad: %1% Влажность: %1% From dbc7026d947081eef55cf9e46b7e5b4de3910fd7 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:38:04 +0200 Subject: [PATCH 050/246] ..... --- addons/winddeflection/stringtable.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/winddeflection/stringtable.xml b/addons/winddeflection/stringtable.xml index 311aaaba13..faa35c7e68 100644 --- a/addons/winddeflection/stringtable.xml +++ b/addons/winddeflection/stringtable.xml @@ -10,8 +10,8 @@ Ветер - Windrichtung: %1 - Interaktionen + Direction: %1 + Windrichtung: %1 Kierunek: %1 Dirección: %1 Направление: %1 From 38955692ff944b8e5f3719e4a9c58d6fe72720cb Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:40:04 +0200 Subject: [PATCH 051/246] Update stringtable.xml --- addons/realisticnames/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/realisticnames/stringtable.xml b/addons/realisticnames/stringtable.xml index 026b4288ea..706a2a0e27 100644 --- a/addons/realisticnames/stringtable.xml +++ b/addons/realisticnames/stringtable.xml @@ -156,7 +156,7 @@ Merkava Mk IV M - Merkava MK IV M + Merkava Mk IV M Merkava Mk IV M Merkawa Mk IV M Merkava Mk IV M From e7a8dde782642fd83ea95f5dabb693a196e76af0 Mon Sep 17 00:00:00 2001 From: Ivan Navarro Cabello Date: Sun, 12 Apr 2015 14:41:50 +0200 Subject: [PATCH 052/246] update stringtable for spanish added new spanish terms --- addons/realisticnames/stringtable.xml | 2670 +++++++++++++------------ 1 file changed, 1371 insertions(+), 1299 deletions(-) diff --git a/addons/realisticnames/stringtable.xml b/addons/realisticnames/stringtable.xml index 29fb5a736b..28133d6644 100644 --- a/addons/realisticnames/stringtable.xml +++ b/addons/realisticnames/stringtable.xml @@ -1,1302 +1,1374 @@  - + - - - XM312 - XM312 - XM312 - XM312 - XM312 - XM312 - XM312 - XM312 - XM312 - XM312A - - - XM312A - XM312A - XM312 - XM312A - XM312A - XM312A - XM312A - XM312A - XM312A - XM312A - - - XM312 (High) - XM312 (Hoch) - XM312 (Alto) - XM312 (Haut) - XM312 (Vysoký) - XM312 (Wysoki) - XM312 (Высокий) - XM312 (Alta) - XM312 (Magasított) - XM312 (Alta) - - - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - - - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - - - XM307 (High) - XM307 (Hoch) - XM307 (Alto) - XM307 (Haut) - XM307 (Vysoký) - XM307 (Wysoki) - XM307 (Высокий) - XM307 (Alta) - XM307 (Magasított) - XM307 (Alta) - - - Mini-Spike Launcher (AT) - Mini-Spike Lenkflugkörper (AT) - Lanzador Mini-Spike (AT) - Poste de tir Mini-Spike (AC) - Mini-Spike Odpalovač (AT) - Wyrzutnia Mini-Spike (AT) - Mini-Spike Пусковое устройство (ПТРК) - Lança-mísseis Mini-Spike (AC) - Mini-Spike rakétarendszer (páncéltörő) - Lanciatore Mini-Spike (AC) - - - Mini-Spike Launcher (AA) - Mini-Spike Lenkflugkörper (AA) - Lanzador Mini-Spike (AA) - Poste de tir Mini-Spike (AA) - Mini-Spike Odpalovač (AA) - Wyrzutnia Mini-Spike (AA) - Mini-Spike Пусковое устройство (ВВ) - Lança-mísseis Mini-Spike (AA) - Mini-Spike rakétarendszer (légvédelmi) - Lanciatore Mini-Spike (AA) - - - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - - - YABHON-R3 (CAS) - YABHON-R3 (Luftnahunterstützung) - YABHON-R3 (CAS) - YABHON-R3 (CAS) - YABHON-R3 (CAS) - YABHON-R3 (штурмовик) - - - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - - - M-ATV (HMG) - M-ATV (SMG) - M-ATV (HMG) - M-ATV (CKM) - M-ATV (TK) - M-ATV (HMG) - M-ATV (Пулемет) - M-ATV (HMG) - M-ATV (HMG) - M-ATV (HMG) - - - M-ATV (GMG) - M-ATV (GMW) - M-ATV (GMG) - M-ATV (GMG) - M-ATV (Granátomet) - M-ATV (GMG) - M-ATV (Гранатомет) - M-ATV (GMG) - M-ATV (GMG) - M-ATV (GMG) - - - Merkava Mk IV M - Merkava Mk IV M - Merkava Mk IV M - Merkawa Mk IV M - Merkava Mk IV M - Merkava Mk IV M - Меркава Mk IV M - Merkava Mk IV M - Merkava Mk IV M - Merkava Mk IV M - - - Merkava Mk IV LIC - Merkava Mk IV LIC - Merkava Mk IV LIC - Merkawa Mk IV LIC - Merkava Mk IV LIC - Merkava Mk IV LIC - Меркава Mk IV LIC - Merkava Mk IV LIC - Merkava Mk IV LIC - Merkava Mk IV LIC - - - Sholef - Sholef - Sholef - Sholef - Sholef - Sholef - Шолеф - Sholef - Sholef - Sholef - - - Seara - Seara - Seara - Seara - Seara - Seara - Seara - Seara - Seara - Seara - - - Namer - Namer - Namer - Namer - Namer - Namer - Намер - Namer - Namer - Namer - - - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - - - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - - - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - - - HEMTT Transport - HEMTT Transport - HEMTT de transporte - HEMTT Transportowy - HEMTT Valník - HEMTT Transport - HEMTT Транспортный - HEMTT Transporte - HEMTT szállítójármű - HEMTT da trasporto - - - HEMTT Transport (covered) - HEMTT Transport (bedeckt) - HEMTT de transporte (cubierto) - HEMTT Transportowy (zakryty) - HEMTT Valník (krytý) - HEMTT Transport (bâché) - HEMTT Транспортный (крытый) - HEMTT Transporte (coberto) - HEMTT szállítójármű (ponyvás) - HEMTT da trasporto (coperto) - - - HEMTT - HEMTT - HEMTT - HEMTT - HEMTT - HEMTT Tracteur - HEMTT - HEMTT - HEMTT - HEMTT - - - HEMTT Container - HEMTT Container - HEMTT de contenedor - HEMTT Kontener - HEMTT Skříňový - HEMTT Conteneur - HEMTT Контейнер - HEMTT Contêiner - HEMTT Konténer - HEMTT portacontainer - - - HEMTT Medical - HEMTT Sanitäter - HEMTT médico - HEMTT Medyczny - HEMTT Zdravotnický - HEMTT Sanitaire - HEMTT Медицинский - HEMTT Médico - HEMTT (egészségügyi) - HEMTT Medico - - - HEMTT Ammo - HEMTT Munition - HEMTT de munición - HEMTT Amunicyjny - HEMTT Muniční - HEMTT Munitions - HEMTT Боеприпасы - HEMTT Munições - HEMTT (lőszerszállító) - HEMTT di rifornimento munizioni - - - HEMTT Fuel - HEMTT Treibstoff - HEMTT de combustible - HEMTT Cysterna - HEMTT Cisterna - HEMTT Citerne - HEMTT Заправщик - HEMTT Combustível - HEMTT (üzemanyag-szállító) - HEMTT di rifornimento carburante - - - HEMTT Repair - HEMTT Instandsetzung - HEMTT de reparación - HEMTT Naprawczy - HEMTT Opravárenský - HEMTT Réparation - HEMTT Ремонтный - HEMTT Reparador - HEMTT (szerelő-jármű) - HEMTT Riparatore - - - Fennek - Fennek - Fennek - Fennek - Fennek - Fennek - Феннек - Fennek - Fennek - Fennek - - - Fennek (HMG) - Fennek (SMG) - Fennek (HMG) - Fennek (CKM) - Fennek (TK) - Fennek (HMG) - Феннек (Пулемет) - Fennek (HMG) - Fennek (HMG) - Fennek (HMG) - - - Fennek (GMG) - Fennek (GMW) - Fennek (GMG) - Fennek (GMG) - Fennek (granátomet) - Fennek (GMG) - Феннек (Гранатомет) - Fennek (GMG) - Fennek (GMG) - Fennek (GMG) - - - Leopard 2SG - Leopard 2SG - Leopard 2SG - Leopard 2SG - Leopard 2SG - Leopard 2SG - Леопард 2SG - Leopard 2SG - Leopard 2SG - Leopard 2SG - - - FV510 Warrior - FV510 Warrior - FV510 Warrior - FV510 Warrior - FV510 Warrior - FV510 Warrior - FV510 Уорриор - FV510 Warrior - FV510 Warrior - FV510 Warrior - - - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - - - KamAZ Transport - KamAZ Transport - KamAZ de transporte - KamAZ transportowy - KAMAZ Valník - KamAZ Transport - КамАЗ Траспортный - KamAZ Transporte - KamAZ szállítójármű - KamAZ da trasporto - - - KamAZ Transport (covered) - KamAZ Transport (bedeckt) - KamAZ de transporte (cubierto) - KamAZ Transportowy (zakryty) - KAMAZ Valník (krytý) - KamAZ Transport (bâché) - КамАЗ Траспортный (Крытый) - KamAZ Transporte (coberto) - KamAZ szállítójármű (ponyvás) - KamAZ da trasporto (coperto) - - - KamAZ Ammo - KamAZ Munition - KamAZ de munición - KamAZ Amunicyjny - KAMAZ Muniční - KamAZ Munitions - КамАЗ Боеприпасы - KamAZ Munições - KamAZ (lőszerszállító) - KamAZ di rifornimento munizioni - - - KamAZ Fuel - KamAZ Treibstoff - KamAZ de combustible - KamAZ cysterna - KAMAZ Cisterna - KamAZ Citerne - КамАЗ Заправщик - KamAZ Combustível - KamAZ (üzemanyag-szállító) - KamAZ di rifornimento carburante - - - KamAZ Repair - KamAZ Instandsetzung - KamAZ de reparación - KamAZ Naprawczy - KAMAZ Opravárenský - KamAZ Réparation - КамАЗ Ремонтный - KamAZ Reparador - KamAZ (szerelő-jármű) - KamAZ riparatore - - - KamAZ Medical - KamAZ Sanitäter - KamAZ médico - KamAZ Medyczny - KAMAZ Zdravotnický - KamAZ Sanitaire - КамАЗ Медицинский - KamAZ Médico - KamAZ (egészségügyi) - KamAZ Medico - - - Punisher - Punisher - Punisher - Punisher - Punisher - Punisher - Kаратель - Punisher - Punisher - Punisher - - - Punisher (HMG) - Punisher (SMG) - Punisher (HMG) - Punisher (CKM) - Punisher (TK) - Punisher (HMG) - Kаратель (Пулемет) - Punisher (HMG) - Punisher (HMG) - Punisher (HMG) - - - Punisher (GMG) - Punisher (GMW) - Punisher (GMG) - Punisher (CKM) - Punisher (granátomet) - Punisher (GMG) - Kаратель (Гранатомет) - Punisher (GMG) - Punisher (GMG) - Punisher (GMG) - - - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - T100 Черный Орел - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - - - 2S9 Sochor - 2S9 Sochor - 2S9 Sochor - 259 Sochor - 2S9 Sochor - 2S9 Sochor - 2S9 Сокор - 2S9 Sochor - 2S9 Sochor - 2S9 Sochor - - - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - БМ-2Т Сталкер - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - - - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ЗСУ-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - - - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - - - Typhoon Transport - Typhoon Transport - Typhoon de transporte - Typhoon Transportowy - Typhoon Valník - Typhoon Transport - Тайфун Транспортный - Typhoon Transporte - Typhoon szállítójármű - Typhoon da trasporto - - - Typhoon Transport (covered) - Typhoon Transport (bedeckt) - Typhoon de transporte (cubierto) - Typhoon Transportowy (przykryty) - Typhoon Valník (krytý) - Typhoon Transport (bâché) - Тайфун Транспортный (kрытый) - Typhoon Transporte (coberto) - Typhoon szállítójármű (ponyvás) - Typhoon da trasporto (coperto) - - - Typhoon Device - Typhoon Gerät - Typhoon de dispositivo - Typhoon Urządzenie - Typhoon Zařízení - Typhoon Dispositif - Тайфун Устройство - Typhoon Dispositivo - Typhoon (szerkezet) - Typhoon per dispositivo - - - Typhoon Ammo - Typhoon Munition - Typhoon de munición - Typhoon Amunicyjny - Typhoon Muniční - Typhoon Munitions - Тайфун Боеприпасы - Typhoon Munições - Typhoon (lőszerszállító) - Typhoon di rifornimento munizioni - - - Typhoon Fuel - Typhoon Treibstoff - Typhoon de combustible - Typhoon Cysterna - Typhoon Cisterna - Typhoon Citerne - Тайфун Заправщик - Typhoon Combustível - Typhoon (üzemanyag-szállító) - Typhoon di rifornimento carburante - - - Typhoon Repair - Typhoon Instandsetzung - Typhoon de reparación - Typhoon Naprawczy - Typhoon Opravárenský - Typhoon Réparation - Тайфун Ремонтный - Typhoon Reparador - Typhoon (szerelő-jármű) - Typhoon riparatore - - - Typhoon Medical - Typhoon Sanitäter - Typhoon médico - Typhoon Medyczny - Typhoon Zdravotnický - Typhoon Sanitaire - Тайфун Медицинский - Typhoon Médico - Typhoon (egészségügyi) - Typhoon medico - - - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Commanche - RAH-66 Команч - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Comanche - - - MH-6 Little Bird - MH-6 Little Bird - MH-6 Litte Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - - - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - - - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - - - CH-47I Chinook (unarmed) - CH-47I Chinook (unbewaffnet) - CH-47I Chinnok (Desarmado) - CH-47I Chinook (nieuzbrojony) - CH-47I Chinook (невооруженный) - CH-47I Chinook (Neozbrojený) - - - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Тандерболт II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - - - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - - - AW159 Wildcat (unarmed) - AW159 Wildcat (unbewaffnet) - AW159 Wildcat (desarmado) - AW159 Wildcat (nieuzbrojony) - AW159 Wildcat (neozbrojený) - AW159 Wildcat (non-armé) - AW159 Wildcat (невооруженный) - AW159 Wildcat (desarmado) - AW159 Wildcat (fegyvertelen) - AW159 Wildcat (disarmato) - - - AW101 Merlin - AW101 Merlin - AW101 Merlin - AW101 Merlin - AW101 Merlin - AW101 Merlin - AW101 Мерлин - AW101 Merlin - AW101 Merlin - AW101 Merlin - - - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 Альбатрос (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - - - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 Альбатрос (AA) - L-159 ALCA (ВВ) - L-159 ALCA (AA) - L-159 ALCA (AA) - - - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Касатка - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - - - Ka-60 Kasatka (unarmed) - Ka-60 Kasatka (unbewaffnet) - Ka-60 Kasatka (desarmado) - Ka-60 Kasatka (nieuzbrojony) - Ka-60 Kasatka (neozbrojená) - Ka-60 Kasatka (non-armé) - Ka-60 Касатка (невооруженный) - Ka-60 Kasatka (desarmado) - Ka-60 Kasatka (fegyvertelen) - Ka-60 Kasatka (disarmato) - - - Yak-130 - Yak-130 - Yak-130 - Jak-130 - Jak-130 - Yak-130 - Як-130 - Yak-130 - Jak-130 - Yak-130 - - - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - - - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - - - M18A1 Claymore - M18A1 Claymore - M18A1 Claymore - Mina kierunkowa M18A1 Claymore - M18A1 Mina Claymore - M18A1 Claymore Mine antipersonnel à effet dirigé - M18A1 Клеймор - M18A1 Claymore - M18A1 Claymore akna - M18A1 Claymore Mina antiuomo - - - M183 Demolition Charge Assembly - M183 Geballte Sprengladung - Conjunto de carga de demolición M183 - Ładunek burzący M183 - M183 Demoliční nálož - M183 Charge de Démolition - M183 Комплектный подрывной заряд - M183 Sacola de Demolição - M183 romboló töltet - M183 Demolition Charge Assembly - - - M112 Demolition Block - M112 Sprengladung - Bloque de demolición M112 - Ładunek burzący M112 - M112 Výbušná nálož - Pétard M112 - M112 подрывной заряд - M112 Carga de Demolição - M112 romboló töltet - M112 Demolition Block - - - M67 Fragmentation Grenade - M67 Splittergranate - Granada de fragmentación M67 - Granat obronny M67 - M67 Granát - M67 Grenade à fragmentation - M67 ручная осколочная граната - M67 Granada de fragmentação - M67 repeszgránát - M67 Granata a frammentazione - - - M83 Smoke Grenade (White) - M83 Rauchgranate (Weiss) - Granada de humo M83 (Blanco) - Granat dymny M83 (Biały) - M83 Kouřový Granát (Bílý) - M83 Grenade fumigène (Blanche) - M83 дымовая граната (Белый) - M83 Granada de fumaça (Branca) - M83 füstgránát (Fehér) - M83 Granata fumogena (Bianco) - - - M18 Smoke Grenade (Blue) - M18 Rauchgranate (Blau) - Granada de humo M18 (Azul) - Granat dymny M18 (Niebieski) - M18 Kouřový Granát (Modrý) - M18 Grenade fumigène (Bleue) - M18 дымовая граната (Синий) - M18 Granada de fumaça (Azul) - M18 füstgránát (Kék) - M18 Granata fumogena (Blu) - - - M18 Smoke Grenade (Green) - M18 Rauchgranate (Grün) - Granada de humo M18 (Verde) - Granat dymny M18 (Zielony) - M18 Kouřový Granát (Zelený) - M18 Grenade fumigène (Verte) - M18 дымовая граната (Зелёный) - M18 Granada de fumaça (Verde) - M18 füstgránát (Zöld) - M18 Granata fumogena (Verde) - - - M18 Smoke Grenade (Orange) - M18 Rauchgranate (Orange) - Granada de humo M18 (Naranja) - Granat dymny M18 (Pomarańczowy) - M18 Kouřový Granát (Oranžový) - M18 Grenade fumigène (Orange) - M18 дымовая граната (Оранжевый) - M18 Granada de fumaça (Laranja) - M18 füstgránát (Narancssárga) - M18 Granata fumogena (Arancione) - - - M18 Smoke Grenade (Purple) - M18 Rauchgranate (Violett) - Granada de humo M18 (Púrpura) - Granat dymny M18 (Fioletowy) - M18 Kouřový Granát (Fialový) - M18 Grenade fumigène (Pourpre) - M18 дымовая граната (Пурпурный) - M18 Granada de fumaça (Roxa) - M18 füstgránát (Lila) - M18 Granata fumogena (Viola) - - - M18 Smoke Grenade (Red) - M18 Rauchgranate (Rot) - Granada de humo M18 (Rojo) - Granat dymny M18 (Czerwony) - M18 Kouřový Granát (Červený) - M18 Grenade fumigène (Rouge) - M18 дымовая граната (Красный) - M18 Granada de fumaça (Vermelha) - M18 füstgránát (Piros) - M18 Granata fumogena (Rosso) - - - M18 Smoke Grenade (Yellow) - M18 Rauchgranate (Gelb) - Granada de humo M18 (Amarillo) - Granat dymny M18 (Żółty) - M18 Kouřový Granát (Žlutý) - M18 Grenade fumigène (Jaune) - M183 дымовая граната (Жёлтые) - M18 Granada de fumaça (Amarela) - M18 füstgránát (Sárga) - M18 Granata fumogena (Giallo) - - - M15 Anti-Tank Mine - M15 Panzerabwehrmine - Mina antitanque M15 - Mina przeciwpancerna M15 - M15 Protitanková Mina - M15 Mine antichar - M15 противотанковая мина - M15 Mina anticarro - M15 harckocsiakna - M15 Mine anticarro - - - VS-50 Anti-Personnel Mine - VS-50 Antipersonenmine - Mina antipersona VS-50 - Mina przeciwpiechotna VS-50 - VS-50 Protipěchotní Mina - VS-50 Mine antipersonnel à pression - VS-50 Противопехотная мина - VS-50 Mina antipessoal - VS-50 gyalogsági taposóakna - VS-50 Mine antiuomo - - - M26 Anti-Personnel Bounding Mine - M26 Antipersonensprungmine - Mina antipersona M26 - Mina przeciwpiechotna M26 - M26 Šrapnelová Mina - M26 Mine antipersonnel bondissante - M26 Противопехотная мина - M26 Mina saltadora antipessoal - M26 gyalogsági ugróakna - M26 Mine saltanti antiuomo - - - PMR-3 Anti-Personnel Tripwire Mine - PMR-3 Antipersonenstolperdrahtmine - Mina antipersona de alambre PMR-3 - Mina przeciwpiechotna PMR-3 - PMR-3 Nástražná Mina - PMR-3 Mine antipersonnel à traction - PMR-3 Противопехотная мина - PMR-3 Mina antipessoal (armadilha) - PMR-3 botlódrótos gyalogsági akna - PMR-3 Mine antiuomo - - - P99 - P99 - - - MP-443 Grach - MP-443 Grach - - - ACP-C2 - ACP-C2 - - - FNX-45 Tactical - FNX-45 Tactical - - - Chiappa Rhino 60DS - Chiappa Rhino 60DS - - - Taurus Judge - Taurus Judge - - - NLAW - NLAW - - - RPG-32 - RPG-32 - - - Mini-Spike (AA) - Mini-Spike (AA) - - - Mini-Spike (AT) - Mini-Spike (AT) - - - MX - MX - - - MX (Black) - MX (Black) - - - MXC - MXC - - - MXC (Black) - MXC (Black) - - - MX 3GL - MX 3GL - - - MX 3GL (Black) - MX 3GL (Black) - - - MX LSW - MX LSW - - - MX LSW (Black) - MX LSW (Black) - - - MXM - MXM - - - MXM (Black) - MXM (Black) - - - KT2002 Katiba - KT2002 Katiba - - - KT2002C Katiba - KT2002C Katiba - - - KT2002 Katiba KGL - KT2002 Katiba KGL - - - F2000 (Camo) - F2000 (Camo) - - - F2000 - F2000 - - - F2000 Tactical (Camo) - F2000 Tactical (Camo) - - - F2000 Tactical - F2000 Tactical - - - F2000 EGLM (Camo) - F2000 EGLM (Camo) - - - F2000 EGLM - F2000 EGLM - - - TAR-21 - TAR-21 - - - CTAR-21 - CTAR-21 - - - TAR-21 EGLM - TAR-21 EGLM - - - Vector SMG - Vector SMG - - - Scorpion Evo 3 A1 - Scorpion Evo 3 A1 - - - CPW - CPW - - - RFB SDAR - RFB SDAR - - - Stoner 99 LMG - Stoner 99 LMG - - - Negev NG7 - Negev NG7 - - - Mk14 Mod 1 EBR - Mk14 Mod 1 EBR - - - GM6 Lynx - GM6 Lynx - - - GM6 Lynx (Camo) - GM6 Lynx (Camo) - - - M200 Intervention - M200 Intervention - - - M200 Intervention (Camo) - M200 Intervention (Camo) - - - VS-121 - VS-121 - - - TODO: MAR-10 .338 - - - TODO: MAR-10 .338 (Black) - - - TODO: MAR-10 .338 (Camo) - - - TODO: MAR-10 .338 (Sand) - - - TODO: Mk-I EMR 7.62 mm - - - TODO: Mk-I EMR 7.62 mm (Black) - - - TODO: Mk-I EMR 7.62 mm (Khaki) - - - TODO: Mk-I EMR 7.62 mm (Sand) - - - TODO: Mk-I EMR 7.62 mm (Camo) - - - TODO: Mk-I EMR 7.62 mm (Woodland) - - - TODO: NATO DMR (provisional) spotter - - - TODO: ASP-1 Kir 12.7 mm - - - TODO: ASP-1 Kir 12.7 mm (Black) - - - TODO: ASP-1 Kir 12.7 mm (Tan) - - - TODO: Cyrus 9.3 mm - - - TODO: Cyrus 9.3 mm (Black) - - - TODO: Cyrus 9.3 mm (Hex) - - - TODO: Cyrus 9.3 mm (Tan) - - - TODO: Mk14 7.62 mm - - - TODO: Mk14 7.62 mm (Camo) - - - TODO: Mk14 7.62 mm (Olive) - - - TODO: Navid 9.3 mm - - - TODO: Navid 9.3 mm (Hex) - - - TODO: Navid 9.3 mm (Tan) - - - TODO: SPMG .338 - - - TODO: SPMG .338 (MTP) - - - TODO: SPMG .338 (Black) - - - TODO: SPMG .338 (Sand) - - + + + XM312 + XM312 + XM312 + XM312 + XM312 + XM312 + XM312 + XM312 + XM312 + XM312A + + + XM312A + XM312A + XM312 + XM312A + XM312A + XM312A + XM312A + XM312A + XM312A + XM312A + + + XM312 (High) + XM312 (Hoch) + XM312 (Alto) + XM312 (Haut) + XM312 (Vysoký) + XM312 (Wysoki) + XM312 (Высокий) + XM312 (Alta) + XM312 (Magasított) + XM312 (Alta) + + + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + + + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + + + XM307 (High) + XM307 (Hoch) + XM307 (Alto) + XM307 (Haut) + XM307 (Vysoký) + XM307 (Wysoki) + XM307 (Высокий) + XM307 (Alta) + XM307 (Magasított) + XM307 (Alta) + + + Mini-Spike Launcher (AT) + Mini-Spike Lenkflugkörper (AT) + Lanzador Mini-Spike (AT) + Poste de tir Mini-Spike (AC) + Mini-Spike Odpalovač (AT) + Wyrzutnia Mini-Spike (AT) + Mini-Spike Пусковое устройство (ПТРК) + Lança-mísseis Mini-Spike (AC) + Mini-Spike rakétarendszer (páncéltörő) + Lanciatore Mini-Spike (AC) + + + Mini-Spike Launcher (AA) + Mini-Spike Lenkflugkörper (AA) + Lanzador Mini-Spike (AA) + Poste de tir Mini-Spike (AA) + Mini-Spike Odpalovač (AA) + Wyrzutnia Mini-Spike (AA) + Mini-Spike Пусковое устройство (ВВ) + Lança-mísseis Mini-Spike (AA) + Mini-Spike rakétarendszer (légvédelmi) + Lanciatore Mini-Spike (AA) + + + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + + + YABHON-R3 (CAS) + YABHON-R3 (Luftnahunterstützung) + YABHON-R3 (CAS) + YABHON-R3 (CAS) + YABHON-R3 (CAS) + YABHON-R3 (штурмовик) + + + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + + + M-ATV (HMG) + M-ATV (SMG) + M-ATV (HMG) + M-ATV (CKM) + M-ATV (TK) + M-ATV (HMG) + M-ATV (Пулемет) + M-ATV (HMG) + M-ATV (HMG) + M-ATV (HMG) + + + M-ATV (GMG) + M-ATV (GMW) + M-ATV (GMG) + M-ATV (GMG) + M-ATV (Granátomet) + M-ATV (GMG) + M-ATV (Гранатомет) + M-ATV (GMG) + M-ATV (GMG) + M-ATV (GMG) + + + Merkava Mk IV M + Merkava Mk IV M + Merkava Mk IV M + Merkawa Mk IV M + Merkava Mk IV M + Merkava Mk IV M + Меркава Mk IV M + Merkava Mk IV M + Merkava Mk IV M + Merkava Mk IV M + + + Merkava Mk IV LIC + Merkava Mk IV LIC + Merkava Mk IV LIC + Merkawa Mk IV LIC + Merkava Mk IV LIC + Merkava Mk IV LIC + Меркава Mk IV LIC + Merkava Mk IV LIC + Merkava Mk IV LIC + Merkava Mk IV LIC + + + Sholef + Sholef + Sholef + Sholef + Sholef + Sholef + Шолеф + Sholef + Sholef + Sholef + + + Seara + Seara + Seara + Seara + Seara + Seara + Seara + Seara + Seara + Seara + + + Namer + Namer + Namer + Namer + Namer + Namer + Намер + Namer + Namer + Namer + + + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + + + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + + + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + + + HEMTT Transport + HEMTT Transport + HEMTT de transporte + HEMTT Transportowy + HEMTT Valník + HEMTT Transport + HEMTT Транспортный + HEMTT Transporte + HEMTT szállítójármű + HEMTT da trasporto + + + HEMTT Transport (covered) + HEMTT Transport (bedeckt) + HEMTT de transporte (cubierto) + HEMTT Transportowy (zakryty) + HEMTT Valník (krytý) + HEMTT Transport (bâché) + HEMTT Транспортный (крытый) + HEMTT Transporte (coberto) + HEMTT szállítójármű (ponyvás) + HEMTT da trasporto (coperto) + + + HEMTT + HEMTT + HEMTT + HEMTT + HEMTT + HEMTT Tracteur + HEMTT + HEMTT + HEMTT + HEMTT + + + HEMTT Container + HEMTT Container + HEMTT de contenedor + HEMTT Kontener + HEMTT Skříňový + HEMTT Conteneur + HEMTT Контейнер + HEMTT Contêiner + HEMTT Konténer + HEMTT portacontainer + + + HEMTT Medical + HEMTT Sanitäter + HEMTT médico + HEMTT Medyczny + HEMTT Zdravotnický + HEMTT Sanitaire + HEMTT Медицинский + HEMTT Médico + HEMTT (egészségügyi) + HEMTT Medico + + + HEMTT Ammo + HEMTT Munition + HEMTT de munición + HEMTT Amunicyjny + HEMTT Muniční + HEMTT Munitions + HEMTT Боеприпасы + HEMTT Munições + HEMTT (lőszerszállító) + HEMTT di rifornimento munizioni + + + HEMTT Fuel + HEMTT Treibstoff + HEMTT de combustible + HEMTT Cysterna + HEMTT Cisterna + HEMTT Citerne + HEMTT Заправщик + HEMTT Combustível + HEMTT (üzemanyag-szállító) + HEMTT di rifornimento carburante + + + HEMTT Repair + HEMTT Instandsetzung + HEMTT de reparación + HEMTT Naprawczy + HEMTT Opravárenský + HEMTT Réparation + HEMTT Ремонтный + HEMTT Reparador + HEMTT (szerelő-jármű) + HEMTT Riparatore + + + Fennek + Fennek + Fennek + Fennek + Fennek + Fennek + Феннек + Fennek + Fennek + Fennek + + + Fennek (HMG) + Fennek (SMG) + Fennek (HMG) + Fennek (CKM) + Fennek (TK) + Fennek (HMG) + Феннек (Пулемет) + Fennek (HMG) + Fennek (HMG) + Fennek (HMG) + + + Fennek (GMG) + Fennek (GMW) + Fennek (GMG) + Fennek (GMG) + Fennek (granátomet) + Fennek (GMG) + Феннек (Гранатомет) + Fennek (GMG) + Fennek (GMG) + Fennek (GMG) + + + Leopard 2SG + Leopard 2SG + Leopard 2SG + Leopard 2SG + Leopard 2SG + Leopard 2SG + Леопард 2SG + Leopard 2SG + Leopard 2SG + Leopard 2SG + + + FV510 Warrior + FV510 Warrior + FV510 Warrior + FV510 Warrior + FV510 Warrior + FV510 Warrior + FV510 Уорриор + FV510 Warrior + FV510 Warrior + FV510 Warrior + + + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + + + KamAZ Transport + KamAZ Transport + KamAZ de transporte + KamAZ transportowy + KAMAZ Valník + KamAZ Transport + КамАЗ Траспортный + KamAZ Transporte + KamAZ szállítójármű + KamAZ da trasporto + + + KamAZ Transport (covered) + KamAZ Transport (bedeckt) + KamAZ de transporte (cubierto) + KamAZ Transportowy (zakryty) + KAMAZ Valník (krytý) + KamAZ Transport (bâché) + КамАЗ Траспортный (Крытый) + KamAZ Transporte (coberto) + KamAZ szállítójármű (ponyvás) + KamAZ da trasporto (coperto) + + + KamAZ Ammo + KamAZ Munition + KamAZ de munición + KamAZ Amunicyjny + KAMAZ Muniční + KamAZ Munitions + КамАЗ Боеприпасы + KamAZ Munições + KamAZ (lőszerszállító) + KamAZ di rifornimento munizioni + + + KamAZ Fuel + KamAZ Treibstoff + KamAZ de combustible + KamAZ cysterna + KAMAZ Cisterna + KamAZ Citerne + КамАЗ Заправщик + KamAZ Combustível + KamAZ (üzemanyag-szállító) + KamAZ di rifornimento carburante + + + KamAZ Repair + KamAZ Instandsetzung + KamAZ de reparación + KamAZ Naprawczy + KAMAZ Opravárenský + KamAZ Réparation + КамАЗ Ремонтный + KamAZ Reparador + KamAZ (szerelő-jármű) + KamAZ riparatore + + + KamAZ Medical + KamAZ Sanitäter + KamAZ médico + KamAZ Medyczny + KAMAZ Zdravotnický + KamAZ Sanitaire + КамАЗ Медицинский + KamAZ Médico + KamAZ (egészségügyi) + KamAZ Medico + + + Punisher + Punisher + Punisher + Punisher + Punisher + Punisher + Kаратель + Punisher + Punisher + Punisher + + + Punisher (HMG) + Punisher (SMG) + Punisher (HMG) + Punisher (CKM) + Punisher (TK) + Punisher (HMG) + Kаратель (Пулемет) + Punisher (HMG) + Punisher (HMG) + Punisher (HMG) + + + Punisher (GMG) + Punisher (GMW) + Punisher (GMG) + Punisher (CKM) + Punisher (granátomet) + Punisher (GMG) + Kаратель (Гранатомет) + Punisher (GMG) + Punisher (GMG) + Punisher (GMG) + + + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + T100 Черный Орел + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + + + 2S9 Sochor + 2S9 Sochor + 2S9 Sochor + 259 Sochor + 2S9 Sochor + 2S9 Sochor + 2S9 Сокор + 2S9 Sochor + 2S9 Sochor + 2S9 Sochor + + + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + БМ-2Т Сталкер + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + + + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ЗСУ-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + + + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + + + Typhoon Transport + Typhoon Transport + Typhoon de transporte + Typhoon Transportowy + Typhoon Valník + Typhoon Transport + Тайфун Транспортный + Typhoon Transporte + Typhoon szállítójármű + Typhoon da trasporto + + + Typhoon Transport (covered) + Typhoon Transport (bedeckt) + Typhoon de transporte (cubierto) + Typhoon Transportowy (przykryty) + Typhoon Valník (krytý) + Typhoon Transport (bâché) + Тайфун Транспортный (kрытый) + Typhoon Transporte (coberto) + Typhoon szállítójármű (ponyvás) + Typhoon da trasporto (coperto) + + + Typhoon Device + Typhoon Gerät + Typhoon de dispositivo + Typhoon Urządzenie + Typhoon Zařízení + Typhoon Dispositif + Тайфун Устройство + Typhoon Dispositivo + Typhoon (szerkezet) + Typhoon per dispositivo + + + Typhoon Ammo + Typhoon Munition + Typhoon de munición + Typhoon Amunicyjny + Typhoon Muniční + Typhoon Munitions + Тайфун Боеприпасы + Typhoon Munições + Typhoon (lőszerszállító) + Typhoon di rifornimento munizioni + + + Typhoon Fuel + Typhoon Treibstoff + Typhoon de combustible + Typhoon Cysterna + Typhoon Cisterna + Typhoon Citerne + Тайфун Заправщик + Typhoon Combustível + Typhoon (üzemanyag-szállító) + Typhoon di rifornimento carburante + + + Typhoon Repair + Typhoon Instandsetzung + Typhoon de reparación + Typhoon Naprawczy + Typhoon Opravárenský + Typhoon Réparation + Тайфун Ремонтный + Typhoon Reparador + Typhoon (szerelő-jármű) + Typhoon riparatore + + + Typhoon Medical + Typhoon Sanitäter + Typhoon médico + Typhoon Medyczny + Typhoon Zdravotnický + Typhoon Sanitaire + Тайфун Медицинский + Typhoon Médico + Typhoon (egészségügyi) + Typhoon medico + + + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Commanche + RAH-66 Команч + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Comanche + + + MH-6 Little Bird + MH-6 Little Bird + MH-6 Litte Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + + + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + + + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + + + CH-47I Chinook (unarmed) + CH-47I Chinook (unbewaffnet) + CH-47I Chinnok (Desarmado) + CH-47I Chinook (nieuzbrojony) + CH-47I Chinook (невооруженный) + CH-47I Chinook (Neozbrojený) + + + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Тандерболт II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + + + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + + + AW159 Wildcat (unarmed) + AW159 Wildcat (unbewaffnet) + AW159 Wildcat (desarmado) + AW159 Wildcat (nieuzbrojony) + AW159 Wildcat (neozbrojený) + AW159 Wildcat (non-armé) + AW159 Wildcat (невооруженный) + AW159 Wildcat (desarmado) + AW159 Wildcat (fegyvertelen) + AW159 Wildcat (disarmato) + + + AW101 Merlin + AW101 Merlin + AW101 Merlin + AW101 Merlin + AW101 Merlin + AW101 Merlin + AW101 Мерлин + AW101 Merlin + AW101 Merlin + AW101 Merlin + + + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 Альбатрос (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + + + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 Альбатрос (AA) + L-159 ALCA (ВВ) + L-159 ALCA (AA) + L-159 ALCA (AA) + + + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Касатка + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + + + Ka-60 Kasatka (unarmed) + Ka-60 Kasatka (unbewaffnet) + Ka-60 Kasatka (desarmado) + Ka-60 Kasatka (nieuzbrojony) + Ka-60 Kasatka (neozbrojená) + Ka-60 Kasatka (non-armé) + Ka-60 Касатка (невооруженный) + Ka-60 Kasatka (desarmado) + Ka-60 Kasatka (fegyvertelen) + Ka-60 Kasatka (disarmato) + + + Yak-130 + Yak-130 + Yak-130 + Jak-130 + Jak-130 + Yak-130 + Як-130 + Yak-130 + Jak-130 + Yak-130 + + + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + + + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + + + M18A1 Claymore + M18A1 Claymore + M18A1 Claymore + Mina kierunkowa M18A1 Claymore + M18A1 Mina Claymore + M18A1 Claymore Mine antipersonnel à effet dirigé + M18A1 Клеймор + M18A1 Claymore + M18A1 Claymore akna + M18A1 Claymore Mina antiuomo + + + M183 Demolition Charge Assembly + M183 Geballte Sprengladung + Conjunto de carga de demolición M183 + Ładunek burzący M183 + M183 Demoliční nálož + M183 Charge de Démolition + M183 Комплектный подрывной заряд + M183 Sacola de Demolição + M183 romboló töltet + M183 Demolition Charge Assembly + + + M112 Demolition Block + M112 Sprengladung + Bloque de demolición M112 + Ładunek burzący M112 + M112 Výbušná nálož + Pétard M112 + M112 подрывной заряд + M112 Carga de Demolição + M112 romboló töltet + M112 Demolition Block + + + M67 Fragmentation Grenade + M67 Splittergranate + Granada de fragmentación M67 + Granat obronny M67 + M67 Granát + M67 Grenade à fragmentation + M67 ручная осколочная граната + M67 Granada de fragmentação + M67 repeszgránát + M67 Granata a frammentazione + + + M83 Smoke Grenade (White) + M83 Rauchgranate (Weiss) + Granada de humo M83 (Blanco) + Granat dymny M83 (Biały) + M83 Kouřový Granát (Bílý) + M83 Grenade fumigène (Blanche) + M83 дымовая граната (Белый) + M83 Granada de fumaça (Branca) + M83 füstgránát (Fehér) + M83 Granata fumogena (Bianco) + + + M18 Smoke Grenade (Blue) + M18 Rauchgranate (Blau) + Granada de humo M18 (Azul) + Granat dymny M18 (Niebieski) + M18 Kouřový Granát (Modrý) + M18 Grenade fumigène (Bleue) + M18 дымовая граната (Синий) + M18 Granada de fumaça (Azul) + M18 füstgránát (Kék) + M18 Granata fumogena (Blu) + + + M18 Smoke Grenade (Green) + M18 Rauchgranate (Grün) + Granada de humo M18 (Verde) + Granat dymny M18 (Zielony) + M18 Kouřový Granát (Zelený) + M18 Grenade fumigène (Verte) + M18 дымовая граната (Зелёный) + M18 Granada de fumaça (Verde) + M18 füstgránát (Zöld) + M18 Granata fumogena (Verde) + + + M18 Smoke Grenade (Orange) + M18 Rauchgranate (Orange) + Granada de humo M18 (Naranja) + Granat dymny M18 (Pomarańczowy) + M18 Kouřový Granát (Oranžový) + M18 Grenade fumigène (Orange) + M18 дымовая граната (Оранжевый) + M18 Granada de fumaça (Laranja) + M18 füstgránát (Narancssárga) + M18 Granata fumogena (Arancione) + + + M18 Smoke Grenade (Purple) + M18 Rauchgranate (Violett) + Granada de humo M18 (Púrpura) + Granat dymny M18 (Fioletowy) + M18 Kouřový Granát (Fialový) + M18 Grenade fumigène (Pourpre) + M18 дымовая граната (Пурпурный) + M18 Granada de fumaça (Roxa) + M18 füstgránát (Lila) + M18 Granata fumogena (Viola) + + + M18 Smoke Grenade (Red) + M18 Rauchgranate (Rot) + Granada de humo M18 (Rojo) + Granat dymny M18 (Czerwony) + M18 Kouřový Granát (Červený) + M18 Grenade fumigène (Rouge) + M18 дымовая граната (Красный) + M18 Granada de fumaça (Vermelha) + M18 füstgránát (Piros) + M18 Granata fumogena (Rosso) + + + M18 Smoke Grenade (Yellow) + M18 Rauchgranate (Gelb) + Granada de humo M18 (Amarillo) + Granat dymny M18 (Żółty) + M18 Kouřový Granát (Žlutý) + M18 Grenade fumigène (Jaune) + M183 дымовая граната (Жёлтые) + M18 Granada de fumaça (Amarela) + M18 füstgránát (Sárga) + M18 Granata fumogena (Giallo) + + + M15 Anti-Tank Mine + M15 Panzerabwehrmine + Mina antitanque M15 + Mina przeciwpancerna M15 + M15 Protitanková Mina + M15 Mine antichar + M15 противотанковая мина + M15 Mina anticarro + M15 harckocsiakna + M15 Mine anticarro + + + VS-50 Anti-Personnel Mine + VS-50 Antipersonenmine + Mina antipersona VS-50 + Mina przeciwpiechotna VS-50 + VS-50 Protipěchotní Mina + VS-50 Mine antipersonnel à pression + VS-50 Противопехотная мина + VS-50 Mina antipessoal + VS-50 gyalogsági taposóakna + VS-50 Mine antiuomo + + + M26 Anti-Personnel Bounding Mine + M26 Antipersonensprungmine + Mina antipersona M26 + Mina przeciwpiechotna M26 + M26 Šrapnelová Mina + M26 Mine antipersonnel bondissante + M26 Противопехотная мина + M26 Mina saltadora antipessoal + M26 gyalogsági ugróakna + M26 Mine saltanti antiuomo + + + PMR-3 Anti-Personnel Tripwire Mine + PMR-3 Antipersonenstolperdrahtmine + Mina antipersona de alambre PMR-3 + Mina przeciwpiechotna PMR-3 + PMR-3 Nástražná Mina + PMR-3 Mine antipersonnel à traction + PMR-3 Противопехотная мина + PMR-3 Mina antipessoal (armadilha) + PMR-3 botlódrótos gyalogsági akna + PMR-3 Mine antiuomo + + + P99 + P99 + P99 + + + MP-443 Grach + MP-443 Grach + MP-443 Grach + + + ACP-C2 + ACP-C2 + ACP-C2 + + + FNX-45 Tactical + FNX-45 Tactical + FNX-45 Tactical + + + Chiappa Rhino 60DS + Chiappa Rhino 60DS + Chiappa Rhino 60DS + + + Taurus Judge + Taurus Judge + Taurus Judge + + + NLAW + NLAW + NLAW + + + RPG-32 + RPG-32 + RPG-32 + + + Mini-Spike (AA) + Mini-Spike (AA) + Mini-Spike (AA) + + + Mini-Spike (AT) + Mini-Spike (AT) + Mini-Spike (AT) + + + MX + MX + MX + + + MX (Black) + MX (Black) + MX (Negro) + + + MXC + MXC + MXC + + + MXC (Black) + MXC (Black) + MXC (Negro) + + + MX 3GL + MX 3GL + MX 3GL + + + MX 3GL (Black) + MX 3GL (Black) + MX 3GL (Negro) + + + MX LSW + MX LSW + MX LSW + + + MX LSW (Black) + MX LSW (Black) + MX LSW (Negro) + + + MXM + MXM + MXM + + + MXM (Black) + MXM (Black) + MXM (Negro) + + + KT2002 Katiba + KT2002 Katiba + KT2002 Katiba + + + KT2002C Katiba + KT2002C Katiba + KT2002C Katiba + + + KT2002 Katiba KGL + KT2002 Katiba KGL + KT2002 Katiba KGL + + + F2000 (Camo) + F2000 (Camo) + F2000 (Camuflaje) + + + F2000 + F2000 + F2000 + + + F2000 Tactical (Camo) + F2000 Tactical (Camo) + F2000 Tactical (Camuflaje) + + + F2000 Tactical + F2000 Tactical + F2000 Tactical + + + F2000 EGLM (Camo) + F2000 EGLM (Camo) + F2000 EGLM (Camuflaje) + + + F2000 EGLM + F2000 EGLM + F2000 EGLM + + + TAR-21 + TAR-21 + TAR-21 + + + CTAR-21 + CTAR-21 + CTAR-21 + + + TAR-21 EGLM + TAR-21 EGLM + TAR-21 EGLM + + + Vector SMG + Vector SMG + Vector SMG + + + Scorpion Evo 3 A1 + Scorpion Evo 3 A1 + Scorpion Evo 3 A1 + + + CPW + CPW + CPW + + + RFB SDAR + RFB SDAR + RFB SDAR + + + Stoner 99 LMG + Stoner 99 LMG + Stoner 99 LMG + + + Negev NG7 + Negev NG7 + Negev NG7 + + + Mk14 Mod 1 EBR + Mk14 Mod 1 EBR + Mk14 Mod 1 EBR + + + GM6 Lynx + GM6 Lynx + GM6 Lynx + + + GM6 Lynx (Camo) + GM6 Lynx (Camo) + GM6 Lynx (Camuflaje) + + + M200 Intervention + M200 Intervention + M200 Intervention + + + M200 Intervention (Camo) + M200 Intervention (Camo) + M200 Intervention (Camuflaje) + + + VS-121 + VS-121 + VS-121 + + + TODO: MAR-10 .338 + TODO: MAR-10 .338 + + + TODO: MAR-10 .338 (Black) + TODO: MAR-10 .338 (Negro) + + + TODO: MAR-10 .338 (Camo) + TODO: MAR-10 .338 (Camuflaje) + + + TODO: MAR-10 .338 (Sand) + TODO: MAR-10 .338 (Arena) + + + TODO: Mk-I EMR 7.62 mm + TODO: Mk-I EMR 7.62 mm + + + TODO: Mk-I EMR 7.62 mm (Black) + TODO: Mk-I EMR 7.62 mm (Negro) + + + TODO: Mk-I EMR 7.62 mm (Khaki) + TODO: Mk-I EMR 7.62 mm (Caqui) + + + TODO: Mk-I EMR 7.62 mm (Sand) + TODO: Mk-I EMR 7.62 mm (Arena) + + + TODO: Mk-I EMR 7.62 mm (Camo) + TODO: Mk-I EMR 7.62 mm (Camuflaje) + + + TODO: Mk-I EMR 7.62 mm (Woodland) + TODO: Mk-I EMR 7.62 mm (Bosque) + + + TODO: NATO DMR (provisional) spotter + TODO: NATO DMR (provisional) observador + + + TODO: ASP-1 Kir 12.7 mm + TODO: ASP-1 Kir 12.7 mm + + + TODO: ASP-1 Kir 12.7 mm (Black) + TODO: ASP-1 Kir 12.7 mm (Negro) + + + TODO: ASP-1 Kir 12.7 mm (Tan) + TODO: ASP-1 Kir 12.7 mm (Tan) + + + TODO: Cyrus 9.3 mm + TODO: Cyrus 9.3 mm + + + TODO: Cyrus 9.3 mm (Black) + TODO: Cyrus 9.3 mm (Negro) + + + TODO: Cyrus 9.3 mm (Hex) + TODO: Cyrus 9.3 mm (Hex) + + + TODO: Cyrus 9.3 mm (Tan) + TODO: Cyrus 9.3 mm (Tan) + + + TODO: Mk14 7.62 mm + TODO: Mk14 7.62 mm + + + TODO: Mk14 7.62 mm (Camo) + TODO: Mk14 7.62 mm (Camuflaje) + + + TODO: Mk14 7.62 mm (Olive) + TODO: Mk14 7.62 mm (Oliva) + + + TODO: Navid 9.3 mm + TODO: Navid 9.3 mm + + + TODO: Navid 9.3 mm (Hex) + TODO: Navid 9.3 mm (Hex) + + + TODO: Navid 9.3 mm (Tan) + TODO: Navid 9.3 mm (Tan) + + + TODO: SPMG .338 + TODO: SPMG .338 + + + TODO: SPMG .338 (MTP) + TODO: SPMG .338 (MTP) + + + TODO: SPMG .338 (Black) + TODO: SPMG .338 (Negro) + + + TODO: SPMG .338 (Sand) + TODO: SPMG .338 (Arena) + + \ No newline at end of file From 94eb4f3dd59d93c69d47355ae897eee5881a32d8 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:42:15 +0200 Subject: [PATCH 053/246] Update stringtable.xml --- addons/realisticnames/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/realisticnames/stringtable.xml b/addons/realisticnames/stringtable.xml index 706a2a0e27..8d22ddd279 100644 --- a/addons/realisticnames/stringtable.xml +++ b/addons/realisticnames/stringtable.xml @@ -1076,7 +1076,7 @@ Mini-Spike (AT) - Mini-Spike (PA) + Mini-Spike (PALR) MX From 36ba507ab5554902d4e9a7e2846481201354af1a Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 14:52:37 +0200 Subject: [PATCH 054/246] Update stringtable.xml --- addons/microdagr/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/microdagr/stringtable.xml b/addons/microdagr/stringtable.xml index eece5ddd2a..c21c8ae489 100644 --- a/addons/microdagr/stringtable.xml +++ b/addons/microdagr/stringtable.xml @@ -72,7 +72,7 @@ MGRS-New - MGRS-NEU + UTMREF-NEU Nuevo-MGRS MGRS-Новая From fef0d690f8f18a649ed9dc719047ef22f970814d Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 15:25:18 +0200 Subject: [PATCH 055/246] Update stringtable.xml --- addons/microdagr/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/microdagr/stringtable.xml b/addons/microdagr/stringtable.xml index c21c8ae489..bf1654ae20 100644 --- a/addons/microdagr/stringtable.xml +++ b/addons/microdagr/stringtable.xml @@ -14,7 +14,7 @@ Многофункциональный GPS-приёмник. - Grad Einheit: + Winkeleinheit: Unidad angular: Угловые единицы: From e7f9245d7e9ed15a75072a40d85c7c228bf16cea Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sun, 12 Apr 2015 10:54:18 -0300 Subject: [PATCH 056/246] ACE_Main major cleanup --- addons/main/About.hpp | 35 ----- addons/main/CfgModuleCategories.hpp | 8 - addons/main/about.sqf | 210 -------------------------- addons/main/config.cpp | 2 - addons/main/license.sqf | 92 ----------- addons/main/license.txt | 92 ----------- addons/main/script_common.hpp | 3 - addons/main/script_config.hpp | 43 ------ addons/main/script_macros.hpp | 165 -------------------- addons/main/script_macros_menudef.hpp | 27 ---- addons/main/script_mod.hpp | 38 ----- 11 files changed, 715 deletions(-) delete mode 100644 addons/main/About.hpp delete mode 100644 addons/main/CfgModuleCategories.hpp delete mode 100644 addons/main/about.sqf delete mode 100644 addons/main/license.sqf delete mode 100644 addons/main/license.txt delete mode 100644 addons/main/script_common.hpp delete mode 100644 addons/main/script_config.hpp delete mode 100644 addons/main/script_macros_menudef.hpp diff --git a/addons/main/About.hpp b/addons/main/About.hpp deleted file mode 100644 index c455c43cc3..0000000000 --- a/addons/main/About.hpp +++ /dev/null @@ -1,35 +0,0 @@ -#include "script_dialog_defines.hpp" - -class ACE_ABOUT_DLG { - idd = 114137; - movingEnable = 0; - onLoad = "with uiNameSpace do { ACE_ABOUT_DLG = _this select 0; };"; - onKeyDown = "if((_this select 1) == 1) then {ACE_ABOUT_STP = true;};"; - class controlsBackground { - class Contents : RscStructuredText { - idc = 1141371; - colorBackground[] = { 0, 0, 0, 0 }; - __SX(0.45); - __SY(0.25); - __SW(0.45); - __SH(0.6); - size = "0.025 * SafeZoneH"; - class Attributes { - font = "TahomaB"; - color = "#C8C8C8"; - align = "left"; - valign = "middle"; - shadow = true; - shadowColor = "#191970"; - size = "1"; - }; - }; - class ACE_ABOUT_NEXT : ACE_ABOUT_CTRL { //dummy visible - idc = 1141372; - __SX(0.065); - __SW(0.03); - text = ""; - action = ""; - }; - }; //controlsBackground -}; diff --git a/addons/main/CfgModuleCategories.hpp b/addons/main/CfgModuleCategories.hpp deleted file mode 100644 index 1f86959585..0000000000 --- a/addons/main/CfgModuleCategories.hpp +++ /dev/null @@ -1,8 +0,0 @@ -class CfgFactionClasses { - class NO_CATEGORY; - class ACE: NO_CATEGORY { - displayName = "ACE"; - priority = 2; - side = 7; - }; -}; \ No newline at end of file diff --git a/addons/main/about.sqf b/addons/main/about.sqf deleted file mode 100644 index c9004edfe1..0000000000 --- a/addons/main/about.sqf +++ /dev/null @@ -1,210 +0,0 @@ -#include "script_component.hpp" -#include "\z\ace\addons\main\script_common.hpp" - -if (!isNil "ACE_ABOUT_RUN") exitWith {ACE_ABOUT_RUN = false;}; -ACE_ABOUT_RUN = true; - -disableSerialization; - -PARAMS_2(_menu,_data); - -private ["_pcredits", "_pkeynam", "_shift", "_ctrl", "_alt", "_keys", "_key", "_keystrg", "_mod", "_knaml", "_knam", "_k", "_pkeys", "_pary", "_tpages", "_cEvents", "_i", "_cSys", "_tSys", "_aSys", "_tS", "_j", "_c", "_tC", "_keyn", "_fadet", "_page1", "_color", "_bcolor", "_newpages", "_pstart", "_pcount", "_pnext", "_display", "_control", "_pnames", "_pnam", "_page", "_pages", "_run", "_disp", "_next", "_input", "_nesc", "_unset", "_p", "_text", "_curPage", "_time", "_faded"]; - -_pcredits = [ -"", -"Advanced Combat Environment 2", -"http://dev-heaven.net/projects/ace-mod2", -"", -__cr_managers, -"", -__cr_devs, -"", -__cr_testers, -"", -"For a full list of acknowledgements, please visit our Wiki:", -"http://ace.dev-heaven.net" -]; - -_pkeynam = { //local function - _shift = if (_shift > 0) then {42} else {0}; - _ctrl = if (_ctrl > 0) then {56} else {0}; - _alt = if (_alt > 0) then {29} else {0}; - _keys = [_shift,_ctrl,_alt,_key]; - _keystrg = "^"; - { - _mod = _x in [42,56,29]; - _knaml = call compile format["format['%2',%1]",(keyName _x),"%1"]; - _knaml = [_knaml, " "] call CBA_fnc_split; - _knam = "^"; - {_k = _x; if (!_mod || (_k != (localize "STR_ACE_KN_LEFT") && _k != (localize "STR_ACE_KN_RIGHT"))) then {_knam = _knam + " " + _k}} forEach _knaml; - _knam = [_knam, "^ ", ""] call CBA_fnc_replace; - _keystrg = _keystrg + "-" + _knam; - } forEach _keys; - _keystrg = [_keystrg, "^ ", ""] call CBA_fnc_replace; - _keystrg = [_keystrg, "^-", ""] call CBA_fnc_replace; - _keystrg = [_keystrg, "^", "None"] call CBA_fnc_replace; - _keystrg -}; -_pkeys = { - _pary = []; - _tpages = []; - _cEvents = configFile/"CfgSettings"/"CBA"/"events"; - for "_i" from 0 to (count _cEvents) - 1 do { - _cSys = _cEvents select _i; - _tSys = configName _cSys; - if (isNumber ((_cSys select 0)/"key")) then { - //format system name - _aSys = [_tSys, "_"] call CBA_fnc_split; - _tS = "^"; - {if (_x != "ace" && _x != "sys") then {_tS = _tS + " " + _x}} forEach _aSys; - _tS = [_tS, "^ ", ""] call CBA_fnc_replace; - _tS = format["%1:",_tS]; - PUSH(_pary,_tS); - for "_j" from 0 to (count _cSys) - 1 do { - _c = _cSys select _j; - _tC = configName _c; - _tC = [_tC, "_", " "] call CBA_fnc_replace; - //key - _key = getNumber (_c/"key"); - _shift = getNumber (_c/"shift"); - _ctrl = getNumber (_c/"ctrl"); - _alt = getNumber (_c/"alt"); - _keyn = [_key,_shift,_ctrl,_alt] call _pkeynam; - _tC = format[" %1: %2",_tC,_keyn]; - PUSH(_pary,_tC); - }; - }; - if (count _pary > 20) then { //split full page - PUSH(_tpages,_pary); - _pary = []; - }; - }; - if (count _pary > 0) then { //partial page - PUSH(_tpages,_pary); - _pary = []; - }; - _tpages -}; - -//pages (make sure each will fit within 24 lines, word wrap is on) -switch(_menu) do { - case "MAIN": { //note: not all scripting commands available on main menu (not compiled yet?) - _fadet = 13; - _page1 = _pcredits; - }; - case "SING": { - _fadet = 20; //fade time - _color = [1,1,1,1]; - //_bcolor = [0,0,0,0.3]; - _page1 = _pcredits; - _newpages = [] call _pkeys; - _pstart = 2; - _pcount = count _newpages; - _pnext = _pstart + _pcount; - }; - case "MULT": { - _fadet = 20; - _color = [1,1,1,1]; - //_bcolor = [0,0,0,0.3]; - _page1 = _pcredits; - _newpages = [] call _pkeys; - _pstart = 2; - _pcount = count _newpages; - _pnext = _pstart + _pcount; - }; - default {}; -}; - -//main menu display -if (typeName(_data select 0) == "DISPLAY") then { - _display = _data select 0; -}; - -if (typeName(_data select 0) == "CONTROL") then { - _control = _data select 0; - _display = ctrlParent _control; -}; - -//dynamic pages -_pnames = []; -for "_x" from _pstart to _pnext - 1 do { - _pnam = format ["_page%1",_x]; - PUSH(_pnames,_pnam); -}; -private _pnames; -for "_x" from 0 to _pcount - 1 do { - call compile format ["%1 = %2", _pnames select _x, _newpages select _x]; -}; - -//get num pages -_pages = 0; -_run = true; -while {_run} do { - INC(_pages); - if (isNil format ["_page%1", _pages]) exitWith {_pages = _pages - 1; _run = false}; -}; - -if (_pages > 0) then { - //Dialog - createDialog "ACE_ABOUT_DLG"; - _disp = uiNamespace getVariable "ACE_ABOUT_DLG"; - _ctrl = _disp displayCtrl 1141371; - _next = _disp displayCtrl 1141372; - - if (_pages > 1) then {_next ctrlSetText "Next"}; - - _ctrl ctrlSetFade 1; - _ctrl ctrlCommit 0; - _ctrl ctrlSetFade 0; - _ctrl ctrlCommit 3; - - ACE_ABOUT_INC = 0; - _input = { //local function - _nesc = isNil "ACE_ABOUT_STP"; - if (_pages == 1) then {ACE_ABOUT_INC = 0}; //ignore special control - _unset = (ACE_ABOUT_INC == 0) && ACE_ABOUT_RUN; - if (_unset && _nesc) then {false} else {_fadet = _fadet + 5; true}; - }; - - //by default cycle - for "_p" from 1 to _pages do { - _text = ""; - _page = call compile format["_page%1",_p]; - _curPage = _p; - { - _text = _text + _x + "
"; - _ctrl ctrlSetStructuredText parseText _text; - if (call _input) exitWith {_p = _pages}; - if (_x != "") then {uisleep 0.8}; - } forEach _page; - }; - - _run = true; - while {if (isNil "ACE_ABOUT_STP") then {_run} else {false}} do { - _ctrl ctrlSetFade 0; - _ctrl ctrlCommit 0; - if (!isNil "_color") then {_ctrl ctrlSetTextColor _color}; - if (!isNil "_bcolor") then {_ctrl ctrlSetBackgroundColor _bcolor}; - - _curPage = _curPage + ACE_ABOUT_INC; - if (_curPage > _pages) then {_curPage = 1}; - if (_curPage <= 0) then {_curPage = 1}; - ACE_ABOUT_INC = 0; - - if (!ACE_ABOUT_RUN) then {ACE_ABOUT_RUN = true}; - - _text = ""; - _page = call compile format ["_page%1",_curPage]; - {_text = _text + _x + "
"} forEach _page; - _ctrl ctrlSetStructuredText parseText _text; - - _ctrl ctrlSetFade 1; - _ctrl ctrlCommit _fadet; - - _time = time + _fadet + 2; - waitUntil{uisleep 1; _run = call _input; _faded = time > _time; (_run || _faded)}; - }; //while RUN -}; -ACE_ABOUT_STP = Nil; -ACE_ABOUT_RUN = Nil; -closeDialog 0; \ No newline at end of file diff --git a/addons/main/config.cpp b/addons/main/config.cpp index eb136f84cf..59398052c4 100644 --- a/addons/main/config.cpp +++ b/addons/main/config.cpp @@ -585,5 +585,3 @@ class CfgSettings { */ }; }; - -#include "CfgModuleCategories.hpp" diff --git a/addons/main/license.sqf b/addons/main/license.sqf deleted file mode 100644 index d078710247..0000000000 --- a/addons/main/license.sqf +++ /dev/null @@ -1,92 +0,0 @@ -License (short) -=============== - -You are free: -- to Share to copy, distribute and transmit the work - -Under the following conditions: -- Attribution You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). -- Noncommercial You may not use this work for commercial purposes. -- No Derivative Works You may not alter, transform, or build upon this work. - -With the understanding that: - -Waiver Any of the above conditions can be waived if you get permission from the copyright holder. - -Public Domain Where the work or any of its elements is in the public domain under applicable law, that status is in no way affected by the license. - -Other Rights In no way are any of the following rights affected by the license: - - Your fair dealing or fair use rights, or other applicable copyright exceptions and limitations; - - The author's moral rights; - - Rights other persons may have either in the work itself or in how the work is used, such as publicity or privacy rights. - -Notice For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to this web page. - - -Full license text -================= - -THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. - -BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS. - -1. Definitions - -"Adaptation" means a work based upon the Work, or upon the Work and other pre-existing works, such as a translation, adaptation, derivative work, arrangement of music or other alterations of a literary or artistic work, or phonogram or performance and includes cinematographic adaptations or any other form in which the Work may be recast, transformed, or adapted including in any form recognizably derived from the original, except that a work that constitutes a Collection will not be considered an Adaptation for the purpose of this License. For the avoidance of doubt, where the Work is a musical work, performance or phonogram, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered an Adaptation for the purpose of this License. -"Collection" means a collection of literary or artistic works, such as encyclopedias and anthologies, or performances, phonograms or broadcasts, or other works or subject matter other than works listed in Section 1(f) below, which, by reason of the selection and arrangement of their contents, constitute intellectual creations, in which the Work is included in its entirety in unmodified form along with one or more other contributions, each constituting separate and independent works in themselves, which together are assembled into a collective whole. A work that constitutes a Collection will not be considered an Adaptation (as defined above) for the purposes of this License. -"Distribute" means to make available to the public the original and copies of the Work through sale or other transfer of ownership. -"Licensor" means the individual, individuals, entity or entities that offer(s) the Work under the terms of this License. -"Original Author" means, in the case of a literary or artistic work, the individual, individuals, entity or entities who created the Work or if no individual or entity can be identified, the publisher; and in addition (i) in the case of a performance the actors, singers, musicians, dancers, and other persons who act, sing, deliver, declaim, play in, interpret or otherwise perform literary or artistic works or expressions of folklore; (ii) in the case of a phonogram the producer being the person or legal entity who first fixes the sounds of a performance or other sounds; and, (iii) in the case of broadcasts, the organization that transmits the broadcast. -"Work" means the literary and/or artistic work offered under the terms of this License including without limitation any production in the literary, scientific and artistic domain, whatever may be the mode or form of its expression including digital form, such as a book, pamphlet and other writing; a lecture, address, sermon or other work of the same nature; a dramatic or dramatico-musical work; a choreographic work or entertainment in dumb show; a musical composition with or without words; a cinematographic work to which are assimilated works expressed by a process analogous to cinematography; a work of drawing, painting, architecture, sculpture, engraving or lithography; a photographic work to which are assimilated works expressed by a process analogous to photography; a work of applied art; an illustration, map, plan, sketch or three-dimensional work relative to geography, topography, architecture or science; a performance; a broadcast; a phonogram; a compilation of data to the extent it is protected as a copyrightable work; or a work performed by a variety or circus performer to the extent it is not otherwise considered a literary or artistic work. -"You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation. -"Publicly Perform" means to perform public recitations of the Work and to communicate to the public those public recitations, by any means or process, including by wire or wireless means or public digital performances; to make available to the public Works in such a way that members of the public may access these Works from a place and at a place individually chosen by them; to perform the Work to the public by any means or process and the communication to the public of the performances of the Work, including by public digital performance; to broadcast and rebroadcast the Work by any means including signs, sounds or images. -"Reproduce" means to make copies of the Work by any means including without limitation by sound or visual recordings and the right of fixation and reproducing fixations of the Work, including storage of a protected performance or phonogram in digital form or other electronic medium. - -2. Fair Dealing Rights. - -Nothing in this License is intended to reduce, limit, or restrict any uses free from copyright or rights arising from limitations or exceptions that are provided for in connection with the copyright protection under copyright law or other applicable laws. - -3. License Grant. - -Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below: - -to Reproduce the Work, to incorporate the Work into one or more Collections, and to Reproduce the Work as incorporated in the Collections; and, to Distribute and Publicly Perform the Work including as incorporated in Collections. -The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats, but otherwise you have no rights to make Adaptations. Subject to 8(f), all rights not expressly granted by Licensor are hereby reserved, including but not limited to the rights set forth in Section 4(d). - -4. Restrictions. - -The license granted in Section 3 above is expressly made subject to and limited by the following restrictions: - -You may Distribute or Publicly Perform the Work only under the terms of this License. You must include a copy of, or the Uniform Resource Identifier (URI) for, this License with every copy of the Work You Distribute or Publicly Perform. You may not offer or impose any terms on the Work that restrict the terms of this License or the ability of the recipient of the Work to exercise the rights granted to that recipient under the terms of the License. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties with every copy of the Work You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Work, You may not impose any effective technological measures on the Work that restrict the ability of a recipient of the Work from You to exercise the rights granted to that recipient under the terms of the License. This Section 4(a) applies to the Work as incorporated in a Collection, but this does not require the Collection apart from the Work itself to be made subject to the terms of this License. If You create a Collection, upon notice from any Licensor You must, to the extent practicable, remove from the Collection any credit as required by Section 4(c), as requested. -You may not exercise any of the rights granted to You in Section 3 above in any manner that is primarily intended for or directed toward commercial advantage or private monetary compensation. The exchange of the Work for other copyrighted works by means of digital file-sharing or otherwise shall not be considered to be intended for or directed toward commercial advantage or private monetary compensation, provided there is no payment of any monetary compensation in connection with the exchange of copyrighted works. -If You Distribute, or Publicly Perform the Work or Collections, You must, unless a request has been made pursuant to Section 4(a), keep intact all copyright notices for the Work and provide, reasonable to the medium or means You are utilizing: (i) the name of the Original Author (or pseudonym, if applicable) if supplied, and/or if the Original Author and/or Licensor designate another party or parties (e.g., a sponsor institute, publishing entity, journal) for attribution ("Attribution Parties") in Licensor's copyright notice, terms of service or by other reasonable means, the name of such party or parties; (ii) the title of the Work if supplied; (iii) to the extent reasonably practicable, the URI, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work. The credit required by this Section 4(c) may be implemented in any reasonable manner; provided, however, that in the case of a Collection, at a minimum such credit will appear, if a credit for all contributing authors of Collection appears, then as part of these credits and in a manner at least as prominent as the credits for the other contributing authors. For the avoidance of doubt, You may only use the credit required by this Section for the purpose of attribution in the manner set out above and, by exercising Your rights under this License, You may not implicitly or explicitly assert or imply any connection with, sponsorship or endorsement by the Original Author, Licensor and/or Attribution Parties, as appropriate, of You or Your use of the Work, without the separate, express prior written permission of the Original Author, Licensor and/or Attribution Parties. - -For the avoidance of doubt: - -Non-waivable Compulsory License Schemes. - -In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme cannot be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License; -Waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme can be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License if Your exercise of such rights is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(b) and otherwise waives the right to collect royalties through any statutory or compulsory licensing scheme; and, -Voluntary License Schemes. The Licensor reserves the right to collect royalties, whether individually or, in the event that the Licensor is a member of a collecting society that administers voluntary licensing schemes, via that society, from any exercise by You of the rights granted under this License that is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(b). -Except as otherwise agreed in writing by the Licensor or as may be otherwise permitted by applicable law, if You Reproduce, Distribute or Publicly Perform the Work either by itself or as part of any Collections, You must not distort, mutilate, modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author's honor or reputation. - -5. Representations, Warranties and Disclaimer. - -UNLESS OTHERWISE MUTUALLY AGREED BY THE PARTIES IN WRITING, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU. - -6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -7. Termination. - -This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Collections from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License. -Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). - -Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above. - -8. Miscellaneous. - -Each time You Distribute or Publicly Perform the Work or a Collection, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License. -If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. -No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent. -This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You. -The rights granted under, and the subject matter referenced, in this License were drafted utilizing the terminology of the Berne Convention for the Protection of Literary and Artistic Works (as amended on September 28, 1979), the Rome Convention of 1961, the WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and the Universal Copyright Convention (as revised on July 24, 1971). These rights and subject matter take effect in the relevant jurisdiction in which the License terms are sought to be enforced according to the corresponding provisions of the implementation of those treaty provisions in the applicable national law. If the standard suite of rights granted under applicable copyright law includes additional rights not granted under this License, such additional rights are deemed to be included in the License; this License is not intended to restrict the license of any rights under applicable law. diff --git a/addons/main/license.txt b/addons/main/license.txt deleted file mode 100644 index e97d9c51a3..0000000000 --- a/addons/main/license.txt +++ /dev/null @@ -1,92 +0,0 @@ -License (short) -=============== - -You are free: -- to Share to copy, distribute and transmit the work - -Under the following conditions: -- Attribution You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). -- Noncommercial You may not use this work for commercial purposes. -- No Derivative Works You may not alter, transform, or build upon this work. - -With the understanding that: - -Waiver Any of the above conditions can be waived if you get permission from the copyright holder. - -Public Domain Where the work or any of its elements is in the public domain under applicable law, that status is in no way affected by the license. - -Other Rights In no way are any of the following rights affected by the license: - - Your fair dealing or fair use rights, or other applicable copyright exceptions and limitations; - - The author's moral rights; - - Rights other persons may have either in the work itself or in how the work is used, such as publicity or privacy rights. - -Notice For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to this web page. - - -Full license text -================= - -THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED. - -BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. TO THE EXTENT THIS LICENSE MAY BE CONSIDERED TO BE A CONTRACT, THE LICENSOR GRANTS YOU THE RIGHTS CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS. - -1. Definitions - -"Adaptation" means a work based upon the Work, or upon the Work and other pre-existing works, such as a translation, adaptation, derivative work, arrangement of music or other alterations of a literary or artistic work, or phonogram or performance and includes cinematographic adaptations or any other form in which the Work may be recast, transformed, or adapted including in any form recognizably derived from the original, except that a work that constitutes a Collection will not be considered an Adaptation for the purpose of this License. For the avoidance of doubt, where the Work is a musical work, performance or phonogram, the synchronization of the Work in timed-relation with a moving image ("synching") will be considered an Adaptation for the purpose of this License. -"Collection" means a collection of literary or artistic works, such as encyclopedias and anthologies, or performances, phonograms or broadcasts, or other works or subject matter other than works listed in Section 1(f) below, which, by reason of the selection and arrangement of their contents, constitute intellectual creations, in which the Work is included in its entirety in unmodified form along with one or more other contributions, each constituting separate and independent works in themselves, which together are assembled into a collective whole. A work that constitutes a Collection will not be considered an Adaptation (as defined above) for the purposes of this License. -"Distribute" means to make available to the public the original and copies of the Work through sale or other transfer of ownership. -"Licensor" means the individual, individuals, entity or entities that offer(s) the Work under the terms of this License. -"Original Author" means, in the case of a literary or artistic work, the individual, individuals, entity or entities who created the Work or if no individual or entity can be identified, the publisher; and in addition (i) in the case of a performance the actors, singers, musicians, dancers, and other persons who act, sing, deliver, declaim, play in, interpret or otherwise perform literary or artistic works or expressions of folklore; (ii) in the case of a phonogram the producer being the person or legal entity who first fixes the sounds of a performance or other sounds; and, (iii) in the case of broadcasts, the organization that transmits the broadcast. -"Work" means the literary and/or artistic work offered under the terms of this License including without limitation any production in the literary, scientific and artistic domain, whatever may be the mode or form of its expression including digital form, such as a book, pamphlet and other writing; a lecture, address, sermon or other work of the same nature; a dramatic or dramatico-musical work; a choreographic work or entertainment in dumb show; a musical composition with or without words; a cinematographic work to which are assimilated works expressed by a process analogous to cinematography; a work of drawing, painting, architecture, sculpture, engraving or lithography; a photographic work to which are assimilated works expressed by a process analogous to photography; a work of applied art; an illustration, map, plan, sketch or three-dimensional work relative to geography, topography, architecture or science; a performance; a broadcast; a phonogram; a compilation of data to the extent it is protected as a copyrightable work; or a work performed by a variety or circus performer to the extent it is not otherwise considered a literary or artistic work. -"You" means an individual or entity exercising rights under this License who has not previously violated the terms of this License with respect to the Work, or who has received express permission from the Licensor to exercise rights under this License despite a previous violation. -"Publicly Perform" means to perform public recitations of the Work and to communicate to the public those public recitations, by any means or process, including by wire or wireless means or public digital performances; to make available to the public Works in such a way that members of the public may access these Works from a place and at a place individually chosen by them; to perform the Work to the public by any means or process and the communication to the public of the performances of the Work, including by public digital performance; to broadcast and rebroadcast the Work by any means including signs, sounds or images. -"Reproduce" means to make copies of the Work by any means including without limitation by sound or visual recordings and the right of fixation and reproducing fixations of the Work, including storage of a protected performance or phonogram in digital form or other electronic medium. - -2. Fair Dealing Rights. - -Nothing in this License is intended to reduce, limit, or restrict any uses free from copyright or rights arising from limitations or exceptions that are provided for in connection with the copyright protection under copyright law or other applicable laws. - -3. License Grant. - -Subject to the terms and conditions of this License, Licensor hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below: - -to Reproduce the Work, to incorporate the Work into one or more Collections, and to Reproduce the Work as incorporated in the Collections; and, to Distribute and Publicly Perform the Work including as incorporated in Collections. -The above rights may be exercised in all media and formats whether now known or hereafter devised. The above rights include the right to make such modifications as are technically necessary to exercise the rights in other media and formats, but otherwise you have no rights to make Adaptations. Subject to 8(f), all rights not expressly granted by Licensor are hereby reserved, including but not limited to the rights set forth in Section 4(d). - -4. Restrictions. - -The license granted in Section 3 above is expressly made subject to and limited by the following restrictions: - -You may Distribute or Publicly Perform the Work only under the terms of this License. You must include a copy of, or the Uniform Resource Identifier (URI) for, this License with every copy of the Work You Distribute or Publicly Perform. You may not offer or impose any terms on the Work that restrict the terms of this License or the ability of the recipient of the Work to exercise the rights granted to that recipient under the terms of the License. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties with every copy of the Work You Distribute or Publicly Perform. When You Distribute or Publicly Perform the Work, You may not impose any effective technological measures on the Work that restrict the ability of a recipient of the Work from You to exercise the rights granted to that recipient under the terms of the License. This Section 4(a) applies to the Work as incorporated in a Collection, but this does not require the Collection apart from the Work itself to be made subject to the terms of this License. If You create a Collection, upon notice from any Licensor You must, to the extent practicable, remove from the Collection any credit as required by Section 4(c), as requested. -You may not exercise any of the rights granted to You in Section 3 above in any manner that is primarily intended for or directed toward commercial advantage or private monetary compensation. The exchange of the Work for other copyrighted works by means of digital file-sharing or otherwise shall not be considered to be intended for or directed toward commercial advantage or private monetary compensation, provided there is no payment of any monetary compensation in connection with the exchange of copyrighted works. -If You Distribute, or Publicly Perform the Work or Collections, You must, unless a request has been made pursuant to Section 4(a), keep intact all copyright notices for the Work and provide, reasonable to the medium or means You are utilizing: (i) the name of the Original Author (or pseudonym, if applicable) if supplied, and/or if the Original Author and/or Licensor designate another party or parties (e.g., a sponsor institute, publishing entity, journal) for attribution ("Attribution Parties") in Licensor's copyright notice, terms of service or by other reasonable means, the name of such party or parties; (ii) the title of the Work if supplied; (iii) to the extent reasonably practicable, the URI, if any, that Licensor specifies to be associated with the Work, unless such URI does not refer to the copyright notice or licensing information for the Work. The credit required by this Section 4(c) may be implemented in any reasonable manner; provided, however, that in the case of a Collection, at a minimum such credit will appear, if a credit for all contributing authors of Collection appears, then as part of these credits and in a manner at least as prominent as the credits for the other contributing authors. For the avoidance of doubt, You may only use the credit required by this Section for the purpose of attribution in the manner set out above and, by exercising Your rights under this License, You may not implicitly or explicitly assert or imply any connection with, sponsorship or endorsement by the Original Author, Licensor and/or Attribution Parties, as appropriate, of You or Your use of the Work, without the separate, express prior written permission of the Original Author, Licensor and/or Attribution Parties. - -For the avoidance of doubt: - -Non-waivable Compulsory License Schemes. - -In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme cannot be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License; -Waivable Compulsory License Schemes. In those jurisdictions in which the right to collect royalties through any statutory or compulsory licensing scheme can be waived, the Licensor reserves the exclusive right to collect such royalties for any exercise by You of the rights granted under this License if Your exercise of such rights is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(b) and otherwise waives the right to collect royalties through any statutory or compulsory licensing scheme; and, -Voluntary License Schemes. The Licensor reserves the right to collect royalties, whether individually or, in the event that the Licensor is a member of a collecting society that administers voluntary licensing schemes, via that society, from any exercise by You of the rights granted under this License that is for a purpose or use which is otherwise than noncommercial as permitted under Section 4(b). -Except as otherwise agreed in writing by the Licensor or as may be otherwise permitted by applicable law, if You Reproduce, Distribute or Publicly Perform the Work either by itself or as part of any Collections, You must not distort, mutilate, modify or take other derogatory action in relation to the Work which would be prejudicial to the Original Author's honor or reputation. - -5. Representations, Warranties and Disclaimer. - -UNLESS OTHERWISE MUTUALLY AGREED BY THE PARTIES IN WRITING, LICENSOR OFFERS THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU. - -6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -7. Termination. - -This License and the rights granted hereunder will terminate automatically upon any breach by You of the terms of this License. Individuals or entities who have received Collections from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 5, 6, 7, and 8 will survive any termination of this License. -Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Work). - -Notwithstanding the above, Licensor reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above. - -8. Miscellaneous. - -Each time You Distribute or Publicly Perform the Work or a Collection, the Licensor offers to the recipient a license to the Work on the same terms and conditions as the license granted to You under this License. -If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this agreement, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. -No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent. -This License constitutes the entire agreement between the parties with respect to the Work licensed here. There are no understandings, agreements or representations with respect to the Work not specified here. Licensor shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Licensor and You. -The rights granted under, and the subject matter referenced, in this License were drafted utilizing the terminology of the Berne Convention for the Protection of Literary and Artistic Works (as amended on September 28, 1979), the Rome Convention of 1961, the WIPO Copyright Treaty of 1996, the WIPO Performances and Phonograms Treaty of 1996 and the Universal Copyright Convention (as revised on July 24, 1971). These rights and subject matter take effect in the relevant jurisdiction in which the License terms are sought to be enforced according to the corresponding provisions of the implementation of those treaty provisions in the applicable national law. If the standard suite of rights granted under applicable copyright law includes additional rights not granted under this License, such additional rights are deemed to be included in the License; this License is not intended to restrict the license of any rights under applicable law. diff --git a/addons/main/script_common.hpp b/addons/main/script_common.hpp deleted file mode 100644 index b3f6863d49..0000000000 --- a/addons/main/script_common.hpp +++ /dev/null @@ -1,3 +0,0 @@ -#define __cr_managers "Manager: " -#define __cr_devs "Developer:" -#define __cr_testers "Contributor: " diff --git a/addons/main/script_config.hpp b/addons/main/script_config.hpp deleted file mode 100644 index e39240286e..0000000000 --- a/addons/main/script_config.hpp +++ /dev/null @@ -1,43 +0,0 @@ -#define true 1 -#define false 0 - -#define private 0 -#define protected 1 -#define public 2 - -#define TEast 0 -#define TWest 1 -#define TGuerrila 2 -#define TCivilian 3 -#define TSideUnknown 4 -#define TEnemy 5 -#define TFriendly 6 -#define TLogic 7 - -#define VSoft 0 -#define VArmor 1 -#define VAir 2 - -#define LockNo 0 -#define LockCadet 1 -#define LockYes 2 - -#define ReadAndWrite 0 -#define ReadAndCreate 1 -#define ReadOnly 2 -#define ReadOnlyVerified 3 - -#define WeaponNoSlot 0 // dummy weapons -#define WeaponSlotPrimary 1 // primary weapons -#define WeaponSlotSecondary 16 // secondary weapons -#define WeaponSlotItem 256 // items -#define WeaponSlotBinocular 4096 // binocular -#define WeaponHardMounted 65536 - -#define CanSeeRadar 1 -#define CanSeeRye 2 -#define CanSeeOptics 4 -#define CanSeeEar 4 -#define CanSeeCompass 16 -#define CanSeeRadarC CanSeeRadar+CanSeeCompass -#define CanSeeAll 31 diff --git a/addons/main/script_macros.hpp b/addons/main/script_macros.hpp index 79f95545ca..fce9ec526a 100644 --- a/addons/main/script_macros.hpp +++ b/addons/main/script_macros.hpp @@ -4,171 +4,6 @@ // Default versioning level #define DEFAULT_VERSIONING_LEVEL 2 -// RGB Colors -#define RGB_GREEN 0, 0.5, 0, 1 -#define RGB_BLUE 0, 0, 1, 1 -#define RGB_ORANGE 0.5, 0.5, 0, 1 -#define RGB_RED 1, 0, 0, 1 -#define RGB_YELLOW 1, 1, 0, 1 -#define RGB_WHITE 1, 1, 1, 1 -#define RGB_GRAY 0.5, 0.5, 0.5, 1 -#define RGB_BLACK 0, 0, 0, 1 -#define RGB_MAROON 0.5, 0, 0, 1 -#define RGB_OLIVE 0.5, 0.5, 0, 1 -#define RGB_NAVY 0, 0, 0.5, 1 -#define RGB_PURPLE 0.5, 0, 0.5, 1 -#define RGB_FUCHSIA 1, 0, 1, 1 -#define RGB_AQUA 0, 1, 1, 1 -#define RGB_TEAL 0, 0.5, 0.5, 1 -#define RGB_LIME 0, 1, 0, 1 -#define RGB_SILVER 0.75, 0.75, 0.75, 1 - -#include "script_macros_menudef.hpp" - -#define ACE_NOARMORY class Armory { disabled = 1; } -#define ACE_ARMORY class Armory { disabled = 0; } -#define ACE_ACEARMORY class Armory { disabled = 0; author = "A.C.E."; } - - -// Weapon defaults -// NOTE !!!! - Do not forget to dummy-update the configs that use these defines, or the changes won't activate due to binarization! -#define ACE_DEFAULT_WEAPONS "Throw", "Put" - -// Item defaults -// NOTE !!!! - Do not forget to dummy-update the configs that use these defines, or the changes won't activate due to binarization! -#define ACE_ITEMS_TEAMLEADER_B "ItemMap","ItemCompass","ItemWatch","ItemRadio" -#define ACE_ITEMS_SQUADLEADER_B "ItemMap","ItemCompass","ItemWatch","ItemRadio","ACE_DAGR" -#define ACE_ITEMS_SPECIAL "ItemMap","ItemCompass","ItemWatch","ItemRadio" -#define ACE_ITEMS "ItemWatch","ItemRadio" -#define ACE_ITEMS_CIVILIAN "ItemWatch" - - -#define ACE_DEFAULT_SLOTS "1 + 4 + 12* 256 + 2* 4096 + 2 + 8* 16 + 12*131072" - -#define ACE_NOGRIP handAnim[] = {} -#define ACE_DISTANCE_DEFAULT distanceZoomMin = 300; distanceZoomMax = 300 - -// #include "script_macros_optics.hpp" //ToDo - -#define ACE_NOZEROING discreteDistance[] = {}; \ - discreteDistanceInitIndex = 0; \ - weaponInfoType = "RscWeaponEmpty" - -#define ACE_NOTURRETZEROING discreteDistance[] = {}; \ - discreteDistanceInitIndex = 0; \ - turretInfoType = "RscWeaponEmpty" - -#define ACE_LASER irLaserPos = "laser pos"; \ - irLaserEnd = "laser dir"; \ - irDistance = 300 - -#define ACE_LASER_DISTANCE_VANILLA irDistance = 300 - -#define ACE_NOLASER irLaserPos = "laser pos"; \ - irLaserEnd = "laser dir"; \ - irDistance = 0 - -#define ACE_SUPPRESSED ace_suppressed = 1; \ - fireLightDuration = 0; \ - fireLightIntensity = 0 - -// TODO: Cleanup in all the configs around -#define ACE_M_MAG(x,y) class _xx_##x {magazine = ##x; count = ##y;} -#define ACE_M_WEP(x,y) class _xx_##x {weapon = ##x; count = ##y;} -#define ACE_M_ITEM(x,y) class _xx_##x {name = ##x; count = ##y;} -#define ACE_M_BAG(x,y) class _xx_##x {backpack = ##x; count = ##y;} - - -// Vehicle defines -// ACE_canBeLoad = This vehicle acts as transporter, i.e you can load stuff into it -// ACE_canBeCargo = This vehicle acts as cargo, i.e you can load this item into other vehicles -#define ACE_CARGO_FRONT ACE_canBeLoad = false; ACE_canBeCargo = true; ACE_canGear = false; ACE_canLoadFront = true -#define ACE_CARGO_ONLY ACE_canBeLoad = false; ACE_canBeCargo = true; ACE_canGear = false; ACE_canLoadFront = false -#define ACE_LOAD_ONLY ACE_canBeLoad = true; ACE_canBeCargo = false; ACE_canGear = false; ACE_canLoadFront = false -#define ACE_GEAR_ONLY ACE_canBeLoad = true; ACE_canBeCargo = false; ACE_canGear = true; ACE_canLoadFront = false -#define ACE_NOCARGOLOAD ACE_canBeLoad = false; ACE_canBeCargo = false; ACE_canGear = false; ACE_canLoadFront = false - -// Increased FOV for tank driver -// Increased Default US Tank driver optic -#define ACE_DRIVEROPTIC_TANK_US driverOpticsModel = "\z\ace\addons\m_veh_optics\driver\optika_tank_driver_west.p3d" -// Increased Default RU Tank driver optic -#define ACE_DRIVEROPTIC_TANK_RU driverOpticsModel = "\z\ace\addons\m_veh_optics\driver\optika_tank_driver_east.p3d" -// Increased Default NON Specified driver optic -#define ACE_DRIVEROPTIC_TANK driverOpticsModel = "\z\ace\addons\m_veh_optics\driver\optika_tank_driver.p3d" -// Increased Default EP1 NON Specified driver optic -// Default black border thing needs finish -#define ACE_DRIVEROPTIC_TANK_EP1 driverOpticsModel = "\z\ace\addons\m_veh_optics\driver\optika_tank_driver.p3d" - -#define ACE_BWC ace_bwc = 1 - -// SCRIPTING MACROS - -// Items -#define inITEMS(x,y) (##x in (y call ACE_fnc_getGear)) -#define remITEMS(x,y) ([##x,y] call ACE_fnc_removeItem) -//#define addITEMS(x,y) (y addItem ##x) - -// Interaction/ Put anims -#define canANIM(x) (x call ACE_fnc_CanPutDown) -#define playANIM(x) (if (x call ACE_fnc_CanPutDown) then { x call ACE_fnc_PutDown }) - -// In vehicle or on foot -#define ONFOOT(x) (x == vehicle x) -#define INVEHICLE(x) (x != vehicle x) - -// FX -#define COUGH ace_common_fx_fnc_cough -#define BLURRY ace_common_fx_fnc_blurry -#define BLIND ace_common_fx_fnc_blind_view -#define DEAF ace_common_fx_fnc_deaf -#define DIZZY ace_common_fx_fnc_dizzy -#define FLASH ace_common_fx_fnc_flash -#define KICK ace_common_fx_fnc_kick -#define KNOCKOUT ace_common_fx_fnc_knockout -#define RING ace_common_fx_fnc_ring - -// Stamina -#define INC_MASS ace_stamina_fnc_inc_mass - -// Does this work, due to BWC_CONFIG(NAME) ? -#undef BWC_CONFIG - -#define BWC_CONFIG(NAME) class NAME { \ - units[] = {}; \ - weapons[] = {}; \ - requiredVersion = REQUIRED_VERSION; \ - requiredAddons[] = {}; \ - version = VERSION; \ - ACE_BWC; \ -} - -#define ACE_FLASHLIGHT class FlashLight { \ - color[] = {0.9, 0.9, 0.7, 0.9}; \ - ambient[] = {0.1, 0.1, 0.1, 1.0}; \ - position = "flash dir"; \ - direction = "flash"; \ - angle = 30; \ - scale[] = {1, 1, 0.5}; \ - brightness = 0.1; \ - } -#define ACE_SMALL_FLASHLIGHT class FlashLight { \ - color[] = {0.9, 0.9, 0.7, 0.9}; \ - ambient[] = {0.1, 0.1, 0.1, 1.0}; \ - position = "flash dir"; \ - direction = "flash"; \ - angle = 20; \ - scale[] = {0.9, 0.9, 0.4}; \ - brightness = 0.09; \ - } - -// Addaction defines for colored text -#define ACE_TEXT_ORANGE(Text) ("" + ##Text + "") -#define ACE_TEXT_RED(Text) ("" + ##Text + "") -#define ACE_TEXT_GREEN(Text) ("" + ##Text + "") -#define ACE_TEXT_YELLOW(Text) ("" + ##Text + "") - - - #define EGVAR(module,var) TRIPLES(PREFIX,module,var) #define QEGVAR(module,var) QUOTE(EGVAR(module,var)) diff --git a/addons/main/script_macros_menudef.hpp b/addons/main/script_macros_menudef.hpp deleted file mode 100644 index 35a8e2be45..0000000000 --- a/addons/main/script_macros_menudef.hpp +++ /dev/null @@ -1,27 +0,0 @@ -// ACE Self Interaction Conditions - -// Self Interaction Menu not available if player is unconscious -#define ACE_INTERACT_ALIVE (alive player) -#define ACE_INTERACT_UNCON (player call ace_wounds_fnc_isUncon) - -// Player is Player Vehicle -#define ACE_INTERACT_PLAYER (player == vehicle player || (player != vehicle player && player in assignedCargo vehicle player)) - -// Player is climbing up a ladder -#define ACE_INTERACT_LADDER (animationState player in ["ladderriflestatic","laddercivilstatic"]) - -// Possible = Self interaction opens only if player is alive and conscious (can be in a vehicle) -#define ACE_SELFINTERACTION_POSSIBLE (!ACE_INTERACT_LADDER && {ACE_INTERACT_ALIVE} && {!ACE_INTERACT_UNCON}) - -// Restricted = Self interaction opens only if player is alive and conscious (can NOT be in a vehicle, i.e Groundmarker, explosives ...) -#define ACE_SELFINTERACTION_RESTRICTED (ACE_SELFINTERACTION_POSSIBLE && {ACE_INTERACT_PLAYER}) - -// Close interaction menu if unconscious -#define ACE_INTERACT_FNC_EXIT if (ACE_INTERACT_UNCON) exitWith {} -#define ACE_ASSEMBLE (getNumber(configFile >> "CfgActions" >> "Assemble" >> "show") == 0) -#define ACE_DISASSEMBLE (getNumber(configFile >> "CfgActions" >> "DisAssemble" >> "show") == 0) -#define ACE_PIPEDEFAULT (getNumber(configFile >> "CfgMagazines" >> "PipeBomb" >> "useAction") == 0) -#define ACE_IDENTITYDEFAULT (isClass(configFile >> "CfgPatches" >> "ace_combatdeaf")) -#define ACE_RUCKDEFAULT (isClass(configFile >> "CfgPatches" >> "ace_stamina")) - -#define ACE_KNOWN2PLAYER (if (name _target in (player getVariable ["ace_recognize_knownnames",[]])) then { name _target } else { " " }) \ No newline at end of file diff --git a/addons/main/script_mod.hpp b/addons/main/script_mod.hpp index 6ef5ec3f68..25a18e8dc2 100644 --- a/addons/main/script_mod.hpp +++ b/addons/main/script_mod.hpp @@ -15,41 +15,3 @@ // MINIMAL required version for the Mod. Components can specify others.. #define REQUIRED_VERSION 0.5 - -/* - #define DEBUG_ENABLED_ADDONS - #define DEBUG_ENABLED_ATTACHMENTS - #define DEBUG_ENABLED_weapons_backblast - #define DEBUG_ENABLED_BLOOD - #define DEBUG_ENABLED_CARTRIDGES - #define DEBUG_ENABLED_CRATERS - #define DEBUG_ENABLED_CREWPROTECTION - #define DEBUG_ENABLED_DUMMIES - #define DEBUG_ENABLED_EJECT - #define DEBUG_ENABLED_EXPLOSIVES - #define DEBUG_ENABLED_FLARES - #define DEBUG_ENABLED_FLASHBANG - #define DEBUG_ENABLED_GRENADETHROW - #define DEBUG_ENABLED_HUNTIR - #define DEBUG_ENABLED_INTERACTION - #define DEBUG_ENABLED_IRSTROBE - #define DEBUG_ENABLED_MULTI_BARREL - #define DEBUG_ENABLED_MUZZLEBLAST - #define DEBUG_ENABLED_NVG - #define DEBUG_ENABLED_weapons_overheating - #define DEBUG_ENABLED_RECOILDUST - #define DEBUG_ENABLED_ROCKET_BALLISTICS - #define DEBUG_ENABLED_SANDBAG - #define DEBUG_ENABLED_SHOTGUN - #define DEBUG_ENABLED_SIGHT_ADJUSTMENT_AT - #define DEBUG_ENABLED_SIGHT_ADJUSTMENT_GL - #define DEBUG_ENABLED_SIGHT_ADJUSTMENT_RIFLE - #define DEBUG_ENABLED_SMAW_SPOTTINGRIFLE - #define DEBUG_ENABLED_TRACERS - #define DEBUG_ENABLED_TRACKING - #define DEBUG_ENABLED_VIEWBLOCK - #define DEBUG_ENABLED_VEHICLE - #define DEBUG_ENABLED_vehicle_damage - #define DEBUG_ENABLED_WEAPONREST - #define DEBUG_ENABLED_WOUNDS -*/ From 3ee18f9a3a5083f890ccc0c85799d48142f983be Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Sun, 12 Apr 2015 11:06:25 -0300 Subject: [PATCH 057/246] Readd CfgModuleCategories.hpp --- addons/main/CfgModuleCategories.hpp | 8 ++++++++ addons/main/config.cpp | 2 ++ 2 files changed, 10 insertions(+) create mode 100644 addons/main/CfgModuleCategories.hpp diff --git a/addons/main/CfgModuleCategories.hpp b/addons/main/CfgModuleCategories.hpp new file mode 100644 index 0000000000..5297ec1e99 --- /dev/null +++ b/addons/main/CfgModuleCategories.hpp @@ -0,0 +1,8 @@ +class CfgFactionClasses { + class NO_CATEGORY; + class ACE: NO_CATEGORY { + displayName = "ACE"; + priority = 2; + side = 7; + }; +}; diff --git a/addons/main/config.cpp b/addons/main/config.cpp index 59398052c4..eb136f84cf 100644 --- a/addons/main/config.cpp +++ b/addons/main/config.cpp @@ -585,3 +585,5 @@ class CfgSettings { */ }; }; + +#include "CfgModuleCategories.hpp" From 6062128436bde5488151815f5106862ff42fb69b Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Sun, 12 Apr 2015 18:01:29 +0200 Subject: [PATCH 058/246] Remove tourniquet option, add check pulse/response --- addons/medical/ACE_Medical_Treatments.hpp | 30 ++++++++++++++++------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/addons/medical/ACE_Medical_Treatments.hpp b/addons/medical/ACE_Medical_Treatments.hpp index 097292d9cc..5b5e0b6abd 100644 --- a/addons/medical/ACE_Medical_Treatments.hpp +++ b/addons/medical/ACE_Medical_Treatments.hpp @@ -55,15 +55,6 @@ class ACE_Medical_Actions { animationCaller = "AinvPknlMstpSnonWnonDnon_medic1"; litter[] = {}; }; - class Tourniquet: Bandage { - displayName = "$STR_ACE_Medical_Apply_Tourniquet"; - displayNameProgress = "$STR_ACE_Medical_Applying_Tourniquet"; - items[] = {"ACE_tourniquet"}; - treatmentTime = 6; - callbackSuccess = QUOTE(DFUNC(treatmentTourniquet)); - condition = QUOTE(!([ARR_2(_this select 1, _this select 2)] call FUNC(hasTourniquetAppliedTo))); - litter[] = {}; - }; class BodyBag: Bandage { displayName = "$STR_ACE_MEDICAL_PlaceInBodyBag"; displayNameProgress = "$STR_ACE_MEDICAL_PlacingInBodyBag"; @@ -80,6 +71,27 @@ class ACE_Medical_Actions { itemConsumed = 1; litter[] = {}; }; + class CheckPulse: Bandage { + displayName = ""; + displayNameProgress = ""; + treatmentLocations[] = {"All"}; + requiredMedic = 0; + treatmentTime = 2; + items[] = {}; + callbackSuccess = QUOTE(DFUNC(actionCheckPulse)); + callbackFailure = ""; + callbackProgress = ""; + animationPatient = ""; + animationCaller = ""; // TODO + itemConsumed = 0; + litter[] = {}; + }; + class CheckBloodPressure: CheckPulse { + callbackSuccess = QUOTE(DFUNC(actionCheckBloodPressure)); + }; + class CheckResponse: CheckPulse { + callbackSuccess = QUOTE(DFUNC(actionCheckResponse)); + }; }; class Advanced { From 664cc7077d2b4389339886e78992687479fdce7c Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Sun, 12 Apr 2015 18:06:57 +0200 Subject: [PATCH 059/246] Reduce blood loss rate --- addons/medical/functions/fnc_getBloodLoss.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/medical/functions/fnc_getBloodLoss.sqf b/addons/medical/functions/fnc_getBloodLoss.sqf index 6418d425e8..fb5a6d9e36 100644 --- a/addons/medical/functions/fnc_getBloodLoss.sqf +++ b/addons/medical/functions/fnc_getBloodLoss.sqf @@ -13,7 +13,7 @@ #include "script_component.hpp" -#define BLOODLOSSRATE_BASIC 0.4 +#define BLOODLOSSRATE_BASIC 0.08 private ["_totalBloodLoss","_tourniquets","_openWounds", "_value", "_cardiacOutput", "_internalWounds"]; // TODO Only use this calculation if medium or higher, otherwise use vanilla calculations (for basic medical). From b1c29f82c26d5e238707e329a6057a5105b2a4f0 Mon Sep 17 00:00:00 2001 From: nomisum Date: Sun, 12 Apr 2015 19:41:44 +0200 Subject: [PATCH 060/246] improved/added german translation Imho `Raketenlenksystem` is the best fitting german translation for missile guidance. `Raketenlenkung` sounds a bit too colloquial. --- addons/missileguidance/stringtable.xml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/addons/missileguidance/stringtable.xml b/addons/missileguidance/stringtable.xml index d64e3e31ab..9939c96294 100644 --- a/addons/missileguidance/stringtable.xml +++ b/addons/missileguidance/stringtable.xml @@ -7,7 +7,7 @@ Avanzada Misiles Orientación Avancée Missile orientation Asystent Missile - Erweiterte Missile Guidance + Erweitertes Raketenlenksystem Pokročilé řízení střel Avanzato Missile Guidance Avançado Missile Guidance @@ -19,7 +19,7 @@ - + Aktiviert erweitertes Raketenlenksystem und Auswahl von verschiedenen Raketen und Feuermodi Povoluje pokročilou mechaniku řízení střel. @@ -33,7 +33,7 @@ - + Hydra-70 DAGR Rakete Hydra-70 DAGR @@ -45,7 +45,7 @@ - + DAGR DAGR @@ -57,7 +57,7 @@ - + Hydra-70 DAGR lasergelenkte Rakete Hydra-70 DAGR laserem naváděná střela @@ -71,7 +71,7 @@ - + Hellfire II AGM-114K Rakete Hellfire II AGM-114K @@ -83,7 +83,7 @@ - + AGM-114K AGM-114K @@ -95,7 +95,7 @@ - + Hellfire II AGM-114K lasergelenkte Rakete Hellfire II AGM-114K laserem naváděná střela @@ -104,4 +104,4 @@ - \ No newline at end of file + From ca27e6eb5ab3a3dfdc1e09c19ac734eacce1c959 Mon Sep 17 00:00:00 2001 From: nomisum Date: Sun, 12 Apr 2015 19:52:37 +0200 Subject: [PATCH 061/246] fixed typo `Erweitertes Raketenlenksystem` shoud be a nominalization --- addons/missileguidance/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/missileguidance/stringtable.xml b/addons/missileguidance/stringtable.xml index 9939c96294..77e39e51f7 100644 --- a/addons/missileguidance/stringtable.xml +++ b/addons/missileguidance/stringtable.xml @@ -19,7 +19,7 @@ - Aktiviert erweitertes Raketenlenksystem und Auswahl von verschiedenen Raketen und Feuermodi + Aktiviert Erweitertes Raketenlenksystem und Auswahl von verschiedenen Raketen und Feuermodi Povoluje pokročilou mechaniku řízení střel. From 075b52c1ffd3a77c6f8ab4ff7b3ee4eba6a65b23 Mon Sep 17 00:00:00 2001 From: licht-im-Norden87 Date: Sun, 12 Apr 2015 22:53:02 +0200 Subject: [PATCH 062/246] Update stringtable.xml --- addons/missileguidance/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/missileguidance/stringtable.xml b/addons/missileguidance/stringtable.xml index d44d8c916d..d5332c2ee5 100644 --- a/addons/missileguidance/stringtable.xml +++ b/addons/missileguidance/stringtable.xml @@ -19,7 +19,7 @@ - Aktiviert die erweiterten Mechaniken für unterschiedliche Racketen und Feuermodi. + Aktiviert die erweiterten Mechaniken für unterschiedliche Raketen und Feuermodi. From dc5028275a159e4b3768a599a04612e7c38620e4 Mon Sep 17 00:00:00 2001 From: Nou Date: Sun, 12 Apr 2015 19:16:58 -0700 Subject: [PATCH 063/246] Seeker FOV implemented, fast FOV check. --- .../functions/fnc_seekerFindLaserSpot.sqf | 26 ++++++++++++++----- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/addons/laser/functions/fnc_seekerFindLaserSpot.sqf b/addons/laser/functions/fnc_seekerFindLaserSpot.sqf index 421748a681..41ea877739 100644 --- a/addons/laser/functions/fnc_seekerFindLaserSpot.sqf +++ b/addons/laser/functions/fnc_seekerFindLaserSpot.sqf @@ -4,8 +4,10 @@ * * Arguments: * 0: Position of seeker (ASL) - * 1: Seeker wavelength sensitivity range, [1550,1550] is common eye safe. - * 2: Seeker laser code. + * 1: Direction vector (will be normalized) + * 2: Seeker FOV in degrees + * 3: Seeker wavelength sensitivity range, [1550,1550] is common eye safe. + * 4: Seeker laser code. * * Return value: * Array, [Strongest compatible laser spot ASL pos, owner object] Nil array values if nothing found. @@ -17,9 +19,14 @@ private ["_pos", "_seekerWavelengths", "_seekerCode", "_spots", "_buckets", "_ex "_emitterWavelength", "_laserCode", "_divergence", "_laser", "_laserPos", "_laserDir", "_res", "_bucketPos", "_bucketList", "_c", "_forEachIndex", "_index", "_testPos", "_finalBuckets", "_largest", "_largestIndex", "_finalBucket", "_owners", "_avgX", "_avgY", "_avgZ", "_count", "_maxOwner", "_maxOwnerIndex", "_finalOwner"]; -_pos = _this select 0; -_seekerWavelengths = _this select 1; -_seekerCode = _this select 2; +_pos = _this select 0; +_dir = vectorNormalized (_this select 1); +_seekerFov = _this select 2; +_seekerWavelengths = _this select 3; +_seekerCode = _this select 4; + + +_seekerCos = cos _seekerFov; _spots = []; _buckets = []; @@ -57,8 +64,13 @@ _finalOwner = nil; _laserPos = _laser select 0; _laserDir = _laser select 1; _res = [_laserPos, _laserDir, _divergence] call FUNC(shootCone); - { - _spots pushBack [_x select 0, _owner]; + { + _testPoint = _x select 0; + _testPointVector = vectorNormalized (_testPoint vectorDiff _pos); + _testDotProduct = _dir vectorDotProduct _testPointVector; + if(_testDotProduct > _seekerCos) then { + _spots pushBack [_testPoint, _owner]; + }; } forEach (_res select 2); }; } forEach (GVAR(laserEmitters) select 1); From 4c74ff8717bebe98831cd18dc0ec4396674d2f47 Mon Sep 17 00:00:00 2001 From: Nou Date: Sun, 12 Apr 2015 19:49:14 -0700 Subject: [PATCH 064/246] FOV check made faster. --- .../functions/fnc_checkSeekerAngle.sqf | 29 ++++--------------- 1 file changed, 5 insertions(+), 24 deletions(-) diff --git a/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf b/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf index 7308ce1723..c649319af2 100644 --- a/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf +++ b/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf @@ -11,39 +11,20 @@ * Return value: * Boolean */ - - #define DEBUG_MODE_FULL + #include "script_component.hpp" -private["_seeker", "_targetPos", "_seekerMaxAngle", "_vectorTo", "_sensorPos", "_vertOk", "_horzOk", "_dir", "_headingPitch"]; +private["_seeker", "_targetPos", "_seekerMaxAngle", "_sensorPos", "_testPointVector", "_testDotProduct"]; _seeker = _this select 0; _targetPos = _this select 1; _seekerMaxAngle = _this select 2; -_vertOk = false; -_horzOk = false; - _sensorPos = getPosASL _seeker; -_vectorTo = _sensorPos vectorFromTo _targetPos; -_headingPitch = (vectorDir _seeker) call CBA_fnc_vect2polar; -_polarTo = _vectorTo call CBA_fnc_vect2polar; +_testPointVector = vectorNormalized (_targetPos vectorDiff _sensorPos); +_testDotProduct = (vectorNormalized (velocity _seeker)) vectorDotProduct _testPointVector; -_dir = _polarTo select 1; -_dir = _dir - (_headingPitch select 1); - -if (_dir < 0) then {_dir = _dir + 360}; -if (_dir > 360) then {_dir = _dir - 360}; - _vertOk = false; - _horzOk = false; -if(_dir < _angleFov || {_dir > (360-_angleFov)}) then { - _horzOk = true; -}; -if(abs((abs(_polarTo select 2))-(abs(_headingPitch select 2))) < _angleFov) then { - _vertOk = true; -}; - -if(!_vertOk || !_horzOk ) exitWith { +if(_testDotProduct < (cos _seekerMaxAngle) exitWith { false }; From b58598c6aace956a76fd3f79897e7115d9b02708 Mon Sep 17 00:00:00 2001 From: Nou Date: Sun, 12 Apr 2015 21:47:27 -0700 Subject: [PATCH 065/246] Woops, missing ) --- addons/missileguidance/functions/fnc_checkSeekerAngle.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf b/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf index c649319af2..e8bc1a16f5 100644 --- a/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf +++ b/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf @@ -24,7 +24,7 @@ _sensorPos = getPosASL _seeker; _testPointVector = vectorNormalized (_targetPos vectorDiff _sensorPos); _testDotProduct = (vectorNormalized (velocity _seeker)) vectorDotProduct _testPointVector; -if(_testDotProduct < (cos _seekerMaxAngle) exitWith { +if(_testDotProduct < (cos _seekerMaxAngle)) exitWith { false }; From ccc2124abe58be642310686d8dd719757beb90af Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Mon, 13 Apr 2015 11:53:15 +0300 Subject: [PATCH 066/246] Russian translation for addons/interaction Fix for addons/interaction translation. --- addons/interaction/stringtable.xml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index c1ec7ff6d9..7aa19c0af9 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -6,48 +6,56 @@ Interaktionen Interacciones Interakce + Взаимодействия Torso Torso Torso Trup + Торс Head Kopf Cabeza Hlava + Голова Left Arm Linker Arm Brazo izquierdo Levá paže + Левая рука Right Arm Rechter Arm Brazo derecho Pravá paže + Правая рука Left Leg Linkes Bein Pierna izquierda Levá noha + Левая нога Right Leg Rechtes Bein Pierna derecha Pravá hona + Правая нога Weapon Waffe Arma Zbraň + Оружие Interaction Menu @@ -393,7 +401,7 @@ Zostałeś klepnięty po ramieniu Vállonveregettek Někdo tě poklepal na PRAVÉ rameno - Вас похлопали по плечу + Вас похлопали по ПРАВОМУ плечу Você foi tocado no ombro Ti è stato dato un colpetto sulla spalla @@ -405,7 +413,7 @@ Zostałeś klepnięty po ramieniu Vállonveregettek Někdo tě poklepal na LEVÉ rameno. - Вас похлопали по плечу + Вас похлопали по ЛЕВОМУ плечу Você foi tocado no ombro. Ti è stato dato un colpetto sulla spalla From f94b4befef50ef1c4c82c64ec762e19fc72161be Mon Sep 17 00:00:00 2001 From: commy2 Date: Mon, 13 Apr 2015 13:04:23 +0200 Subject: [PATCH 067/246] initial commit --- addons/respawn/CfgVehicles.hpp | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/addons/respawn/CfgVehicles.hpp b/addons/respawn/CfgVehicles.hpp index f6b8fc64c2..4b763074c2 100644 --- a/addons/respawn/CfgVehicles.hpp +++ b/addons/respawn/CfgVehicles.hpp @@ -69,7 +69,9 @@ class CfgVehicles { }; // static - class ACE_Rallypoint_West : Flag_NATO_F { + class ACE_Rallypoint_West: Flag_NATO_F { + XEH_ENABLED; + author = "$STR_ACE_Common_ACETeam"; displayName = "Rallypoint West Base"; vehicleClass = QGVAR(Rallypoints); @@ -94,7 +96,9 @@ class CfgVehicles { }; }; - class ACE_Rallypoint_East : Flag_CSAT_F { + class ACE_Rallypoint_East: Flag_CSAT_F { + XEH_ENABLED; + author = "$STR_ACE_Common_ACETeam"; displayName = "Rallypoint East Base"; vehicleClass = QGVAR(Rallypoints); @@ -119,7 +123,9 @@ class CfgVehicles { }; }; - class ACE_Rallypoint_Independent : Flag_AAF_F { + class ACE_Rallypoint_Independent: Flag_AAF_F { + XEH_ENABLED; + author = "$STR_ACE_Common_ACETeam"; displayName = "Rallypoint Independent Base"; vehicleClass = QGVAR(Rallypoints); @@ -145,7 +151,9 @@ class CfgVehicles { }; // moveable - class ACE_RallypointExit_West : Flag_NATO_F { + class ACE_RallypointExit_West: Flag_NATO_F { + XEH_ENABLED; + author = "$STR_ACE_Common_ACETeam"; displayName = "Rallypoint West"; vehicleClass = QGVAR(Rallypoints); @@ -170,7 +178,9 @@ class CfgVehicles { }; }; - class ACE_RallypointExit_East : Flag_CSAT_F { + class ACE_RallypointExit_East: Flag_CSAT_F { + XEH_ENABLED; + author = "$STR_ACE_Common_ACETeam"; displayName = "Rallypoint East"; vehicleClass = QGVAR(Rallypoints); @@ -195,7 +205,9 @@ class CfgVehicles { }; }; - class ACE_RallypointExit_Independent : Flag_AAF_F { + class ACE_RallypointExit_Independent: Flag_AAF_F { + XEH_ENABLED; + author = "$STR_ACE_Common_ACETeam"; displayName = "Rallypoint Independent"; vehicleClass = QGVAR(Rallypoints); From 2d6b2f9a1a3b3ace5aa6ad80b2b1506a6e4aa6b6 Mon Sep 17 00:00:00 2001 From: jaynus Date: Mon, 13 Apr 2015 08:33:03 -0700 Subject: [PATCH 068/246] I had accidently commented out seeker FOV on the Titan rockets. --- addons/missileguidance/functions/fnc_seekerType_Optic.sqf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/missileguidance/functions/fnc_seekerType_Optic.sqf b/addons/missileguidance/functions/fnc_seekerType_Optic.sqf index 9539c2c8f6..74d3b0fc71 100644 --- a/addons/missileguidance/functions/fnc_seekerType_Optic.sqf +++ b/addons/missileguidance/functions/fnc_seekerType_Optic.sqf @@ -19,7 +19,7 @@ if(!isNil "_target") then { _foundTargetPos = getPosASL _target; }; -/* @TODO: This is seeker LOS and angle checks for LOAL only; LOBL does not need visual +// @TODO: This is seeker LOS and angle checks for LOAL only; LOBL does not need visual _angleFov = _seekerParams select 0; _angleOkay = [_projectile, _foundTargetPos, _angleFov] call FUNC(checkSeekerAngle); @@ -34,7 +34,7 @@ if(!_angleOkay || !_losOkay) then { _foundTargetPos = _sensorPos vectorAdd ((velocity _projectile) vectorMultiply 5); } else { TRACE_2("", _target, _foundTargetPos); - + private["_projectileSpeed", "_distanceToTarget", "_eta", "_adjustVelocity"]; // @TODO: Configurable lead for seekers _projectileSpeed = (vectorMagnitude velocity _projectile); _distanceToTarget = (getPosASL _projectile) vectorDistance _foundTargetPos; @@ -45,5 +45,5 @@ if(!_angleOkay || !_losOkay) then { _foundTargetPos = _foundTargetPos vectorAdd _adjustVelocity; }; -*/ + _foundTargetPos; \ No newline at end of file From c66f99faac445ccfa63e13861f454291ae665393 Mon Sep 17 00:00:00 2001 From: jaynus Date: Mon, 13 Apr 2015 08:59:36 -0700 Subject: [PATCH 069/246] Fixed: Locking reticles would lock out-of-order. Fixed: Locking was hard. Fixes #539 --- addons/javelin/functions/fnc_onOpticDraw.sqf | 41 +++++++++++--------- addons/javelin/script_component.hpp | 1 + addons/missileguidance/CfgAmmo.hpp | 4 +- 3 files changed, 26 insertions(+), 20 deletions(-) diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index 2412c2d5a1..e88310c6af 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -53,9 +53,11 @@ if ((velocity ACE_player) distance [0,0,0] > 0.5 && {cameraView == "GUNNER"} && [] call FUNC(showFireMode); _range = parseNumber (ctrlText __JavelinIGUIRangefinder); +TRACE_1("Viewing range", _range); if (_range > 50 && {_range < 2500}) then { _pos = positionCameraToWorld [0,0,_range]; _targetArray = _pos nearEntities ["AllVehicles", _range/25]; + TRACE_1("Searching at range", _targetArray); if (count (_targetArray) > 0) then { _newTarget = _targetArray select 0; }; @@ -77,6 +79,21 @@ _offsetY = __OffsetY; __JavelinIGUITargeting ctrlShow true; __JavelinIGUITargetingConstrains ctrlShow true; +_zamerny = if (_currentTarget isKindOf "CAManBase") then {_currentTarget selectionPosition "body"} else {_currentTarget selectionPosition "zamerny"}; +_randomPosWithinBounds = [(_zamerny select 0) + 1 - (random 2.0),(_zamerny select 1) + 1 - (random 2.0),(_zamerny select 2) + 0.5 - (random 1.0)]; + +_apos = worldToScreen (_currentTarget modelToWorld _randomPosWithinBounds); + +_aposX = 0; +_aposY = 0; +if (count _apos < 2) then { + _aposX = 1; + _aposY = 0; +} else { + _aposX = (_apos select 0) + _offsetX; + _aposY = (_apos select 1) + _offsetY; +}; + if (isNull _newTarget) then { // No targets found _currentTarget = objNull; @@ -117,26 +134,11 @@ if (isNull _newTarget) then { __JavelinIGUITargetingConstrains ctrlShow false; __JavelinIGUITargetingGate ctrlShow true; __JavelinIGUITargetingLines ctrlShow true; - - _zamerny = if (_currentTarget isKindOf "CAManBase") then {_currentTarget selectionPosition "body"} else {_currentTarget selectionPosition "zamerny"}; - _randomPosWithinBounds = [(_zamerny select 0) + 1 - (random 2.0),(_zamerny select 1) + 1 - (random 2.0),(_zamerny select 2) + 0.5 - (random 1.0)]; - _apos = worldToScreen (_currentTarget modelToWorld _randomPosWithinBounds); - - _aposX = 0; - _aposY = 0; - if (count _apos < 2) then { - _aposX = 1; - _aposY = 0; - } else { - _aposX = (_apos select 0) + _offsetX; - _aposY = (_apos select 1) + _offsetY; - }; - // Move target marker to coords. - __JavelinIGUITargetingLineV ctrlSetPosition [_aposX,ctrlPosition __JavelinIGUITargetingLineV select 1]; - __JavelinIGUITargetingLineH ctrlSetPosition [ctrlPosition __JavelinIGUITargetingLineH select 0,_aposY]; - {_x ctrlCommit __TRACKINTERVAL} forEach [__JavelinIGUITargetingLineH,__JavelinIGUITargetingLineV]; + //__JavelinIGUITargetingLineV ctrlSetPosition [_aposX,ctrlPosition __JavelinIGUITargetingLineV select 1]; + //__JavelinIGUITargetingLineH ctrlSetPosition [ctrlPosition __JavelinIGUITargetingLineH select 0,_aposY]; + //{_x ctrlCommit __TRACKINTERVAL} forEach [__JavelinIGUITargetingLineH,__JavelinIGUITargetingLineV]; _boundsInput = if (_currentTarget isKindOf "CAManBase") then { [_currentTarget,[-1,-1,-2],_currentTarget selectionPosition "body"]; @@ -169,6 +171,7 @@ if (isNull _newTarget) then { } else { __JavelinIGUITargeting ctrlShow true; __JavelinIGUITargetingGate ctrlShow true; + __JavelinIGUITargetingConstrains ctrlShow true; __JavelinIGUITargetingLines ctrlShow false; ACE_player setVariable["ace_missileguidance_target", nil, false]; @@ -186,6 +189,8 @@ if (isNull _newTarget) then { _maxX = ((_bpos select 2) + _offsetX) min (_constraintRight - 0.025*(3/4)*SafezoneH); _maxY = ((_bpos select 3) + _offsetY) min (_constraintBottom - 0.025*SafezoneH); + TRACE_4("", _boundsInput, _bpos, _minX, _minY); + __JavelinIGUITargetingGateTL ctrlSetPosition [_minX,_minY]; __JavelinIGUITargetingGateTR ctrlSetPosition [_maxX,_minY]; __JavelinIGUITargetingGateBL ctrlSetPosition [_minX,_maxY]; diff --git a/addons/javelin/script_component.hpp b/addons/javelin/script_component.hpp index 6aa34b6bc8..7f3f345837 100644 --- a/addons/javelin/script_component.hpp +++ b/addons/javelin/script_component.hpp @@ -25,6 +25,7 @@ #define __JavelinIGUITop (__JavelinIGUI displayCtrl 699001) #define __JavelinIGUIDir (__JavelinIGUI displayCtrl 699002) #define __JavelinIGUINFOV (__JavelinIGUI displayCtrl 699003) +#define __JavelinIGUIRangefinder (__JavelinIGUI displayCtrl 151) // Constrains #define __JavelinIGUITargetingConstrains (__JavelinIGUI displayCtrl 699100) diff --git a/addons/missileguidance/CfgAmmo.hpp b/addons/missileguidance/CfgAmmo.hpp index 5aaee5ff2f..3a9e5e0e16 100644 --- a/addons/missileguidance/CfgAmmo.hpp +++ b/addons/missileguidance/CfgAmmo.hpp @@ -127,10 +127,10 @@ class CfgAmmo { defaultSeekerLockMode = "LOBL"; seekerLockModes[] = { "LOBL" }; - seekerAngle = 90; // Angle in front of the missile which can be searched + seekerAngle = 180; // Angle in front of the missile which can be searched seekerAccuracy = 1; // seeker accuracy multiplier - seekerMinRange = 1; + seekerMinRange = 0; seekerMaxRange = 2500; // Range from the missile which the seeker can visually search // Attack profile type selection From 6aa9f5bcbceba8fd98a5879969628f3d2a42f836 Mon Sep 17 00:00:00 2001 From: jaynus Date: Mon, 13 Apr 2015 09:01:18 -0700 Subject: [PATCH 070/246] NFOV/WFOV --- addons/javelin/functions/fnc_onOpticDraw.sqf | 13 +++++++++---- addons/javelin/script_component.hpp | 1 + 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index e88310c6af..59f8d4faac 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -1,4 +1,4 @@ -//#define DEBUG_MODE_FULL +#define DEBUG_MODE_FULL #include "script_component.hpp" TRACE_1("enter", _this); @@ -94,13 +94,20 @@ if (count _apos < 2) then { _aposY = (_apos select 1) + _offsetY; }; +if((call CBA_fnc_getFoV) select 1 > 9) then { + __JavelinIGUINFOV ctrlSetTextColor __ColorGreen; + __JavelinIGUIWFOV ctrlSetTextColor __ColorGray; +} else { + __JavelinIGUINFOV ctrlSetTextColor __ColorGray; + __JavelinIGUIWFOV ctrlSetTextColor __ColorGreen; +}; + if (isNull _newTarget) then { // No targets found _currentTarget = objNull; _lockTime = 0; __JavelinIGUISeek ctrlSetTextColor __ColorGray; - __JavelinIGUINFOV ctrlSetTextColor __ColorGreen; __JavelinIGUITargeting ctrlShow false; __JavelinIGUITargetingGate ctrlShow false; __JavelinIGUITargetingLines ctrlShow false; @@ -128,7 +135,6 @@ if (isNull _newTarget) then { TRACE_2("LOCKED!", _currentTarget, _lockTime); __JavelinIGUISeek ctrlSetTextColor __ColorGreen; - __JavelinIGUINFOV ctrlSetTextColor __ColorNull; __JavelinIGUITargeting ctrlShow true; __JavelinIGUITargetingConstrains ctrlShow false; @@ -210,7 +216,6 @@ if (isNull _newTarget) then { ACE_player setVariable["ace_missileguidance_target", nil, false]; __JavelinIGUISeek ctrlSetTextColor __ColorGray; - __JavelinIGUINFOV ctrlSetTextColor __ColorGray; __JavelinIGUITargeting ctrlShow false; __JavelinIGUITargetingGate ctrlShow false; __JavelinIGUITargetingLines ctrlShow false; diff --git a/addons/javelin/script_component.hpp b/addons/javelin/script_component.hpp index 7f3f345837..e313bf8347 100644 --- a/addons/javelin/script_component.hpp +++ b/addons/javelin/script_component.hpp @@ -25,6 +25,7 @@ #define __JavelinIGUITop (__JavelinIGUI displayCtrl 699001) #define __JavelinIGUIDir (__JavelinIGUI displayCtrl 699002) #define __JavelinIGUINFOV (__JavelinIGUI displayCtrl 699003) +#define __JavelinIGUIWFOV (__JavelinIGUI displayCtrl 1004) #define __JavelinIGUIRangefinder (__JavelinIGUI displayCtrl 151) // Constrains From 3e7c8ca6346684a904b1b89c71297c7bfe50e7dd Mon Sep 17 00:00:00 2001 From: jaynus Date: Mon, 13 Apr 2015 09:03:19 -0700 Subject: [PATCH 071/246] remove optic debug. --- addons/javelin/functions/fnc_onOpticDraw.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index 59f8d4faac..1694702f98 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -1,4 +1,4 @@ -#define DEBUG_MODE_FULL +//#define DEBUG_MODE_FULL #include "script_component.hpp" TRACE_1("enter", _this); From e5d8fe2634edf1dec17592140bd14c713024ad22 Mon Sep 17 00:00:00 2001 From: jaynus Date: Mon, 13 Apr 2015 09:24:28 -0700 Subject: [PATCH 072/246] Guidance timing per FPS fixes. --- .../functions/fnc_attackProfile_TOP.sqf | 4 +++- .../functions/fnc_guidancePFH.sqf | 17 +++++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf index 767f5df351..472d874519 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf @@ -26,16 +26,18 @@ if( ((ASLtoATL _projectilePos) select 2) < 140 && _distanceToShooter < 50) then _addHeight = _addHeight vectorAdd [0,0,_distanceToTarget]; } else { // If we are below the target, increase the climbing arc - if((_projectilePos select 2) < (_seekerTargetPos select 2) + 140 && _distanceToTarget > 100) then { + if((_projectilePos select 2) < (_seekerTargetPos select 2) + 140 && _distanceToTarget > 140) then { _addHeight = _addHeight vectorAdd [0,0, ((_seekerTargetPos select 2) - (_projectilePos select 2))+50]; }; }; // Handle arcing terminal low for high decent if( (_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget < 140) then { + _addHeight = [0,0,0]; _addHeight = _addHeight vectorDiff [0,0, ((_projectilePos select 2) - (_seekerTargetPos select 2)) * 0.5]; } else { if((_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget > 140) then { + _addHeight = [0,0,0]; _addHeight = _addHeight vectorAdd [0,0, ((_projectilePos select 2) - (_seekerTargetPos select 2)) * 0.02]; }; }; diff --git a/addons/missileguidance/functions/fnc_guidancePFH.sqf b/addons/missileguidance/functions/fnc_guidancePFH.sqf index 7041201ded..fb9f206be9 100644 --- a/addons/missileguidance/functions/fnc_guidancePFH.sqf +++ b/addons/missileguidance/functions/fnc_guidancePFH.sqf @@ -19,7 +19,11 @@ _seekerParams = _args select 3; _stateParams = _args select 4; _lastRunTime = _stateParams select 0; + _runtimeDelta = diag_tickTime - _lastRunTime; +_adjustTime = 1/accTime; +_adjustTime = _adjustTime * (_runtimeDelta / TIMESTEP_FACTOR); +TRACE_4("Adjust timing", 1/accTime, _adjustTime, _runtimeDelta, (_runtimeDelta / TIMESTEP_FACTOR) ); _config = configFile >> "CfgAmmo" >> _ammo >> "ACE_MissileGuidance"; @@ -33,8 +37,8 @@ if(!isNil "_seekerTargetPos") then { _profileAdjustedTargetPos = [_seekerTargetPos,_args] call FUNC(doAttackProfile); - _minDeflection = _flightParams select 0; - _maxDeflection = _flightParams select 1; + _minDeflection = ((_flightParams select 0) - ((_flightParams select 0) * _adjustTime)) max 0; + _maxDeflection = (_flightParams select 1) * _adjustTime; _incDeflection = _flightParams select 2; _yVec = vectorDir _projectile; @@ -72,15 +76,12 @@ if(!isNil "_seekerTargetPos") then { #endif if(accTime > 0) then { - private["_adjustTime", "_outVector", "_vectorTo"]; - _adjustTime = 1/accTime; - _adjustTime = _adjustTime * (_runtimeDelta / TIMESTEP_FACTOR); - TRACE_4("Adjust timing", 1/accTime, _adjustTime, _runtimeDelta, (_runtimeDelta / TIMESTEP_FACTOR) ); - + private["_outVector", "_vectorTo"]; + // @TODO: Apply velocity multiplier to yaw/pitch. Basically, it can adjust faster at lower speeds //_adjustDeflection = (vectorMagnitude velocity _projectile); - _outVector = [_projectile, [_xVec, _yVec, _zVec], [_yaw, _adjustTime, _pitch]] call EFUNC(common,translateToModelSpace); + _outVector = [_projectile, [_xVec, _yVec, _zVec], [_yaw, 1, _pitch]] call EFUNC(common,translateToModelSpace); _vectorTo = _projectilePos vectorFromTo _outVector; _projectile setVectorDirAndUp [_vectorTo, vectorUp _projectile]; From ff858c1194790c96f0e9257f32895e9ee8098484 Mon Sep 17 00:00:00 2001 From: jaynus Date: Mon, 13 Apr 2015 09:56:15 -0700 Subject: [PATCH 073/246] Begin stateful guidance. Re-write of TOP down because it wasnt even running. LIN was default. but it was broken anyways. --- addons/missileguidance/CfgAmmo.hpp | 2 +- .../functions/fnc_attackProfile_TOP.sqf | 25 +++---------------- .../missileguidance/functions/fnc_fired.sqf | 2 +- .../functions/fnc_guidancePFH.sqf | 4 +-- 4 files changed, 8 insertions(+), 25 deletions(-) diff --git a/addons/missileguidance/CfgAmmo.hpp b/addons/missileguidance/CfgAmmo.hpp index 3a9e5e0e16..050a23f5fd 100644 --- a/addons/missileguidance/CfgAmmo.hpp +++ b/addons/missileguidance/CfgAmmo.hpp @@ -134,7 +134,7 @@ class CfgAmmo { seekerMaxRange = 2500; // Range from the missile which the seeker can visually search // Attack profile type selection - defaultAttackProfile = "LIN"; + defaultAttackProfile = "TOP"; attackProfiles[] = { "TOP", "LIN" }; }; }; diff --git a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf index 472d874519..ef59890b99 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf @@ -1,15 +1,17 @@ -//#define DEBUG_MODE_FULL +#define DEBUG_MODE_FULL #include "script_component.hpp" EXPLODE_7_PVT(((_this select 1) select 0),_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); private["_targetPos", "_projectilePos", "_target", "_seekerTargetPos", "_launchParams", "_targetLaunchParams"]; -private["_distanceToTarget", "_distanceToShooter", "_addHeight", "_returnTargetPos"]; +private["_distanceToTarget", "_distanceToShooter", "_addHeight", "_returnTargetPos", "_state"]; _seekerTargetPos = _this select 0; _launchParams = _this select 1; _target = _launchParams select 0; _targetLaunchParams = _launchParams select 1; +_state = _this select 2; + _shooterPos = getPosASL _shooter; _projectilePos = getPosASL _projectile; @@ -21,26 +23,7 @@ TRACE_2("", _distanceToTarget, _distanceToShooter); // Add height depending on distance for compensate _addHeight = [0,0,0]; -// Always climb an arc on initial launch if we are close to the round -if( ((ASLtoATL _projectilePos) select 2) < 140 && _distanceToShooter < 50) then { - _addHeight = _addHeight vectorAdd [0,0,_distanceToTarget]; -} else { - // If we are below the target, increase the climbing arc - if((_projectilePos select 2) < (_seekerTargetPos select 2) + 140 && _distanceToTarget > 140) then { - _addHeight = _addHeight vectorAdd [0,0, ((_seekerTargetPos select 2) - (_projectilePos select 2))+50]; - }; -}; -// Handle arcing terminal low for high decent -if( (_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget < 140) then { - _addHeight = [0,0,0]; - _addHeight = _addHeight vectorDiff [0,0, ((_projectilePos select 2) - (_seekerTargetPos select 2)) * 0.5]; -} else { - if((_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget > 140) then { - _addHeight = [0,0,0]; - _addHeight = _addHeight vectorAdd [0,0, ((_projectilePos select 2) - (_seekerTargetPos select 2)) * 0.02]; - }; -}; TRACE_3("", _distanceToTarget,_distanceToShooter,_addHeight); diff --git a/addons/missileguidance/functions/fnc_fired.sqf b/addons/missileguidance/functions/fnc_fired.sqf index bb162e1f09..0622ac9342 100644 --- a/addons/missileguidance/functions/fnc_fired.sqf +++ b/addons/missileguidance/functions/fnc_fired.sqf @@ -68,7 +68,7 @@ TRACE_4("Beginning ACE guidance system",_target,_ammo,_seekerType,_attackProfile getNumber ( _config >> "seekerAccuracy" ), getNumber ( _config >> "seekerMaxRange" ) ], - [ diag_tickTime ] + [ diag_tickTime, [], [] ] ] ] call cba_fnc_addPerFrameHandler; diff --git a/addons/missileguidance/functions/fnc_guidancePFH.sqf b/addons/missileguidance/functions/fnc_guidancePFH.sqf index fb9f206be9..8596e81924 100644 --- a/addons/missileguidance/functions/fnc_guidancePFH.sqf +++ b/addons/missileguidance/functions/fnc_guidancePFH.sqf @@ -32,10 +32,10 @@ if(!alive _projectile || isNull _projectile || isNull _shooter) exitWith { }; // TODO: placeholder for "last seek target position" -_seekerTargetPos = [ [0,0,0], _args] call FUNC(doSeekerSearch); +_seekerTargetPos = [ [0,0,0], _args, (_stateParams select 1)] call FUNC(doSeekerSearch); if(!isNil "_seekerTargetPos") then { - _profileAdjustedTargetPos = [_seekerTargetPos,_args] call FUNC(doAttackProfile); + _profileAdjustedTargetPos = [_seekerTargetPos,_args, (_stateParams select 2)] call FUNC(doAttackProfile); _minDeflection = ((_flightParams select 0) - ((_flightParams select 0) * _adjustTime)) max 0; _maxDeflection = (_flightParams select 1) * _adjustTime; From 3c3f6ba4c3be181fddf5620f8b634ef5df4b784a Mon Sep 17 00:00:00 2001 From: Harakhti Date: Mon, 13 Apr 2015 19:28:58 +0200 Subject: [PATCH 074/246] Translation: A to I Some parts filled out, other parts corrected or stylized. --- addons/aircraft/stringtable.xml | 96 +- addons/attach/stringtable.xml | 360 +++---- addons/captives/stringtable.xml | 338 +++---- addons/common/stringtable.xml | 19 +- addons/disposable/stringtable.xml | 68 +- addons/dragging/stringtable.xml | 96 +- addons/explosives/stringtable.xml | 996 ++++++++++--------- addons/fcs/stringtable.xml | 147 +-- addons/frag/stringtable.xml | 24 +- addons/goggles/stringtable.xml | 55 +- addons/grenades/stringtable.xml | 487 ++++----- addons/hearing/stringtable.xml | 215 ++-- addons/interact_menu/stringtable.xml | 82 +- addons/interaction/stringtable.xml | 1381 +++++++++++++------------- addons/inventory/stringtable.xml | 37 +- 15 files changed, 2227 insertions(+), 2174 deletions(-) diff --git a/addons/aircraft/stringtable.xml b/addons/aircraft/stringtable.xml index 4d1c49fff6..fb44395e51 100644 --- a/addons/aircraft/stringtable.xml +++ b/addons/aircraft/stringtable.xml @@ -1,50 +1,50 @@  - + - - - Burst - Feuerstoß - Ráfaga - Seria - Dávka - Rafale - Очередь - Sorozat - Rajada - Raffica - - - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - XM301 - - - Open Cargo Door - Laderampe öffnen - Abrir compuerta de carga - Ourvir Rampe Cargo - Otwórz drzwi ładowni - Otevřít nákladní prostor - Rámpát kinyitni - Открыть грузовой отсек - - - Close Cargo Door - Laderampe schließen - Cerrar compuerta de carga - Fermer Rampe Cargo - Zamknij drzwi ładowni - Zavřít nákladní prostor - Rámpát zárni - Закрыть грузовой отсек - - - + + + Burst + Feuerstoß + Ráfaga + Seria + Dávka + Rafale + Очередь + Sorozat + Rajada + Raffica + + + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + XM301 + + + Open Cargo Door + Laderampe öffnen + Abrir compuerta de carga + Ourvir Rampe Cargo + Otwórz drzwi ładowni + Otevřít nákladní prostor + Rakodórámpa nyitása + Открыть грузовой отсек + + + Close Cargo Door + Laderampe schließen + Cerrar compuerta de carga + Fermer Rampe Cargo + Zamknij drzwi ładowni + Zavřít nákladní prostor + Rakodórámpa zárása + Закрыть грузовой отсек + + + \ No newline at end of file diff --git a/addons/attach/stringtable.xml b/addons/attach/stringtable.xml index 6db96b7608..b239724c31 100644 --- a/addons/attach/stringtable.xml +++ b/addons/attach/stringtable.xml @@ -1,181 +1,183 @@  + - - - Attach item >> - Gegenstand befestigen >> - Acoplar objeto >> - Przyczep przedmiot >> - Attacher l'objet >> - Připnout předmět >> - Acoplar item >> - Attacca l'oggetto >> - Tárgy hozzácsatolása >> - Добавить приспособления - - - Attach - Befestigen - Acoplar - Przyczep - Attacher - Připnout - Acoplar - Attacca - Hozzácsatolás - Присоединить - - - Detach item - Gegenstand entfernen - Quitar objeto - Odczep przedmiot - Détacher l'objet - Odepnout předmět - Separar item - Stacca l'oggetto - Tárgy lecsatolása - Отсоединить - - - IR Strobe Attached - IR-Stroboskop befestigt - Marcador IR acoplado - Przyczepiono stroboskop IR - Strobe IR attaché - IR Značkovač připnutý - Marcador IV Acoplado - Strobo IR attaccata - Infravörös jeladó hozzácsatolva - ИК-маяк присоединён - - - IR Strobe Detached - IR-Stroboskop entfernt - Marcador IR quitado - Odczepiono stroboskop IR - Strobe IR détaché - IR Značkovač odepnutý - Marcador IV Separado - Strobo IR staccata - Infravörös jeladó lecsatolva - ИК-маяк отсоединён - - - IR Grenade Attached - IR-Granate befestigt - Granada IR acoplada - Przyczepiono granat IR - Grenade IR attachée - IR Granát připnutý - Granada IV Acoplada - Granata IR attaccata - Infravörös gránát hozzácsatolva - ИК-граната присоединена - - - IR Grenade Detached - IR-Granate entfernt - Granada IR quitada - Odczepiono granat IR - Grenade IR détachée - IR Granát odepnutý - Granada IV Separada - Granata IR staccata - Infravörös gránát lecsatolva - ИК-граната отсоединена - - - Chemlight Attached - Leuchtstab befestigt - Barra de luz acoplada - Przyczepiono światło chemiczne - Chemlight attaché - Chemické světlo připnuto - Chemlight Acoplada - Chemlight attaccata - Chemlight hozzácsatolva - Химсвет присоединён - - - Chemlight Detached - Leuchtstab entfernt - Barra de luz quitada - Odczepiono światło chemiczne - Chemlight détaché - Chemické světlo odepnuto - Chemlight Separada - Chemlight staccata - Chemlight hozzácsatolva - Химсвет отсоединён - - - No inventory space - Kein Platz im Inventar - Sin espacio en inventario - Brak miejsca w ekwipunku - Pas de place dans l'inventaire - Není místo v inventáři - Sem espaço no inventário - Non hai più spazio - Nincs több hely - В инвентаре нет места - - - IR Strobe - IR-Stroboskop - Marcador IR - Stroboskop IR - Strobe IR - IR Značkovač - Marcador IV - Strobo IR - Infravörös jeladó - ИК-маяк - - - IR Strobe allows you to signal your position through a pulsating beacon only visible with NVGs. - Das IR-Stroboskop erlaubt es dir deine Position mit einem blinkenden Leuchtfeuer zu signalisieren, welches nur mit Nachtsichtgerät zu erkennen ist. - Stroboskop światła podczerwieni umożliwia oznaczenie swojej pozycji pulsacyjnym światłem widocznym tylko przez optykę noktowizyjną i gogle noktowizyjne. - El Marcador IR permite señalizar su posisición a través de una baliza visible solo a través de dispositivos de visión nocturna. - Le Strobe IR permet de signaler votre position grace à un clignotement visible par des JVN. - IR Značkovač je Infračerveně zářící stroboskop umožňující signalizaci vaší pozice díky blikajícímu světlu, které je vidět pouze při užití noktovizoru. - O Marcador IV permite que você sinalize sua posição através de um pulso visível somente com equipamento de visão noturna. - La Strobo IR è una luce stroboscopica che ti permette di segnalare la tua posizione grazie all'emissione di impulsi ad infrarossi visibili solo con i visori notturni. - Az infravörös jeladóval megjelölheted a helyzetedet úgy, hogy annak pulzáló fénye csak éjjellátó készülékkel látható. - ИК-маяк позволяет сигнализировать о своём местоположении через пульсирующий свет, видимый только через ПНВ. - - - Place - Platzieren - Colocar - Umieść - Placer - Položit - Colocar - Posiziona - Elhelyez - Установить - - - Cancel - Abbrechen - Cancelar - Anuluj - Annuler - Zrušit - Cancelar - Annulla - Mégse - Отмена - - - Attach Failed - Échec du Attacher - Befestigen fehlgeschlagen - Соединение прервано - Error al acoplar - Připnutí selhalo - - - + + + Attach item >> + Gegenstand befestigen >> + Acoplar objeto >> + Przyczep przedmiot >> + Attacher l'objet >> + Připnout předmět >> + Acoplar item >> + Attacca l'oggetto >> + Tárgy hozzácsatolása >> + Добавить приспособления + + + Attach + Befestigen + Acoplar + Przyczep + Attacher + Připnout + Acoplar + Attacca + Hozzácsatolás + Присоединить + + + Detach item + Gegenstand entfernen + Quitar objeto + Odczep przedmiot + Détacher l'objet + Odepnout předmět + Separar item + Stacca l'oggetto + Tárgy lecsatolása + Отсоединить + + + IR Strobe Attached + IR-Stroboskop befestigt + Marcador IR acoplado + Przyczepiono stroboskop IR + Strobe IR attaché + IR Značkovač připnutý + Marcador IV Acoplado + Strobo IR attaccata + Infravörös jeladó hozzácsatolva + ИК-маяк присоединён + + + IR Strobe Detached + IR-Stroboskop entfernt + Marcador IR quitado + Odczepiono stroboskop IR + Strobe IR détaché + IR Značkovač odepnutý + Marcador IV Separado + Strobo IR staccata + Infravörös jeladó lecsatolva + ИК-маяк отсоединён + + + IR Grenade Attached + IR-Granate befestigt + Granada IR acoplada + Przyczepiono granat IR + Grenade IR attachée + IR Granát připnutý + Granada IV Acoplada + Granata IR attaccata + Infravörös gránát hozzácsatolva + ИК-граната присоединена + + + IR Grenade Detached + IR-Granate entfernt + Granada IR quitada + Odczepiono granat IR + Grenade IR détachée + IR Granát odepnutý + Granada IV Separada + Granata IR staccata + Infravörös gránát lecsatolva + ИК-граната отсоединена + + + Chemlight Attached + Leuchtstab befestigt + Barra de luz acoplada + Przyczepiono światło chemiczne + Chemlight attaché + Chemické světlo připnuto + Chemlight Acoplada + Chemlight attaccata + Chemlight hozzácsatolva + Химсвет присоединён + + + Chemlight Detached + Leuchtstab entfernt + Barra de luz quitada + Odczepiono światło chemiczne + Chemlight détaché + Chemické světlo odepnuto + Chemlight Separada + Chemlight staccata + Chemlight hozzácsatolva + Химсвет отсоединён + + + No inventory space + Kein Platz im Inventar + Sin espacio en inventario + Brak miejsca w ekwipunku + Pas de place dans l'inventaire + Není místo v inventáři + Sem espaço no inventário + Non hai più spazio + Nincs több hely + В инвентаре нет места + + + IR Strobe + IR-Stroboskop + Marcador IR + Stroboskop IR + Strobe IR + IR Značkovač + Marcador IV + Strobo IR + Infravörös jeladó + ИК-маяк + + + IR Strobe allows you to signal your position through a pulsating beacon only visible with NVGs. + Das IR-Stroboskop erlaubt es dir deine Position mit einem blinkenden Leuchtfeuer zu signalisieren, welches nur mit Nachtsichtgerät zu erkennen ist. + Stroboskop światła podczerwieni umożliwia oznaczenie swojej pozycji pulsacyjnym światłem widocznym tylko przez optykę noktowizyjną i gogle noktowizyjne. + El Marcador IR permite señalizar su posisición a través de una baliza visible solo a través de dispositivos de visión nocturna. + Le Strobe IR permet de signaler votre position grace à un clignotement visible par des JVN. + IR Značkovač je Infračerveně zářící stroboskop umožňující signalizaci vaší pozice díky blikajícímu světlu, které je vidět pouze při užití noktovizoru. + O Marcador IV permite que você sinalize sua posição através de um pulso visível somente com equipamento de visão noturna. + La Strobo IR è una luce stroboscopica che ti permette di segnalare la tua posizione grazie all'emissione di impulsi ad infrarossi visibili solo con i visori notturni. + Az infravörös jeladóval megjelölheted a helyzetedet úgy, hogy annak pulzáló fénye csak éjjellátó készülékkel látható. + ИК-маяк позволяет сигнализировать о своём местоположении через пульсирующий свет, видимый только через ПНВ. + + + Place + Platzieren + Colocar + Umieść + Placer + Položit + Colocar + Posiziona + Elhelyez + Установить + + + Cancel + Abbrechen + Cancelar + Anuluj + Annuler + Zrušit + Cancelar + Annulla + Mégse + Отмена + + + Attach Failed + Échec du Attacher + Befestigen fehlgeschlagen + Соединение прервано + Error al acoplar + Připnutí selhalo + Hozzácsatolás sikertelen + + + \ No newline at end of file diff --git a/addons/captives/stringtable.xml b/addons/captives/stringtable.xml index 0b0692876b..d2caa606a3 100644 --- a/addons/captives/stringtable.xml +++ b/addons/captives/stringtable.xml @@ -1,168 +1,174 @@  + - - - Take Prisoner - Gefangen nehmen - Tomar prisionero - Capturer le prisonnier - Weź więźnia - Zajmout Osobu - Arresta il Prigioniero - Tomar Prisioneiro - Foglyul ejtés - Взять в плен - - - Free Prisoner - Gefangenen freilassen - Liberar prisionero - Wypuść więźnia - Libérer le prisonnier - Osvobodit Zajatce - Libera il Prigioniero - Libertar Prisioneiro - Fogoly szabadon elengedése - Освободить пленника - - - Escort Prisoner - Gefangenen eskortieren - Escoltar prisionero - Eskortuj więźnia - Escorter le prisonnier - Eskortovat Zajatce - Scorta il Prigioniero - Escoltar Prisioneiro - Fogoly kísérése - Конвоировать пленника - - - Release Prisoner - Gefangenen loslassen - Soltar prisionero - Anuluj eskortowanie - Relâcher le prisonnier - Uvolnit Zajatce - Rilascia il Prigioniero - Largar Prisioneiro - Fogoly elengedése - Прекратить конвоирование - - - You need to take him as prisoner first! - Du musst ihn zuerst gefangen nehmen. - Necesitas hacerle prisionero primero! - Najpierw musisz wziąć go jako więźnia! - Vous devez d'abord le capturer! - Musíš ho nejdříve zajmout! - Prima devi arrestarlo! - Você deve tomá-lo como prisioneiro primeiro! - Először foglyul kell ejtened! - Вы должны сначала взять его в плен! - - - Load Captive - Gefangenen einladen - Cargar prisionero - Embarquer le prisonnier - Załaduj więźnia - Naložit zajatce - Fogoly berakása - Загрузить пленного - Embarcar Prisioneiro - - - Unload Captive - Gefangenen ausladen - Descargar prisionero - Débarquer le prisonnier - Wyładuj więźnia - Vyložit zajatce - Fogoly kivevése - Выгрузить пленного - Desembarcar Prisioneiro - - - Cable Tie - Kabelbinder - Opaska zaciskowa - Precinto - Serflex - Stahovací Pásek - Algema Plástica - Fascietta - Gyorskötöző - Кабельная стяжка - - - Cable ties that allow you to restrain prisoners. - Kabelbinder ermöglichen es, Gefangene zu fesseln. - Opaska zaciskowa pozwala na skrępowanie dłoni u więźnia. - Los precintos permiten maniatar prisioneros - Les Serflex permettent de menotter les prisonniers. - Stahovací pásky vám umožní zadržet vězně. - A algema plástica permite que você contenha prisioneiros. - Fascietta che ti consente di arrestare i prigionieri. - Gyorskötöző emberek fogjulejtéséhez. - Кабельные стяжки позволяют связывать пленников. - - - Inventory of frisked person - Inventar der durchsuchten Person - Inventaire de la fouille - Inventario de la persona cacheada - Motozott személy felszerelése - Inventář prohledávané osoby - Ekwipunek rewidowanej osoby - Инвентарь обысканных лиц - Inventário da pessoa revistada - - - Frisk person - Person durchsuchen - Fouiller - Cachear - Prohledávaná osoba - Rewiduj osobę - Motozás - Обыскать человека - Revistar - - - Surrender - Kapitulieren - Rendirse - Сдаться - Vzdát se - - - Stop Surrendering - Den Kampf erneut aufnehmen - Dejar de rendirse - Остановить сдачу - Přestat se vzdávat - - - Only use on alive units - Nur bei lebenden Einheiten verwendbar - Utilizar solo en unidades vivas - Только для живых юнитов - Použitelné jen na živé jednotky - - - Only use on dismounted inf - Nur bei abgesessener Infanterie verwendbar - Utilizar solo en infanteria desmontada - Только для спеш. солдат - Použitelné jen na pěsích jednotkách - - - Nothing under mouse - Es wurde nichts ausgewählt - Nada bajo el ratón - Объекты под мышью отсутствуют - Nic není vybráno - - - + + + Take Prisoner + Gefangen nehmen + Tomar prisionero + Capturer le prisonnier + Weź więźnia + Zajmout Osobu + Arresta il Prigioniero + Tomar Prisioneiro + Foglyul ejtés + Взять в плен + + + Free Prisoner + Gefangenen freilassen + Liberar prisionero + Wypuść więźnia + Libérer le prisonnier + Osvobodit Zajatce + Libera il Prigioniero + Libertar Prisioneiro + Fogoly szabadon engedése + Освободить пленника + + + Escort Prisoner + Gefangenen eskortieren + Escoltar prisionero + Eskortuj więźnia + Escorter le prisonnier + Eskortovat Zajatce + Scorta il Prigioniero + Escoltar Prisioneiro + Fogoly kísérése + Конвоировать пленника + + + Release Prisoner + Gefangenen loslassen + Soltar prisionero + Anuluj eskortowanie + Relâcher le prisonnier + Uvolnit Zajatce + Rilascia il Prigioniero + Largar Prisioneiro + Fogoly elengedése + Прекратить конвоирование + + + You need to take him as prisoner first! + Du musst ihn zuerst gefangen nehmen. + Necesitas hacerle prisionero primero! + Najpierw musisz wziąć go jako więźnia! + Vous devez d'abord le capturer! + Musíš ho nejdříve zajmout! + Prima devi arrestarlo! + Você deve tomá-lo como prisioneiro primeiro! + Először foglyul kell ejtened őt! + Вы должны сначала взять его в плен! + + + Load Captive + Gefangenen einladen + Cargar prisionero + Embarquer le prisonnier + Załaduj więźnia + Naložit zajatce + Fogoly berakása + Загрузить пленного + Embarcar Prisioneiro + + + Unload Captive + Gefangenen ausladen + Descargar prisionero + Débarquer le prisonnier + Wyładuj więźnia + Vyložit zajatce + Fogoly kivevése + Выгрузить пленного + Desembarcar Prisioneiro + + + Cable Tie + Kabelbinder + Opaska zaciskowa + Precinto + Serflex + Stahovací Pásek + Algema Plástica + Fascietta + Gyorskötöző + Кабельная стяжка + + + Cable ties that allow you to restrain prisoners. + Kabelbinder ermöglichen es, Gefangene zu fesseln. + Opaska zaciskowa pozwala na skrępowanie dłoni u więźnia. + Los precintos permiten maniatar prisioneros + Les Serflex permettent de menotter les prisonniers. + Stahovací pásky vám umožní zadržet vězně. + A algema plástica permite que você contenha prisioneiros. + Fascietta che ti consente di arrestare i prigionieri. + Gyorskötöző, emberek foglyulejtéséhez használható. + Кабельные стяжки позволяют связывать пленников. + + + Inventory of frisked person + Inventar der durchsuchten Person + Inventaire de la fouille + Inventario de la persona cacheada + Motozott személy felszerelése + Inventář prohledávané osoby + Ekwipunek rewidowanej osoby + Инвентарь обысканных лиц + Inventário da pessoa revistada + + + Frisk person + Person durchsuchen + Fouiller + Cachear + Prohledávaná osoba + Rewiduj osobę + Motozás + Обыскать человека + Revistar + + + Surrender + Kapitulieren + Rendirse + Сдаться + Vzdát se + Megadás + + + Stop Surrendering + Den Kampf erneut aufnehmen + Dejar de rendirse + Остановить сдачу + Přestat se vzdávat + Megadás abbahagyása + + + Only use on alive units + Nur bei lebenden Einheiten verwendbar + Utilizar solo en unidades vivas + Только для живых юнитов + Použitelné jen na živé jednotky + Csak élő egységeken használni + + + Only use on dismounted inf + Nur bei abgesessener Infanterie verwendbar + Utilizar solo en infanteria desmontada + Только для спеш. солдат + Použitelné jen na pěsích jednotkách + Csak járműben kívül lévő egységeken használni + + + Nothing under mouse + Es wurde nichts ausgewählt + Nada bajo el ratón + Объекты под мышью отсутствуют + Nic není vybráno + Semmi sincs az egér alatt + + + \ No newline at end of file diff --git a/addons/common/stringtable.xml b/addons/common/stringtable.xml index b5ca932af6..e360f94b5b 100644 --- a/addons/common/stringtable.xml +++ b/addons/common/stringtable.xml @@ -1,4 +1,5 @@  + @@ -46,7 +47,7 @@ ACE Options ACE Настройки Opções do ACE - ACE Opciók + ACE Beállítások Opzioni ACE @@ -306,6 +307,7 @@ Přijmout žádost Accetta Richieste Подтвердить запросы + Kérések elfogadása Decline Requests @@ -315,6 +317,7 @@ Zamítnout žádost Rifiuta Richieste Отклонить запросы + Kérések elutasítása Accept Requests send by other players. These can be requests to use / share equipment, perform certain actions. @@ -323,6 +326,7 @@ Akceptuj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. Accetta le richieste degli altri giocatori. Queste possono riguardare l'uso o la condivisione dell'equipaggiamento, o di determinate azioni. Подтвердить запросы, посланные другими игроками. Это могут быть просьбы о передаче снаряжения или выполнении определённых действий. + Más játékosok általi kérések elfogadása. Ezek a kérések vonatkozhatnak a felszerelés használatára/megosztására, valamint különböző cselekményekre. Decline Requests send by other players. These can be requests to use / share equipment, perform certain actions. @@ -331,6 +335,7 @@ Ignoruj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. Rifiuta le richieste degli altri giocatori. Queste possono riguardare l'uso o la condivisione dell'equipaggiamento, o di determinate azioni. Отклонить запросы, посланные другими игроками. Это могут быть просьбы о передаче снаряжения или выполнении определённых действий. + Más játékosok általi kérések elutasítása. Ezek a kérések vonatkozhatnak a felszerelés használatára/megosztására, valamint különböző cselekményekre. Feedback icons @@ -338,6 +343,7 @@ Iconos de respuesta Icone informative Иконки состояний + Visszajelző ikonok Select the position of or disable the feedback icons on your screen. These icons will show to provide extra feedback on your character status and actions performed. @@ -345,6 +351,7 @@ Seleccionar la posición de o desactivar los íconos de respuesta en la pantalla. Estos iconos se mostrarán para proporcionar información adicional sobre el estado de su personaje y las acciones a realizar. Seleziona la posizione o disabilita le icone informative sul tuo schermo. Queste saranno mostrate per fornire informazioni aggiuntive sullo stato o sulle azioni del giocatore. Выберите положение или или отключите отображение иконок состояний на Вашем экране. Эти иконки предоставят дополнительную информацию о состоянии персонажа и выполняемых действиях. + Itt beállítható a visszajelző ikonok képernyőn lévő helyzete és jelenléte. Ezek az ikonok extra visszajelzést biztosítanak a karaktered állapotán és végrehajtott cselekvésein. Progress bar location @@ -352,6 +359,7 @@ Ubicación de la barra de progreso Posizione della barra di avanzamento Положение прогресс-бара + Állapotjelző sáv helyzete Set the desired location of the progress bar on your screen. @@ -359,6 +367,7 @@ Seleccionar la ubicación deseada de la barra de progreso en tu pantalla Modifica la posizione su schermo della barra di avanzamento. Установите желаемое положение строки состояния на экране. + Itt beállítható az állapotjelző sáv képernyődön lévő helyzete. Hint Background color @@ -366,6 +375,7 @@ Color de fondo de las notificaciones Sfondo dei Suggerimenti Цвет фона всплывающих подсказок + Súgó háttérszíne The color of the background from the ACE hints. @@ -373,6 +383,7 @@ El color de fondo de las notificaciones del ACE Il colore di sfondo dei suggerimenti dell'ACE. Цвет фона всплывающий подсказок АСЕ. + Az ACE-súgók hátterének színe. Hint text font color @@ -380,6 +391,7 @@ Color del texto de las notificaciones Testo dei Suggerimenti Цвет шрифта всплывающих подсказок + Súgószöveg betűinek színe The color of the text font from the ACE hints. This color is the default color for all text displayed through the ACE Hint system, if the hint text has no other color specified. @@ -387,6 +399,7 @@ El color del texto de las notificaciones del ACE. Este es el color predeterminado para todo el texto que se muestra a través del sistema de notificaciones del ACE, si el texto de notificación no tiene otro color especificado. Il colore del testo dei suggerimenti dell'ACE. Questo è il colore standard per tutti i caratteri mostrati dal sistema di suggerimenti dell'ACE, se questo non è altrimenti specificato. Цвет шрифта текста всплывающих подсказок АСЕ. Этот цвет является стандартным для всего текста, транслирующегося через систему подсказок АСЕ, если не установлено другого цвета для текста подсказок. + Az ACE-súgók betűkészletének színek. Ez a szín alapértelmezett az összes szövegre az ACE-súgórendszerben, ha a súgószöveg maga nem ad meg más színt. Banana @@ -395,6 +408,7 @@ Banán Banana Банан + Banán A banana is an edible fruit, botanically a berry, produced by several kinds of large herbaceous flowering plants in the genus Musa. @@ -403,6 +417,7 @@ Banán je protáhlé ovoce a plod banánovníku (epigeická bobule). Una banana è un frutto commestibile, nello specifico una bacca cuoiosa, prodotto da un gran numero di grandi pianti erbacee dotate di fiori, della famiglia delle Musaceae. Банан - это съедобный фрукт, ягода с ботанической точки зрения, произрастающий на нескольких видах травянистых растениях рода Банан (Musa). + A banán egy ehető gyümölcs, technikai szempontból bogyótermés, melyet több fürtvirágzatú növény termel a Musa rendszertani nemzetségben. - + \ No newline at end of file diff --git a/addons/disposable/stringtable.xml b/addons/disposable/stringtable.xml index 7393e41f6e..d5e1000682 100644 --- a/addons/disposable/stringtable.xml +++ b/addons/disposable/stringtable.xml @@ -1,36 +1,36 @@  - + - - - Used Tube - Benutze Einwegwaffe - Tube utilisé - Použitý odpalovač - Zużyta tuba - Lanzador utilizado - Használt cső - Отстрелянная труба - - - Used disposable rocket launcher - Benutzter Einweg-Raketenwerfer - Lance-roquette à usage unique utilisé - Použitý raketomet - Zużyta tuba granatnika jednorazowego użytku - Lanzador desechable utilizado - Használt rakétavető - Отстрелянная одноразовая пусковая установка - - - Preloaded Missile Dummy - Vorgeladene Racketennachbildung - Preloaded Missile Dummy - Přednabitá dummy střela - Preloaded Missile Dummy - Preloaded Missile Dummy - Preloaded Missile Dummy - Заряженная ракетная пустышка - - - + + + Used Tube + Benutze Einwegwaffe + Tube utilisé + Použitý odpalovač + Zużyta tuba + Lanzador utilizado + Elhasznált kilövőcső + Отстрелянная труба + + + Used disposable rocket launcher + Benutzter Einweg-Raketenwerfer + Lance-roquette à usage unique utilisé + Použitý raketomet + Zużyta tuba granatnika jednorazowego użytku + Lanzador desechable utilizado + Elhasznált eldobható rakétavető + Отстрелянная одноразовая пусковая установка + + + Preloaded Missile Dummy + Vorgeladene Racketennachbildung + Preloaded Missile Dummy + Přednabitá dummy střela + Preloaded Missile Dummy + Preloaded Missile Dummy + Előtöltött műrakéta + Заряженная ракетная пустышка + + + \ No newline at end of file diff --git a/addons/dragging/stringtable.xml b/addons/dragging/stringtable.xml index 3a425aafb2..d493250c97 100644 --- a/addons/dragging/stringtable.xml +++ b/addons/dragging/stringtable.xml @@ -1,35 +1,36 @@  + - - - Drag - Тащить - Arrastrar - Ciągnij - Táhnout - Tracter - Ziehen - Arrastar - Trascina - Húzás - - - Release - Отпустить - Soltar - Puść - Položit - Lâcher - Loslassen - Largar - Lascia - Elengedés - - - Item to heavy - Gegenstand ist zu schwer - Articulo demasiado pesado - - Слишком тяжело - Moc težké - - - Carry - Tragen - Portar - Nieś - Porter - Nést - Carregar - Trascina - Felvesz - Нести - - - + Слишком тяжело + Moc težké + Az objektum túl nehéz + + + Carry + Tragen + Portar + Nieś + Porter + Nést + Carregar + Trascina + Felvevés + Нести + + + \ No newline at end of file diff --git a/addons/explosives/stringtable.xml b/addons/explosives/stringtable.xml index d076f8cc2f..f533e8ed44 100644 --- a/addons/explosives/stringtable.xml +++ b/addons/explosives/stringtable.xml @@ -1,499 +1,501 @@  + - - - Explosives - Sprengstoffe - Explosivos - Ładunki wybuchowe - Explosifs - Výbušniny - Esplosivi - Robbanóanyagok - Explosivos - Взрывчатка - - - Place >> - Platzieren >> - Colocar >> - Umieść >> - Placer >> - Položit >> - Piazza >> - Lerakás >> - Colocar >> - Установить >> - - - Detonate >> - Zünden >> - Detonar >> - Detonuj >> - Mise à feu >> - Odpálit >> - Detona >> - Robbantás >> - Detonar >> - Подрыв >> - - - Explosive code: %1 - Sprengstoffcode: %1 - Código del explosivo: %1 - Kod ładunku: %1 - Code explosif: %1 - Kód výbušniny: %1 - Codice dell'esplosivo : %1 - Robbanóanyag kódja: %1 - Código do explosivo: %1 - Код подрыва: %1 - - - Place - Platzieren - Colocar - Umieść - Placer - Položit - Piazza - Elhelyezés - Colocar - Установить - - - Cancel - Abbrechen - Cancelar - Anuluj - Annuler - Zrušit - Annulla - Mégsem - Cancelar - Отмена - - - + Modifier, rotates - + Modifikator, drehen - + Modificador, girar - + Modificateur, tourner - + Modificatore, rotazione - + Modifikátor, otočit - + Változtatás, forgatás - + modyfikator, obracanie - + Modificador, rotaciona - + Bращать - - - Turn On Thor III - Thor III aktivieren - Encender Thor III - Włącz Thor III - Allumer Thor III - Zapnout Thor III - Accendi Thor III - Thor III bekapcsolása - Ativar Thor III - Активировать Thor III - - - Turn Off Thor III - Thor III deaktivieren - Apagar Thor III - Wyłącz Thor III - Éteindre Thor III - Vypnout Thor III - Spegni Thor III - Thor III kikapcsolása - Desativar Thor III - Деактивировать Thor III - - - Cellphone - Mobiltelefon - Télefono móvil - Telefon komórkowy - Téléphone Portable - Telefon - Cellulare - Mobil - Celular - Сотовый телефон - - - Used to remotely trigger explosives - Wird benutzt um Sprengstoffe fernzuzünden - Usado para detonar remotamente explosivos - Używany do zdalnego detonowania ładunków wybuchowych - Utilisé pour déclencher des explosifs à distance - Používaný ke vzdálenému odpalování výbušnin - Usato per l'attivazione a distanza degli esplosivi - Robbanóanyagok távoli robbantásához - Usado para acionar explosivos remotamente - Используется для удаленной детонации СВУ - - - M57 Firing Device - M57 Zündvorrichtung - Dispositivo de detonación M57 - Zapalnik M57 - M57 Dispositif de mise à feu - Odpalovací zařízení M57 - Detonatore M57 - M57 Detonátor - M57 Dispositivo de Detonação - Взрыватель M57 - - - Used to remotely trigger explosives - Wird benutzt um Sprengstoffe fernzuzünden - Usado para detonar remotamente explosivos - Używany do zdalnego detonowania ładunków wybuchowych - Utilisé pour déclencher des explosifs à distance - Používané ke vzdálenému odpalování výbušnin - Usato per l'attivazione a distanza degli esplosivi - Robbanóanyagok távoli robbantásához - Usado para acionar explosivos remotamente - Используется для удаленной детонации зарядов - - - M26 Firing Device - M26 Zündvorrichtung - Dispositivo de detonación MK26 - Zapalnik M26 - M26 Dispositif de mise à feu - Odpalovací zařízení M26 - Detonatore M26 - M26 Detonátor - M26 Dispositivo de Detonação - Взрыватель M26 - - - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - M152 RAMS - - - Defusal Kit - Entschärfungskit - Kit de desactivación - Zestaw do rozbrajania - Kit de désamorçage - Zneškodňovací sada - Kit E.O.D. - Hatástalanító felszerelés - Kit de desarme - Комплект разминирования - - - Allows defusing of explosives - Erlaubt die Entschärfung von Sprengstoffen - Permite desactivar explosivos - Umożliwia rozbrajanie ładunków wybuchowych - Permet de désamorçer des explosifs - Dovoluje zneškodňování výbušnin - Consente la disattivazione degli ordigni esplosivi - Robbanóanyagok hatástalanításához - Permite o desarme de explosivos - Позволяет обезвреживать ВУ - - - Add to Speed Dial - Zur Schnellauswahl hinzufügen - Agregar a marcado rápido - Dodaj do szybkiego wybierania - Ajouter à la composition rapide - Přidat jako rychlou volbu - Aggiungi alla selezione rapida - Hozzáadás gyorshíváshoz - Adicionar à ligação rápida - Добавить в ускоренный набор - - - Clear - Löschen - Borrar - Usuń - Désamorçé - Čistý - Libera - Törlés - Limpar - Очистить - - - Dial - Wählen - Marcar - Wybierz mumer - Composer - Vytočit - Composizione numero - Tárcsázás - Discar - Hабрать - - - Up - Hoch - Arriba - W górę - Haut - Nahoru - Sopra - Fel - Cima - Вызов - - - Down - Runter - Abajo - W dół - Bas - Dolu - Sotto - Le - Baixo - Сброс - - - Cancel - Abbrechen - Cancelar - Anuluj - Annuler - Zrušit - Annulla - Mégsem - Cancelar - Отмена - - - Detonate Menu - "Zünden"-Menü - Menú de detonación - Menu detonowania - Menu de mise à feu - Menu Detonace - Menù di detonazione - Robbantás menü - Menu de detonação - Меню подрыва - - - Place Menu - "Platzieren"-Menü - Menú de colocación - Menu umieszczania - Menu Placement - Menu Umístění - Menù di collocamento - Lerakás menü - Menu de posicionamento - Меню детонации - - - Defuse - Entschärfen - Desactivar - Rozbrój - Désamorçer - Zneškodnit - Disinnesca - Hatástalanítás - Desarmar - Обезвредить - - - Defusing Explosive... - Entschärfe Sprengstoff... - Desactivando explosivo... - Rozbrajanie ładunku... - Désamorçage des explosifs... - Zneškodňuji Výbušninu... - Esposivo in fase di disattivazione... - Robbanóanyag hatástalaníása... - Desarmando Explosivo... - Обезвреживание... - - - Timer - Zeitzünder - Temporizador - Czasomierz - Retard - Časovač - Cronometro - Időzített - Timer - Таймер - - - Time: %1m %2s - Zeit: %1m %2s - Tiempo: %1m %2s - Czas: %1m %2s - Temps : %1m %2s - Čas: %1m %2s - Tempo : %1m %2s - Idő: %1m %2s - Tempo: %1m %2s - Время: %1m %2c - - - Set Time - Zeit einstellen - Configurar tiempo - Ustaw czas - Régler retard - Nastavit Čas - Modifica il conto alla rovescia - Idő állítása - Configurar Tempo - Установить время - - - Select a Trigger - Wähle einen Zünder - Seleccionar un disparador - Wybierz zapalnik - Sélectionner une mise à feu - Zvolit Detonátor - Seleziona un Attivatore - Detonátor kiválasztása - Selecionar um Gatilho - Выберите детонатор - - - Select - Wählen - Seleccionar - Wybierz - Sélectionner - Zvolit - Seleziona - Kiválasztás - Selecionar - Выбрать - - - Pressure Plate - Płyta naciskowa - Placa de presión - Druckplatte - Plaque de pression - Nášlapná nástraha - Piastra a Pressione - Nyomólap - Placa de pressão - Давление - - - Tripwire - Linka naciągu - Cable trampa - Stolperdraht - Fil de butée - Nástražný drát - Filo a Inciampo - Botlódrót - Linha de tração - Растяжка - - - IR Sensor - Czujnik podczerwieni - Sensor IR - Infrarotsensor - Capteur IR - IR Značkovač - Sensore IR - IR szenzor - Sensor IV - ИК сенсор - - - No triggers available for %1 - Brak dostępnych zapalników dla %1 - No hay detonadores disponibles para %1 - Keine Auslöser vorhanden für %1 - Pas de mise à feu disponible pour %1 - Žádný detonátor k dispozici pro %1 - Nessun attivatore disponibile per %1 - Nincs detonátor a %1 - Nenhum gatilho disponível para %1 - Нет доступных взрывателей для %1 - - - IR Sensor (Side Attack) - Czujnik podczerwieni (wybuch na bok) - Sensor IR (ataque lateral) - Infrarotsensor (Seitenangriff) - Capteur IR (de flanc) - IR Značkovač (Výbuch stranou) - Sensore IR (Attacco laterale) - IR Sensor (Side Attack) - Sensor infravermelho (ataque lateral) - ИК (детонация вбок) - - - Magnetic Influence Sensor (Bottom Attack) - Czujnik magnetyczny (wybuch w górę) - Sensor IM (ataque inferior) - Magnetfeldsensor (Bodenangriff) - Capteur Magnétique (par le bas) - Magnetický Senzor (Výbuch ze spoda) - Sensore Magnetico di Prossimità (Attacco inferiore) - Mágneses (Bottom Attack) - Influência magnética (ataque inferior) - Магнитный (детонация вверх) - - - No explosives on trigger. - Keine Sprengladungen auf diesem Auslöser. - Ningún explosivo en el detonador. - Pas d'explosif à mettre à feu. - Nessun esplosivo sul sensore. - Žádná výbušnina k odpálení. - Nincs robbanóanyag a detonátorhoz. - Brak ładunków na zapalnik. - Nenhum explosivo no gatilho. - Нет доступных ВУ для взрывателя. - - - Dead Man's Switch - Totmannschalter - Mise à feu par relâchement de pression - Spínač mrtvého muže - Czuwak - Detonador de hombre muerto - Dead Man's Switch - Ловушка мертвеца - - - Used to remotely trigger explosives when released. - Zündet Sprengladungen wenn losgelassen. - Déclenche la mise à feu d'un explosif lorsqu'il est libéré. - Používaný k vzdálenému odpálení, při uvolnění odpálí výbušniny - Używany w celu zdalnej detonacji ładunków kiedy jego operator zostanie zabity. - Utilizado para detonar explosivos remotamente al soltarlo. - Robbanóanyagok távoli robbantásához - Используется для дистанционного подрыва, после смерти оператора. - - - Pick up - Aufheben - Recoger - Sebrat - - - + + + Explosives + Sprengstoffe + Explosivos + Ładunki wybuchowe + Explosifs + Výbušniny + Esplosivi + Robbanóanyagok + Explosivos + Взрывчатка + + + Place >> + Platzieren >> + Colocar >> + Umieść >> + Placer >> + Položit >> + Piazza >> + Elhelyezés >> + Colocar >> + Установить >> + + + Detonate >> + Zünden >> + Detonar >> + Detonuj >> + Mise à feu >> + Odpálit >> + Detona >> + Robbantás >> + Detonar >> + Подрыв >> + + + Explosive code: %1 + Sprengstoffcode: %1 + Código del explosivo: %1 + Kod ładunku: %1 + Code explosif: %1 + Kód výbušniny: %1 + Codice dell'esplosivo : %1 + Robbanóanyag kódja: %1 + Código do explosivo: %1 + Код подрыва: %1 + + + Place + Platzieren + Colocar + Umieść + Placer + Položit + Piazza + Elhelyezés + Colocar + Установить + + + Cancel + Abbrechen + Cancelar + Anuluj + Annuler + Zrušit + Annulla + Mégsem + Cancelar + Отмена + + + + Modifier, rotates + + Modifikator, drehen + + Modificador, girar + + Modificateur, tourner + + Modificatore, rotazione + + Modifikátor, otočit + + Változtatás, forgatás + + modyfikator, obracanie + + Modificador, rotaciona + + Bращать + + + Turn On Thor III + Thor III aktivieren + Encender Thor III + Włącz Thor III + Allumer Thor III + Zapnout Thor III + Accendi Thor III + Thor III bekapcsolása + Ativar Thor III + Активировать Thor III + + + Turn Off Thor III + Thor III deaktivieren + Apagar Thor III + Wyłącz Thor III + Éteindre Thor III + Vypnout Thor III + Spegni Thor III + Thor III kikapcsolása + Desativar Thor III + Деактивировать Thor III + + + Cellphone + Mobiltelefon + Télefono móvil + Telefon komórkowy + Téléphone Portable + Telefon + Cellulare + Mobiltelefon + Celular + Сотовый телефон + + + Used to remotely trigger explosives + Wird benutzt um Sprengstoffe fernzuzünden + Usado para detonar remotamente explosivos + Używany do zdalnego detonowania ładunków wybuchowych + Utilisé pour déclencher des explosifs à distance + Používaný ke vzdálenému odpalování výbušnin + Usato per l'attivazione a distanza degli esplosivi + Robbanóanyagok távoli robbantásához való + Usado para acionar explosivos remotamente + Используется для удаленной детонации СВУ + + + M57 Firing Device + M57 Zündvorrichtung + Dispositivo de detonación M57 + Zapalnik M57 + M57 Dispositif de mise à feu + Odpalovací zařízení M57 + Detonatore M57 + M57 Gyújtóeszköz + M57 Dispositivo de Detonação + Взрыватель M57 + + + Used to remotely trigger explosives + Wird benutzt um Sprengstoffe fernzuzünden + Usado para detonar remotamente explosivos + Używany do zdalnego detonowania ładunków wybuchowych + Utilisé pour déclencher des explosifs à distance + Používané ke vzdálenému odpalování výbušnin + Usato per l'attivazione a distanza degli esplosivi + Robbanóanyagok távoli robbantásához + Usado para acionar explosivos remotamente + Используется для удаленной детонации зарядов + + + M26 Firing Device + M26 Zündvorrichtung + Dispositivo de detonación MK26 + Zapalnik M26 + M26 Dispositif de mise à feu + Odpalovací zařízení M26 + Detonatore M26 + M26 Gyújtóeszköz + M26 Dispositivo de Detonação + Взрыватель M26 + + + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + M152 RAMS + + + Defusal Kit + Entschärfungskit + Kit de desactivación + Zestaw do rozbrajania + Kit de désamorçage + Zneškodňovací sada + Kit E.O.D. + Hatástalanító felszerelés + Kit de desarme + Комплект разминирования + + + Allows defusing of explosives + Erlaubt die Entschärfung von Sprengstoffen + Permite desactivar explosivos + Umożliwia rozbrajanie ładunków wybuchowych + Permet de désamorçer des explosifs + Dovoluje zneškodňování výbušnin + Consente la disattivazione degli ordigni esplosivi + Robbanóanyagok hatástalanítását teszi lehetővé + Permite o desarme de explosivos + Позволяет обезвреживать ВУ + + + Add to Speed Dial + Zur Schnellauswahl hinzufügen + Agregar a marcado rápido + Dodaj do szybkiego wybierania + Ajouter à la composition rapide + Přidat jako rychlou volbu + Aggiungi alla selezione rapida + Hozzáadás a gyorstárcsázóhoz + Adicionar à ligação rápida + Добавить в ускоренный набор + + + Clear + Löschen + Borrar + Usuń + Désamorçé + Čistý + Libera + Törlés + Limpar + Очистить + + + Dial + Wählen + Marcar + Wybierz mumer + Composer + Vytočit + Composizione numero + Tárcsázás + Discar + Hабрать + + + Up + Hoch + Arriba + W górę + Haut + Nahoru + Sopra + Fel + Cima + Вызов + + + Down + Runter + Abajo + W dół + Bas + Dolu + Sotto + Le + Baixo + Сброс + + + Cancel + Abbrechen + Cancelar + Anuluj + Annuler + Zrušit + Annulla + Mégsem + Cancelar + Отмена + + + Detonate Menu + "Zünden"-Menü + Menú de detonación + Menu detonowania + Menu de mise à feu + Menu Detonace + Menù di detonazione + Robbantási menü + Menu de detonação + Меню подрыва + + + Place Menu + "Platzieren"-Menü + Menú de colocación + Menu umieszczania + Menu Placement + Menu Umístění + Menù di collocamento + Elhelyezési menü + Menu de posicionamento + Меню детонации + + + Defuse + Entschärfen + Desactivar + Rozbrój + Désamorçer + Zneškodnit + Disinnesca + Hatástalanítás + Desarmar + Обезвредить + + + Defusing Explosive... + Entschärfe Sprengstoff... + Desactivando explosivo... + Rozbrajanie ładunku... + Désamorçage des explosifs... + Zneškodňuji Výbušninu... + Esposivo in fase di disattivazione... + Robbanóanyag hatástalanítása... + Desarmando Explosivo... + Обезвреживание... + + + Timer + Zeitzünder + Temporizador + Czasomierz + Retard + Časovač + Cronometro + Időzítő + Timer + Таймер + + + Time: %1m %2s + Zeit: %1m %2s + Tiempo: %1m %2s + Czas: %1m %2s + Temps : %1m %2s + Čas: %1m %2s + Tempo : %1m %2s + Idő: %1m %2s + Tempo: %1m %2s + Время: %1m %2c + + + Set Time + Zeit einstellen + Configurar tiempo + Ustaw czas + Régler retard + Nastavit Čas + Modifica il conto alla rovescia + Idő beállítása + Configurar Tempo + Установить время + + + Select a Trigger + Wähle einen Zünder + Seleccionar un disparador + Wybierz zapalnik + Sélectionner une mise à feu + Zvolit Detonátor + Seleziona un Attivatore + Gyújtóeszköz kiválasztása + Selecionar um Gatilho + Выберите детонатор + + + Select + Wählen + Seleccionar + Wybierz + Sélectionner + Zvolit + Seleziona + Kiválasztás + Selecionar + Выбрать + + + Pressure Plate + Płyta naciskowa + Placa de presión + Druckplatte + Plaque de pression + Nášlapná nástraha + Piastra a Pressione + Nyomólap + Placa de pressão + Давление + + + Tripwire + Linka naciągu + Cable trampa + Stolperdraht + Fil de butée + Nástražný drát + Filo a Inciampo + Botlódrót + Linha de tração + Растяжка + + + IR Sensor + Czujnik podczerwieni + Sensor IR + Infrarotsensor + Capteur IR + IR Značkovač + Sensore IR + Infravörös szenzor + Sensor IV + ИК сенсор + + + No triggers available for %1 + Brak dostępnych zapalników dla %1 + No hay detonadores disponibles para %1 + Keine Auslöser vorhanden für %1 + Pas de mise à feu disponible pour %1 + Žádný detonátor k dispozici pro %1 + Nessun attivatore disponibile per %1 + Nincs elérhető gyújtóeszköz ide: %1 + Nenhum gatilho disponível para %1 + Нет доступных взрывателей для %1 + + + IR Sensor (Side Attack) + Czujnik podczerwieni (wybuch na bok) + Sensor IR (ataque lateral) + Infrarotsensor (Seitenangriff) + Capteur IR (de flanc) + IR Značkovač (Výbuch stranou) + Sensore IR (Attacco laterale) + Infravörös szenzor (Side Attack) + Sensor infravermelho (ataque lateral) + ИК (детонация вбок) + + + Magnetic Influence Sensor (Bottom Attack) + Czujnik magnetyczny (wybuch w górę) + Sensor IM (ataque inferior) + Magnetfeldsensor (Bodenangriff) + Capteur Magnétique (par le bas) + Magnetický Senzor (Výbuch ze spoda) + Sensore Magnetico di Prossimità (Attacco inferiore) + Mágneses mező érzékelő (Bottom Attack) + Influência magnética (ataque inferior) + Магнитный (детонация вверх) + + + No explosives on trigger. + Keine Sprengladungen auf diesem Auslöser. + Ningún explosivo en el detonador. + Pas d'explosif à mettre à feu. + Nessun esplosivo sul sensore. + Žádná výbušnina k odpálení. + Nincs robbanóanyag a gyújtóeszközhöz kötve. + Brak ładunków na zapalnik. + Nenhum explosivo no gatilho. + Нет доступных ВУ для взрывателя. + + + Dead Man's Switch + Totmannschalter + Mise à feu par relâchement de pression + Spínač mrtvého muže + Czuwak + Detonador de hombre muerto + Dead Man's Switch + Ловушка мертвеца + + + Used to remotely trigger explosives when released. + Zündet Sprengladungen wenn losgelassen. + Déclenche la mise à feu d'un explosif lorsqu'il est libéré. + Používaný k vzdálenému odpálení, při uvolnění odpálí výbušniny + Używany w celu zdalnej detonacji ładunków kiedy jego operator zostanie zabity. + Utilizado para detonar explosivos remotamente al soltarlo. + Robbanóanyagok távoli robbantásához való, elengedéskor gyújt. + Используется для дистанционного подрыва, после смерти оператора. + + + Pick up + Aufheben + Recoger + Sebrat + Felszedés + + + \ No newline at end of file diff --git a/addons/fcs/stringtable.xml b/addons/fcs/stringtable.xml index 0911bbdb57..6886370c5f 100644 --- a/addons/fcs/stringtable.xml +++ b/addons/fcs/stringtable.xml @@ -1,81 +1,82 @@  - + - - - Lase Target / Measure Distance - Ziel anlasern / Entfernung Messen - Télémétrer la cible - Naświetl cel / Zmierz odległość - Označit cíl / Změřit vzdálenost - Iluminar objetivo / Medir distancia - - Подсветить цель / Замерить расстояние - - - Zeroed To - Haltepunkt - Fijado a - Wyzerowany na - Nastaveno na - Zéroté à - Выставлено на - Nullázás - Fixado em - Azzeramento a - - - Adjust FCS Range (Up) - Entfernung des FLS erhöhen - Zwiększ zasięg FCS - Ajustar distancia del FCS (arriba) - Nastavit FCS Náměr (nahoru) - Augmenter la distance du SCT - FCS tartomány állítása (Fel) - Ajustar distância do FCS (Acima) - Aumentare la distanza dell'FCS - Диапазон СУО (Выше) - - - Adjust FCS Range (Down) - Entfernung des FLS verringern - Zmniejsz zasięg FCS - Ajustar distancia del FCS (abajo) - Nastavit FCS Náměr (dolů) - Réduire la distance du SCT - FCS tartomány állítása (Le) - Ajustar distância do FCS (Abaixo) - Ridurre la distanza dell'FCS - Диапазон СУО (Ниже) - - - Reset FCS - FLS zurücksetzen - Reiniciar FCS - Réinitialiser le SCT - Resetuj FCS - Resetovat FCS - FCS visszaállítása - Reiniciar FCS - Azzeramento dell'FCS - Обнулить СУО - - - FCS has been reset. - FLS wurde zurückgesetzt. - FCS reiniciado - SCT réinitialisé. - FCS został zresetowany. - FCS byl resetován. - Az FCS visszaállítva - FCS reiniciado. - L'FCS è stato azzerato - СУО обнулен. - - + Подсветить цель / Замерить расстояние + Célpont lézerezése / Távolság Bemérése + + + Zeroed To + Haltepunkt + Fijado a + Wyzerowany na + Nastaveno na + Zéroté à + Выставлено на + Nullázási táv + Fixado em + Azzeramento a + + + Adjust FCS Range (Up) + Entfernung des FLS erhöhen + Zwiększ zasięg FCS + Ajustar distancia del FCS (arriba) + Nastavit FCS Náměr (nahoru) + Augmenter la distance du SCT + FCS tartomány állítása (Fel) + Ajustar distância do FCS (Acima) + Aumentare la distanza dell'FCS + Диапазон СУО (Выше) + + + Adjust FCS Range (Down) + Entfernung des FLS verringern + Zmniejsz zasięg FCS + Ajustar distancia del FCS (abajo) + Nastavit FCS Náměr (dolů) + Réduire la distance du SCT + FCS tartomány állítása (Le) + Ajustar distância do FCS (Abaixo) + Ridurre la distanza dell'FCS + Диапазон СУО (Ниже) + + + Reset FCS + FLS zurücksetzen + Reiniciar FCS + Réinitialiser le SCT + Resetuj FCS + Resetovat FCS + FCS visszaállítása + Reiniciar FCS + Azzeramento dell'FCS + Обнулить СУО + + + FCS has been reset. + FLS wurde zurückgesetzt. + FCS reiniciado + SCT réinitialisé. + FCS został zresetowany. + FCS byl resetován. + FCS visszaállítva. + FCS reiniciado. + L'FCS è stato azzerato + СУО обнулен. + + \ No newline at end of file diff --git a/addons/frag/stringtable.xml b/addons/frag/stringtable.xml index e2477347ce..cea72ae13f 100644 --- a/addons/frag/stringtable.xml +++ b/addons/frag/stringtable.xml @@ -1,13 +1,15 @@  + - - - Disable Fragmentation - Keine Schrapnelle - Zakázat fragmentaci granátů - Desactivar fragmentación - Wyłącz głowice fragmentacyjne - Выключить разлёт осколков - - - + + + Disable Fragmentation + Keine Schrapnelle + Zakázat fragmentaci granátů + Desactivar fragmentación + Wyłącz głowice fragmentacyjne + Выключить разлёт осколков + Repeszek letiltása + + + \ No newline at end of file diff --git a/addons/goggles/stringtable.xml b/addons/goggles/stringtable.xml index 952a1320a0..16fd227b11 100644 --- a/addons/goggles/stringtable.xml +++ b/addons/goggles/stringtable.xml @@ -1,29 +1,30 @@  + - - - Show Goggle Effects in Third Person - Brilleneffekt in dritter Person anzeigen - Mostrar efectos de las gafas en tercera persona - Zobrazit efekt brýlí v třetí osobě - Effets de lunettes à la 3ème personne - Отображать эффект очков от третьего лица - Szemüveg effekt mutatása külső nézetből - Włącz efekty gogli w trzeciej osobie - Mostrar efeitos de óculos em Terceira Pessoa - Attiva l'effetto degli occhiali in terza persona - - - Wipe Goggles - Brille abwischen - Limpiar gafas - Vyčistit brýle - Essuyer les lunettes - Протереть очки - Szemüveg törlése - Wytrzyj gogle - Limpar Óculos - Pulisci gli occhiali - - - + + + Show Goggle Effects in Third Person + Brilleneffekt in dritter Person anzeigen + Mostrar efectos de las gafas en tercera persona + Zobrazit efekt brýlí v třetí osobě + Effets de lunettes à la 3ème personne + Отображать эффект очков от третьего лица + Szemüveg-effekt mutatása külső nézetből + Włącz efekty gogli w trzeciej osobie + Mostrar efeitos de óculos em Terceira Pessoa + Attiva l'effetto degli occhiali in terza persona + + + Wipe Goggles + Brille abwischen + Limpiar gafas + Vyčistit brýle + Essuyer les lunettes + Протереть очки + Szemüveg letörlése + Wytrzyj gogle + Limpar Óculos + Pulisci gli occhiali + + + \ No newline at end of file diff --git a/addons/grenades/stringtable.xml b/addons/grenades/stringtable.xml index 69f829037e..1add1623e4 100644 --- a/addons/grenades/stringtable.xml +++ b/addons/grenades/stringtable.xml @@ -1,245 +1,246 @@  + - - - Switch Grenade Mode - Granaten-Modus wechseln - Cambiar modo de granada - Tryb rzutu granatem - Změnit styl hodu granátu - Changer type de lancer de grenade - Сменить режим броска гранаты - Gránátdobás mód váltás - Cambia tipo di granata - Alternar Modo de Granada - - - Normal Throw - Normaler Wurf - Lanzamiento normal - Normalny rzut - Normální hod - Lancer Normal - Нормальный бросок - Normál dobás - Lancio normale - Arremesso Normal - - - High Throw - Hoher Wurf - Lanzamiento alto - Rzut lobem - Vysoký hod - Lancer Haut - Высокий бросок - Magas dobás - Lancio verso l'alto - Arremesso Alto - - - Precise Throw - Präziser Wurf - Lanzamiento preciso - Precyzyjny rzut - Přesný hod - Lancer Précis - Точный бросок - Pontos dobás - Lancio preciso - Arremesso Preciso - - - Roll Grenade - Granate rollen - Rodar granada - Po ziemi - Po zemi - Lancer Roulé - Катить гранату - Gurítás - Fai rotolare la granata - Rolar Granada - - - Drop Grenade - Granate fallenlassen - Soltar granada - Upuść granat - Upustit granát - Lâcher la grenade - Бросить себе под ноги - Ejtés - Lascia la granata - Largar Granada - - - M84 Stun Grenade - M84 Blendgranate - Granada aturdidora M84 - M84 Grenade Incapacitante - Granat hukowy M84 - Omračující granát M84 - M84 светозвуковая граната - M84 Villanógránát - Granata Stordente M84 - M84 granada de atordoamento - - - Also known as flashbang. Causes immediate flash blindness, deafness, tinnitus, and inner ear disturbance. - Verursacht temporäre Blind- und Taubheit. - Produce de manera inmediata ceguera, sordera, tinitus y afecta el oído interior. - Les grenades incapacitantes servent à désorienter ou distraire une menace pendant quelques secondes. - Granat ogłusza, nie zabijając przeciwnika. Detonacja daje efekt oślepiającego błysku i głośnego huku. - Omračující granát je taktická nesmrtící zbraň používaná při záchraně rukojmí a zvládání davu. - XM84 (M84) - граната нелетального действия, и предназначена для отвлечения и временного вывода из строя, либо дезориентации противника. Основное использование нашла при освобождении заложников, захвате преступников и террористов, а также проведении диверсионных миссий. - Eldobás után felrobban és éles hang, valamint fényhatással zavarja össze a környezetében tartózkodókat. - Anche conosciuta come flashbang. Causa accecamento immediato, sensazioni di sposatezza, mancanza d'equilibrio e disturbi al timpano. - Um tipo de granada não-letal destinado a confundir, desorientar e distrair uma potencial ameaça. - - - M127A1 Hand Held Signal (White) - M127A1 Leuchtmittel (Weiß) - Světlice M127A1 (Bílá) - M127A1 Jelzőrakéta (Fehér) - M127A1 Bengala (Bianco) - Flara ręczna sygnałowa M127A1 (biała) - M127A1 Sinalizador (Branco) - M127A1 Фальшфейер (Белый) - Bengala M127A1 (Blanca) - M127A1 Feux à main (Blanc) - - - M127A1 Hand Held Signal (Red) - M127A1 Leuchtmittel (Rot) - Světlice M127A1 (Červená) - M127A1 Jelzőrakéta (Piros) - M127A1 Bengala (Rosso) - Flara ręczna sygnałowa M127A1 (czerwona) - M127A1 Sinalizador (Vermelho) - M127A1 Фальшфейер (Красный) - Bengala M127A1 (Roja) - M127A1 Feux à main (Rouge) - - - M127A1 Hand Held Signal (Green) - M127A1 Leuchtmittel (Grün) - Světlice M127A1 (Zelená) - M127A1 Jelzőrakéta (Zöld) - M127A1 Bengala (Verde) - Flara ręczna sygnałowa M127A1 (zielona) - M127A1 Sinalizador (Verde) - M127A1 Фальшфейер (Зелёный) - Bengala M127A1 (Verde) - M127A1 Feux à main (Vert) - - - M127A1 Hand Held Signal (Yellow) - M127A1 Leuchtmittel (Gelb) - Světlice M127A1 (Žlutá) - M127A1 Jelzőrakéta (Sárga) - M127A1 Bengala (Giallo) - Flara ręczna sygnałowa M127A1 (żółta) - M127A1 Sinalizador (Amarelo) - M127A1 Фальшфейер (Жёлтые) - Bengala M127A1 (Amarilla) - M127A1 Feux à main (Jaune) - - - White Hand Flare - Weiße Leuchtkugel, wird wie eine Granate geworfen. - Světlice (Bílá) - Jelzőrakéta (Fehér) - Bengala (Bianco) - Flara ręczna (biała) - Sinalizador (Branco) - Фальшфейер (Белый) - Bengala (Blanca) - Feux à main (Blanc) - - - Red Hand Flare - Rote Leuchtkugel, wird wie eine Granate geworfen. - Světlice (Červená) - Jelzőrakéta (Piros) - Bengala (Rosso) - Flara ręczna (czerwona) - Sinalizador (Vermelho) - Фальшфейер (Красный) - Bengala (Roja) - Feux à main (Rouge) - - - Green Hand Flare - Grüne Leuchtkugel, wird wie eine Granate geworfen. - Světlice (Zelená) - Jelzőrakéta (Zöld) - Bengala (Verde) - Flara ręczna (zielona) - Sinalizador (Verde) - Фальшфейер (Зелёный) - Bengala (Verde) - Feux à main (Vert) - - - Yellow Hand Flare - Gelbe Leuchtkugel, wird wie eine Granate geworfen. - Světlice (Žlutá) - Jelzőrakéta (Sárga) - Bengala (Giallo) - Flara ręczna (żółta) - Sinalizador (Amarelo) - Фальшфейер (Жёлтые) - Bengala (Amarilla) - Feux à main (Jaune) - - - M127A1 (White) - M127A1 (Weiß) - M127A1 (Bílá) - M127A1 (Blanc) - M127A1 (Fehér) - M127A1 (Bianco) - M127A1 (biała) - M127A1 (Branco) - M127A1 (Белый) - M127A1 (Blanca) - - - M127A1 (Red) - M127A1 (Rot) - M127A1 (Červená) - M127A1 (Rouge) - M127A1 (Piros) - M127A1 (Rosso) - M127A1 (czerwona) - M127A1 (Vermelho) - M127A1 (Красный) - M127A1 (Roja) - - - M127A1 (Green) - M127A1 (Grün) - M127A1 (Zelená) - M127A1 (Vert) - M127A1 (Zöld) - M127A1 (Verde) - M127A1 (zielona) - M127A1 (Verde) - M127A1 (Зелёный) - M127A1 (Verde) - - - M127A1 (Yellow) - M127A1 (Gelb) - M127A1 (Žlutá) - M127A1 (Jaune) - M127A1 (Sárga) - M127A1 (Giallo) - M127A1 (żółta) - M127A1 (Amarelo) - M127A1 (Жёлтые) - M127A1 (Amarilla) - - - + + + Switch Grenade Mode + Granaten-Modus wechseln + Cambiar modo de granada + Tryb rzutu granatem + Změnit styl hodu granátu + Changer type de lancer de grenade + Сменить режим броска гранаты + Gránátkezelési mód váltása + Cambia tipo di granata + Alternar Modo de Granada + + + Normal Throw + Normaler Wurf + Lanzamiento normal + Normalny rzut + Normální hod + Lancer Normal + Нормальный бросок + Normál dobás + Lancio normale + Arremesso Normal + + + High Throw + Hoher Wurf + Lanzamiento alto + Rzut lobem + Vysoký hod + Lancer Haut + Высокий бросок + Magas dobás + Lancio verso l'alto + Arremesso Alto + + + Precise Throw + Präziser Wurf + Lanzamiento preciso + Precyzyjny rzut + Přesný hod + Lancer Précis + Точный бросок + Pontos dobás + Lancio preciso + Arremesso Preciso + + + Roll Grenade + Granate rollen + Rodar granada + Po ziemi + Po zemi + Lancer Roulé + Катить гранату + Gránát gurítása + Fai rotolare la granata + Rolar Granada + + + Drop Grenade + Granate fallenlassen + Soltar granada + Upuść granat + Upustit granát + Lâcher la grenade + Бросить себе под ноги + Gránát ejtése + Lascia la granata + Largar Granada + + + M84 Stun Grenade + M84 Blendgranate + Granada aturdidora M84 + M84 Grenade Incapacitante + Granat hukowy M84 + Omračující granát M84 + M84 светозвуковая граната + M84 Kábítógránát + Granata Stordente M84 + M84 granada de atordoamento + + + Also known as flashbang. Causes immediate flash blindness, deafness, tinnitus, and inner ear disturbance. + Verursacht temporäre Blind- und Taubheit. + Produce de manera inmediata ceguera, sordera, tinitus y afecta el oído interior. + Les grenades incapacitantes servent à désorienter ou distraire une menace pendant quelques secondes. + Granat ogłusza, nie zabijając przeciwnika. Detonacja daje efekt oślepiającego błysku i głośnego huku. + Omračující granát je taktická nesmrtící zbraň používaná při záchraně rukojmí a zvládání davu. + XM84 (M84) - граната нелетального действия, и предназначена для отвлечения и временного вывода из строя, либо дезориентации противника. Основное использование нашла при освобождении заложников, захвате преступников и террористов, а также проведении диверсионных миссий. + Villanógránát néven is ismert. Azonnali villanási vakságot, süketséget, fülzúgást, és belső füli zavart okoz. + Anche conosciuta come flashbang. Causa accecamento immediato, sensazioni di sposatezza, mancanza d'equilibrio e disturbi al timpano. + Um tipo de granada não-letal destinado a confundir, desorientar e distrair uma potencial ameaça. + + + M127A1 Hand Held Signal (White) + M127A1 Leuchtmittel (Weiß) + Světlice M127A1 (Bílá) + M127A1 Kézi Jelzőrakéta (Fehér) + M127A1 Bengala (Bianco) + Flara ręczna sygnałowa M127A1 (biała) + M127A1 Sinalizador (Branco) + M127A1 Фальшфейер (Белый) + Bengala M127A1 (Blanca) + M127A1 Feux à main (Blanc) + + + M127A1 Hand Held Signal (Red) + M127A1 Leuchtmittel (Rot) + Světlice M127A1 (Červená) + M127A1 Kézi Jelzőrakéta (Piros) + M127A1 Bengala (Rosso) + Flara ręczna sygnałowa M127A1 (czerwona) + M127A1 Sinalizador (Vermelho) + M127A1 Фальшфейер (Красный) + Bengala M127A1 (Roja) + M127A1 Feux à main (Rouge) + + + M127A1 Hand Held Signal (Green) + M127A1 Leuchtmittel (Grün) + Světlice M127A1 (Zelená) + M127A1 Kézi Jelzőrakéta (Zöld) + M127A1 Bengala (Verde) + Flara ręczna sygnałowa M127A1 (zielona) + M127A1 Sinalizador (Verde) + M127A1 Фальшфейер (Зелёный) + Bengala M127A1 (Verde) + M127A1 Feux à main (Vert) + + + M127A1 Hand Held Signal (Yellow) + M127A1 Leuchtmittel (Gelb) + Světlice M127A1 (Žlutá) + M127A1 Kézi Jelzőrakéta (Sárga) + M127A1 Bengala (Giallo) + Flara ręczna sygnałowa M127A1 (żółta) + M127A1 Sinalizador (Amarelo) + M127A1 Фальшфейер (Жёлтые) + Bengala M127A1 (Amarilla) + M127A1 Feux à main (Jaune) + + + White Hand Flare + Weiße Leuchtkugel, wird wie eine Granate geworfen. + Světlice (Bílá) + Kézi jelzőrakéta, Fehér színű + Bengala (Bianco) + Flara ręczna (biała) + Sinalizador (Branco) + Фальшфейер (Белый) + Bengala (Blanca) + Feux à main (Blanc) + + + Red Hand Flare + Rote Leuchtkugel, wird wie eine Granate geworfen. + Světlice (Červená) + Kézi jelzőrakéta, Piros színű + Bengala (Rosso) + Flara ręczna (czerwona) + Sinalizador (Vermelho) + Фальшфейер (Красный) + Bengala (Roja) + Feux à main (Rouge) + + + Green Hand Flare + Grüne Leuchtkugel, wird wie eine Granate geworfen. + Světlice (Zelená) + Kézi jelzőrakéta, Zöld színű + Bengala (Verde) + Flara ręczna (zielona) + Sinalizador (Verde) + Фальшфейер (Зелёный) + Bengala (Verde) + Feux à main (Vert) + + + Yellow Hand Flare + Gelbe Leuchtkugel, wird wie eine Granate geworfen. + Světlice (Žlutá) + Kézi jelzőrakéta, Sárga színű + Bengala (Giallo) + Flara ręczna (żółta) + Sinalizador (Amarelo) + Фальшфейер (Жёлтые) + Bengala (Amarilla) + Feux à main (Jaune) + + + M127A1 (White) + M127A1 (Weiß) + M127A1 (Bílá) + M127A1 (Blanc) + M127A1 (Fehér) + M127A1 (Bianco) + M127A1 (biała) + M127A1 (Branco) + M127A1 (Белый) + M127A1 (Blanca) + + + M127A1 (Red) + M127A1 (Rot) + M127A1 (Červená) + M127A1 (Rouge) + M127A1 (Piros) + M127A1 (Rosso) + M127A1 (czerwona) + M127A1 (Vermelho) + M127A1 (Красный) + M127A1 (Roja) + + + M127A1 (Green) + M127A1 (Grün) + M127A1 (Zelená) + M127A1 (Vert) + M127A1 (Zöld) + M127A1 (Verde) + M127A1 (zielona) + M127A1 (Verde) + M127A1 (Зелёный) + M127A1 (Verde) + + + M127A1 (Yellow) + M127A1 (Gelb) + M127A1 (Žlutá) + M127A1 (Jaune) + M127A1 (Sárga) + M127A1 (Giallo) + M127A1 (żółta) + M127A1 (Amarelo) + M127A1 (Жёлтые) + M127A1 (Amarilla) + + + \ No newline at end of file diff --git a/addons/hearing/stringtable.xml b/addons/hearing/stringtable.xml index 61be5206bf..ff787b1359 100644 --- a/addons/hearing/stringtable.xml +++ b/addons/hearing/stringtable.xml @@ -1,109 +1,110 @@  + - - - Ear Plugs - Ohrenstöpsel - Tapones para los oídos - Stopery do uszu - Špunty - Беруши - Bouchons Anti-Bruits - Füldugó - Protetor auricular - Tappi auricolari - - - Protective Ear Plugs allow the wearer to be near loud weaponry without damage to his hearing. - Schützende Ohrenstöpsel, die es dem Träger ermöglichen, sich in der Nähe lauter Waffen aufzuhalten. - Los tapones para los oídos permiten al usuario operar armamento ruidoso sin sufrir pérdida de audición. - Stopery do uszu umożliwiają użytkownikowi przebywać w pobliżu głośnej broni bez poniesienia konsekwencji jaką jest utrata słuchu. - Ochranné špunty umožňují uživateli, aby neutrpěl zranění jeho sluchu v blízkosti hlasitých zbraní. - Беруши позволяют избежать потери слуха при близкой громкой стрельбе. - Bouchons Anti-Bruits pour la prévention des traumatismes sonores aigus. - Erősebb hanghatásoktól védő füldugó, megakadályozza a nagy hanggal járó fegyverzettől való halláskárosodást. - Protetor para ouvidos permitem que o usuário esteja próximo a ruídos sem danificar sua audição. - Proteggono l'apparato uditivo, permettendo a chi li indossa di resistere ai suoni particolarmente forti senza alcun danno. - - - Earplugs in - Ohrenstöpsel drinnen - Poner tapones - Załóż stopery - Dát špunty do uší - Беруши надеты - Bouchons mis - Füldugó berakva - Protetores colocados - Indossa i tappi auricolari - - - Earplugs out - Ohrenstöpsel raus - Quitar tapones - Zdejmij stopery - Vyndat špunty z uší - Беруши сняты - Bouchons enlevés - Füldugó kivéve - Protetores retirados - Levati i tappi auricolari - - - Earplugs in - Ohrenstöpsel drinnen - Tapones puestos - Stopery założone - Špunty v uších - Беруши надеты - Bouchons mis - Füldugó berakva - Protetores colocados - Indossa i tappi auricolari - - - Earplugs out - Ohrenstöpsel raus - Tapones quitados - Stopery zdjęte - Špunty venku z uší - Беруши сняты - Bouchons enlevés - Füldugó kivéve - Protetores retirados - Levati i tappi auricolari - - - You have no ear plugs - Keine Ohrenstöpsel im Inventar - No tienes tapones para los oídos - Nie masz stoperów - Nemáš žádné špunty - У вас нет беруш - Vous n'avez pas de Bouchons Anti-Bruits - Nincs füldugód - Você não possui protetores auriculares - Non hai i tappi auricolari - - - No inventory space - Kein Platz im Inventar - Sin espacio en el inventario - Brak miejsca w ekwipunku - Pas de place dans l'inventaire - Není místo v inventáři - Non hai abbastanza spazio - Não há espaço no inventário - Nincs több hely - Нет места в инвентаре - - - Disable ear ringing - Deaktiviere Ohrfiepen - Desactivar zumbido de oídos - Отключить эффект баротравмы - Knalltrauma deaktivieren - Vypnout pískání v uších - - - + + + Ear Plugs + Ohrenstöpsel + Tapones para los oídos + Stopery do uszu + Špunty + Беруши + Bouchons Anti-Bruits + Füldugó + Protetor auricular + Tappi auricolari + + + Protective Ear Plugs allow the wearer to be near loud weaponry without damage to his hearing. + Schützende Ohrenstöpsel, die es dem Träger ermöglichen, sich in der Nähe lauter Waffen aufzuhalten. + Los tapones para los oídos permiten al usuario operar armamento ruidoso sin sufrir pérdida de audición. + Stopery do uszu umożliwiają użytkownikowi przebywać w pobliżu głośnej broni bez poniesienia konsekwencji jaką jest utrata słuchu. + Ochranné špunty umožňují uživateli, aby neutrpěl zranění jeho sluchu v blízkosti hlasitých zbraní. + Беруши позволяют избежать потери слуха при близкой громкой стрельбе. + Bouchons Anti-Bruits pour la prévention des traumatismes sonores aigus. + Erősebb hanghatásoktól védő füldugó, megakadályozza a nagy hanggal járó fegyverzettől való halláskárosodást. + Protetor para ouvidos permitem que o usuário esteja próximo a ruídos sem danificar sua audição. + Proteggono l'apparato uditivo, permettendo a chi li indossa di resistere ai suoni particolarmente forti senza alcun danno. + + + Earplugs in + Ohrenstöpsel drinnen + Poner tapones + Załóż stopery + Dát špunty do uší + Беруши надеты + Bouchons mis + Füldugó berakva + Protetores colocados + Indossa i tappi auricolari + + + Earplugs out + Ohrenstöpsel raus + Quitar tapones + Zdejmij stopery + Vyndat špunty z uší + Беруши сняты + Bouchons enlevés + Füldugó kivéve + Protetores retirados + Levati i tappi auricolari + + + Earplugs in + Ohrenstöpsel drinnen + Tapones puestos + Stopery założone + Špunty v uších + Беруши надеты + Bouchons mis + Füldugó berakva + Protetores colocados + Indossa i tappi auricolari + + + Earplugs out + Ohrenstöpsel raus + Tapones quitados + Stopery zdjęte + Špunty venku z uší + Беруши сняты + Bouchons enlevés + Füldugó kivéve + Protetores retirados + Levati i tappi auricolari + + + You have no ear plugs + Keine Ohrenstöpsel im Inventar + No tienes tapones para los oídos + Nie masz stoperów + Nemáš žádné špunty + У вас нет беруш + Vous n'avez pas de Bouchons Anti-Bruits + Nincsen füldugód + Você não possui protetores auriculares + Non hai i tappi auricolari + + + No inventory space + Kein Platz im Inventar + Sin espacio en el inventario + Brak miejsca w ekwipunku + Pas de place dans l'inventaire + Není místo v inventáři + Non hai abbastanza spazio + Não há espaço no inventário + Nincs több hely + Нет места в инвентаре + + + Disable ear ringing + Desactivar zumbido de oídos + Отключить эффект баротравмы + Knalltrauma deaktivieren + Vypnout pískání v uších + Fülcsengés letiltása + + + \ No newline at end of file diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index ef17cfb5e6..859d351f9c 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -1,40 +1,46 @@  + - - - Always display cursor for self interaction - Immer den Cursor für Selbst-Interaktionen anzeigen. - Mostrar siempre el cursor para la interacción propia - Всегда показывать курсор для взаимодействия с собой - Zobrazit kurzor v menu pro vlastní interakci - - - Interact Key - Fremdinteraktionsmenü-Taste - Tecla de interacción - Клавиша взаимодействия - Klávesa pro interakci - - - Self Interaction Key - Eigeninteraktionsmenü-Taste - Tecla de interacción propia - Клавиша взаимодействия (с собой) - Klávesa pro vlastní interakci - - - Self Actions - Selbst-Aktionen - Acciones propias - Действия с собой - Vlastní akce - - - Vehicle Actions - Fahrzeug-Aktionen - Acciones de vehículo - Действия на транспорте - Interakce s vozidly - - - + + + Always display cursor for self interaction + Immer den Cursor für Selbst-Interaktionen anzeigen. + Mostrar siempre el cursor para la interacción propia + Всегда показывать курсор для взаимодействия с собой + Zobrazit kurzor v menu pro vlastní interakci + Mindig legyen a saját cselekvés kurzorja látható + + + Interact Key + Fremdinteraktionsmenü-Taste + Tecla de interacción + Клавиша взаимодействия + Klávesa pro interakci + Cselekvő gomb + + + Self Interaction Key + Eigeninteraktionsmenü-Taste + Tecla de interacción propia + Клавиша взаимодействия (с собой) + Klávesa pro vlastní interakci + Saját cselekvő gomb + + + Self Actions + Selbst-Aktionen + Acciones propias + Действия с собой + Vlastní akce + Saját cselekvések + + + Vehicle Actions + Fahrzeug-Aktionen + Acciones de vehículo + Действия на транспорте + Interakce s vozidly + Járműves cselekvések + + + \ No newline at end of file diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index c1ec7ff6d9..0788773b34 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -1,687 +1,698 @@  + - - - Interactions - Interaktionen - Interacciones - Interakce - - - Torso - Torso - Torso - Trup - - - Head - Kopf - Cabeza - Hlava - - - Left Arm - Linker Arm - Brazo izquierdo - Levá paže - - - Right Arm - Rechter Arm - Brazo derecho - Pravá paže - - - Left Leg - Linkes Bein - Pierna izquierda - Levá noha - - - Right Leg - Rechtes Bein - Pierna derecha - Pravá hona - - - Weapon - Waffe - Arma - Zbraň - - - Interaction Menu - Interaktionsmenü - Menú de interacción - Menu interakcji - Menu interakce - Menu d'interaction - Меню взаимодействия - Interakció - Menu de Interação - Menù Interattivo - - - Interaction Menu (Self) - Interaktionsmenü (Selbst) - Menú de interacción (Propia) - Menu interakcji (na siebie) - Menu interakce (vlastní) - Menu d'interaction (Perso) - Меню взаимодействия (с собой) - Interakció (saját) - Menu de Interação (Individual) - Menù Interattivo (Individuale) - - - Open / Close Door - Tür öffnen / schließen - Abrir / Cerrar puerta - Otwórz / Zamknij drzwi - Otevřít / Zavřít dveře - Ouvrir / Fermer Portes - Открыть / Закрыть двери - Ajtó nyitás / zárás - Abrir / Fechar Porta - Apri / Chiudi la porta - - - Lock Door - Tür sperren - Bloquear puerta - Verrouiller Porte - Blocca la porta - Заблокировать дверь - Trancar Porta - Ajtó bezárása - Zablokuj drzwi - Zamknout dveře - - - Unlock Door - Tür entsperren - Desbloquear puerta - Déverrouiller Porte - Sblocca la porta - Разблокировать дверь - Destrancar Porta - Zár kinyitása - Odblokuj drzwi - Odemknout dveře - - - Locked Door - Tür gesperrt - Puerta bloqueada - Porte Verrouillée - Porta bloccata - Дверь заблокирована - Porta Trancada - Zárt ajtó - Zablokowano drzwi - Zamčené dveře - - - Unlocked Door - Tür entsperrt - Puerta desbloqueada - Porte Déverrouillée - Porta sbloccata - Дверь разблокирована - Porta Destrancada - Nyitott ajtó - Odblokowano drzwi - Odemčené dveře - - - Join group - Gruppe beitreten - Unirse al grupo - Dołącz do grupy - Přidat se do skupiny - Rejoindre Groupe - Вступить в группу - Csatlakozás - Unir-se ao grupo - Unisciti alla squadra - - - Leave Group - Gruppe verlassen - Dejar grupo - Opuść grupę - Opustit skupinu - Quitter Groupe - Выйти из группы - Csoport elhagyása - Deixar grupo - Lascia la squadra - - - Become Leader - Grp.-führung übern. - Asumir el liderazgo - Przejmij dowodzenie - Stát se velitelem - Devenir Leader - Стать лидером - Vezetés átvétele - Tornar-se Líder - Prendi il comando - - - DANCE! - TANZEN! - BAILAR! - TAŃCZ! - TANČIT! - Danse! - ТАНЦЕВАТЬ! - TÁNC! - DANCE! - Balla! - - - Stop Dancing - Tanzen abbrechen - Dejar de bailar - Przestań tańczyć - Přestat tancovat - Arrêter de danser - Прекратить танцевать - Tánc abbahagyása - Parar de dançar - Smetti di ballare - - - << Back - << Zurück - << Atrás - << Wstecz - << Zpět - << Retour - << Назад - << Vissza - << Voltar - << Indietro - - - Gestures - Gesten - Gestos - Gesty - Posunky - Signaux - Жесты - Kézjelek - Gestos - Segnali gestuali - - - Attack - Angreifen - Atacar - Do ataku - Zaútočit - Attaquer - Атаковать - Támadás - Atacar - Attaccare - - - Advance - Vordringen - Avanzar - Naprzód - Postoupit - Avancer - Продвигаться - Előre - Avançar - Avanzare - - - Go - Los - Adelante - Szybko - Jít - Aller - Идти - Mozgás - Mover-se - Muoversi - - - Follow - Folgen - Seguirme - Za mną - Následovat - Suivre - Следовать - Utánam - Seguir - Seguire - - - Point - Zeigen - Señalar - Wskazać - Ukázat - Pointer - Точка - Mutat - Apontar - Puntare a - - - Up - Aufstehen - Arriba - Do góry - Vztyk - Debout - Вверх - Fel - Acima - Alzarsi - - - Cover - Deckung - Cubrirse - Do osłony - Krýt se - A couvert - Укрыться - Fedezékbe - Proteger-se - Copertura - - - Cease Fire - Feuer einstellen - Alto el fuego - Wstrzymać ogień - Zastavit palbu - Halte au feu - Прекратить огонь - Tüzet szüntess - Cessar Fogo - Cessare il Fuoco - - - Freeze - Keine Bewegung - Alto - Stać - Stát - Halte - Замереть - Állj - Alto - Fermi - - - Hi - Hallo - Hola - Witaj - Ahoj - Salut - Привет - Szeva - Olá - Ciao - - - Yes - Ja - Si - Tak - Ano - Oui - Да - Igen - Sim - Si - - - No - Nein - No - Nie - Ne - Non - Нет - Nem - Não - No - - - Put weapon on back - Waffe wegstecken - Arma a la espalda - Umieść broń na plecach - Dát zbraň na záda - Arme à la bretelle - Повесить оружие на спину - Fegyvert hátra - Colocar arma nas costas - Metti l'arma in spalla - - - Tap Shoulder - Auf Schulter klopfen - Tocar el hombro - Klepnij w ramię - Poklepat na rameno - Taper sur l'épaule - Похлопать по плечу - Vállveregetés - Tocar ombro - Dai un colpetto - - - You were tapped on the RIGHT shoulder - Te tocaron el hombro DERECHO - Dir wurde auf die Rechte Schulter geklopft - On te tape sur l'épaule - Zostałeś klepnięty po ramieniu - Vállonveregettek - Někdo tě poklepal na PRAVÉ rameno - Вас похлопали по плечу - Você foi tocado no ombro - Ti è stato dato un colpetto sulla spalla - - - You were tapped on the LEFT shoulder. - Te tocaron el hombro IZQUIERDO. - Dir wurde auf die Linke Schulter geklopft - On te tape sur l'épaule. - Zostałeś klepnięty po ramieniu - Vállonveregettek - Někdo tě poklepal na LEVÉ rameno. - Вас похлопали по плечу - Você foi tocado no ombro. - Ti è stato dato un colpetto sulla spalla - - - Cancel - Abbrechen - Cancelar - Anuluj - Annuler - Zrušit - Annulla - Отменить - Cancelar - Mégse - - - Select - Wählen - Seleccionar - Wybierz - Sélectionner - Zvolit - Seleziona - Выбрать - Selecionar - Kiválaszt - - - Go Away! - Geh Weg! - Aléjate! - Odejdź! - Jděte pryč! - Allez-vous-en! - Уходите отсюда! - Tűnés! - Vá Embora! - Via di qui! - - - Get Down! - Auf Den Boden! - Al suelo! - Padnij! - K zemi! - A terre! - A földre! - Ложись! - Abaixe-se! - A Terra! - - - Team<br/>Management - Team<br/>Management - Gestión<br/>de equipo - Gestion<br/>d'équipe - Zarządzanie<br/>oddziałem - Správa<br/>týmu - Управление<br/>группой - Gerenciamento<br/>de Equipe - Organizzazione<br/>Squadra - Csapat<br/>kezelés - - - Red - Rot - Rojo - Rouge - Czerwony - Červený - Красный - Vermelha - Rosso - Piros - - - Green - Grün - Verde - Vert - Zielony - Zelený - Зеленый - Verde - Verde - Zöld - - - Blue - Blau - Azul - Bleu - Niebieski - Modrý - Синий - Azul - Blu - Kék - - - Yellow - Gelb - Amarillo - Jaune - Żółty - Žlutý - Желтый - Amarela - Giallo - Sárga - - - Join Team<br/>Red - Team Rot<br/>beitreten - Unirse al<br/>equipo rojo - Rejoindre<br/>Rouge - Dołącz do drużyny<br/>czerwonej - Připojit do<br/>Červeného týmu - Присоединиться<br/>к красной группе - Unir-se à<br/>Equipe Vermelha - Entra nella<br/>Squadra Rossa - Csatlakozás a<br/>piros csapathoz - - - Join Team<br/>Green - Team Grün<br/>beitreten - Unirse al<br/>equipo verde - Rejoindre<br/>Verte - Dołącz do<br/>drużyny zielonej - Připojit do<br/>Zeleného týmu - Присоединиться<br/>к зеленой группе - Unir-se à<br/>Equipe Verde - Entra nella<br/>Squadra Verde - Csatlakozás a<br/>zöld csapathoz - - - Join Team<br/>Blue - Team Blau<br/>beitreten - Unirse al<br/>equipo azul - Rejoindre<br/>Bleue - Dołącz do<br/>drużyny niebieskiej - Připojit do<br/>Modrého týmu - Присоединиться<br/>к синей группе - Unir-se à<br/>Equipe Azul - Entra nella<br/>Squadra Blu - Csatlakozás a<br/>kék csapathoz - - - Join Team<br/>Yellow - Team Gelb<br/>beitreten - Unirse al<br/>equipo amarillo - Rejoindre<br/>Jaune - Dołącz do<br/>drużyny żółtej - Připojit do<br/>Žlutého týmu - Присоединиться<br/>к желтой группе - Unir-se à<br/>Equipe Amarela - Entra nella<br/>Squadra Gialla - Csatlakozás a<br/>sárga csapathoz - - - You joined Team %1 - Du bist Team %1 beigetreten - Te has unido al equipo %1 - Tu as rejoint l'équipe %1 - Dołączyłeś do drużyny %1 - Připojil ses do %1 týmu - Вы присоединились к группе %1 - Você uniu-se à Equipe %1 - Sei entrato nella Squadra %1 - Csatlakoztál a %1 csapathoz - - - Leave Team - Team verlassen - Dejar equipo - Quitter l'équipe - Opuść drużynę - Opustit tým - Покинуть группу - Deixar Equipe - Lascia la Squadra - Csapat elhagyása - - - You left the Team - Du hast das Team verlassen - Has dejado el equipo - Tu as quitté l'équipe - Opuściłeś drużynę - Opustil si tým - Вы покинули группу - Você deixou a Equipe - Hai lasciato la squadra - Elhagytad a csapatot - - - Pardon - Begnadigen - Perdonar - Przebacz - Pardon - Pardon - Извините - Perdão - Perdona - Megbocsátás - - - Scroll - Scrollen - Przewiń - Défilement - Desplazar - Пролистать - Rolar - Scorri - Görgetés - Otáčení - - - Modifier Key - Modifikator - Modyfikator - Modifier la touche - Tecla modificadora - Клавиша-модификатор - Tecla Modificadora - Modifica Tasto - Módosító billentyű - Modifikátor - - - Not in Range - Außer Reichweite - Hors de portée. - Fuera de rango - Слишком далеко - Fora do Alcançe - Hatótávolságon kívül - Poza zasięgiem - Mimo dosah - - - Equipment - Ausrüstung - Equipamiento - Équipment - Ekwipunek - Vybavení - Felszerelés - Снаряжение - - - Push - Schieben - Empujar - Pousser - Pchnij - Odstrčit - Tolás - Толкать - - - Interact - Interagiere - Interakce - Взаимодействовать - Interakcja - Interactuar - - - Passengers - Fahrzeuginsassen - Pasajeros - Пассажиры - Pasažéři - - - + + + Interactions + Interaktionen + Interacciones + Interakce + Cselekvések + + + Torso + Torso + Torso + Trup + Testtörzs + + + Head + Kopf + Cabeza + Hlava + Fej + + + Left Arm + Linker Arm + Brazo izquierdo + Levá paže + Bal kar + + + Right Arm + Rechter Arm + Brazo derecho + Pravá paže + Jobb kar + + + Left Leg + Linkes Bein + Pierna izquierda + Levá noha + Bal láb + + + Right Leg + Rechtes Bein + Pierna derecha + Pravá hona + Jobb láb + + + Weapon + Waffe + Arma + Zbraň + Fegyver + + + Interaction Menu + Interaktionsmenü + Menú de interacción + Menu interakcji + Menu interakce + Menu d'interaction + Меню взаимодействия + Cselekvő menü + Menu de Interação + Menù Interattivo + + + Interaction Menu (Self) + Interaktionsmenü (Selbst) + Menú de interacción (Propia) + Menu interakcji (na siebie) + Menu interakce (vlastní) + Menu d'interaction (Perso) + Меню взаимодействия (с собой) + Cselekvő menü (saját) + Menu de Interação (Individual) + Menù Interattivo (Individuale) + + + Open / Close Door + Tür öffnen / schließen + Abrir / Cerrar puerta + Otwórz / Zamknij drzwi + Otevřít / Zavřít dveře + Ouvrir / Fermer Portes + Открыть / Закрыть двери + Ajtó nyitása / zárása + Abrir / Fechar Porta + Apri / Chiudi la porta + + + Lock Door + Tür sperren + Bloquear puerta + Verrouiller Porte + Blocca la porta + Заблокировать дверь + Trancar Porta + Ajtó bezárása + Zablokuj drzwi + Zamknout dveře + + + Unlock Door + Tür entsperren + Desbloquear puerta + Déverrouiller Porte + Sblocca la porta + Разблокировать дверь + Destrancar Porta + Zár kinyitása + Odblokuj drzwi + Odemknout dveře + + + Locked Door + Tür gesperrt + Puerta bloqueada + Porte Verrouillée + Porta bloccata + Дверь заблокирована + Porta Trancada + Zárt ajtó + Zablokowano drzwi + Zamčené dveře + + + Unlocked Door + Tür entsperrt + Puerta desbloqueada + Porte Déverrouillée + Porta sbloccata + Дверь разблокирована + Porta Destrancada + Nyitott ajtó + Odblokowano drzwi + Odemčené dveře + + + Join group + Gruppe beitreten + Unirse al grupo + Dołącz do grupy + Přidat se do skupiny + Rejoindre Groupe + Вступить в группу + Csatlakozás a csoporthoz + Unir-se ao grupo + Unisciti alla squadra + + + Leave Group + Gruppe verlassen + Dejar grupo + Opuść grupę + Opustit skupinu + Quitter Groupe + Выйти из группы + Csoport elhagyása + Deixar grupo + Lascia la squadra + + + Become Leader + Grp.-führung übern. + Asumir el liderazgo + Przejmij dowodzenie + Stát se velitelem + Devenir Leader + Стать лидером + Vezetés átvétele + Tornar-se Líder + Prendi il comando + + + DANCE! + TANZEN! + BAILAR! + TAŃCZ! + TANČIT! + Danse! + ТАНЦЕВАТЬ! + TÁNC! + DANCE! + Balla! + + + Stop Dancing + Tanzen abbrechen + Dejar de bailar + Przestań tańczyć + Přestat tancovat + Arrêter de danser + Прекратить танцевать + Tánc abbahagyása + Parar de dançar + Smetti di ballare + + + << Back + << Zurück + << Atrás + << Wstecz + << Zpět + << Retour + << Назад + << Vissza + << Voltar + << Indietro + + + Gestures + Gesten + Gestos + Gesty + Posunky + Signaux + Жесты + Kézjelek + Gestos + Segnali gestuali + + + Attack + Angreifen + Atacar + Do ataku + Zaútočit + Attaquer + Атаковать + Támadás + Atacar + Attaccare + + + Advance + Vordringen + Avanzar + Naprzód + Postoupit + Avancer + Продвигаться + Előre + Avançar + Avanzare + + + Go + Los + Adelante + Szybko + Jít + Aller + Идти + Mozgás + Mover-se + Muoversi + + + Follow + Folgen + Seguirme + Za mną + Následovat + Suivre + Следовать + Utánam + Seguir + Seguire + + + Point + Zeigen + Señalar + Wskazać + Ukázat + Pointer + Точка + Mutat + Apontar + Puntare a + + + Up + Aufstehen + Arriba + Do góry + Vztyk + Debout + Вверх + Fel + Acima + Alzarsi + + + Cover + Deckung + Cubrirse + Do osłony + Krýt se + A couvert + Укрыться + Fedezékbe + Proteger-se + Copertura + + + Cease Fire + Feuer einstellen + Alto el fuego + Wstrzymać ogień + Zastavit palbu + Halte au feu + Прекратить огонь + Tüzet szüntess + Cessar Fogo + Cessare il Fuoco + + + Freeze + Keine Bewegung + Alto + Stać + Stát + Halte + Замереть + Állj + Alto + Fermi + + + Hi + Hallo + Hola + Witaj + Ahoj + Salut + Привет + Helló + Olá + Ciao + + + Yes + Ja + Si + Tak + Ano + Oui + Да + Igen + Sim + Si + + + No + Nein + No + Nie + Ne + Non + Нет + Nem + Não + No + + + Put weapon on back + Waffe wegstecken + Arma a la espalda + Umieść broń na plecach + Dát zbraň na záda + Arme à la bretelle + Повесить оружие на спину + Fegyvert hátra + Colocar arma nas costas + Metti l'arma in spalla + + + Tap Shoulder + Auf Schulter klopfen + Tocar el hombro + Klepnij w ramię + Poklepat na rameno + Taper sur l'épaule + Похлопать по плечу + Vállveregetés + Tocar ombro + Dai un colpetto + + + You were tapped on the RIGHT shoulder + Te tocaron el hombro DERECHO + Dir wurde auf die Rechte Schulter geklopft + On te tape sur l'épaule + Zostałeś klepnięty po ramieniu + Megveregették a JOBB válladat. + Někdo tě poklepal na PRAVÉ rameno + Вас похлопали по плечу + Você foi tocado no ombro + Ti è stato dato un colpetto sulla spalla + + + You were tapped on the LEFT shoulder. + Te tocaron el hombro IZQUIERDO. + Dir wurde auf die Linke Schulter geklopft + On te tape sur l'épaule. + Zostałeś klepnięty po ramieniu + Megveregették a BAL válladat. + Někdo tě poklepal na LEVÉ rameno. + Вас похлопали по плечу + Você foi tocado no ombro. + Ti è stato dato un colpetto sulla spalla + + + Cancel + Abbrechen + Cancelar + Anuluj + Annuler + Zrušit + Annulla + Отменить + Cancelar + Mégse + + + Select + Wählen + Seleccionar + Wybierz + Sélectionner + Zvolit + Seleziona + Выбрать + Selecionar + Kiválaszt + + + Go Away! + Geh Weg! + Aléjate! + Odejdź! + Jděte pryč! + Allez-vous-en! + Уходите отсюда! + Tűnés! + Vá Embora! + Via di qui! + + + Get Down! + Auf Den Boden! + Al suelo! + Padnij! + K zemi! + A terre! + A földre! + Ложись! + Abaixe-se! + A Terra! + + + Team<br/>Management + Team<br/>Management + Gestión<br/>de equipo + Gestion<br/>d'équipe + Zarządzanie<br/>oddziałem + Správa<br/>týmu + Управление<br/>группой + Gerenciamento<br/>de Equipe + Organizzazione<br/>Squadra + Csapat<br/>kezelése + + + Red + Rot + Rojo + Rouge + Czerwony + Červený + Красный + Vermelha + Rosso + Piros + + + Green + Grün + Verde + Vert + Zielony + Zelený + Зеленый + Verde + Verde + Zöld + + + Blue + Blau + Azul + Bleu + Niebieski + Modrý + Синий + Azul + Blu + Kék + + + Yellow + Gelb + Amarillo + Jaune + Żółty + Žlutý + Желтый + Amarela + Giallo + Sárga + + + Join Team<br/>Red + Team Rot<br/>beitreten + Unirse al<br/>equipo rojo + Rejoindre<br/>Rouge + Dołącz do drużyny<br/>czerwonej + Připojit do<br/>Červeného týmu + Присоединиться<br/>к красной группе + Unir-se à<br/>Equipe Vermelha + Entra nella<br/>Squadra Rossa + Csatlakozás a<br/>piros csapathoz + + + Join Team<br/>Green + Team Grün<br/>beitreten + Unirse al<br/>equipo verde + Rejoindre<br/>Verte + Dołącz do<br/>drużyny zielonej + Připojit do<br/>Zeleného týmu + Присоединиться<br/>к зеленой группе + Unir-se à<br/>Equipe Verde + Entra nella<br/>Squadra Verde + Csatlakozás a<br/>zöld csapathoz + + + Join Team<br/>Blue + Team Blau<br/>beitreten + Unirse al<br/>equipo azul + Rejoindre<br/>Bleue + Dołącz do<br/>drużyny niebieskiej + Připojit do<br/>Modrého týmu + Присоединиться<br/>к синей группе + Unir-se à<br/>Equipe Azul + Entra nella<br/>Squadra Blu + Csatlakozás a<br/>kék csapathoz + + + Join Team<br/>Yellow + Team Gelb<br/>beitreten + Unirse al<br/>equipo amarillo + Rejoindre<br/>Jaune + Dołącz do<br/>drużyny żółtej + Připojit do<br/>Žlutého týmu + Присоединиться<br/>к желтой группе + Unir-se à<br/>Equipe Amarela + Entra nella<br/>Squadra Gialla + Csatlakozás a<br/>sárga csapathoz + + + You joined Team %1 + Du bist Team %1 beigetreten + Te has unido al equipo %1 + Tu as rejoint l'équipe %1 + Dołączyłeś do drużyny %1 + Připojil ses do %1 týmu + Вы присоединились к группе %1 + Você uniu-se à Equipe %1 + Sei entrato nella Squadra %1 + Csatlakoztál a %1 csapathoz + + + Leave Team + Team verlassen + Dejar equipo + Quitter l'équipe + Opuść drużynę + Opustit tým + Покинуть группу + Deixar Equipe + Lascia la Squadra + Csapat elhagyása + + + You left the Team + Du hast das Team verlassen + Has dejado el equipo + Tu as quitté l'équipe + Opuściłeś drużynę + Opustil si tým + Вы покинули группу + Você deixou a Equipe + Hai lasciato la squadra + Elhagytad a csapatot + + + Pardon + Begnadigen + Perdonar + Przebacz + Pardon + Pardon + Извините + Perdão + Perdona + Megbocsátás + + + Scroll + Scrollen + Przewiń + Défilement + Desplazar + Пролистать + Rolar + Scorri + Görgetés + Otáčení + + + Modifier Key + Modifikator + Modyfikator + Modifier la touche + Tecla modificadora + Клавиша-модификатор + Tecla Modificadora + Modifica Tasto + Módosító billentyű + Modifikátor + + + Not in Range + Außer Reichweite + Hors de portée. + Fuera de rango + Слишком далеко + Fora do Alcançe + Hatótávolságon kívül + Poza zasięgiem + Mimo dosah + + + Equipment + Ausrüstung + Equipamiento + Équipment + Ekwipunek + Vybavení + Felszerelés + Снаряжение + + + Push + Schieben + Empujar + Pousser + Pchnij + Odstrčit + Tolás + Толкать + + + Interact + Interagiere + Interakce + Взаимодействовать + Interakcja + Interactuar + Cselekvés + + + Passengers + Fahrzeuginsassen + Pasajeros + Пассажиры + Pasažéři + Utasok + + + \ No newline at end of file diff --git a/addons/inventory/stringtable.xml b/addons/inventory/stringtable.xml index 51d812a2f2..2eef29e502 100644 --- a/addons/inventory/stringtable.xml +++ b/addons/inventory/stringtable.xml @@ -1,19 +1,22 @@  + - - - Make Inventory Display Bigger - Erhöhe die angezeigte Inventargröße - Hacer la pantalla de inventario mas grande - Сделать окно инвентаря больше - Zvětšit zobrazení inventáře - - - 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. - 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. - 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. - Обычно, окно инвентаря зависит от размеров пользовательского интерфейса. Эта настройка позволяет увеличить размер окна инвентаря в пользовательском интерфейсе, не увеличивая размера шрифтов, так что отображется большее количество строк. - 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. - - - + + + Make Inventory Display Bigger + Erhöhe die angezeigte Inventargröße + Hacer la pantalla de inventario mas grande + Сделать окно инвентаря больше + Zvětšit zobrazení inventáře + Legyen a felszerelés menüje nagyobb + + + 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. + 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. + 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. + Обычно, окно инвентаря зависит от размеров пользовательского интерфейса. Эта настройка позволяет увеличить размер окна инвентаря в пользовательском интерфейсе, не увеличивая размера шрифтов, так что отображется большее количество строк. + 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. + Alaphelyzetben a kezelőfelület mérete skálázza a felszerelési menüt. Ez az opció engedélyezi a menü felskálázását, de megtartja a betűméreteket, így növelve a láthatóságot. + + + \ No newline at end of file From b72366f0f6ff15db1ce59623dc23a2aa1bb022bd Mon Sep 17 00:00:00 2001 From: commy2 Date: Mon, 13 Apr 2015 22:34:43 +0200 Subject: [PATCH 075/246] hide laser beam during day --- addons/laserpointer/functions/fnc_drawLaserpoint.sqf | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/addons/laserpointer/functions/fnc_drawLaserpoint.sqf b/addons/laserpointer/functions/fnc_drawLaserpoint.sqf index 31be95099a..82b989e470 100644 --- a/addons/laserpointer/functions/fnc_drawLaserpoint.sqf +++ b/addons/laserpointer/functions/fnc_drawLaserpoint.sqf @@ -97,11 +97,13 @@ if (!surfaceIsWater _pL) then { _pL = ASLtoATL _pL; }; -drawLine3D [ - _p0Pos, - _pL, - [[1,0,0,1], [0,1,0,1]] select _isGreen -]; +if (call EFUNC(common,ambientBrightness) < 0.2) then { + drawLine3D [ + _p0Pos, + _pL, + [[1,0,0,1], [0,1,0,1]] select _isGreen + ]; +}; _size = 2 * (_range - (positionCameraToWorld [0,0,0] distance _pL)) / _range; From 1b60a335a51faba2e353918a1bc5218817096512 Mon Sep 17 00:00:00 2001 From: Harakhti Date: Mon, 13 Apr 2015 23:03:09 +0200 Subject: [PATCH 076/246] Translation: J to M I feel burned out. This was very specifically long and tedious. --- addons/javelin/stringtable.xml | 33 +- addons/kestrel/stringtable.xml | 123 +- addons/laser_selfdesignate/stringtable.xml | 37 +- addons/laserpointer/stringtable.xml | 69 +- addons/logistics_uavbattery/stringtable.xml | 151 +- addons/logistics_wirecutter/stringtable.xml | 109 +- addons/magazinerepack/stringtable.xml | 196 +- addons/magazines/stringtable.xml | 974 ++++----- addons/maptools/stringtable.xml | 291 +-- addons/markers/stringtable.xml | 25 +- addons/medical/stringtable.xml | 2187 ++++++++++--------- addons/microdagr/stringtable.xml | 376 ++-- addons/missileguidance/stringtable.xml | 80 +- addons/movement/stringtable.xml | 88 +- 14 files changed, 2422 insertions(+), 2317 deletions(-) diff --git a/addons/javelin/stringtable.xml b/addons/javelin/stringtable.xml index ec929bffc1..3481cb4f0d 100644 --- a/addons/javelin/stringtable.xml +++ b/addons/javelin/stringtable.xml @@ -1,17 +1,20 @@  + - - - Lock Target (Hold) - Ziel aufschalten - Захватить цель (удерживать) - Zamknout cíl(držet) - - - Cycle Fire Mode - Wechsle Feuermodus - Переключение режимов огня - Cyklování režimů palby - - - + + + Lock Target (Hold) + Ziel aufschalten + Захватить цель (удерживать) + Zamknout cíl(držet) + Célpontra állás (Lenyomva tartott) + + + Cycle Fire Mode + Wechsle Feuermodus + Переключение режимов огня + Cyklování režimů palby + Tüzelési mód váltása + + + \ No newline at end of file diff --git a/addons/kestrel/stringtable.xml b/addons/kestrel/stringtable.xml index c811633f75..44cfc461f1 100644 --- a/addons/kestrel/stringtable.xml +++ b/addons/kestrel/stringtable.xml @@ -1,63 +1,64 @@  + - - - Approximate Temperature - Ungefähre Temperatur - Temperatura aproximada - Estimer la température - Przybliżona temperatura - Odhadovaná teplota - Hőmérséklet nagyábol - Примерная температура - - - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - - - Applied Ballistics Meter - Applied Ballistics Meter - Anemómetro balístico - Applied Ballistics Meter - Urządzenie do monitorowania pogody - Zařízení pro měření větru - Monitoraggio Balistico Attivo - Applied Ballistics Meter - Medidor Balístico Ativo - Метеостанция - - - Open Kestrel - Kestrel öffnen - Abrir Kestrel - Ouvrir Kestrel - Otwórz Kestrel - Otevřít Kestrel - Abrir Kestrel - Apri Kestrel - Kestrel bekapcsolása - Открыть Kestrel - - - Close Kestrel - Kestrel schließen - Cerrar Kestrel - Fermer Kestrel - Zamknij Kestrel - Zavřít Kestrel - Fechar Kestrel - Chiudi Kestrel - Kestrel kikapcsolása - Закрыть Kestrel - - - + + + Approximate Temperature + Ungefähre Temperatur + Temperatura aproximada + Estimer la température + Przybliżona temperatura + Odhadovaná teplota + Becsült hőmérséklet + Примерная температура + + + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + + + Applied Ballistics Meter + Applied Ballistics Meter + Anemómetro balístico + Applied Ballistics Meter + Urządzenie do monitorowania pogody + Zařízení pro měření větru + Monitoraggio Balistico Attivo + Alkalmazott ballisztikai mérőműszer + Medidor Balístico Ativo + Метеостанция + + + Open Kestrel + Kestrel öffnen + Abrir Kestrel + Ouvrir Kestrel + Otwórz Kestrel + Otevřít Kestrel + Abrir Kestrel + Apri Kestrel + Kestrel elővétele + Открыть Kestrel + + + Close Kestrel + Kestrel schließen + Cerrar Kestrel + Fermer Kestrel + Zamknij Kestrel + Zavřít Kestrel + Fechar Kestrel + Chiudi Kestrel + Kestrel elrakása + Закрыть Kestrel + + + \ No newline at end of file diff --git a/addons/laser_selfdesignate/stringtable.xml b/addons/laser_selfdesignate/stringtable.xml index 5da3fe8b46..23a81139b6 100644 --- a/addons/laser_selfdesignate/stringtable.xml +++ b/addons/laser_selfdesignate/stringtable.xml @@ -1,19 +1,22 @@  + - - - Laser<br/>Designator On - Lasermarkierer<br/>an - Laser<br/>Designador encendido - ЛЦУ<br/>ВКЛ - Laserový<br/>značkovač zapnut - - - Laser<br/>Designator Off - Lasermarkierer<br/>aus - Laser<br/>Designador apagado - ЛЦУ<br/>ВЫКЛ - Laserový<br/>značkovat vypnut - - - + + + Laser<br/>Designator On + Lasermarkierer<br/>an + Laser<br/>Designador encendido + ЛЦУ<br/>ВКЛ + Laserový<br/>značkovač zapnut + Lézeres<br/>Megjelölő Be + + + Laser<br/>Designator Off + Lasermarkierer<br/>aus + Laser<br/>Designador apagado + ЛЦУ<br/>ВЫКЛ + Laserový<br/>značkovat vypnut + Lézeres<br/>Megjelölő Ki + + + \ No newline at end of file diff --git a/addons/laserpointer/stringtable.xml b/addons/laserpointer/stringtable.xml index bf0dfb346a..302d354ab3 100644 --- a/addons/laserpointer/stringtable.xml +++ b/addons/laserpointer/stringtable.xml @@ -1,34 +1,39 @@  + - - - Laser Pointer (red) - Laserpointer (rot) - Лазерный прицел (красный) - Laserové ukazovátko (červené) - - - Laser Pointer (green) - Laserpointer (grün) - Лазерный прицел (зелёный) - Laserové ukazovátko (zelené) - - - Emits visible light. - Strahlt sichtbares Licht aus. - Испускает узкий пучок видимого света. - Vyzařuje viditelné světlo. - - - <t color='#9cf953'>Use: </t>Turn Laser ON/OFF - <t color='#9cf953'>Použití: </t>Zapnout/vypnout laser - <t color='#9cf953'>Utiliser : </t>laser on/off - <t color='#9cf953'>Benutzen: </t>Laser EIN/AUS - <t color='#9cf953'>Uso: </t>Laser ON/OFF - <t color='#9cf953'>Użyj: </t>wł./wył. lasera - <t color='#9cf953'>Uso: </t>Ativar/Desativar laser - <t color='#9cf953'>Использовать: </t>вкл/выкл лазер - <t color='#9cf953'>Usar: </t>encender/apagar láser - - - + + + Laser Pointer (red) + Laserpointer (rot) + Лазерный прицел (красный) + Laserové ukazovátko (červené) + Lézer-pointer (piros) + + + Laser Pointer (green) + Laserpointer (grün) + Лазерный прицел (зелёный) + Laserové ukazovátko (zelené) + Lézer-pointer (zöld) + + + Emits visible light. + Strahlt sichtbares Licht aus. + Испускает узкий пучок видимого света. + Vyzařuje viditelné světlo. + Látható fényt bocsát ki. + + + <t color='#9cf953'>Use: </t>Turn Laser ON/OFF + <t color='#9cf953'>Použití: </t>Zapnout/vypnout laser + <t color='#9cf953'>Utiliser : </t>laser on/off + <t color='#9cf953'>Benutzen: </t>Laser EIN/AUS + <t color='#9cf953'>Uso: </t>Laser ON/OFF + <t color='#9cf953'>Użyj: </t>wł./wył. lasera + <t color='#9cf953'>Uso: </t>Ativar/Desativar laser + <t color='#9cf953'>Использовать: </t>вкл/выкл лазер + <t color='#9cf953'>Usar: </t>encender/apagar láser + <t color='#9cf953'>Használat: </t>Lézer BE/KI kapcsolása + + + \ No newline at end of file diff --git a/addons/logistics_uavbattery/stringtable.xml b/addons/logistics_uavbattery/stringtable.xml index 27ae24999f..003585f2b1 100644 --- a/addons/logistics_uavbattery/stringtable.xml +++ b/addons/logistics_uavbattery/stringtable.xml @@ -1,77 +1,78 @@  + - - - Drone is full - Drohne ist voll - El VANT está lleno - L'UAV est chargé - Dron jest naładowany - A drón fel van töltve - Dron je nabitý - O VANT está cheio - Il drone è pieno - БПЛА заполнен - - - You need a UAV Battery - Du brauchst eine UAV-Batterie - Necesitas una batería para VANT - Pas de batterie UAV - Potrzebujesz baterii UAV - Szükséged van egy UAV akkumulátorra - Potřebuješ UAV baterii - Você precisa de uma Bateria para VANT - Hai bisogno di una Batteria UAV - Требуется аккумулятор для БПЛА - - - Recharge - Aufladen - Recargar - Recharger - Naładuj - Feltöltés - Dobít - Recarregar - Ricarica - Зарядить - - - UAV Battery - UAV-Batterie - Batería para VANT - Batterie UAV - Bateria UAV - UAV akkumulátor - UAV baterie - Bateria para VANT - Batteria UAV - Аккумулятор БПЛА - - - Used to refuel Carried UAV's - Verwendet zum Aufladen von tragbaren UAV's - Usada para reabastecer el VANT - Utilisée pour recharger l'UAV - Używana do naładowania UAV - Hordozható UAV-ok működéséhez való akkumulátor - Používané k dobíjení UAV - Usada para reabastecer VANT - Usata per ricaricare la Batteria dell'UAV - Используется для зарядки БПЛА - - - Recharging ... - Aufladen ... - Recargando ... - Rechargement ... - Ładowanie ... - Akku feltöltése ... - Dobíjení ... - Recarregando ... - In ricarica ... - Заряжается ... - - - + + + Drone is full + Drohne ist voll + El VANT está lleno + L'UAV est chargé + Dron jest naładowany + A drón fel van töltve + Dron je nabitý + O VANT está cheio + Il drone è pieno + БПЛА заполнен + + + You need a UAV Battery + Du brauchst eine UAV-Batterie + Necesitas una batería para VANT + Pas de batterie UAV + Potrzebujesz baterii UAV + Szükséged van egy UAV akkumulátorra + Potřebuješ UAV baterii + Você precisa de uma Bateria para VANT + Hai bisogno di una Batteria UAV + Требуется аккумулятор для БПЛА + + + Recharge + Aufladen + Recargar + Recharger + Naładuj + Feltöltés + Dobít + Recarregar + Ricarica + Зарядить + + + UAV Battery + UAV-Batterie + Batería para VANT + Batterie UAV + Bateria UAV + UAV akkumulátor + UAV baterie + Bateria para VANT + Batteria UAV + Аккумулятор БПЛА + + + Used to refuel Carried UAV's + Verwendet zum Aufladen von tragbaren UAV's + Usada para reabastecer el VANT + Utilisée pour recharger l'UAV + Używana do naładowania UAV + Hordozható UAV-k feltöltéséhez való akkumulátor + Používané k dobíjení UAV + Usada para reabastecer VANT + Usata per ricaricare la Batteria dell'UAV + Используется для зарядки БПЛА + + + Recharging ... + Aufladen ... + Recargando ... + Rechargement ... + Ładowanie ... + Akku feltöltése ... + Dobíjení ... + Recarregando ... + In ricarica ... + Заряжается ... + + + \ No newline at end of file diff --git a/addons/logistics_wirecutter/stringtable.xml b/addons/logistics_wirecutter/stringtable.xml index 1959ed1d50..c7c0f60738 100644 --- a/addons/logistics_wirecutter/stringtable.xml +++ b/addons/logistics_wirecutter/stringtable.xml @@ -1,55 +1,58 @@  + - - - Wirecutter - Drahtschneider - Cortador de cables - Клещи-кусачки - Štípací kleště - - - Wirecutter - Schneidet Draht. - Cortador de cables - Позволяют быстро перекусывать сеточные конструкции. - Štípačky - - - Cut Fence - Zaun schneiden - Cortar alambrado - Przetnij płot - Přestřihnout plot - Cisailler Clôture - Cortar Cerca - Taglia - Drótkerítés átvágása - Разрезать забор - - - Cutting Fences / Wires ... - Zaun / Draht schneiden ... - Cortando alambrado / cables ... - Przecinanie płotu / drutów ... - Přestřihnout plot / dráty ... - Cisaille l'obstacle ... - Cortando Cerca / Arame ... - Sto tagliando ... - Drótok elvágása ... - Разрезаем забор / провода ... - - - Fence cut - Zaun geschnitten - Alambrado cortado - Płot przecięty - Plot přestřižen - Clôture cisaillée - Cerca cortada - Fatto! - Drótkerítés átvágva - Забор разрезан - - - + + + Wirecutter + Drahtschneider + Cortador de cables + Клещи-кусачки + Štípací kleště + Drótvágó + + + Wirecutter + Schneidet Draht. + Cortador de cables + Позволяют быстро перекусывать сеточные конструкции. + Štípačky + Drótok, huzalok, és kábelek vágására alkalmas olló. + + + Cut Fence + Zaun schneiden + Cortar alambrado + Przetnij płot + Přestřihnout plot + Cisailler Clôture + Cortar Cerca + Taglia + Drótkerítés átvágása + Разрезать забор + + + Cutting Fences / Wires ... + Zaun / Draht schneiden ... + Cortando alambrado / cables ... + Przecinanie płotu / drutów ... + Přestřihnout plot / dráty ... + Cisaille l'obstacle ... + Cortando Cerca / Arame ... + Sto tagliando ... + Drótok elvágása ... + Разрезаем забор / провода ... + + + Fence cut + Zaun geschnitten + Alambrado cortado + Płot przecięty + Plot přestřižen + Clôture cisaillée + Cerca cortada + Fatto! + Drótkerítés átvágva + Забор разрезан + + + \ No newline at end of file diff --git a/addons/magazinerepack/stringtable.xml b/addons/magazinerepack/stringtable.xml index 2124966e23..ddf652c147 100644 --- a/addons/magazinerepack/stringtable.xml +++ b/addons/magazinerepack/stringtable.xml @@ -1,98 +1,102 @@  + - - - Repack<br/>Magazines - Magazine<br/>umpacken - Reorganizar<br/>cargadores - Réorganiser<br/>chargeurs - Przepakuj<br/>magazynki - Přepáskovat<br/>Zásobníky - Ricarica<br/>Caricatori - Reorganizar<br/>Carregadores - Újratárazás<br/> - Перепаковать<br/>магазины - - - Select Magazine Menu - Magazinauswahlmenü - Menú de selección de cargador - Sélectionner menu des chargeurs - Menu wyboru magazynków - Zvolit Menu zásobníků - Seleziona Menù di Ricarica - Menu de Seleção de Carregador - Fegyvertár menü kiválasztás - Меню выбора магазинов - - - Select Mag - Magazin auswählen - Seleccionar cargador - Sélectionner chargeur - Wybierz magazynek - Zvolit zásobník - Seleziona Caricatore - Selecionar Carregador - Tár kiválasztása - Выбрать магазин - - - Repacking Magazines ... - Magazine umpacken ... - Reorganizando cargadores ... - Réorganisation des chargeurs ... - Przepakowywanie magazynków ... - Páskuji zásobníky ... - Sto ricaricando le munizioni ... - Reorganizando Carregadores ... - Újratárazás ... - Перепаковка магазинов ... - - - Repacked Magazines - Magazine umgepackt - Cargadores reorganizados - Chargeurs réorganisés - Magazynki przepakowane - Přepáskované zásobníky - Caricatore ricaricato - Carregadores Reorganizados - Újratárazott tárak - Магазины перепакованы - - - %1 full mag(s) and %2 extra round(s) - %1 volle(s) Magazin(e) und %2 übrig gebliebene Patrone(n) - %1 cargador(es) completo(s) y %2 bala(s) extra(s) - %1 chargeur(s) plein(s) et %2 cartouche(s) en rab - %1 pełnych magazynków i %2 dodatkowych naboi - %1 plný zásobník(y) a %2 munice navíc - %1 caricatore/i pieno e %2 munizioni extra - %1 carregador(es) cheio(s) e %2 disparo(s) a mais - %1 tejles tár és %2 extra lőszer. - %1 полных магазина(ов) и %2 патрона(ов) - - - Repacking Finished - Wiederverpacken Fertig - Reembalaje finalizado - Перепаковка завершена - Páskování dokončeno - - - Repacking Interrupted - Umpacken Unterbrochen - Reembalaje interrumpido - Перепаковка прервана - Páskování přerušeno - - - %1 Full and %2 Partial - %1 Vollständigen und %2 Teilweisen - %1 Total y %2 Parcial - %1 полных и %2 неполных - %1 plný a %2 částečně - - - + + + Repack<br/>Magazines + Magazine<br/>umpacken + Reorganizar<br/>cargadores + Réorganiser<br/>chargeurs + Przepakuj<br/>magazynki + Přepáskovat<br/>Zásobníky + Ricarica<br/>Caricatori + Reorganizar<br/>Carregadores + Újratárazás<br/> + Перепаковать<br/>магазины + + + Select Magazine Menu + Magazinauswahlmenü + Menú de selección de cargador + Sélectionner menu des chargeurs + Menu wyboru magazynków + Zvolit Menu zásobníků + Seleziona Menù di Ricarica + Menu de Seleção de Carregador + Fegyvertár menü kiválasztás + Меню выбора магазинов + + + Select Mag + Magazin auswählen + Seleccionar cargador + Sélectionner chargeur + Wybierz magazynek + Zvolit zásobník + Seleziona Caricatore + Selecionar Carregador + Tár kiválasztása + Выбрать магазин + + + Repacking Magazines ... + Magazine umpacken ... + Reorganizando cargadores ... + Réorganisation des chargeurs ... + Przepakowywanie magazynków ... + Páskuji zásobníky ... + Sto ricaricando le munizioni ... + Reorganizando Carregadores ... + Újratárazás ... + Перепаковка магазинов ... + + + Repacked Magazines + Magazine umgepackt + Cargadores reorganizados + Chargeurs réorganisés + Magazynki przepakowane + Přepáskované zásobníky + Caricatore ricaricato + Carregadores Reorganizados + Újratárazott tárak + Магазины перепакованы + + + %1 full mag(s) and %2 extra round(s) + %1 volle(s) Magazin(e) und %2 übrig gebliebene Patrone(n) + %1 cargador(es) completo(s) y %2 bala(s) extra(s) + %1 chargeur(s) plein(s) et %2 cartouche(s) en rab + %1 pełnych magazynków i %2 dodatkowych naboi + %1 plný zásobník(y) a %2 munice navíc + %1 caricatore/i pieno e %2 munizioni extra + %1 carregador(es) cheio(s) e %2 disparo(s) a mais + %1 teljes tár és %2 extra lőszer + %1 полных магазина(ов) и %2 патрона(ов) + + + Repacking Finished + Wiederverpacken Fertig + Reembalaje finalizado + Перепаковка завершена + Páskování dokončeno + Újratárazás befejezve + + + Repacking Interrupted + Umpacken Unterbrochen + Reembalaje interrumpido + Перепаковка прервана + Páskování přerušeno + Újratárazás megszakítva + + + %1 Full and %2 Partial + %1 Vollständigen und %2 Teilweisen + %1 Total y %2 Parcial + %1 полных и %2 неполных + %1 plný a %2 částečně + %1 teljes és %2 részleges + + + \ No newline at end of file diff --git a/addons/magazines/stringtable.xml b/addons/magazines/stringtable.xml index db637f8064..4a4242eb0c 100644 --- a/addons/magazines/stringtable.xml +++ b/addons/magazines/stringtable.xml @@ -1,490 +1,490 @@  - + - - - - 6.5mm 30Rnd Tracer IR-DIM Mag - 6,5 mm Nyomjelző IR-DIM 30-as Tár - 6,5 mm 30-Schuss-Magazin Leuchtspur IR-DIM - Cargador de 30 balas trazadoras IR-DIM de 6,5mm - Ch. 6,5mm 30Cps Traçantes IR-DIM - Magazynek 6,5mm 30rd Smugacz IR-DIM - 6.5mm 30ks Svítící IR-DIM Zásobník - Carregador de 30 projéteis traçantes IR-DIM de 6,5mm - Caricatore 6.5mm 30Rnd Traccianti IR-DIM - Магазин из 30-ти 6.5 мм трассирующих под ПНВ - - - 6.5mm IR-DIM - 6,5 mm IR-DIM - 6,5mm IR-DIM - 6,5mm IR-DIM - 6,5mm IR-DIM - 6,5mm IR-DIM - 6.5mm IR-DIM - 6,5mm IR-DIM - 6.5 IR-DIM - 6.5 мм ИК-трассирующие - - - Caliber: 6.5x39 mm Tracer IR-DIM<br />Rounds: 30<br />Used in: MX/C/M/SW/3GL - Kaliber: 6,5x39 mm Nyomjelző IR-DIM<br />Lőszerek: 30<br />Használható: MX/C/M/SW/3GL - Kaliber: 6,5x39 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL - Calibre: 6,5x39 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL - Calibre: 6,5x39 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL - Kaliber: 6,5 x 39 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL - Ráže: 6.5x39 mm Svítící IR-DIM<br />Munice: 30<br />Použití: MX/C/M/SW/3GL - Calibre: 6,5x39 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL - Calibro: 6.5x39 mm Traccianti IR-DIM <br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL - Калибр: 6.5x39 мм трассирующие под ПНВ<br />Патронов: 30<br />Применимы в: MX/C/M/SW/3GL - - - 6.5mm 30Rnd SD Mag - 6,5 mm Hangtompítós 30-as Tár - 6,5 mm 30-Schuss-Magazin SD - Cargador de 30 balas SD de 6,5mm - Ch. 6,5mm 30Cps SD - Magazynek 6,5mm 30rd SD - 6.5mm 30ks SD Zásobník - Carregador de 30 projéteis SD de 6,5mm - Caricatore 6.5mm 30Rnd Sil. - Магазин из 30-ти 6.5 мм дозвуковых - - - 6.5mm SD - 6,5 mm Hangtompítós - 6,5mm SD - 6,5mm SD - 6,5mm SD - 6,5mm SD - 6.5mm SD - 6,5mm SD - 6.5mm Sil. - 6.5 мм дозвуковые - - - Caliber: 6.5x39 mm SD<br />Rounds: 30<br />Used in: MX/C/M/SW/3GL - Kaliber: 6,5x39 mm Hangtompítós<br />Lőszerek: 30<br />Használható: MX/C/M/SW/3GL - Kaliber: 6,5x39 mm SD<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL - Calibre: 6,5x39 mm SD<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL - Calibre: 6,5x39 mm SD<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL - Kaliber: 6,5 x 39 mm SD<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL - Ráže: 6.5x39 mm SD<br />Munice: 30<br />Použití: MX/C/M/SW/3GL - Calibre: 6,5x39 mm SD<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL - Calibro: 6.5x39 mm Sil.<br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL - Калибр: 6.5x39 мм дозвуковые<br />Патронов: 30<br />Применимы в: MX/C/M/SW/3GL - - - 6.5mm 30Rnd AP Mag - 6,5 mm Páncéltörő 30-as Tár - 6,5 mm 30-Schuss-Magazin AP - Cargador de 30 balas AP de 6,5mm - Ch. 6,5mm 30Cps AP - Magazynek 6,5mm 30rd AP - 6.5mm 30ks AP Zásobník - Carregador de 30 projéteis AP de 6,5mm - Caricatore 6.5mm 30Rnd AP - Магазин из 30-ти 6.5 мм бронебойных - - - 6.5mm AP - 6,5 mm Páncéltörő - 6,5mm AP - 6,5mm AP - 6,5mm AP - 6,5mm AP - 6.5mm AP - 6,5mm AP - 6.5mm AP - 6.5 мм бронебойные - - - Caliber: 6.5x39 mm AP<br />Rounds: 30<br />Used in: MX/C/M/SW/3GL - Kaliber: 6,5x39 mm Páncéltörő<br />Lőszerek: 30<br />Használható: MX/C/M/SW/3GL - Kaliber: 6,5x39 mm AP<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL - Calibre: 6,5x39 mm AP<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL - Calibre: 6,5x39 mm AP<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL - Kaliber: 6,5 x 39 mm AP<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL - Ráže: 6.5x39 mm AP<br />Munice: 30<br />Použití: MX/C/M/SW/3GL - Calibre: 6,5x39 mm AP<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL - Calibro: 6.5x39 mm AP<br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL - Калибр: 6.5x39 мм бронебойные<br />Патронов: 30<br />Применимы в: MX/C/M/SW/3GL - - - - 6.5mm 30Rnd Tracer IR-DIM Mag - 6,5mm IR-DIM Nyomjelző 30-as Tár - 6,5 mm 30-Schuss-Magazin Leuchtspur IR-DIM - Cargador de 30 balas trazadoras IR-DIM de 6,5mm - Ch. 6,5mm 30Cps Traçantes IR-DIM - Magazynek 6,5mm 30rd Smugacz IR-DIM - 6.5mm 30ks Svítící IR-DIM Zásobník - Carregador de 30 projéteis traçantes IR-DIM de 6,5mm - Caricatore 6.5mm 30Rnd Traccianti IR-DIM - Магазин из 30-ти 6.5 мм трассирующих под ПНВ - - - 6.5mm IR-DIM - 6,5mm IR-DIM - 6,5mm IR-DIM - 6,5mm IR-DIM - 6,5mm IR-DIM - 6,5mm IR-DIM - 6.5mm IR-DIM - 6,5mm IR-DIM - 6.5mm IR-DIM - 6.5 мм ИК-трассирующие - - - Caliber: 6.5x39 mm Tracer IR-DIM<br />Rounds: 30<br />Used in: Katiba - Kaliber: 6,5x39 mm Nyomjelző IR-DIM<br />Lőszerek: 30<br />Használható: Katiba - Kaliber: 6,5x39 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: Katiba - Calibre: 6,5x39 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: Katiba - Calibre: 6,5x39 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: Katiba - Kaliber: 6,5x39 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: Katiba - Ráže: 6.5x39 mm Svítící IR-DIM<br />Munice: 30<br />Použití: Katiba - Calibre: 6,5x39 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: Katiba - Calibro: 6.5x39 mm Tracciant IR-DIM<br />Munizioni: 30<br />In uso su: Katiba - Калибр: 6.5x39 мм трассирующие под ПНВ<br />Патронов: 30<br />Применимы в: Katiba - - - 6.5mm 30Rnd SD Mag - 6,5 mm Hangtompítós 30-as Tár - 6,5 mm 30-Schuss-Magazin SD - Cargador de 30 balas SD de 6,5mm - Ch. 6,5mm 30Cps SD - Magazynek 6,5mm 30rd SD - 6.5mm 30ks SD Zásobník - Carregador de 30 projéteis SD de 6,5mm - Caricatore 6.5mm 30Rnd Sil. - Магазин из 30-ти 6.5 мм дозвуковых - - - 6.5mm SD - 6,5 mm Hangtompítós - 6,5mm SD - 6,5mm SD - 6,5mm SD - 6,5mm SD - 6.5mm SD - 6,5mm SD - 6.5mm Sil. - 6.5 мм дозвуковые - - - Caliber: 6.5x39 mm SD<br />Rounds: 30<br />Used in: Katiba - Kaliber: 6,5x39 mm Hangtompítós<br />Lőszerek: 30<br />Használható: Katiba - Kaliber: 6,5x39 mm SD<br />Patronen: 30<br />Eingesetzt von: Katiba - Calibre: 6,5x39 mm SD<br />Balas: 30<br />Se usa en: Katiba - Calibre: 6,5x39 mm SD<br />Cartouches: 30<br />Utilisé dans: Katiba - Kaliber: 6,5 x 39 mm SD<br />Naboje: 30<br />Używane w: Katiba - Ráže: 6.5x39 mm SD<br />Munice: 30<br />Použití: Katiba - Calibre: 6,5x39 mm SD<br />Projéteis: 30<br />Usado em: Katiba - Calibro: 6.5x39 mm Sil.<br />Munizioni: 30<br />In uso su: Katiba - Калибр: 6.5x39 мм дозвуковые<br />Патронов: 30<br />Применимы в: Katiba - - - 6.5mm 30Rnd AP Mag - 6,5 mm Páncéltörő 30-as Tár - 6,5 mm 30-Schuss-Magazin AP - Cargador de 30 balas AP de 6,5mm - Ch. 6,5mm 30Cps AP - Magazynek 6,5mm 30rd AP - 6.5mm 30ks AP Zásobník - Carregador de 30 projéteis AP de 6,5mm - Caricatore 6.5mm 30Rnd AP - Магазин из 30-ти 6.5 мм бронебойных - - - 6.5mm AP - 6,5 mm Páncéltörő - 6,5mm AP - 6,5mm AP - 6,5mm AP - 6,5mm AP - 6.5mm AP - 6,5mm AP - 6.5mm AP - 6.5 мм бронебойные - - - Caliber: 6.5x39 mm AP<br />Rounds: 30<br />Used in: Katiba - Kaliber: 6,5x39 mm Páncéltörő<br />Lőszerek: 30<br />Használható: Katiba - Kaliber: 6,5x39 mm AP<br />Patronen: 30<br />Eingesetzt von: Katiba - Calibre: 6,5x39 mm AP<br />Balas: 30<br />Se usa en: Katiba - Calibre: 6,5x39 mm AP<br />Cartouches: 30<br />Utilisé dans: Katiba - Kaliber: 6,5 x 39 mm AP<br />Pociski: 30<br />Używane w: Katiba - Ráže: 6.5x39 mm AP<br />Munice: 30<br />Použití: Katiba - Calibre: 6,5x39 mm AP<br />Projéteis: 30<br />Usado em: Katiba - Calibro: 6.5x39 mm AP<br />Munizioni: 30<br />In uso su: Katiba - Калибр: 6.5x39 мм бронебойные<br />Патронов: 30<br />Применимы в: Katiba - - - - 5.56mm 30rnd Tracer IR-DIM Mag - 5,56 mm Nyomjelző IR-DIM 30-as Tár - 5,56 mm 30-Schuss-Magazin Leuchtspur IR-DIM - Cargador de 30 balas trazadoras IR-DIM de 5,56mm - Ch. 5,56mm 30Cps Traçantes IR-DIM - Magazynek 5,56mm 30rd Smugacz IR-DIM - 5.56mm 30ks Svítící IR-DIM Zásobník - Carregador de 30 projéteis traçantes IR-DIM de 5,56mm - Caricatore 5.56mm 30rnd Traccianti IR-DIM - Магазин из 30-ти 5.56 мм трассирующих под ПНВ - - - 5.56mm IR-DIM - 5,56 mm IR-DIM - 5,56mm IR-DIM - 5,56mm IR-DIM - 5,56mm IR-DIM - 5,56mm IR-DIM - 5.56mm IR-DIM - 5,56mm IR-DIM - 5.56mm IR-DIM - 5.56 мм ИК-трассирующие - - - Caliber: 5.56x45 mm Tracer IR-DIM<br />Rounds: 30<br />Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56x45 mm Nyomjelző IR-DIM<br />Lőszerek: 30<br />Használható: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56x45 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56 x 45 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Ráže: 5.56x45 mm Svítící IR-DIM<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibro: 5.56x45 mm Traccianti IR-DIM<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Калибр: 5.56x45 мм трассирующие под ПНВ<br />Патронов: 30<br />Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - - - 5.56mm 30Rnd SD Mag - 5,56 mm Hangtompítós 30-as Tár - 5,56 mm 30-Schuss-Magazin SD - Cargador de 30 balas SD de 5,56 mm - Ch. 5,56mm 30Cps SD - Magazynek 5,56mm 30rd SD - 5.56mm 30ks SD Zásobník - Carregador de 30 projéteis SD de 5,56mm - Caricatore 5.56mm 30Rnd Sil. - Магазин из 30-ти 5.56 мм дозвуковых - - - 5.56mm SD - 5,56 mm Hangtompítós - 5,56mm SD - 5,56 mm SD - 5,56mm SD - 5,56mm SD - 5.56mm SD - 5,56mm SD - 5.56 Sil. - 5.56 мм дозвуковые - - - Caliber: 5.56x45 mm SD<br />Rounds: 30<br />Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56x45 mm Hangtompítós<br />Lőszerek: 30<br />Használható: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56x45 mm SD<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm SD<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5.56x45 mm SD<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56 x 45 mm SD<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Ráže: 5.56x45 mm SD<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm SD<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibro: 5.56x45 mm Sil.<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Калибр: 5.56x45 мм дозвуковые<br />Патронов: 30<br />Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - - - 5.56mm 30Rnd AP Mag - 5,56 mm Páncéltörő 30-as Tár - 5,56 mm 30-Schuss-Magazin AP - Cargador de 30 balas AP de 5,56mm - Ch. 5,56mm 30Cps AP - Magazynek 5,56mm 30rd AP - 5.56mm 30ks AP Zásobník - Carregador de 30 projéteis AP de 5,56mm - Caricatore 5.56mm 30Rnd AP - Магазин из 30-ти 5.56 мм бронебойных - - - 5.56mm AP - 5,56 mm Páncéltörő - 5,56mm AP - 5,56mm AP - 5,56mm AP - 5,56mm AP - 5.56mm AP - 5,56mm AP - 5.56mm AP - 5.56 мм бронебойные - - - Caliber: 5.56x45 mm AP<br />Rounds: 30<br />Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56x45 mm Páncéltörő<br />Lőszerek: 30<br />Használható: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56x45 mm AP<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm AP<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm AP<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56 x 45 mm AP<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Ráže: 5.56x45 mm AP<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm AP<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibro: 5.56x45 mm AP<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Калибр: 5.56x45 мм бронебойные<br />Патронов: 30<br />Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - - - - 7.62mm 20rnd Tracer Mag - 7,62 mm Nyomjelző IR-DIM 20-as Tár - 7,62 mm 20-Schuss-Magazin Leuchtspur - Cargador de 20 balas trazadores de 7,62mm - Ch. 7,62mm 20Cps Traçantes - Magazynek 7,62mm 20rd Smugacz - 7.62mm 20ks Svítící Zásobník - Carregador de 20 projéteis traçantes de 7,62mm - Caricatore 7.62mm 20Rnd Traccianti - Магазин из 20-ти 7.62 мм трассирующих - - - 7.62mm Tracer - 7,62 mm Nyomjelző - 7,62mm Leuchtspur - 7,62mm Trazadora - 7,62mm Traçantes - 7,62mm Smugacz - 7.62mm Svítící - 7,62mm Traçante - 7.62mm Traccianti - 7.62 мм трассирущие - - - Caliber: 7.62x51 mm Tracer<br />Rounds: 20<br />Used in: Mk18 ABR - Kaliber: 7,62x51 mm Nyomjelző<br />Lőszerek: 20<br />Használható: Mk18 ABR - Kaliber: 7,62x51 mm Leuchtspur<br />Patronen: 20<br />Eingesetzt von: EBR - Calibre: 7,62x51 mm Trazadora<br />Balas: 20<br />Se usa en: Mk18 ABR - Calibre: 7,62x51 mm Traçantes<br />Cartouches: 20<br />Utilisé dans: EBR - Kaliber: 7,62 x 51 mm Smugacz<br />Pociski: 20<br />Używane w: Mk18 ABR - Ráže: 7.62x51 mm Svítící<br />Munice: 20<br />Použití: Mk18 ABR - Calibre: 7,62x51 mm Traçante<br />Projéteis: 20<br />Usado em: Mk18 ABR - Calibro: 7.62x51 mm Traccianti<br />Munizioni: 20<br />In uso su: Mk18 ABR - Калибр: 7.62x51 мм трассирующие<br />Патронов: 20<br />Применимы в: Mk18 ABR - - - 7.62mm 20rnd Tracer IR-DIM Mag - 7,62 mm Nyomjelző IR-DIM 20-as Tár - 7,62 mm 20-Schuss-Magazin Leuchtspur IR-DIM - Cargador de 20 balas IR-DIM de 7,62mm - Ch. 7,62mm 20Cps Traçantes IR-DIM - Magazynek 7,62mm 20rd Smugacz IR-DIM - 7.62mm 20ks Svítící IR-DIM Zásobník - Carregador de 20 projéteis IR-DIM de 7,62mm - Caricatore 7.62mm 20rnd Traccianti IR-DIM - Магазин из 20-ти 7.62 мм трассирующих под ПНВ - - - 7.62mm IR-DIM - 7,62 mm IR-DIM - 7,62mm IR-DIM - 7,62mm IR-DIM - 7,62mm IR-DIM - 7,62mm IR-DIM - 7.62mm IR-DIM - 7,62mm IR-DIM - 7.62mm IR-DIM - 7.62 мм ИК-трассирующие - - - Caliber: 7.62x51 mm Tracer IR-DIM<br />Rounds: 20<br />Used in: Mk18 ABR - Kaliber: 7,62x51 mm Nyomjelző IR-DIM<br />Lőszerek: 20<br />Használható: Mk18 ABR - Kaliber: 7,62x51 mm Leuchtspur IR-DIM<br />Patronen: 20<br />Eingesetzt von: EBR - Calibre: 7,62x51 mm Trazadoras IR-DIM<br />Balas: 20<br />Se usa en: Mk18 ABR - Calibre: 7,62x51 mm Traçantes IR-DIM<br />Cartouches: 20<br />Utilisé dans: EBR - Kaliber: 7,62 x 51 mm Smugacz IR-DIM<br />Pociski: 20<br />Używane w: Mk18 ABR - Ráže: 7.62x51 mm Svítící IR-DIM<br />Munice: 20<br />Použití: Mk18 ABR - Calibre: 7,62x51 mm Traçante IR-DIM<br />Projéteis: 20<br />Usado em: Mk18 ABR - Calibro: 7.62x51 mm Traccianti IR-DIM<br />Munizioni: 20<br />In uso su: Mk18 ABR - Калибр: 7.62x51 мм трассирующие под ПНВ<br />Патронов: 20<br />Применимы в: Mk18 ABR - - - 7.62mm 20Rnd SD Mag - 7,62 mm Hangtompítós 20-as Tár - 7,62 mm 20-Schuss-Magazin SD - Cargador de 20 balas SD de 7,62mm - Ch. 7,62mm 20Cps SD - Magazynek 7,62mm 20rd SD - 7.62mm 20ks SD Zásobník - Carregador de 20 projéteis SD de 7,62mm - Caricatore 7.62mm 20Rnd Sil. - Магазин из 20-ти 7.62 мм дозвуковых - - - 7.62mm SD - 7,62 mm Hangtompítós - 7,62mm SD - 7,62mm SD - 7,62mm SD - 7,62mm SD - 7.62mm SD - 7,62mm SD - 7.62mm Sil. - 7.62 мм дозвуковые - - - Caliber: 7.62x51 mm SD<br />Rounds: 20<br />Used in: Mk18 ABR - Kaliber: 7,62x51 mm Hangtompítós<br />Lőszerek: 20<br />Használható: Mk18 ABR - Kaliber: 7,62x51 mm SD<br />Patronen: 20<br />Eingesetzt von: EBR - Calibre: 7,62x51 mm SD<br />Balas: 20<br />Se usa en: Mk18 ABR - Calibre: 7,62x51 mm SD<br />Cartouches: 20<br />Utilisé dans: EBR - Kaliber: 7,62 x 51 mm SD<br />Pociski: 20<br />Używane w: Mk18 ABR - Ráže: 7.62x51 mm SD<br />Munice: 20<br />Použití: Mk18 ABR - Calibre: 7,62x51 mm SD<br />Projéteis: 20<br />Usado em: Mk18 ABR - Calibro: 7.62x51 mm Sil.<br />Munizioni: 20<br />In uso su: Mk18 ABR - Калибр: 7.62x51 мм дозвуковые<br />Патронов: 20<br />Применимы в: Mk18 ABR - - - 7.62mm 20Rnd AP Mag - 7,62 mm Páncéltörő 20-as Tár - 7,62 mm 20-Schuss-Magazin AP - Cargador de 20 balas AP de 7,62mm - Ch. 7,62mm 20Cps AP - Magazynek 7,62mm 20rd AP - 7.62mm 20ks AP Zásobník - Carregador de 20 projéteis AP de 7,62mm - Caricatore 7.62mm 20Rnd AP - Магазин из 20-ти 7.62 мм бронебойных - - - 7.62mm AP - 7,62 mm Páncéltörő - 7,62mm AP - 7,62mm AP - 7,62mm AP - 7,62mm AP - 7.62mm AP - 7,62mm AP - 7.62mm AP - 7.62 мм бронебойные - - - Caliber: 7.62x51 mm AP<br />Rounds: 20<br />Used in: Mk18 ABR - Kaliber: 7,62x51 mm Páncéltörő<br />Lőszerek: 20<br />Használható: Mk18 ABR - Kaliber: 7,62x51 mm AP<br />Patronen: 20<br />Eingesetzt von: EBR - Calibre: 7,62x51 mm AP<br />Balas: 20<br />Se usa en: Mk18 ABR - Calibre: 7,62x51 mm AP<br />Cartouches: 20<br />Utilisé dans: EBR - Kaliber: 7,62 x 51 mm AP<br />Pociski: 20<br />Używane w: Mk18 ABR - Ráže: 7.62x51 mm AP<br />Munice: 20<br />Použití: Mk18 ABR - Calibre: 7,62x51 mm AP<br />Projéteis: 20<br />Usado em: Mk18 ABR - Calibro: 7.62x51 mm AP<br />Munizioni: 20<br />In uso su: Mk18 ABR - Калибр: 7.62x51 мм дозвуковые<br />Патронов: 20<br />Применимы в: Mk18 ABR - - - Caliber: 7.62x51mm M118LR<br />Rounds: 20<br />Type: M14 - Kaliber: 7,62x51 mm M118LR<br />Lőszerek: 20<br />Típus: M14 - Kaliber: 7,62x51mm M118LR<br />Schuss: 20<br />Typ: M14 - Calibre: 7,62x51mm M118LR<br />Balas: 20<br />Tipo: M14 - Kaliber: 7,62 x 51 mm M118LR<br />Pociski: 20<br />Typ: M14 - Kalibr: 7.62x51mm M118LR<br />Náboje: 20<br />Typ: M14 - Calibre : 7,62x51mm M118LR<br />Cartouches: 20<br />Type: M14 - Calibre: 7,62x51mm M118LR<br />Projéteis: 20<br />Tipo: M14 - Калибр: 7.62x51mm M118LR<br />Патронов: 20<br />Тип: M14 - Calibro: 7.62x51mm M118LR<br />Munizioni:20<br />In uso su: M14 - - + + + + 6.5mm 30Rnd Tracer IR-DIM Mag + 6,5 mm Nyomjelző IR-DIM 30-as Tár + 6,5 mm 30-Schuss-Magazin Leuchtspur IR-DIM + Cargador de 30 balas trazadoras IR-DIM de 6,5mm + Ch. 6,5mm 30Cps Traçantes IR-DIM + Magazynek 6,5mm 30rd Smugacz IR-DIM + 6.5mm 30ks Svítící IR-DIM Zásobník + Carregador de 30 projéteis traçantes IR-DIM de 6,5mm + Caricatore 6.5mm 30Rnd Traccianti IR-DIM + Магазин из 30-ти 6.5 мм трассирующих под ПНВ + + + 6.5mm IR-DIM + 6,5 mm IR-DIM + 6,5mm IR-DIM + 6,5mm IR-DIM + 6,5mm IR-DIM + 6,5mm IR-DIM + 6.5mm IR-DIM + 6,5mm IR-DIM + 6.5 IR-DIM + 6.5 мм ИК-трассирующие + + + Caliber: 6.5x39 mm Tracer IR-DIM<br />Rounds: 30<br />Used in: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm Nyomjelző IR-DIM<br />Lövedékek: 30<br />Használható: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL + Calibre: 6,5x39 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL + Calibre: 6,5x39 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL + Kaliber: 6,5 x 39 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL + Ráže: 6.5x39 mm Svítící IR-DIM<br />Munice: 30<br />Použití: MX/C/M/SW/3GL + Calibre: 6,5x39 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL + Calibro: 6.5x39 mm Traccianti IR-DIM <br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL + Калибр: 6.5x39 мм трассирующие под ПНВ<br />Патронов: 30<br />Применимы в: MX/C/M/SW/3GL + + + 6.5mm 30Rnd SD Mag + 6,5 mm Halk 30-as Tár + 6,5 mm 30-Schuss-Magazin SD + Cargador de 30 balas SD de 6,5mm + Ch. 6,5mm 30Cps SD + Magazynek 6,5mm 30rd SD + 6.5mm 30ks SD Zásobník + Carregador de 30 projéteis SD de 6,5mm + Caricatore 6.5mm 30Rnd Sil. + Магазин из 30-ти 6.5 мм дозвуковых + + + 6.5mm SD + 6,5 mm Halk + 6,5mm SD + 6,5mm SD + 6,5mm SD + 6,5mm SD + 6.5mm SD + 6,5mm SD + 6.5mm Sil. + 6.5 мм дозвуковые + + + Caliber: 6.5x39 mm SD<br />Rounds: 30<br />Used in: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm Halk<br />Lövedékek: 30<br />Használható: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm SD<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL + Calibre: 6,5x39 mm SD<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL + Calibre: 6,5x39 mm SD<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL + Kaliber: 6,5 x 39 mm SD<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL + Ráže: 6.5x39 mm SD<br />Munice: 30<br />Použití: MX/C/M/SW/3GL + Calibre: 6,5x39 mm SD<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL + Calibro: 6.5x39 mm Sil.<br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL + Калибр: 6.5x39 мм дозвуковые<br />Патронов: 30<br />Применимы в: MX/C/M/SW/3GL + + + 6.5mm 30Rnd AP Mag + 6,5 mm Páncéltörő 30-as Tár + 6,5 mm 30-Schuss-Magazin AP + Cargador de 30 balas AP de 6,5mm + Ch. 6,5mm 30Cps AP + Magazynek 6,5mm 30rd AP + 6.5mm 30ks AP Zásobník + Carregador de 30 projéteis AP de 6,5mm + Caricatore 6.5mm 30Rnd AP + Магазин из 30-ти 6.5 мм бронебойных + + + 6.5mm AP + 6,5 mm Páncéltörő + 6,5mm AP + 6,5mm AP + 6,5mm AP + 6,5mm AP + 6.5mm AP + 6,5mm AP + 6.5mm AP + 6.5 мм бронебойные + + + Caliber: 6.5x39 mm AP<br />Rounds: 30<br />Used in: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm Páncéltörő<br />Lövedékek: 30<br />Használható: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm AP<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL + Calibre: 6,5x39 mm AP<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL + Calibre: 6,5x39 mm AP<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL + Kaliber: 6,5 x 39 mm AP<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL + Ráže: 6.5x39 mm AP<br />Munice: 30<br />Použití: MX/C/M/SW/3GL + Calibre: 6,5x39 mm AP<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL + Calibro: 6.5x39 mm AP<br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL + Калибр: 6.5x39 мм бронебойные<br />Патронов: 30<br />Применимы в: MX/C/M/SW/3GL + + + + 6.5mm 30Rnd Tracer IR-DIM Mag + 6,5mm IR-DIM Nyomjelző 30-as Tár + 6,5 mm 30-Schuss-Magazin Leuchtspur IR-DIM + Cargador de 30 balas trazadoras IR-DIM de 6,5mm + Ch. 6,5mm 30Cps Traçantes IR-DIM + Magazynek 6,5mm 30rd Smugacz IR-DIM + 6.5mm 30ks Svítící IR-DIM Zásobník + Carregador de 30 projéteis traçantes IR-DIM de 6,5mm + Caricatore 6.5mm 30Rnd Traccianti IR-DIM + Магазин из 30-ти 6.5 мм трассирующих под ПНВ + + + 6.5mm IR-DIM + 6,5mm IR-DIM + 6,5mm IR-DIM + 6,5mm IR-DIM + 6,5mm IR-DIM + 6,5mm IR-DIM + 6.5mm IR-DIM + 6,5mm IR-DIM + 6.5mm IR-DIM + 6.5 мм ИК-трассирующие + + + Caliber: 6.5x39 mm Tracer IR-DIM<br />Rounds: 30<br />Used in: Katiba + Kaliber: 6,5x39 mm Nyomjelző IR-DIM<br />Lövedékek: 30<br />Használható: Katiba + Kaliber: 6,5x39 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: Katiba + Calibre: 6,5x39 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: Katiba + Calibre: 6,5x39 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: Katiba + Kaliber: 6,5x39 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: Katiba + Ráže: 6.5x39 mm Svítící IR-DIM<br />Munice: 30<br />Použití: Katiba + Calibre: 6,5x39 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: Katiba + Calibro: 6.5x39 mm Tracciant IR-DIM<br />Munizioni: 30<br />In uso su: Katiba + Калибр: 6.5x39 мм трассирующие под ПНВ<br />Патронов: 30<br />Применимы в: Katiba + + + 6.5mm 30Rnd SD Mag + 6,5 mm Halk 30-as Tár + 6,5 mm 30-Schuss-Magazin SD + Cargador de 30 balas SD de 6,5mm + Ch. 6,5mm 30Cps SD + Magazynek 6,5mm 30rd SD + 6.5mm 30ks SD Zásobník + Carregador de 30 projéteis SD de 6,5mm + Caricatore 6.5mm 30Rnd Sil. + Магазин из 30-ти 6.5 мм дозвуковых + + + 6.5mm SD + 6,5 mm Halk + 6,5mm SD + 6,5mm SD + 6,5mm SD + 6,5mm SD + 6.5mm SD + 6,5mm SD + 6.5mm Sil. + 6.5 мм дозвуковые + + + Caliber: 6.5x39 mm SD<br />Rounds: 30<br />Used in: Katiba + Kaliber: 6,5x39 mm Halk<br />Lövedékek: 30<br />Használható: Katiba + Kaliber: 6,5x39 mm SD<br />Patronen: 30<br />Eingesetzt von: Katiba + Calibre: 6,5x39 mm SD<br />Balas: 30<br />Se usa en: Katiba + Calibre: 6,5x39 mm SD<br />Cartouches: 30<br />Utilisé dans: Katiba + Kaliber: 6,5 x 39 mm SD<br />Naboje: 30<br />Używane w: Katiba + Ráže: 6.5x39 mm SD<br />Munice: 30<br />Použití: Katiba + Calibre: 6,5x39 mm SD<br />Projéteis: 30<br />Usado em: Katiba + Calibro: 6.5x39 mm Sil.<br />Munizioni: 30<br />In uso su: Katiba + Калибр: 6.5x39 мм дозвуковые<br />Патронов: 30<br />Применимы в: Katiba + + + 6.5mm 30Rnd AP Mag + 6,5 mm Páncéltörő 30-as Tár + 6,5 mm 30-Schuss-Magazin AP + Cargador de 30 balas AP de 6,5mm + Ch. 6,5mm 30Cps AP + Magazynek 6,5mm 30rd AP + 6.5mm 30ks AP Zásobník + Carregador de 30 projéteis AP de 6,5mm + Caricatore 6.5mm 30Rnd AP + Магазин из 30-ти 6.5 мм бронебойных + + + 6.5mm AP + 6,5 mm Páncéltörő + 6,5mm AP + 6,5mm AP + 6,5mm AP + 6,5mm AP + 6.5mm AP + 6,5mm AP + 6.5mm AP + 6.5 мм бронебойные + + + Caliber: 6.5x39 mm AP<br />Rounds: 30<br />Used in: Katiba + Kaliber: 6,5x39 mm Páncéltörő<br />Lövedékek: 30<br />Használható: Katiba + Kaliber: 6,5x39 mm AP<br />Patronen: 30<br />Eingesetzt von: Katiba + Calibre: 6,5x39 mm AP<br />Balas: 30<br />Se usa en: Katiba + Calibre: 6,5x39 mm AP<br />Cartouches: 30<br />Utilisé dans: Katiba + Kaliber: 6,5 x 39 mm AP<br />Pociski: 30<br />Używane w: Katiba + Ráže: 6.5x39 mm AP<br />Munice: 30<br />Použití: Katiba + Calibre: 6,5x39 mm AP<br />Projéteis: 30<br />Usado em: Katiba + Calibro: 6.5x39 mm AP<br />Munizioni: 30<br />In uso su: Katiba + Калибр: 6.5x39 мм бронебойные<br />Патронов: 30<br />Применимы в: Katiba + + + + 5.56mm 30rnd Tracer IR-DIM Mag + 5,56 mm Nyomjelző IR-DIM 30-as Tár + 5,56 mm 30-Schuss-Magazin Leuchtspur IR-DIM + Cargador de 30 balas trazadoras IR-DIM de 5,56mm + Ch. 5,56mm 30Cps Traçantes IR-DIM + Magazynek 5,56mm 30rd Smugacz IR-DIM + 5.56mm 30ks Svítící IR-DIM Zásobník + Carregador de 30 projéteis traçantes IR-DIM de 5,56mm + Caricatore 5.56mm 30rnd Traccianti IR-DIM + Магазин из 30-ти 5.56 мм трассирующих под ПНВ + + + 5.56mm IR-DIM + 5,56 mm IR-DIM + 5,56mm IR-DIM + 5,56mm IR-DIM + 5,56mm IR-DIM + 5,56mm IR-DIM + 5.56mm IR-DIM + 5,56mm IR-DIM + 5.56mm IR-DIM + 5.56 мм ИК-трассирующие + + + Caliber: 5.56x45 mm Tracer IR-DIM<br />Rounds: 30<br />Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56x45 mm Nyomjelző IR-DIM<br />Lövedékek: 30<br />Használható: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56x45 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5,56x45 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5,56x45 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56 x 45 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Ráže: 5.56x45 mm Svítící IR-DIM<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5,56x45 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibro: 5.56x45 mm Traccianti IR-DIM<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Калибр: 5.56x45 мм трассирующие под ПНВ<br />Патронов: 30<br />Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + + + 5.56mm 30Rnd SD Mag + 5,56 mm Halk 30-as Tár + 5,56 mm 30-Schuss-Magazin SD + Cargador de 30 balas SD de 5,56 mm + Ch. 5,56mm 30Cps SD + Magazynek 5,56mm 30rd SD + 5.56mm 30ks SD Zásobník + Carregador de 30 projéteis SD de 5,56mm + Caricatore 5.56mm 30Rnd Sil. + Магазин из 30-ти 5.56 мм дозвуковых + + + 5.56mm SD + 5,56 mm Halk + 5,56mm SD + 5,56 mm SD + 5,56mm SD + 5,56mm SD + 5.56mm SD + 5,56mm SD + 5.56 Sil. + 5.56 мм дозвуковые + + + Caliber: 5.56x45 mm SD<br />Rounds: 30<br />Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56x45 mm Halk<br />Lövedékek: 30<br />Használható: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56x45 mm SD<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5,56x45 mm SD<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5.56x45 mm SD<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56 x 45 mm SD<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Ráže: 5.56x45 mm SD<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5,56x45 mm SD<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibro: 5.56x45 mm Sil.<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Калибр: 5.56x45 мм дозвуковые<br />Патронов: 30<br />Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + + + 5.56mm 30Rnd AP Mag + 5,56 mm Páncéltörő 30-as Tár + 5,56 mm 30-Schuss-Magazin AP + Cargador de 30 balas AP de 5,56mm + Ch. 5,56mm 30Cps AP + Magazynek 5,56mm 30rd AP + 5.56mm 30ks AP Zásobník + Carregador de 30 projéteis AP de 5,56mm + Caricatore 5.56mm 30Rnd AP + Магазин из 30-ти 5.56 мм бронебойных + + + 5.56mm AP + 5,56 mm Páncéltörő + 5,56mm AP + 5,56mm AP + 5,56mm AP + 5,56mm AP + 5.56mm AP + 5,56mm AP + 5.56mm AP + 5.56 мм бронебойные + + + Caliber: 5.56x45 mm AP<br />Rounds: 30<br />Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56x45 mm Páncéltörő<br />Lövedékek: 30<br />Használható: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56x45 mm AP<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5,56x45 mm AP<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5,56x45 mm AP<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56 x 45 mm AP<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Ráže: 5.56x45 mm AP<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibre: 5,56x45 mm AP<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Calibro: 5.56x45 mm AP<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Калибр: 5.56x45 мм бронебойные<br />Патронов: 30<br />Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + + + + 7.62mm 20rnd Tracer Mag + 7,62 mm Nyomjelző IR-DIM 20-as Tár + 7,62 mm 20-Schuss-Magazin Leuchtspur + Cargador de 20 balas trazadores de 7,62mm + Ch. 7,62mm 20Cps Traçantes + Magazynek 7,62mm 20rd Smugacz + 7.62mm 20ks Svítící Zásobník + Carregador de 20 projéteis traçantes de 7,62mm + Caricatore 7.62mm 20Rnd Traccianti + Магазин из 20-ти 7.62 мм трассирующих + + + 7.62mm Tracer + 7,62 mm Nyomjelző + 7,62mm Leuchtspur + 7,62mm Trazadora + 7,62mm Traçantes + 7,62mm Smugacz + 7.62mm Svítící + 7,62mm Traçante + 7.62mm Traccianti + 7.62 мм трассирущие + + + Caliber: 7.62x51 mm Tracer<br />Rounds: 20<br />Used in: Mk18 ABR + Kaliber: 7,62x51 mm Nyomjelző<br />Lövedékek: 20<br />Használható: Mk18 ABR + Kaliber: 7,62x51 mm Leuchtspur<br />Patronen: 20<br />Eingesetzt von: EBR + Calibre: 7,62x51 mm Trazadora<br />Balas: 20<br />Se usa en: Mk18 ABR + Calibre: 7,62x51 mm Traçantes<br />Cartouches: 20<br />Utilisé dans: EBR + Kaliber: 7,62 x 51 mm Smugacz<br />Pociski: 20<br />Używane w: Mk18 ABR + Ráže: 7.62x51 mm Svítící<br />Munice: 20<br />Použití: Mk18 ABR + Calibre: 7,62x51 mm Traçante<br />Projéteis: 20<br />Usado em: Mk18 ABR + Calibro: 7.62x51 mm Traccianti<br />Munizioni: 20<br />In uso su: Mk18 ABR + Калибр: 7.62x51 мм трассирующие<br />Патронов: 20<br />Применимы в: Mk18 ABR + + + 7.62mm 20rnd Tracer IR-DIM Mag + 7,62 mm Nyomjelző IR-DIM 20-as Tár + 7,62 mm 20-Schuss-Magazin Leuchtspur IR-DIM + Cargador de 20 balas IR-DIM de 7,62mm + Ch. 7,62mm 20Cps Traçantes IR-DIM + Magazynek 7,62mm 20rd Smugacz IR-DIM + 7.62mm 20ks Svítící IR-DIM Zásobník + Carregador de 20 projéteis IR-DIM de 7,62mm + Caricatore 7.62mm 20rnd Traccianti IR-DIM + Магазин из 20-ти 7.62 мм трассирующих под ПНВ + + + 7.62mm IR-DIM + 7,62 mm IR-DIM + 7,62mm IR-DIM + 7,62mm IR-DIM + 7,62mm IR-DIM + 7,62mm IR-DIM + 7.62mm IR-DIM + 7,62mm IR-DIM + 7.62mm IR-DIM + 7.62 мм ИК-трассирующие + + + Caliber: 7.62x51 mm Tracer IR-DIM<br />Rounds: 20<br />Used in: Mk18 ABR + Kaliber: 7,62x51 mm Nyomjelző IR-DIM<br />Lövedékek: 20<br />Használható: Mk18 ABR + Kaliber: 7,62x51 mm Leuchtspur IR-DIM<br />Patronen: 20<br />Eingesetzt von: EBR + Calibre: 7,62x51 mm Trazadoras IR-DIM<br />Balas: 20<br />Se usa en: Mk18 ABR + Calibre: 7,62x51 mm Traçantes IR-DIM<br />Cartouches: 20<br />Utilisé dans: EBR + Kaliber: 7,62 x 51 mm Smugacz IR-DIM<br />Pociski: 20<br />Używane w: Mk18 ABR + Ráže: 7.62x51 mm Svítící IR-DIM<br />Munice: 20<br />Použití: Mk18 ABR + Calibre: 7,62x51 mm Traçante IR-DIM<br />Projéteis: 20<br />Usado em: Mk18 ABR + Calibro: 7.62x51 mm Traccianti IR-DIM<br />Munizioni: 20<br />In uso su: Mk18 ABR + Калибр: 7.62x51 мм трассирующие под ПНВ<br />Патронов: 20<br />Применимы в: Mk18 ABR + + + 7.62mm 20Rnd SD Mag + 7,62 mm Halk 20-as Tár + 7,62 mm 20-Schuss-Magazin SD + Cargador de 20 balas SD de 7,62mm + Ch. 7,62mm 20Cps SD + Magazynek 7,62mm 20rd SD + 7.62mm 20ks SD Zásobník + Carregador de 20 projéteis SD de 7,62mm + Caricatore 7.62mm 20Rnd Sil. + Магазин из 20-ти 7.62 мм дозвуковых + + + 7.62mm SD + 7,62 mm Halk + 7,62mm SD + 7,62mm SD + 7,62mm SD + 7,62mm SD + 7.62mm SD + 7,62mm SD + 7.62mm Sil. + 7.62 мм дозвуковые + + + Caliber: 7.62x51 mm SD<br />Rounds: 20<br />Used in: Mk18 ABR + Kaliber: 7,62x51 mm Halk<br />Lövedékek: 20<br />Használható: Mk18 ABR + Kaliber: 7,62x51 mm SD<br />Patronen: 20<br />Eingesetzt von: EBR + Calibre: 7,62x51 mm SD<br />Balas: 20<br />Se usa en: Mk18 ABR + Calibre: 7,62x51 mm SD<br />Cartouches: 20<br />Utilisé dans: EBR + Kaliber: 7,62 x 51 mm SD<br />Pociski: 20<br />Używane w: Mk18 ABR + Ráže: 7.62x51 mm SD<br />Munice: 20<br />Použití: Mk18 ABR + Calibre: 7,62x51 mm SD<br />Projéteis: 20<br />Usado em: Mk18 ABR + Calibro: 7.62x51 mm Sil.<br />Munizioni: 20<br />In uso su: Mk18 ABR + Калибр: 7.62x51 мм дозвуковые<br />Патронов: 20<br />Применимы в: Mk18 ABR + + + 7.62mm 20Rnd AP Mag + 7,62 mm Páncéltörő 20-as Tár + 7,62 mm 20-Schuss-Magazin AP + Cargador de 20 balas AP de 7,62mm + Ch. 7,62mm 20Cps AP + Magazynek 7,62mm 20rd AP + 7.62mm 20ks AP Zásobník + Carregador de 20 projéteis AP de 7,62mm + Caricatore 7.62mm 20Rnd AP + Магазин из 20-ти 7.62 мм бронебойных + + + 7.62mm AP + 7,62 mm Páncéltörő + 7,62mm AP + 7,62mm AP + 7,62mm AP + 7,62mm AP + 7.62mm AP + 7,62mm AP + 7.62mm AP + 7.62 мм бронебойные + + + Caliber: 7.62x51 mm AP<br />Rounds: 20<br />Used in: Mk18 ABR + Kaliber: 7,62x51 mm Páncéltörő<br />Lövedékek: 20<br />Használható: Mk18 ABR + Kaliber: 7,62x51 mm AP<br />Patronen: 20<br />Eingesetzt von: EBR + Calibre: 7,62x51 mm AP<br />Balas: 20<br />Se usa en: Mk18 ABR + Calibre: 7,62x51 mm AP<br />Cartouches: 20<br />Utilisé dans: EBR + Kaliber: 7,62 x 51 mm AP<br />Pociski: 20<br />Używane w: Mk18 ABR + Ráže: 7.62x51 mm AP<br />Munice: 20<br />Použití: Mk18 ABR + Calibre: 7,62x51 mm AP<br />Projéteis: 20<br />Usado em: Mk18 ABR + Calibro: 7.62x51 mm AP<br />Munizioni: 20<br />In uso su: Mk18 ABR + Калибр: 7.62x51 мм дозвуковые<br />Патронов: 20<br />Применимы в: Mk18 ABR + + + Caliber: 7.62x51mm M118LR<br />Rounds: 20<br />Type: M14 + Kaliber: 7,62x51 mm M118LR<br />Lövedékek: 20<br />Típus: M14 + Kaliber: 7,62x51mm M118LR<br />Schuss: 20<br />Typ: M14 + Calibre: 7,62x51mm M118LR<br />Balas: 20<br />Tipo: M14 + Kaliber: 7,62 x 51 mm M118LR<br />Pociski: 20<br />Typ: M14 + Kalibr: 7.62x51mm M118LR<br />Náboje: 20<br />Typ: M14 + Calibre : 7,62x51mm M118LR<br />Cartouches: 20<br />Type: M14 + Calibre: 7,62x51mm M118LR<br />Projéteis: 20<br />Tipo: M14 + Калибр: 7.62x51mm M118LR<br />Патронов: 20<br />Тип: M14 + Calibro: 7.62x51mm M118LR<br />Munizioni:20<br />In uso su: M14 + + \ No newline at end of file diff --git a/addons/maptools/stringtable.xml b/addons/maptools/stringtable.xml index bc35651ba9..7756792ab3 100644 --- a/addons/maptools/stringtable.xml +++ b/addons/maptools/stringtable.xml @@ -1,147 +1,148 @@  + - - - Map Tools - Herramientas de mapa - Outils de navigation - Narzędzia nawigacyjne - Kartenwerkzeug - Pomůcky k mapě - Strumenti Cartografici - Ferramentas de Mapa - Térképészeti eszközök - Инструменты карты - - - The Map Tools allow you to measure distances and angles on the map. - Las herramientas de mapa permiten medir distancias y ángulos en el mapa. - Les outils de navigation permettent de mesurer des distances et des angles sur la carte. - Narzędzia nawigacyjne pozwalają na mierzenie odległości i kątów na mapie. - Das Kartenwerkzeug erlaubt es dir, Distanzen und Winkel zu messen. - Pomůcky k mapě slouží k měření vzdáleností a úhlů na mapě. - Gli Strumenti Cartografici ti consentono di misurare distanze ed angoli sulla mappa. - As Ferramentas de Mapa permitem que você meça distâncias e ângulos no mapa. - A térképészeti eszközökkel távolságokat és szögeket tud mérni a térképen. - Картографические инструменты позволяют измерять расстояния и углы на карте. - - - Map Tools - Herramientas de mapa - Outils de navigation - Narzędzia nawigacyjne - Kartenwerkzeug - Pomůcky k mapě - Strumenti Cartografici - Ferramentas de Mapa - Térképészeti eszközök - Инструменты карты - - - Hide Map Tool - Verstecke Kartenwerkzeug - Ocultar herr. de mapa - Ranger les outils - Nascondi Strumenti Cartografici - Ocultar Ferramenta de Mapa - Térképészeti eszközök elrejtése - Ukryj narzędzia nawigacyjne - Schovat pomůcku k mapě - Скрыть инструменты - - - Show Normal Map Tool - Zeige Kartenwerkzeug (normal) - Mostrar herr. de mapa normal - Montrer outils normaux - Visualizza Strumenti Cartografici standard - Mostrar Ferramenta de Mapa Padrão - Térképészeti eszköz megjelenítése (normál méret) - Pokaż normalne narzędzia nawigacyjne - Zobrazit normální pomůcku k mapě - Показать инструменты (средн. размер) - - - Show Small Map Tool - Zeige Kartenwerkzeug (klein) - Mostrar herr. de mapa pequeñas - Montrer petits outils - Visualizza Strumenti Cartografici piccoli - Mostrar Ferramenta de Mapa Pequena - Térképészeti eszköz megjelenítése (kicsinyített) - Pokaż pomniejszone narzędzia nawigacyjne - Zobrazit malou pomůcku k mapě - Показать инструменты (малый размер) - - - Align Map Tool to North - Kartenwerkzeug nach Norden ausrichten - Alinear herr. de mapa al norte - Aligner au nord - Allinea gli Strumenti Cartografici con il Nord - Alinhar Ferramenta de Mapa com o Norte - Térképészeti eszköz Északhoz állítása - Wyrównaj linijkę do północy - Srovnat pomůcku k mapě na sever - Выровнять инструменты на север - - - Align Map Tool to Compass - Kartenwerkzeug am Kompass ausrichten - Alinear herr. de mapa a la brújula - Aligner sur la boussole - Allinea gli Strumenti Cartografici con la bussola - Alinhar Ferramenta de Mapa com a Bússola - Térképészeti eszköz iránytűhöz állítása - Wyrównaj linijkę do kompasu - Srovnat pomůcku k mapě ke kompasu - Выровнять инструменты по компасу - - - Show GPS on Map - Zeige GPS auf der Karte - Mostrar el GPS sobre el mapa - Ranger le GPS - Visualizza il GPS sulla mappa - Mostrar GPS no Mapa - GPS megjelnítése a térképen - Pokaż GPS na mapie - Zobrazit GPS na mapě - Показать GPS на карте - - - Hide GPS on Map - Verstecke GPS auf der Karte - Ocultar el GPS del mapa - Montrer le GPS - Nascondi il GPS sulla mappa - Ocultar GPS no Mapa - GPS elrejtése térképről - Ukryj GPS na mapie - Schovat GPS na mapě - Скрыть GPS на карте - - - Copy Map - Karte kopieren - Copiar mapa - Скопировать карту - Kopiuj oznaczenia mapy - Copier la carte - Zkopírovat mapu - Copiare Carta - Térkép másolása - Copiar Mapa - - - Direction: %1° - Drehung: %1° - Direction: %1° - Směr: %1° - Kierunek: %1° - Dirección: %1° - Irány: %1 - Направление: %1° - - - + + + Map Tools + Herramientas de mapa + Outils de navigation + Narzędzia nawigacyjne + Kartenwerkzeug + Pomůcky k mapě + Strumenti Cartografici + Ferramentas de Mapa + Térképészeti eszközök + Инструменты карты + + + The Map Tools allow you to measure distances and angles on the map. + Las herramientas de mapa permiten medir distancias y ángulos en el mapa. + Les outils de navigation permettent de mesurer des distances et des angles sur la carte. + Narzędzia nawigacyjne pozwalają na mierzenie odległości i kątów na mapie. + Das Kartenwerkzeug erlaubt es dir, Distanzen und Winkel zu messen. + Pomůcky k mapě slouží k měření vzdáleností a úhlů na mapě. + Gli Strumenti Cartografici ti consentono di misurare distanze ed angoli sulla mappa. + As Ferramentas de Mapa permitem que você meça distâncias e ângulos no mapa. + A térképészeti eszközökkel távolságokat és szögeket tudsz mérni a térképen. + Картографические инструменты позволяют измерять расстояния и углы на карте. + + + Map Tools + Herramientas de mapa + Outils de navigation + Narzędzia nawigacyjne + Kartenwerkzeug + Pomůcky k mapě + Strumenti Cartografici + Ferramentas de Mapa + Térképészeti eszközök + Инструменты карты + + + Hide Map Tool + Verstecke Kartenwerkzeug + Ocultar herr. de mapa + Ranger les outils + Nascondi Strumenti Cartografici + Ocultar Ferramenta de Mapa + Térképészeti eszközök elrejtése + Ukryj narzędzia nawigacyjne + Schovat pomůcku k mapě + Скрыть инструменты + + + Show Normal Map Tool + Zeige Kartenwerkzeug (normal) + Mostrar herr. de mapa normal + Montrer outils normaux + Visualizza Strumenti Cartografici standard + Mostrar Ferramenta de Mapa Padrão + Térképészeti eszköz megjelenítése (normál méret) + Pokaż normalne narzędzia nawigacyjne + Zobrazit normální pomůcku k mapě + Показать инструменты (средн. размер) + + + Show Small Map Tool + Zeige Kartenwerkzeug (klein) + Mostrar herr. de mapa pequeñas + Montrer petits outils + Visualizza Strumenti Cartografici piccoli + Mostrar Ferramenta de Mapa Pequena + Térképészeti eszköz megjelenítése (kicsinyített) + Pokaż pomniejszone narzędzia nawigacyjne + Zobrazit malou pomůcku k mapě + Показать инструменты (малый размер) + + + Align Map Tool to North + Kartenwerkzeug nach Norden ausrichten + Alinear herr. de mapa al norte + Aligner au nord + Allinea gli Strumenti Cartografici con il Nord + Alinhar Ferramenta de Mapa com o Norte + Térképészeti eszköz Északhoz állítása + Wyrównaj linijkę do północy + Srovnat pomůcku k mapě na sever + Выровнять инструменты на север + + + Align Map Tool to Compass + Kartenwerkzeug am Kompass ausrichten + Alinear herr. de mapa a la brújula + Aligner sur la boussole + Allinea gli Strumenti Cartografici con la bussola + Alinhar Ferramenta de Mapa com a Bússola + Térképészeti eszköz iránytűhöz állítása + Wyrównaj linijkę do kompasu + Srovnat pomůcku k mapě ke kompasu + Выровнять инструменты по компасу + + + Show GPS on Map + Zeige GPS auf der Karte + Mostrar el GPS sobre el mapa + Ranger le GPS + Visualizza il GPS sulla mappa + Mostrar GPS no Mapa + GPS megjelenítése a térképen + Pokaż GPS na mapie + Zobrazit GPS na mapě + Показать GPS на карте + + + Hide GPS on Map + Verstecke GPS auf der Karte + Ocultar el GPS del mapa + Montrer le GPS + Nascondi il GPS sulla mappa + Ocultar GPS no Mapa + GPS elrejtése a térképről + Ukryj GPS na mapie + Schovat GPS na mapě + Скрыть GPS на карте + + + Copy Map + Karte kopieren + Copiar mapa + Скопировать карту + Kopiuj oznaczenia mapy + Copier la carte + Zkopírovat mapu + Copiare Carta + Térkép másolása + Copiar Mapa + + + Direction: %1° + Drehung: %1° + Direction: %1° + Směr: %1° + Kierunek: %1° + Dirección: %1° + Irány: %1 + Направление: %1° + + + \ No newline at end of file diff --git a/addons/markers/stringtable.xml b/addons/markers/stringtable.xml index 65da73a026..73a4aff9be 100644 --- a/addons/markers/stringtable.xml +++ b/addons/markers/stringtable.xml @@ -1,15 +1,16 @@  - + - - - Direction: %1° - Drehung: %1° - Direction: %1° - Směr: %1° - Kierunek: %1° - Dirección: %1° - Направление: %1° - - + + + Direction: %1° + Drehung: %1° + Direction: %1° + Směr: %1° + Kierunek: %1° + Dirección: %1° + Направление: %1° + Irány: %1° + + \ No newline at end of file diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 2bba27f26c..95910229dc 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1,1032 +1,1159 @@  + - - - Inject Atropine - Atropin injizieren - Inyectar Atropina - Ввести атропин - Aplikovat atropin - - - Inject Epinephrine - Epinephrine injizieren - Inyectar Epinefrina - Wtrzyknij adrenalinę - Aplikovat adrenalin - Ввести андреналил - Adrénaline - Adrenalin - Injetar Epinefrina - Inietta Epinefrina - - - Inject Morphine - Morphin injizieren - Inyectar Morfina - Wstrzyknij morfinę - Aplikovat morfin - Ввести морфин - Morphine - Morfium - Injetar Morfina - Inietta Morfina - - - Transfuse Blood - Bluttransfusion - Transfundir sangre - Przetocz krew - Transfúze krve - Перелить кровь - Transfusion - Infúzió - Transfundir Sangue - Effettua Trasfusione - - - Transfuse Plasma - Plasmatransfusion - Transfundir plasma - Перелить плазму - Transfúze plazmy - - - Transfuse Saline - Salzlösungtransfusion - Transfundir salino - Влить физраствор - Transfúze fyziologický roztoku - - - Apply Tourniquet - Aderpresse anwenden - Aplicar torniquete - Наложить жгут - Aplikovat škrtidlo - - - Bandage - Verbinden - Venda - Bandaż - Obvázat - Pansement - Benda - Kötözés - Atadura - Перевязать - - - Bandage Head - Kopf verbinden - Vendar la cabeza - Bandażuj głowę - Obvázat hlavu - Перевязать голову - Pansement Tête - Fej kötözése - Atar Cabeça - Benda la testa - - - Bandage Torso - Torso verbinden - Vendar el torso - Bandażuj tors - Obvázat hruď - Перевязать торс - Pansement Torse - Felsőtest kötözése - Atar Tronco - Benda il torso - - - Bandage Left Arm - Arm links verbinden - Vendar el brazo izquierdo - Bandażuj lewe ramię - Obvázat levou ruku - Перевязать левую руку - Pansement Bras Gauche - Bal kar kötözése - Atar Braço Esquerdo - Benda il braccio sinistro - - - Bandage Right Arm - Arm rechts verbinden - Vendar el brazo derecho - Bandażuj prawe ramię - Obvázat pravou ruku - Перевязать правую руку - Pansement Bras Droit - Jobb kar kötözése - Atar Braço Direito - Benda il braccio destro - - - Bandage Left Leg - Bein links verbinden - Vendar la pierna izquierda - Bandażuj lewą nogę - Obvázat levou nohu - Перевязать левую ногу - Pansement Jambe Gauche - Bal láb kötözése - Atar Perna Esquerda - Benda la gamba sinistra - - - Bandage Right Leg - Bein rechts verbinden - Vendar la pierna derecha - Bandażuj prawą nogę - Obvázat pravou nohu - Перевязать правую ногу - Pansement Jambe Droite - Jobb láb kötözése - Atar Perna Direita - Benda la gamba destra - - - Injecting Morphine ... - Morphin injizieren ... - Inyectando Morfina ... - Wstrzykiwanie morfiny ... - Aplikuji morfin ... - Введение морфина... - Injection de Morphine... - Morfium beadása... - Injetando Morfina ... - Inietto la morfina ... - - - Injecting Epinephrine ... - Epinephrin injizieren ... - Inyectando Epinefrina ... - Wstrzykiwanie adrenaliny ... - Aplikuji adrenalin ... - Введение андреналина ... - Injection d'Adrénaline ... - Adrenalin beadása... - Injetando Epinefrina ... - Inietto l'epinefrina ... - - - Injecting Atropine ... - Atropin injizieren ... - Inyectando Atropina ... - Введение атропина ... - Aplikuji atropin ... - - - Transfusing Blood ... - Bluttransfusion ... - Transfusión de sangre ... - Przetaczanie krwi ... - Probíhá transfúze krve ... - Переливание крови... - Transfusion Sanguine ... - Infúzió... - Transfundindo Sangue ... - Effettuo la trasfusione ... - - - Transfusing Saline ... - Sallösungtransfusion ... - Transfusión de salino ... - Вливание физраствора ... - Probíha transfúze fyziologický roztoku ... - - - Transfusing Plasma ... - Plasmatransfusion ... - Transfusión de plasma ... - Переливание плзмы ... - Probíha transfúze plazmy ... - - - Bandaging ... - Verbinden ... - Vendando ... - Bandażowanie ... - Obvazuji ... - Pansement ... - Sto applicando la benda ... - Bekötözés... - Atando ... - Перевязывание ... - - - Applying Tourniquet ... - Setze Aderpresse an ... - Aplicando torniquete ... - Наложение жгута ... - Aplikuji škrtidlo - - - Medical - Zdravotní - Médical - Sanitäter - Medico - Medyczne - Médico - Медик - Médico - - - Field Dressing - Notverband - Compresa de campaña - Бинтовая повязка - Obinadlo - - - Packing Bandage - Verband - Vendaje compresivo - Компресионный пакет - - - Elastic Bandage - Elastische Binde - Vendaje elástico - Давящая повязка - Elastické obinadlo - - - QuikClot - QuikClot - QuikClot - QuickClot - - - Check Pulse - Puls überprüfen - Comprobar pulso - Проверить пульс - Zkontrolovat pulz - - - Check Blood Pressure - Blutdruck überprüfen - Comprobar presión arterial - Проверить кровяное давление - Zkontrolovat krevní tlak - - - Triage Card - Verletztenanhängekarte - Tarjeta de triaje - Медкарта - - - Tourniquet - Aderpresse - Torniquete - Жгут - Škrtidlo - - - Remove Tourniquet - Entferne Aderpresse - Quitar torniquete - Снять жгут - Sundat škrtidlo - - - Give Blood IV (1000ml) - Gebe Blut IV (1000ml) - Dar Sangre IV (1000ml) - Дать кровь для в/в вливания (1000 мл) - - - Give Blood IV (500ml) - Gebe Blut IV (500ml) - Dar Sangre IV (500ml) - Дать кровь для в/в вливания (500 мл) - - - Give Blood IV (250ml) - Gebe Blut IV (250ml) - Dar Sangre IV (250ml) - Дать кровь для в/в вливания (250 мл) - - - Give Plasma IV (1000ml) - Gebe Plasma IV (1000ml) - Dar Plasma IV (1000ml) - Дать плазму для в/в вливания (1000 мл) - - - Give Plasma IV (500ml) - Gebe Plasma IV (500ml) - Dar Plasma IV (500ml) - Дать плазму для в/в вливания (500 мл) - - - Give Plasma IV (250ml) - Gebe Plasma IV (250ml) - Dar Plasma IV (250ml) - Дать плазму для в/в вливания (250 мл) - - - Give Saline IV (1000ml) - Dar Salino IV (1000ml) - Дать физраствор для в/в вливания (1000 мл) - - - Give Saline IV (500ml) - Dar Salino IV (500ml) - Дать физраствор для в/в вливания (500 мл) - - - Give Saline IV (250ml) - Dar Salino IV (250ml) - Дать физраствор для в/в вливания (250 мл) - - - Minor - Gering - Menor - Незначительные травмы - - - Delayed - Retrasado - Груз 300 - - - Immediate - Inmediato - Помощь отложена - - - Deceased - Fallecido - Груз 200 - - - None - Ninguno - Нет - - - Normal breathing - Normales Atmen - Дыхание в норме - Respiración normal - Respiration Normale - Normalny oddech - - - No breathing - Atmet nicht - Дыхания нет - No respira - Apnée - Brak oddechu - - - Difficult breathing - Schweres Atmen - Дыхание затруднено - Dificultad para respirar - Difficultée Respiratoire - Trudności z oddychaniem - - - Almost no breathing - Atmet beinahe nicht - Дыхания почти нет - Casi sin respiración - Respiration Faible - Prawie brak oddechu - - - Bleeding - Blutet - Кровотечение - Sangrando - Seignement - Krwawienie zewnętrzne - - - In Pain - Unter Schmerzen - Испытывает боль - Con dolor - A De La Douleur - W bólu - - - Lost a lot of Blood - Hat eine große Menge Blut verloren - Большая кровопотеря - Mucha sangre perdida - A Perdu Bcp de Sang - Stracił dużo krwi - - - Tourniquet [CAT] - Aderpresse [CAT] - Жгут - Torniquete [CAT] - Garot [CAT] - Opaska uciskowa [CAT] - - - Receiving IV [%1ml] - Wiederbeleben IV [%1ml] - Reciviendo IV [%1ml] - Принимается переливание [%1 мл] - - - Bandage (Basic) - Verband (Basis) - Повязка (обычная) - Vendaje (Básico) - Bandage (Standard) - Bandaż (jałowy) - - - Used to cover a wound - Verwendet um die Wunde zu schützen - Для перевязки ран - Utilizado para cubrir una herida - Utilisé Pour Couvrir Une Blessure - Używany w celu przykrycia i ochrony miejsca zranienia - - - A dressing, that is a particular material used to cover a wound, which is applied over the wound once bleeding has been stemmed. - Ein Verband, der aus einem besonderen Material besteht um die Wunde zu schützen, nachdem die Blutung gestoppt wurde. - Повязка, накладываемая поверх раны после остановки кровотечения. - Un apósito, material específico utilizado para cubrir una herida, se aplica sobre la herida una vez ha dejado de sangrar. - C'est un bandage, qui est fait d'un matériel spécial utiliser pour couvrir une blessure, qui peut etre appliquer des que le seignement as ete stopper. - Opatrunek materiałowy, używany do przykrywania ran, zakładany na ranę po zatamowaniu krwawienia. - - - Packing Bandage - Verband - Тампонирующая повязка - Vendaje compresivo - Bandage Mèche - Bandaż (uciskowy) - - - Used to pack medium to large wounds and stem the bleeding - Wird verwendet, um mittel bis große Wunden zu verbinden und die Blutung zu stoppen - Для тампонирования ран среднего и большого размера и остановки кровотечения. - Se utiliza para vendar heridas medianas o grandes y detener el sangrado - Utiliser pour remplire la cavité créé dans une blessure moyenne et grande. - Używany w celu opatrywania średnich i dużych ran oraz tamowania krwawienia. - - - A bandage used to pack the wound to stem bleeding and facilitate wound healing. Packing a wound is an option in large polytrauma injuries. - Повязка для тампонирования раны, остановки кровотечения и лучшего заживления. При тяжелых сочетанных ранениях возможно тампонирование раны. - Se utiliza para detener la hemorragia de una herida y favorecer su cicatrización. Se usa en grandes lesiones o politraumatismos. - Un bandage servent a etre inseré dans les blessure pour éponger le seignement et faciliter la guerrison. Ce bandage est une option pour soigner les lession de politrauma. - Opatrunek stosowany w celu zatrzymania krwawienia i osłony większych ran. - - - Bandage (Elastic) - Verband (Elastisch) - Повязка (давящая) - Vendaje (Elástico) - Bandage (Élastique) - Bandaż (elastyczny) - - - Bandage kit, Elastic - Verbandssatz, Elastisch - Давящая повязка - Kit de vendaje (Elástico) - Bandage Compressif Élastique - Zestaw bandaży elastycznych. - - - Allows an even compression and extra support to the injured area. - - - Ce bandage peut etre utiliser pour compresser la plaie afin de ralentire le seignement et assurer la tenue du bandage lors de mouvment. - Elastyczna opaska podtrzymująca opatrunek oraz usztywniająca okolice stawów. - Brinda una compresión uniforme y ofrece soporte extra a una zona lesionada - - - Tourniquet (CAT) - Aderpresse (CAT) - Жгут - Torniquete (CAT) - Garot (CAT) - Staza (typ. CAT) - - - Slows down blood loss when bleeding - Veringert den Blutverlust - Уменьшает кровопотерю при кровотечении. - Reduce la velocidad de pérdida de sangre - Ralentit le seignement - Zmniejsza ubytek krwi z kończyn w przypadku krwawienia. - - - A constricting device used to compress venous and arterial circulation in effect inhibiting or slowing blood flow and therefore decreasing loss of blood. - Жгут используется для прижатия сосудов, приводящего к остановке или значительному уменьшению кровотечения и сокращению кровопотери. - Dispositivo utilizado para eliminar el pulso distal y de ese modo controlar la pérdida de sangre - Un appareil servent a compresser les artères et veines afin de reduire la perte de sang. - Opaska zaciskowa CAT służy do tamowanie krwotoków w sytuacji zranienia kończyn z masywnym krwawieniem tętniczym lub żylnym. - - - Morphine autoinjector - Morphin Autoinjector - Морфин в пневмошприце - Morfina auto-inyectable - Auto-injecteur de Morphine - Autostrzykawka z morfiną - - - Used to combat moderate to severe pain experiences - Wird verwendet um moderate bis starke Schmärzen zu lindern. - Для снятия средних и сильных болевых ощущений. - Usado para combatir los estados dolorosos de moderados a severos - Utiliser pour contrer les douleurs modéré à severes. - Morfina. Ma silne działanie przeciwbólowe. - - - An analgesic used to combat moderate to severe pain experiences. - Анальгетик для снятия средних и сильных болевых ощущений. - Analgésico usado para combatir los estados dolorosos de moderados a severos. - Un Analgésique puissant servant a contrer les douleur modéré a severe. - Organiczny związek chemiczny z grupy alkaloidów. Ma silne działanie przeciwbólowe. - - - Atropin autoinjector - Атропин в пневмошприце - Atropina auto-inyectable - Auto-injecteur d'Atropine - Autostrzykawka AtroPen - - - Used in NBC scenarios - Применяется для защиты от ОМП - Usado en escenarios NBQ - Utiliser en cas d'attaque CBRN - Atropina. Stosowana jako lek rozkurczowy i środek rozszerzający źrenice. - - - A drug used by the Military in NBC scenarios. - Препарат, используемый в войсках для защиты от оружия массового поражения. - Medicamento usado por militares en escenarios NBQ - Médicament utilisé par l'armée en cas d'attaque CBRN - Atropina. Stosowana jako lek rozkurczowy i środek rozszerzający źrenice. Środek stosowany w przypadku zagrożeń NBC. - - - Epinephrine autoinjector - Адреналин в пневмошприце - Epinefrina auto-inyectable - Auto-injecteur d'épinéphrine - Autostrzykawka EpiPen - - - Increase heart rate and counter effects given by allergic reactions - Стимулирует работу сердца и купирует аллергические реакции. - Aumenta la frecuencia cardiaca y contraresta los efectos de las reacciones alérgicas - Augmente la Fréquance cadiaque et contré les effet d'une reaction Anaphylactique - Adrenalina. Zwiększa puls i przeciwdziała efektom wywołanym przez reakcje alergiczne - - - A drug that works on a sympathetic response to dilate the bronchi, increase heart rate and counter such effects given by allergic reactions (anaphylaxis). Used in sudden cardiac arrest scenarios with decreasing positive outcomes. - Препарат, вызывающий симпатическую реакцию, приводящую к расширению бронхов, увеличению частоты сердечных сокращений и купированию аллергических реакций (анафилактического шока). Применяется при остановке сердца с уменьшением вероятности благоприятного исхода. - Medicamento que dilata los bronquios, aumenta la frecuencia cardiaca y contrarresta los efectos de las reacciones alérgicas (anafilaxis). Se utiliza en caso de paros cardiacos repentinos. - Un medicament qui fonctione sur le systeme sympatique créan une dilatation des bronches, augmente la fréquance cardiaque et contre les effet d'une reaction alergique (anaphylaxie). Utiliser lors d'arret cardio-respiratoire pour augmenté les chances retrouver un ryhtme. - EpiPen z adrenaliną ma działanie sympatykomimetyczne, tj. pobudza receptory alfa- i beta-adrenergiczne. Pobudzenie układu współczulnego prowadzi do zwiększenia częstotliwości pracy serca, zwiększenia pojemności wyrzutowej serca i przyśpieszenia krążenia wieńcowego. Pobudzenie oskrzelowych receptorów beta-adrenergicznych wywołuje rozkurcz mięśni gładkich oskrzeli, co w efekcie zmniejsza towarzyszące oddychaniu świsty i duszności. - - - Plasma IV (1000ml) - Плазма для в/в вливания (1000 мл) - Plasma IV (1000ml) - Plasma Sanguin IV (1000ml) - Osocze IV (1000ml) - - - A volume-expanding blood supplement. - Дополнительный препарат, применяемый при возмещении объема крови. - Suplemento para expandir el volumen sanguíneo. - Supplement visant a remplacer les volume sanguin - Składnik krwi, używany do zwiększenia jej objętości. - - - A volume-expanding blood supplement. - Дополнительный препарат, применяемый при возмещении объема крови. - Suplemento para expandir el volumen sanguíneo. - Supplement visant a remplacer le volume sanguin et remplace les plaquettes. - Składnik krwi, używany do zwiększenia jej objętości. - - - Plasma IV (500ml) - Плазма для в/в вливания (500 мл) - Plasma IV (500ml) - Plasma Sanguin IV (500ml) - Osocze IV (500ml) - - - Plasma IV (250ml) - Плазма для в/в вливания (250 мл) - Plasma IV (250ml) - Plasma Sanguin (250ml) - Osocze IV (250ml) - - - Blood IV (1000ml) - Кровь для переливания (1000 мл) - Sangre IV (1000ml) - Cullot Sanguin IV (1000ml) - Krew IV (1000ml) - - - Blood IV, for restoring a patients blood (keep cold) - Пакет крови для возмещения объема потерянной крови (хранить в холодильнике) - Sangre intravenosa, para restarurar el volumen sanguíneo (mantener frío) - Cullot Sanguin IV, pour remplacer le volume sanguin (garder Réfrigeré) - Krew IV, używana do uzupełnienia krwi u pacjenta, trzymać w warunkach chłodniczych - - - O Negative infusion blood used in strict and rare events to replenish blood supply usually conducted in the transport phase of medical care. - Кровь I группы, резус-отрицательная, применяется по жизненным показаниям для возмещения объема потерянной крови на догоспитальном этапе оказания медицинской помощи. - Cullot Sanguin O- ,utiliser seulement lors de perte sanguine majeur afin de remplacer le volume sanguin perdu. Habituelment utiliser lors du transport ou dans un etablisement de soin. - Krew 0 Rh-, używana w rzadkich i szczególnych przypadkach do uzupełnienia krwi u pacjenta, zazwyczaj w trakcie fazie transportu rannej osoby do szpitala. - Utilice sólo durante gran pérdida de sangre para reemplazar el volumen de sangre perdida. Uso habitual durante el transporte de heridos. - - - Blood IV (500ml) - Кровь для переливания (500 мл) - Sangre IV (500ml) - Cullot Sanguin IV (500ml) - Krew IV (500ml) - - - Blood IV (250ml) - Кровь для переливания (250 мл) - Sangre IV (250ml) - Cullot Sanguin IV (250ml) - Krew IV (250ml) - - - Saline IV (1000ml) - Физраствор для в/в вливания (1000 мл) - Solución Salina IV (1000ml) - solution Saline 0.9% IV (1000ml) - Solanka 0,9% IV (1000ml) - - - Saline IV, for restoring a patients blood - Пакет физраствора для возмещения объема потерянной крови - Solución salina intravenosa, para restaurar el volumen sanguíneo - Solution Saline 0.9% IV, pour retablir temporairement la tention arteriel - Solanka 0,9%, podawana dożylnie (IV), używana w celu uzupełnienia krwi u pacjenta - - - A medical volume-replenishing agent introduced into the blood system through an IV infusion. - Пакет физиологического раствора для возмещения объема потерянной крови путем внутривенного вливания. - Suero fisiológico inoculado al torrente sanguíneo de forma intravenosa. - Un remplacment temporaire pour rétablir la tention artériel lors de perte sanguine, étant ajouter par intraveineuse - Używany w medycynie w formie płynu infuzyjnego jako środek nawadniający i uzupełniający niedobór elektrolitów, podawany dożylnie (IV). - - - Saline IV (500ml) - Физраствор для в/в вливания (500 мл) - Salino IV (500ml) - Solution Saline 0.9% IV (500ml) - Solanka 0,9% IV (500ml) - - - Saline IV (250ml) - Физраствор для в/в вливания (250 мл) - Salino IV (250ml) - Solution Saline 0.9% IV (250ml) - Solanka 0,9% IV (250ml) - - - Basic Field Dressing (QuikClot) - Первичный перевязочный пакет (QuikClot) - Vendaje básico (QuickClot) - Bandage Regulier (Coagulant) - Opatrunek QuikClot - - - QuikClot bandage - Гемостатический пакет QuikClot - Vendaje QuikClot - Bandage coagulant - Podstawowy opatrunek stosowany na rany - - - Hemostatic bandage with coagulant that stops bleeding. - - Un bandage servant a coaguler les seignements mineur à moyen. - Proszkowy opatrunek adsorbcyjny przeznaczony do tamowania zagrażających życiu krwawień średniej i dużej intensywności. - Vendaje hemostático con coagulante que detiene el sangrado. - - - Personal Aid Kit - Аптечка - Botiquín de primeros auxilios - Équipement de support Vitale - Apteczka osobista - - - Includes various treatment kit needed for stitching or advanced treatment - Содержит различные материалы и инструменты для зашивания ран и оказания специальной медпомощи. - Incluye material médico para tratamientos avanzados - Inclue du matériel medical pour les traitement avancé, tel les point de suture. - Zestaw środków medycznych do opatrywania ran i dodatkowego leczenia po-urazowego - - - - - - - - - Surgical Kit - Хирургический набор - Kit quirúrgico - - - Surgical Kit for in field advanced medical treatment - Набор для хирургической помощи в полевых условиях - Kit quirúrgico para el tratamiento avanzado en el campo de batalla - - - Surgical Kit for in field advanced medical treatment - Набор для хирургической помощи в полевых условиях - Kit quirúrgico para el tratamiento avanzado en el campo de batalla - - - Bodybag - Мешок для трупов - Bolsa para cadáveres - - - A bodybag for dead bodies - Мешок для упаковки трупов - Una bolsa para cadáveres - - - A bodybag for dead bodies - Мешок для упаковки трупов - Una bolsa para cadáveres - - - Blood Pressure - Артериальное давление - Presión arterial - - - Checking Blood Pressure.. - Проверка артериального давления... - Comprobando presión arterial... - - - You checked %1 - Вы осмотрели раненого %1 - Examinando a %1 - - - You find a blood pressure of %2/%3 - Артериальное давление %2/%3 - La presión arterial es %2/%3 - - - You find a low blood pressure - Давление низкое - La presión arterial es baja - - - You find a normal blood pressure - Давление нормальное - La presión arterial es normal - - - You find a high blood pressure - Давление высокое - La presión arterial es alta - - - You find no blood pressure - Давления нет - No hay presión arterial - - - You fail to find a blood pressure - Артериальное давление не определяется - No puedes encontrar presión arterial - - - Pulse - Пульс - Pulso - - - Checking Heart Rate.. - Проверка пульса... - Comprobando ritmo cardíaco... - - - You checked %1 - Вы осмотрели раненого %1 - Examinando a %1 - - - You find a Heart Rate of %2 - Пульс %2 уд./мин. - El ritmo cardíaco es de %2 - - - You find a weak Heart Rate - Пульс слабый - El ritmo cardíaco es débil - - - You find a strong Heart Rate - Пульс учащенный - El ritmo cardíaco está acelerado - - - You find a normal Heart Rate - Пульс в норме - El ritmo cardíaco es bueno - - - You find no Heart Rate - Пульс не прощупывается - No tiene ritmo cardíaco - - - Response - Реакция - Respuesta - - - You check response of patient - Вы проверяете реакцию раненого - Compruebas si el paciente reacciona - - - %1 is responsive - %1 реагирует на раздражители - %1 ha reaccionado - - - %1 is not responsive - %1 не реагирует - %1 no reacciona - - - You checked %1 - Вы осмотрели раненого %1 - Examinas a %1 - - - Bandaged - Повязка наложена - Vendado - - - You bandage %1 (%2) - Вы перевязали раненого %1 (%2) - Aplicas vendaje a %1 en %2 - - - %1 is bandaging you - %1 перевязывает вас - %1 te está vendando - - - You start stitching injures from %1 (%2) - Вы зашиваете ранения от %1 (%2) - Estás suturando heridas de %1 en %2 - - - Stitching - Наложение швов - Suturando - - - You treat the airway of %1 - Вы интубируете раненого %1 - Estás intubando a %1 - - - Airway - Дыхательные пути - Vías aéreas - - - %1 is treating your airway - %1 проводит вам интубацию - %1 te está intubando - - - Drag - Ziehen - Arrastrar - Ciągnij - Táhnout - Тащить - Tracter - Húzás - Arrastar - Trascina - - - Carry - Tragen - Cargar - Nieś - Nést - Нести - Porter - Cipelés - Carregar - Trasporta - - - Release - Loslassen - Soltar - Połóż - Položit - Отпустить - Déposer - Elenged - Largar - Lascia - - - Load Patient Into - Patient Einladen - Cargar el paciente en - Załaduj pacjenta - Naložit pacianta do - Погрузить пациента в - Embarquer le Patient - Sebesült berakása - Carregar Paciente Em - Carica paziente nel - - - Unload Patient - Patient Ausladen - Descargar el paciente - Wyładuj pacjenta - Vyložit pacienta - Выгрузить пациента - Débarquer le Patient - Sebesült kihúzása - Descarregar Paciente - Scarica il paziente - - - Unload patient - Descargar el paciente - Выгрузить пациента - - - Load patient - Cargar el paciente en - Погрузить пациента - - - Place body in bodybag - Colocar cuerpo en bolsa para cadáveres - Поместить тело в мешок - - - Placing body in bodybag - Colocando cuerpo en bolsa para cadáveres - Помещение тела в мешок ... - - - %1 has bandaged patient - %1 has vendado al paciente - %1 перевязал пациента - - - %1 used %2 - %1 usó %2 - %1 применил %2 - - - %1 has given an IV - %1 has puesto una IV - %1 провел переливание - - - %1 applied a tourniquet - %1 aplicado torniquete - %1 наложил жгут - - - + + + Inject Atropine + Atropin injizieren + Inyectar Atropina + Ввести атропин + Aplikovat atropin + Atropin beadása + + + Inject Epinephrine + Epinephrine injizieren + Inyectar Epinefrina + Wtrzyknij adrenalinę + Aplikovat adrenalin + Ввести андреналил + Adrénaline + Epinefrin beadása + Injetar Epinefrina + Inietta Epinefrina + + + Inject Morphine + Morphin injizieren + Inyectar Morfina + Wstrzyknij morfinę + Aplikovat morfin + Ввести морфин + Morphine + Morfium beadása + Injetar Morfina + Inietta Morfina + + + Transfuse Blood + Bluttransfusion + Transfundir sangre + Przetocz krew + Transfúze krve + Перелить кровь + Transfusion + Infúzió (vér) + Transfundir Sangue + Effettua Trasfusione + + + Transfuse Plasma + Plasmatransfusion + Transfundir plasma + Перелить плазму + Transfúze plazmy + Infúzió (vérplazma) + + + Transfuse Saline + Salzlösungtransfusion + Transfundir salino + Влить физраствор + Transfúze fyziologický roztoku + Infúzió (sós víz) + + + Apply Tourniquet + Aderpresse anwenden + Aplicar torniquete + Наложить жгут + Aplikovat škrtidlo + Érszorító felhelyezése + + + Bandage + Verbinden + Venda + Bandaż + Obvázat + Pansement + Benda + Kötözés + Atadura + Перевязать + + + Bandage Head + Kopf verbinden + Vendar la cabeza + Bandażuj głowę + Obvázat hlavu + Перевязать голову + Pansement Tête + Fej kötözése + Atar Cabeça + Benda la testa + + + Bandage Torso + Torso verbinden + Vendar el torso + Bandażuj tors + Obvázat hruď + Перевязать торс + Pansement Torse + Testtörzs kötözése + Atar Tronco + Benda il torso + + + Bandage Left Arm + Arm links verbinden + Vendar el brazo izquierdo + Bandażuj lewe ramię + Obvázat levou ruku + Перевязать левую руку + Pansement Bras Gauche + Bal kar kötözése + Atar Braço Esquerdo + Benda il braccio sinistro + + + Bandage Right Arm + Arm rechts verbinden + Vendar el brazo derecho + Bandażuj prawe ramię + Obvázat pravou ruku + Перевязать правую руку + Pansement Bras Droit + Jobb kar kötözése + Atar Braço Direito + Benda il braccio destro + + + Bandage Left Leg + Bein links verbinden + Vendar la pierna izquierda + Bandażuj lewą nogę + Obvázat levou nohu + Перевязать левую ногу + Pansement Jambe Gauche + Bal láb kötözése + Atar Perna Esquerda + Benda la gamba sinistra + + + Bandage Right Leg + Bein rechts verbinden + Vendar la pierna derecha + Bandażuj prawą nogę + Obvázat pravou nohu + Перевязать правую ногу + Pansement Jambe Droite + Jobb láb kötözése + Atar Perna Direita + Benda la gamba destra + + + Injecting Morphine ... + Morphin injizieren ... + Inyectando Morfina ... + Wstrzykiwanie morfiny ... + Aplikuji morfin ... + Введение морфина... + Injection de Morphine... + Morfium beadása ... + Injetando Morfina ... + Inietto la morfina ... + + + Injecting Epinephrine ... + Epinephrin injizieren ... + Inyectando Epinefrina ... + Wstrzykiwanie adrenaliny ... + Aplikuji adrenalin ... + Введение андреналина ... + Injection d'Adrénaline ... + Epinefrin beadása ... + Injetando Epinefrina ... + Inietto l'epinefrina ... + + + Injecting Atropine ... + Atropin injizieren ... + Inyectando Atropina ... + Введение атропина ... + Aplikuji atropin ... + Atropin beadása ... + + + Transfusing Blood ... + Bluttransfusion ... + Transfusión de sangre ... + Przetaczanie krwi ... + Probíhá transfúze krve ... + Переливание крови... + Transfusion Sanguine ... + Infúzió vérrel ... + Transfundindo Sangue ... + Effettuo la trasfusione ... + + + Transfusing Saline ... + Sallösungtransfusion ... + Transfusión de salino ... + Вливание физраствора ... + Probíha transfúze fyziologický roztoku ... + Infúzió sós vizzel ... + + + Transfusing Plasma ... + Plasmatransfusion ... + Transfusión de plasma ... + Переливание плзмы ... + Probíha transfúze plazmy ... + Infúzió vérplazmával ... + + + Bandaging ... + Verbinden ... + Vendando ... + Bandażowanie ... + Obvazuji ... + Pansement ... + Sto applicando la benda ... + Bekötözés ... + Atando ... + Перевязывание ... + + + Applying Tourniquet ... + Setze Aderpresse an ... + Aplicando torniquete ... + Наложение жгута ... + Aplikuji škrtidlo + Érszorító felhelyezése ... + + + Medical + Zdravotní + Médical + Sanitäter + Medico + Medyczne + Médico + Медик + Médico + Orvosi + + + Field Dressing + Notverband + Compresa de campaña + Бинтовая повязка + Obinadlo + Zárókötszer + + + Packing Bandage + Verband + Vendaje compresivo + Компресионный пакет + Nyomókötszer + + + Elastic Bandage + Elastische Binde + Vendaje elástico + Давящая повязка + Elastické obinadlo + Rögzitő kötszer + + + QuikClot + QuikClot + QuikClot + QuickClot + QuikClot + + + Check Pulse + Puls überprüfen + Comprobar pulso + Проверить пульс + Zkontrolovat pulz + Pulzus ellenőrzése + + + Check Blood Pressure + Blutdruck überprüfen + Comprobar presión arterial + Проверить кровяное давление + Zkontrolovat krevní tlak + Vérnyomás megmérése + + + Triage Card + Verletztenanhängekarte + Tarjeta de triaje + Медкарта + Orvosi lap + + + Tourniquet + Aderpresse + Torniquete + Жгут + Škrtidlo + Érszorító + + + Remove Tourniquet + Entferne Aderpresse + Quitar torniquete + Снять жгут + Sundat škrtidlo + Érszorító leszedése + + + Give Blood IV (1000ml) + Gebe Blut IV (1000ml) + Dar Sangre IV (1000ml) + Дать кровь для в/в вливания (1000 мл) + Vér adása intravénásan (1000ml) + + + Give Blood IV (500ml) + Gebe Blut IV (500ml) + Dar Sangre IV (500ml) + Дать кровь для в/в вливания (500 мл) + Vér adása intravénásan (500ml) + + + Give Blood IV (250ml) + Gebe Blut IV (250ml) + Dar Sangre IV (250ml) + Дать кровь для в/в вливания (250 мл) + Vér adása intravénásan (250ml) + + + Give Plasma IV (1000ml) + Gebe Plasma IV (1000ml) + Dar Plasma IV (1000ml) + Дать плазму для в/в вливания (1000 мл) + Vérplazma adása intravénásan (1000ml) + + + Give Plasma IV (500ml) + Gebe Plasma IV (500ml) + Dar Plasma IV (500ml) + Дать плазму для в/в вливания (500 мл) + Vérplazma adása intravénásan (500ml) + + + Give Plasma IV (250ml) + Gebe Plasma IV (250ml) + Dar Plasma IV (250ml) + Дать плазму для в/в вливания (250 мл) + Vérplazma adása intravénásan (250ml) + + + Give Saline IV (1000ml) + Dar Salino IV (1000ml) + Дать физраствор для в/в вливания (1000 мл) + Sós víz adása intravénásan (1000ml) + + + Give Saline IV (500ml) + Dar Salino IV (500ml) + Дать физраствор для в/в вливания (500 мл) + Sós víz adása intravénásan (500ml) + + + Give Saline IV (250ml) + Dar Salino IV (250ml) + Дать физраствор для в/в вливания (250 мл) + Sós víz adása intravénásan (250ml) + + + Minor + Gering + Menor + Незначительные травмы + Enyhe + + + Delayed + Retrasado + Груз 300 + Késleltetett + + + Immediate + Inmediato + Помощь отложена + Azonnali + + + Deceased + Fallecido + Груз 200 + Elhalálozott + + + None + Ninguno + Нет + Semmi + + + Normal breathing + Normales Atmen + Дыхание в норме + Respiración normal + Respiration Normale + Normalny oddech + Normális légzés + + + No breathing + Atmet nicht + Дыхания нет + No respira + Apnée + Brak oddechu + Nincs légzés + + + Difficult breathing + Schweres Atmen + Дыхание затруднено + Dificultad para respirar + Difficultée Respiratoire + Trudności z oddychaniem + Nehéz légzés + + + Almost no breathing + Atmet beinahe nicht + Дыхания почти нет + Casi sin respiración + Respiration Faible + Prawie brak oddechu + Alig van légzés + + + Bleeding + Blutet + Кровотечение + Sangrando + Seignement + Krwawienie zewnętrzne + Vérzik + + + In Pain + Unter Schmerzen + Испытывает боль + Con dolor + A De La Douleur + W bólu + Fájdalom alatt + + + Lost a lot of Blood + Hat eine große Menge Blut verloren + Большая кровопотеря + Mucha sangre perdida + A Perdu Bcp de Sang + Stracił dużo krwi + Sok vért vesztett + + + Tourniquet [CAT] + Aderpresse [CAT] + Жгут + Torniquete [CAT] + Garot [CAT] + Opaska uciskowa [CAT] + Érszorító [CAT] + + + Receiving IV [%1ml] + Wiederbeleben IV [%1ml] + Reciviendo IV [%1ml] + Принимается переливание [%1 мл] + Infúzióra kötve [%1ml] + + + Bandage (Basic) + Verband (Basis) + Повязка (обычная) + Vendaje (Básico) + Bandage (Standard) + Bandaż (jałowy) + Kötszer (Általános) + + + Used to cover a wound + Verwendet um die Wunde zu schützen + Для перевязки ран + Utilizado para cubrir una herida + Utilisé Pour Couvrir Une Blessure + Używany w celu przykrycia i ochrony miejsca zranienia + Sebesülések befedésére alkalmas + + + A dressing, that is a particular material used to cover a wound, which is applied over the wound once bleeding has been stemmed. + Ein Verband, der aus einem besonderen Material besteht um die Wunde zu schützen, nachdem die Blutung gestoppt wurde. + Повязка, накладываемая поверх раны после остановки кровотечения. + Un apósito, material específico utilizado para cubrir una herida, se aplica sobre la herida una vez ha dejado de sangrar. + C'est un bandage, qui est fait d'un matériel spécial utiliser pour couvrir une blessure, qui peut etre appliquer des que le seignement as ete stopper. + Opatrunek materiałowy, używany do przykrywania ran, zakładany na ranę po zatamowaniu krwawienia. + Egy különleges anyagú kötszer sebek betakarására, amelyet a vérzés elállítása után helyeznek fel. + + + Packing Bandage + Verband + Тампонирующая повязка + Vendaje compresivo + Bandage Mèche + Bandaż (uciskowy) + Nyomókötszer + + + Used to pack medium to large wounds and stem the bleeding + Wird verwendet, um mittel bis große Wunden zu verbinden und die Blutung zu stoppen + Для тампонирования ран среднего и большого размера и остановки кровотечения. + Se utiliza para vendar heridas medianas o grandes y detener el sangrado + Utiliser pour remplire la cavité créé dans une blessure moyenne et grande. + Używany w celu opatrywania średnich i dużych ran oraz tamowania krwawienia. + Közepestől nagyig terjedő sebek betakarására és vérzés elállítására használt kötszer + + + A bandage used to pack the wound to stem bleeding and facilitate wound healing. Packing a wound is an option in large polytrauma injuries. + Повязка для тампонирования раны, остановки кровотечения и лучшего заживления. При тяжелых сочетанных ранениях возможно тампонирование раны. + Se utiliza para detener la hemorragia de una herida y favorecer su cicatrización. Se usa en grandes lesiones o politraumatismos. + Un bandage servent a etre inseré dans les blessure pour éponger le seignement et faciliter la guerrison. Ce bandage est une option pour soigner les lession de politrauma. + Opatrunek stosowany w celu zatrzymania krwawienia i osłony większych ran. + Egy kötszerfajta, melyet a sebek nyomására használnak a vérzés elállítása és sebgyógyulás érdekében. A nyomókötés egy lehetőség nagyobb polytraumatikus sérülések esetén. + + + Bandage (Elastic) + Verband (Elastisch) + Повязка (давящая) + Vendaje (Elástico) + Bandage (Élastique) + Bandaż (elastyczny) + Rögzító kötszer + + + Bandage kit, Elastic + Verbandssatz, Elastisch + Давящая повязка + Kit de vendaje (Elástico) + Bandage Compressif Élastique + Zestaw bandaży elastycznych. + Rugalmas kötszercsomag, "rögzítő" + + + Allows an even compression and extra support to the injured area. + + + Ce bandage peut etre utiliser pour compresser la plaie afin de ralentire le seignement et assurer la tenue du bandage lors de mouvment. + Elastyczna opaska podtrzymująca opatrunek oraz usztywniająca okolice stawów. + Brinda una compresión uniforme y ofrece soporte extra a una zona lesionada + Egyenletes nyomást és támogatást biztosít a sebesült felületnek. + + + Tourniquet (CAT) + Aderpresse (CAT) + Жгут + Torniquete (CAT) + Garot (CAT) + Staza (typ. CAT) + Érszorító (CAT) + + + Slows down blood loss when bleeding + Veringert den Blutverlust + Уменьшает кровопотерю при кровотечении. + Reduce la velocidad de pérdida de sangre + Ralentit le seignement + Zmniejsza ubytek krwi z kończyn w przypadku krwawienia. + Lelassítja a vérvesztést vérzés esetén + + + A constricting device used to compress venous and arterial circulation in effect inhibiting or slowing blood flow and therefore decreasing loss of blood. + Жгут используется для прижатия сосудов, приводящего к остановке или значительному уменьшению кровотечения и сокращению кровопотери. + Dispositivo utilizado para eliminar el pulso distal y de ese modo controlar la pérdida de sangre + Un appareil servent a compresser les artères et veines afin de reduire la perte de sang. + Opaska zaciskowa CAT służy do tamowanie krwotoków w sytuacji zranienia kończyn z masywnym krwawieniem tętniczym lub żylnym. + Egy szűkítőeszköz, mely a vénás és artériás nyomás keringés helyi összenyomására szolgál, ezzel lelassítva vagy megállítva az adott területen a vérkeringést. Ez csökkenti a vérvesztés mértékét. + + + Morphine autoinjector + Morphin Autoinjector + Морфин в пневмошприце + Morfina auto-inyectable + Auto-injecteur de Morphine + Autostrzykawka z morfiną + Morfium autoinjektor + + + Used to combat moderate to severe pain experiences + Wird verwendet um moderate bis starke Schmärzen zu lindern. + Для снятия средних и сильных болевых ощущений. + Usado para combatir los estados dolorosos de moderados a severos + Utiliser pour contrer les douleurs modéré à severes. + Morfina. Ma silne działanie przeciwbólowe. + Mérsékelttől erős fájdalomig, ellene alkalmazandó termék + + + An analgesic used to combat moderate to severe pain experiences. + Анальгетик для снятия средних и сильных болевых ощущений. + Analgésico usado para combatir los estados dolorosos de moderados a severos. + Un Analgésique puissant servant a contrer les douleur modéré a severe. + Organiczny związek chemiczny z grupy alkaloidów. Ma silne działanie przeciwbólowe. + Egy fájdalomcsillapító anyag, jellemzően mérsékelt vagy erős fájdalom esetén alkalmazandó. + + + Atropin autoinjector + Атропин в пневмошприце + Atropina auto-inyectable + Auto-injecteur d'Atropine + Autostrzykawka AtroPen + Atropin autoinjektor + + + Used in NBC scenarios + Применяется для защиты от ОМП + Usado en escenarios NBQ + Utiliser en cas d'attaque CBRN + Atropina. Stosowana jako lek rozkurczowy i środek rozszerzający źrenice. + NBK helyzetek esetén használandó + + + A drug used by the Military in NBC scenarios. + Препарат, используемый в войсках для защиты от оружия массового поражения. + Medicamento usado por militares en escenarios NBQ + Médicament utilisé par l'armée en cas d'attaque CBRN + Atropina. Stosowana jako lek rozkurczowy i środek rozszerzający źrenice. Środek stosowany w przypadku zagrożeń NBC. + Egy instabil alkaloid, NBK helyzetek esetén a katonai szervezetek veszik használatba. + + + Epinephrine autoinjector + Адреналин в пневмошприце + Epinefrina auto-inyectable + Auto-injecteur d'épinéphrine + Autostrzykawka EpiPen + Epinefrin autoinjektor + + + Increase heart rate and counter effects given by allergic reactions + Стимулирует работу сердца и купирует аллергические реакции. + Aumenta la frecuencia cardiaca y contraresta los efectos de las reacciones alérgicas + Augmente la Fréquance cadiaque et contré les effet d'une reaction Anaphylactique + Adrenalina. Zwiększa puls i przeciwdziała efektom wywołanym przez reakcje alergiczne + Növeli a szívverést és ellenzi az allergiás reakciók hatásait + + + A drug that works on a sympathetic response to dilate the bronchi, increase heart rate and counter such effects given by allergic reactions (anaphylaxis). Used in sudden cardiac arrest scenarios with decreasing positive outcomes. + Препарат, вызывающий симпатическую реакцию, приводящую к расширению бронхов, увеличению частоты сердечных сокращений и купированию аллергических реакций (анафилактического шока). Применяется при остановке сердца с уменьшением вероятности благоприятного исхода. + Medicamento que dilata los bronquios, aumenta la frecuencia cardiaca y contrarresta los efectos de las reacciones alérgicas (anafilaxis). Se utiliza en caso de paros cardiacos repentinos. + Un medicament qui fonctione sur le systeme sympatique créan une dilatation des bronches, augmente la fréquance cardiaque et contre les effet d'une reaction alergique (anaphylaxie). Utiliser lors d'arret cardio-respiratoire pour augmenté les chances retrouver un ryhtme. + EpiPen z adrenaliną ma działanie sympatykomimetyczne, tj. pobudza receptory alfa- i beta-adrenergiczne. Pobudzenie układu współczulnego prowadzi do zwiększenia częstotliwości pracy serca, zwiększenia pojemności wyrzutowej serca i przyśpieszenia krążenia wieńcowego. Pobudzenie oskrzelowych receptorów beta-adrenergicznych wywołuje rozkurcz mięśni gładkich oskrzeli, co w efekcie zmniejsza towarzyszące oddychaniu świsty i duszności. + Egy hormon, mely a szimpatikus idegrendszer által kitágítja a hörgőket, valamint megnöveli a szívverést, ezzel ellensúlyozva ilyen jellegű allergiás reakciókat (anafilaxia). Hirtelen szívmegállás esetén is használt, idő alatt csökkenő hatásfokkal. + + + Plasma IV (1000ml) + Плазма для в/в вливания (1000 мл) + Plasma IV (1000ml) + Plasma Sanguin IV (1000ml) + Osocze IV (1000ml) + Vérplazma-infúzió (1000ml) + + + A volume-expanding blood supplement. + Дополнительный препарат, применяемый при возмещении объема крови. + Suplemento para expandir el volumen sanguíneo. + Supplement visant a remplacer les volume sanguin + Składnik krwi, używany do zwiększenia jej objętości. + Egy térfogatnövelő vérkiegészítmény. + + + A volume-expanding blood supplement. + Дополнительный препарат, применяемый при возмещении объема крови. + Suplemento para expandir el volumen sanguíneo. + Supplement visant a remplacer le volume sanguin et remplace les plaquettes. + Składnik krwi, używany do zwiększenia jej objętości. + Egy térfogatnövelő vérkiegészítmény. + + + Plasma IV (500ml) + Плазма для в/в вливания (500 мл) + Plasma IV (500ml) + Plasma Sanguin IV (500ml) + Osocze IV (500ml) + Vérplazma-infúzió (500ml) + + + Plasma IV (250ml) + Плазма для в/в вливания (250 мл) + Plasma IV (250ml) + Plasma Sanguin (250ml) + Osocze IV (250ml) + Vérplazma-infúzió (250ml) + + + Blood IV (1000ml) + Кровь для переливания (1000 мл) + Sangre IV (1000ml) + Cullot Sanguin IV (1000ml) + Krew IV (1000ml) + Vér-infúzió (1000ml) + + + Blood IV, for restoring a patients blood (keep cold) + Пакет крови для возмещения объема потерянной крови (хранить в холодильнике) + Sangre intravenosa, para restarurar el volumen sanguíneo (mantener frío) + Cullot Sanguin IV, pour remplacer le volume sanguin (garder Réfrigeré) + Krew IV, używana do uzupełnienia krwi u pacjenta, trzymać w warunkach chłodniczych + Vér-infúzió, intravénás bejuttatásra egy páciensnek (hidegen tárolandó) + + + O Negative infusion blood used in strict and rare events to replenish blood supply usually conducted in the transport phase of medical care. + Кровь I группы, резус-отрицательная, применяется по жизненным показаниям для возмещения объема потерянной крови на догоспитальном этапе оказания медицинской помощи. + Cullot Sanguin O- ,utiliser seulement lors de perte sanguine majeur afin de remplacer le volume sanguin perdu. Habituelment utiliser lors du transport ou dans un etablisement de soin. + Krew 0 Rh-, używana w rzadkich i szczególnych przypadkach do uzupełnienia krwi u pacjenta, zazwyczaj w trakcie fazie transportu rannej osoby do szpitala. + Utilice sólo durante gran pérdida de sangre para reemplazar el volumen de sangre perdida. Uso habitual durante el transporte de heridos. + Nullás vércsoportú, Rh-negatív vér-infúzió, melyet kritikus helyzetekben vérutánpótlásra használnak, jellemzően az orvosi ellátás szállítási fázisa közben. + + + Blood IV (500ml) + Кровь для переливания (500 мл) + Sangre IV (500ml) + Cullot Sanguin IV (500ml) + Krew IV (500ml) + Vér-infúzió (500ml) + + + Blood IV (250ml) + Кровь для переливания (250 мл) + Sangre IV (250ml) + Cullot Sanguin IV (250ml) + Krew IV (250ml) + Vér-infúzió (250ml) + + + Saline IV (1000ml) + Физраствор для в/в вливания (1000 мл) + Solución Salina IV (1000ml) + solution Saline 0.9% IV (1000ml) + Solanka 0,9% IV (1000ml) + 0,9%-os sósvíz-infúzió (1000ml) + + + Saline IV, for restoring a patients blood + Пакет физраствора для возмещения объема потерянной крови + Solución salina intravenosa, para restaurar el volumen sanguíneo + Solution Saline 0.9% IV, pour retablir temporairement la tention arteriel + Solanka 0,9%, podawana dożylnie (IV), używana w celu uzupełnienia krwi u pacjenta + 0,9%-os sósvíz-infúzió, a páciens vérmennyiségének helyreállítására + + + A medical volume-replenishing agent introduced into the blood system through an IV infusion. + Пакет физиологического раствора для возмещения объема потерянной крови путем внутривенного вливания. + Suero fisiológico inoculado al torrente sanguíneo de forma intravenosa. + Un remplacment temporaire pour rétablir la tention artériel lors de perte sanguine, étant ajouter par intraveineuse + Używany w medycynie w formie płynu infuzyjnego jako środek nawadniający i uzupełniający niedobór elektrolitów, podawany dożylnie (IV). + Egy orvosi térfogat-helyreállító készítmény, melyet intravénás módon lehet a szervezetbe juttatni. + + + Saline IV (500ml) + Физраствор для в/в вливания (500 мл) + Salino IV (500ml) + Solution Saline 0.9% IV (500ml) + Solanka 0,9% IV (500ml) + 0,9%-os sósvíz-infúzió (500ml) + + + Saline IV (250ml) + Физраствор для в/в вливания (250 мл) + Salino IV (250ml) + Solution Saline 0.9% IV (250ml) + Solanka 0,9% IV (250ml) + 0,9%-os sósvíz-infúzió (250ml) + + + Basic Field Dressing (QuikClot) + Первичный перевязочный пакет (QuikClot) + Vendaje básico (QuickClot) + Bandage Regulier (Coagulant) + Opatrunek QuikClot + Általános zárókötszer (QuikClot) + + + QuikClot bandage + Гемостатический пакет QuikClot + Vendaje QuikClot + Bandage coagulant + Podstawowy opatrunek stosowany na rany + QuikClot kötszer + + + Hemostatic bandage with coagulant that stops bleeding. + + Un bandage servant a coaguler les seignements mineur à moyen. + Proszkowy opatrunek adsorbcyjny przeznaczony do tamowania zagrażających życiu krwawień średniej i dużej intensywności. + Vendaje hemostático con coagulante que detiene el sangrado. + Hemostatikus kötszer egy vérzésgátló anyaggal. + + + Personal Aid Kit + Аптечка + Botiquín de primeros auxilios + Équipement de support Vitale + Apteczka osobista + Elsősegélycsomag + + + Includes various treatment kit needed for stitching or advanced treatment + Содержит различные материалы и инструменты для зашивания ран и оказания специальной медпомощи. + Incluye material médico para tratamientos avanzados + Inclue du matériel medical pour les traitement avancé, tel les point de suture. + Zestaw środków medycznych do opatrywania ran i dodatkowego leczenia po-urazowego + Változatos segédfelszereléseket tartalmaz sebvarráshoz és haladó elsősegélynyújtáshoz + + + + + + + + + Surgical Kit + Хирургический набор + Kit quirúrgico + Sebészeti készlet + + + Surgical Kit for in field advanced medical treatment + Набор для хирургической помощи в полевых условиях + Kit quirúrgico para el tratamiento avanzado en el campo de batalla + Sebészeti készlet komplex orvosi feladatok terepen való ellátására + + + Surgical Kit for in field advanced medical treatment + Набор для хирургической помощи в полевых условиях + Kit quirúrgico para el tratamiento avanzado en el campo de batalla + Sebészeti készlet komplex orvosi feladatok terepen való ellátására + + + Bodybag + Мешок для трупов + Bolsa para cadáveres + Hullazsák + + + A bodybag for dead bodies + Мешок для упаковки трупов + Una bolsa para cadáveres + Egy hullazsák a holttestek számára + + + A bodybag for dead bodies + Мешок для упаковки трупов + Una bolsa para cadáveres + Egy hullazsák a holttestek számára + + + Blood Pressure + Артериальное давление + Presión arterial + Vérnyomás + + + Checking Blood Pressure.. + Проверка артериального давления... + Comprobando presión arterial... + Vérnyomás megmérése... + + + You checked %1 + Вы осмотрели раненого %1 + Examinando a %1 + A %1 ellenőrizve + + + You find a blood pressure of %2/%3 + Артериальное давление %2/%3 + La presión arterial es %2/%3 + A vérnyomás %2/%3 + + + You find a low blood pressure + Давление низкое + La presión arterial es baja + A vérnyomás alacsony + + + You find a normal blood pressure + Давление нормальное + La presión arterial es normal + A vérnyomás normális + + + You find a high blood pressure + Давление высокое + La presión arterial es alta + A vérnyomás magas + + + You find no blood pressure + Давления нет + No hay presión arterial + Nem észlelhető vérnyomás + + + You fail to find a blood pressure + Артериальное давление не определяется + No puedes encontrar presión arterial + Nem sikerült a vérnyomás megmérése + + + Pulse + Пульс + Pulso + Pulzus + + + Checking Heart Rate.. + Проверка пульса... + Comprobando ritmo cardíaco... + Szívverés-szám mérése... + + + You checked %1 + Вы осмотрели раненого %1 + Examinando a %1 + A %1 ellenőrizve + + + You find a Heart Rate of %2 + Пульс %2 уд./мин. + El ritmo cardíaco es de %2 + A szívverés-szám %2 + + + You find a weak Heart Rate + Пульс слабый + El ritmo cardíaco es débil + A szívverés-szám alacsony + + + You find a strong Heart Rate + Пульс учащенный + El ritmo cardíaco está acelerado + A szívverés-szám magas + + + You find a normal Heart Rate + Пульс в норме + El ritmo cardíaco es bueno + A szívverés-szám normális + + + You find no Heart Rate + Пульс не прощупывается + No tiene ritmo cardíaco + Nem észlelhető szívverés + + + Response + Реакция + Respuesta + Reagálóképesség + + + You check response of patient + Вы проверяете реакцию раненого + Compruebas si el paciente reacciona + Ellenőrzöd a páciens reagálóképességét + + + %1 is responsive + %1 реагирует на раздражители + %1 ha reaccionado + %1 reakcióképes + + + %1 is not responsive + %1 не реагирует + %1 no reacciona + %1 nem reagál + + + You checked %1 + Вы осмотрели раненого %1 + Examinas a %1 + Megnézted %1-t + + + Bandaged + Повязка наложена + Vendado + Bekötözve + + + You bandage %1 (%2) + Вы перевязали раненого %1 (%2) + Aplicas vendaje a %1 en %2 + Bekötözöd %1-t (%2) + + + %1 is bandaging you + %1 перевязывает вас + %1 te está vendando + %1 bekötöz téged + + + You start stitching injures from %1 (%2) + Вы зашиваете ранения от %1 (%2) + Estás suturando heridas de %1 en %2 + Elkezded összevarni %1 sérüléseit (%2) + + + Stitching + Наложение швов + Suturando + Összevarrás + + + You treat the airway of %1 + Вы интубируете раненого %1 + Estás intubando a %1 + Kezeled %1 légútját + + + Airway + Дыхательные пути + Vías aéreas + Légút + + + %1 is treating your airway + %1 проводит вам интубацию + %1 te está intubando + %1 kezeli a légútadat + + + Drag + Ziehen + Arrastrar + Ciągnij + Táhnout + Тащить + Tracter + Húzás + Arrastar + Trascina + + + Carry + Tragen + Cargar + Nieś + Nést + Нести + Porter + Cipelés + Carregar + Trasporta + + + Release + Loslassen + Soltar + Połóż + Položit + Отпустить + Déposer + Elengedés + Largar + Lascia + + + Load Patient Into + Patient Einladen + Cargar el paciente en + Załaduj pacjenta + Naložit pacianta do + Погрузить пациента в + Embarquer le Patient + Sebesült berakása + Carregar Paciente Em + Carica paziente nel + + + Unload Patient + Patient Ausladen + Descargar el paciente + Wyładuj pacjenta + Vyložit pacienta + Выгрузить пациента + Débarquer le Patient + Sebesült kihúzása + Descarregar Paciente + Scarica il paziente + + + Unload patient + Descargar el paciente + Выгрузить пациента + Sebesült kihúzása + + + Load patient + Cargar el paciente en + Погрузить пациента + Sebesült berakása + + + Place body in bodybag + Colocar cuerpo en bolsa para cadáveres + Поместить тело в мешок + Test hullazsákba helyezése + + + Placing body in bodybag + Colocando cuerpo en bolsa para cadáveres + Помещение тела в мешок ... + Test hullazsákba helyezése ... + + + %1 has bandaged patient + %1 has vendado al paciente + %1 перевязал пациента + %1 bekötözte a pácienst + + + %1 used %2 + %1 usó %2 + %1 применил %2 + %1 használta a %2-t + + + %1 has given an IV + %1 has puesto una IV + %1 провел переливание + %1 infúziót adott + + + %1 applied a tourniquet + %1 aplicado torniquete + %1 наложил жгут + %1 felhelyezett egy érszorítót + + + \ No newline at end of file diff --git a/addons/microdagr/stringtable.xml b/addons/microdagr/stringtable.xml index 600570c24e..5acd21af6b 100644 --- a/addons/microdagr/stringtable.xml +++ b/addons/microdagr/stringtable.xml @@ -1,177 +1,203 @@  + - - - MicroDAGR GPS - MicroDAGR GPS - GPS MicroDAGR - MicroDAGR GPS - MicroDAGR GPS - - - MicroDAGR advanced GPS receiver - MicroDAGR - Fortgeschrittener GPS-Empfänger - Receptor avanzado GPS MicroDAGR - Многофункциональный GPS-приёмник. - - - Angular Unit: - Unidad angular: - Угловые единицы: - - - Mils - Mils - Mils - Тысячные - - - Show Waypoints On Map: - Zeige Wegpunkte auf Karte - Mostrar puntos de ruta en el mapa: - Показывать маршрутные точки на карте: - - - Degrees - Grad - Grados - Градусы - - - On - Zapnuto - Oui - Ein - - Wł. - Ativar - Вкл. - Encendido - - - Off - Vypnuto - Non - Aus - No - Wył. - Desativar - Выкл. - Apagado - - - Enter Grid Cords: - Introducir coordenadas de cuadrícula: - Введите координаты: - - - Name of [%1] - Name von [%1] - Nombre de [%1] - Название [%1] - - - MGRS-New - MGRS-NEU - Nuevo-MGRS - MGRS-Новая - - - WGD - WGD - WGD - WGD - - - Range: - Distancia - Reichweite: - Дистанция: - - - Compass Direction - Kompass Richtung - Dirección de la brújula - Азимут - - - Mark - Markiere - Marca - Отметка - - - Waypoints - Puntos de ruta - Wegpunkte - Машрутные точки - Waypointy - - - Connect To - Conectar a - Соединиться с - Verbinde zu - Připojit k - - - Settings - Einstellungen - Configuración - Настройки - Nastavení - - - SetWP - SetzeWP - Establecer PR - Установить МТ - Nastavit WP - - - Add - Hinzufügen - Añadir - Добавить - Přidat - - - Delete - Smazat - Supprimer - Löschen - Elimina - Usuń - Excluir - Удалить - Borrar - - - Toggle MicroDAGR Display Mode - Wechsle MircoDAGR Bildschirmmodus - Conmutar modo de pantalla del MicroDAGR - Сменить режим показа MicroDAGR - - - Show MicoDAGR - Zeige MicroDAGR - Mostrar MicroDAGR - Показать MicroDAGR - Ukázat MicroDAGR GPS - - - Configure MicroDAGR - Stelle MicroDAGR ein - Configurar MicroDAGR - Настроить MicroDAGR - Konfigurovat MicroDAGR GPS - - - Close MicroDAGR - Schließe MicroDAGR - Cerrar MicroDAGR - Закрыть MicroDAGR - Zavřít MicroDAGR GPS - - - + + + MicroDAGR GPS + MicroDAGR GPS + GPS MicroDAGR + MicroDAGR GPS + MicroDAGR GPS + MicroDAGR GPS + + + MicroDAGR advanced GPS receiver + MicroDAGR - Fortgeschrittener GPS-Empfänger + Receptor avanzado GPS MicroDAGR + Многофункциональный GPS-приёмник. + MicroDAGR fejlett GPS vevőegység + + + Angular Unit: + Unidad angular: + Угловые единицы: + Szögmértékegység: + + + Mils + Mils + Mils + Тысячные + Mil + + + Show Waypoints On Map: + Zeige Wegpunkte auf Karte + Mostrar puntos de ruta en el mapa: + Показывать маршрутные точки на карте: + Útvonalpontok mutatása a térképen: + + + Degrees + Grad + Grados + Градусы + Fok + + + On + Zapnuto + Oui + Ein + + Wł. + Ativar + Вкл. + Encendido + Be + + + Off + Vypnuto + Non + Aus + No + Wył. + Desativar + Выкл. + Apagado + Ki + + + Enter Grid Cords: + Introducir coordenadas de cuadrícula: + Введите координаты: + Add meg a rácskoordinátákat: + + + Name of [%1] + Name von [%1] + Nombre de [%1] + Название [%1] + [%1] neve + + + MGRS-New + MGRS-NEU + Nuevo-MGRS + MGRS-Новая + MGRS-új + + + WGD + WGD + WGD + WGD + WGD + + + Range: + Distancia + Reichweite: + Дистанция: + Távolság: + + + Compass Direction + Kompass Richtung + Dirección de la brújula + Азимут + Irányszög + + + Mark + Markiere + Marca + Отметка + Jelölés + + + Waypoints + Puntos de ruta + Wegpunkte + Машрутные точки + Waypointy + Útvonalpontok + + + Connect To + Conectar a + Соединиться с + Verbinde zu + Připojit k + Csatlakozás + + + Settings + Einstellungen + Configuración + Настройки + Nastavení + Beállítások + + + SetWP + SetzeWP + Establecer PR + Установить МТ + Nastavit WP + UP Beállítása + + + Add + Hinzufügen + Añadir + Добавить + Přidat + Hozzáadás + + + Delete + Smazat + Supprimer + Löschen + Elimina + Usuń + Excluir + Удалить + Borrar + Törlés + + + Toggle MicroDAGR Display Mode + Wechsle MircoDAGR Bildschirmmodus + Conmutar modo de pantalla del MicroDAGR + Сменить режим показа MicroDAGR + MicroDAGR kijelzési mód váltása + + + Show MicoDAGR + Zeige MicroDAGR + Mostrar MicroDAGR + Показать MicroDAGR + Ukázat MicroDAGR GPS + MicroDAGR mutatása + + + Configure MicroDAGR + Stelle MicroDAGR ein + Configurar MicroDAGR + Настроить MicroDAGR + Konfigurovat MicroDAGR GPS + MicroDAGR konfigurálása + + + Close MicroDAGR + Schließe MicroDAGR + Cerrar MicroDAGR + Закрыть MicroDAGR + Zavřít MicroDAGR GPS + MicroDAGR elrejtése + + + \ No newline at end of file diff --git a/addons/missileguidance/stringtable.xml b/addons/missileguidance/stringtable.xml index d64e3e31ab..b5ce61e538 100644 --- a/addons/missileguidance/stringtable.xml +++ b/addons/missileguidance/stringtable.xml @@ -11,7 +11,7 @@ Pokročilé řízení střel Avanzato Missile Guidance Avançado Missile Guidance - Részletes rakéta irányító + Fejlett rakétairányító Расширенный ракетой @@ -23,85 +23,13 @@ Povoluje pokročilou mechaniku řízení střel. - + Engedélyezi a haladó irányító mechanizmusokat, valamint különböző rakéták és tüzelési módok kiválasztását. /* Weapons */ - - Hydra-70 DAGR Missile - - - - - Hydra-70 DAGR - - - - - - - DAGR - - - - - DAGR - - - - - - - Hydra-70 DAGR Laser Guided Missile - - - - - Hydra-70 DAGR laserem naváděná střela - - - - - + Hydra-70 DAGR MissileHydra-70 DAGRHydra-70 DAGR rakétaDAGRDAGRDAGRHydra-70 DAGR Laser Guided MissileHydra-70 DAGR laserem naváděná střelaHydra-70 DAGR lézer-irányított rakéta /* Weapons */ - - Hellfire II AGM-114K Missile - - - - - Hellfire II AGM-114K - - - - - - - AGM-114K - - - - - AGM-114K - - - - - - - Hellfire II AGM-114K Laser Guided Missile - - - - - Hellfire II AGM-114K laserem naváděná střela - - - - - - - + Hellfire II AGM-114K MissileHellfire II AGM-114KHellfire II AGM-114K rakétaAGM-114KAGM-114KAGM-114KHellfire II AGM-114K Laser Guided MissileHellfire II AGM-114K laserem naváděná střelaHellfire II AGM-114K lézer-irányított rakéta \ No newline at end of file diff --git a/addons/movement/stringtable.xml b/addons/movement/stringtable.xml index b04347f975..a38094118c 100644 --- a/addons/movement/stringtable.xml +++ b/addons/movement/stringtable.xml @@ -1,46 +1,48 @@  - + - - - Show weight in lb - Zeige Gewicht in Pfund - Mostrar peso en libras - Afficher le poids en lb - Pokaż ciężar w funtach - Zobrazit váhu v librách - Mostra peso in libbre - Mostrar peso em libras - Súly megjelenítése fontban. - Показать вес в фунтах - - - Weight: - Gewicht: - Peso: - Poids: - Waga: - Váha: - Peso: - Peso: - Súly: - Вес: - - - Climb - Klettern - Wspinaczka - Trepar - Vylézt - Подняться - - - Can't climb here - Kann hier nicht klettern - Nie możesz wspiąć się tutaj - No se puede trepar aquí - Zde není možné vylézt - Не можете подняться здесь - - + + + Show weight in lb + Zeige Gewicht in Pfund + Mostrar peso en libras + Afficher le poids en lb + Pokaż ciężar w funtach + Zobrazit váhu v librách + Mostra peso in libbre + Mostrar peso em libras + Súly megjelenítése fontban. + Показать вес в фунтах + + + Weight: + Gewicht: + Peso: + Poids: + Waga: + Váha: + Peso: + Peso: + Súly: + Вес: + + + Climb + Klettern + Wspinaczka + Trepar + Vylézt + Подняться + Mászás + + + Can't climb here + Kann hier nicht klettern + Nie możesz wspiąć się tutaj + No se puede trepar aquí + Zde není možné vylézt + Не можете подняться здесь + Itt nem tudsz mászni + + \ No newline at end of file From 8bfd915ec465423eedbf881ffe09076d58843b04 Mon Sep 17 00:00:00 2001 From: Harakhti Date: Mon, 13 Apr 2015 23:45:44 +0200 Subject: [PATCH 077/246] Translation: N to R This was a lot more fun than the previous two were. 12 folders left... --- addons/nametags/stringtable.xml | 179 +- addons/nightvision/stringtable.xml | 256 +-- addons/optics/stringtable.xml | 247 +-- addons/optionsmenu/stringtable.xml | 322 +-- addons/overheating/stringtable.xml | 310 +-- addons/parachute/stringtable.xml | 86 +- addons/realisticnames/stringtable.xml | 2713 ++++++++++++------------ addons/reload/stringtable.xml | 123 +- addons/reloadlaunchers/stringtable.xml | 7 +- addons/respawn/stringtable.xml | 59 +- 10 files changed, 2199 insertions(+), 2103 deletions(-) diff --git a/addons/nametags/stringtable.xml b/addons/nametags/stringtable.xml index c61158103f..e30ff4cde6 100644 --- a/addons/nametags/stringtable.xml +++ b/addons/nametags/stringtable.xml @@ -1,89 +1,94 @@  + - - - Show Names - Namen anzeigen - Mostrar nombres - Afficher noms - Zobrazit jména - Pokaż nazwy - Nevek mutatása - Показать имена - - - Show player names - Spielernamen anzeigen - Mostrar nombres de jugadores - Pokaż nazwy graczy - Afficher nom des joueurs - Játékosnevek mutatása - Zobrazit jména hráčů - Mostrar nomes de jogadores - Mostra i nomi dei giocatori - Показать имена игроков - - - Show player name only on cursor (requires player names) - Pokaż nazwę gracza tylko pod kursorem - Mostrar nombres solo en el cursor (requiere Mostrar nombres de jugadores) - Zeige Spielernamen nur an, wenn die Maus auf sie gerrichtet ist (benötigt Spielernamen) - Noms uniquement sous le curseur (si noms affichés) - Zobrazit jméno hráče jenom na kurzor (vyžaduje jména hráčů) - Mostra i nomi solo se puntati (richiede i nomi dei giocatori abilitati) - Mostrar nome de jogador somente no cursor (requer nome de jogadores) - Játékosok nevének mutatása (névcímke szükséges) - Показать имена игроков только под курсором (требует имен игроков) - - - Show player name only on keypress (requires player names) - Spielernamen nur auf Tastendruck anzeigen (benötigt Spielernamen) - Mostrar nombres solo al pulsar (requiere Mostrar nombres de jugadores) - Noms uniquement sur pression de la touche (si noms affichés) - Zobrazit jména hráčů jen na klávesu (vyžaduje jména hráčů) - Pokaż nazwę gracza tylko po przytrzymaniu klawisza - Játékosnevek mutatása gombnyomásra(névcíme szükséges) - Показать имена игроков только по нажатию клавиши (требует имен игроков) - - - Show player ranks (requires player names) - Spielerränge anzeigen (benötig Spielernamen) - Pokaż rangi graczy (wymaga nazw graczy) - Mostrar rango de los jugadores (requiere Mostrar nombres de jugadores) - Grade des joueurs (si noms affichés) - Zobrazit hodnosti hráčů (vyžaduje jména hráčů) - Mostra i gradi (richiede i nomi dei giocatori abilitati) - Mostrar patente de jogadores (requer nome de jogadores) - Játékosok rendfokozatának mutatása (névcímke szükséges) - Показать звания игроков (требует имен игроков) - - - Show vehicle crew info - Zeige Fahrzeugbesatzung - Mostrar tripulantes - Pokaż informacje o załodze pojazdu - Zobrazit info o posádce vozidla - Показать экипаж - - - Show name tags for AI units - Zeige KI-Namen - Mostrar etiquetas de nombre para unidades IA - Показывать именые метки ИИ - Zobrazit jména AI - - - Show SoundWaves (requires player names) - Zeigen Schallwellen (benötigt Spielernamen) - Mostrar onda sonora (requiere Mostrar nombres de jugadores) - Показывать звуковые волны (требует имен игроков) - Zobrazit SoundWaves (vyžaduje jména hráčů) - - - Default Nametag Color (Non Group Members) - Voreingestellte Namenfarbe (Spieler außerhalb der Gruppe) - Цвет меток игроков (не членов групп) - Color de etiquetas de nombre por defecto (No miembros de grupo) - - - + + + Show Names + Namen anzeigen + Mostrar nombres + Afficher noms + Zobrazit jména + Pokaż nazwy + Nevek mutatása + Показать имена + + + Show player names + Spielernamen anzeigen + Mostrar nombres de jugadores + Pokaż nazwy graczy + Afficher nom des joueurs + Játékosnevek mutatása + Zobrazit jména hráčů + Mostrar nomes de jogadores + Mostra i nomi dei giocatori + Показать имена игроков + + + Show player name only on cursor (requires player names) + Pokaż nazwę gracza tylko pod kursorem + Mostrar nombres solo en el cursor (requiere Mostrar nombres de jugadores) + Zeige Spielernamen nur an, wenn die Maus auf sie gerrichtet ist (benötigt Spielernamen) + Noms uniquement sous le curseur (si noms affichés) + Zobrazit jméno hráče jenom na kurzor (vyžaduje jména hráčů) + Mostra i nomi solo se puntati (richiede i nomi dei giocatori abilitati) + Mostrar nome de jogador somente no cursor (requer nome de jogadores) + Játékosok nevének mutatása csak a kurzoron (a nevek mutatása szükséges) + Показать имена игроков только под курсором (требует имен игроков) + + + Show player name only on keypress (requires player names) + Spielernamen nur auf Tastendruck anzeigen (benötigt Spielernamen) + Mostrar nombres solo al pulsar (requiere Mostrar nombres de jugadores) + Noms uniquement sur pression de la touche (si noms affichés) + Zobrazit jména hráčů jen na klávesu (vyžaduje jména hráčů) + Pokaż nazwę gracza tylko po przytrzymaniu klawisza + Játékosnevek mutatása csak gombnyomásra (a nevek mutatása szükséges) + Показать имена игроков только по нажатию клавиши (требует имен игроков) + + + Show player ranks (requires player names) + Spielerränge anzeigen (benötig Spielernamen) + Pokaż rangi graczy (wymaga nazw graczy) + Mostrar rango de los jugadores (requiere Mostrar nombres de jugadores) + Grade des joueurs (si noms affichés) + Zobrazit hodnosti hráčů (vyžaduje jména hráčů) + Mostra i gradi (richiede i nomi dei giocatori abilitati) + Mostrar patente de jogadores (requer nome de jogadores) + Játékosok rendfokozatának mutatása (a nevek mutatása szükséges) + Показать звания игроков (требует имен игроков) + + + Show vehicle crew info + Zeige Fahrzeugbesatzung + Mostrar tripulantes + Pokaż informacje o załodze pojazdu + Zobrazit info o posádce vozidla + Показать экипаж + Jármű-legénység adatainak mutatása + + + Show name tags for AI units + Zeige KI-Namen + Mostrar etiquetas de nombre para unidades IA + Показывать именые метки ИИ + Zobrazit jména AI + Névcímkék mutatása MI-egységeknél + + + Show SoundWaves (requires player names) + Zeigen Schallwellen (benötigt Spielernamen) + Mostrar onda sonora (requiere Mostrar nombres de jugadores) + Показывать звуковые волны (требует имен игроков) + Zobrazit SoundWaves (vyžaduje jména hráčů) + "Hanghullámok" mutatása (a nevek mutatása szükséges) + + + Default Nametag Color (Non Group Members) + Voreingestellte Namenfarbe (Spieler außerhalb der Gruppe) + Цвет меток игроков (не членов групп) + Color de etiquetas de nombre por defecto (No miembros de grupo) + Alap névcímke-szín (csoporton kívüli személyek) + + + \ No newline at end of file diff --git a/addons/nightvision/stringtable.xml b/addons/nightvision/stringtable.xml index 2dad02e3bd..bdd70a348a 100644 --- a/addons/nightvision/stringtable.xml +++ b/addons/nightvision/stringtable.xml @@ -1,127 +1,135 @@  - + - - - NV Goggles (Gen1) - Noktovizor (Gen1) - JVN (Gen1) - NS-Brille (Gen1) - Occhiali notturni (Gen1) - Gogle noktowizyjne (Gen1) - Óculos de visão noturna (Gen1) - ПНВ (Gen1) - Sistema de visión nocturna (Gen1) - - - NV Goggles (Gen2) - Noktovizor (Gen2) - JVN (Gen2) - NS-Brille (Gen2) - Occhiali notturni (Gen2) - Gogle noktowizyjne (Gen2) - Óculos de visão noturna (Gen2) - ПНВ (Gen2) - Sistema de visión nocturna (Gen2) - - - NV Goggles (Gen3) - Noktovizor (Gen3) - JVN (Gen3) - NS-Brille (Gen3) - Occhiali notturni (Gen3) - Gogle noktowizyjne (Gen3) - Óculos de visão noturna (Gen3) - ПНВ (Gen3) - Sistema de visión nocturna (Gen3) - - - NV Goggles (Gen3, Brown) - Noktovizor (Gen3, hnědý) - JVN (Gen3, marron) - NS-Brille (Gen3, Braun) - Occhiali notturni (Gen3, marroni) - Gogle noktowizyjne (Gen3, brązowe) - Óculos de visão noturna (Gen3, marrons) - ПНВ (Gen3, коричневый) - Sistema de visión nocturna (Gen3, marrón) - - - NV Goggles (Gen3, Green) - Noktovizor (Gen3, zelený) - JVN (Gen3, vertes) - NS-Brille (Gen3, Grün) - Occhiali notturni (Gen3, verdi) - Gogle noktowizyjne (Gen3, zielone) - Óculos de visão noturna (Gen3, verdes) - ПНВ (Gen3, зеленый) - Sistema de visión nocturna (Gen3, verde) - - - NV Goggles (Gen3, Black) - Noktovizor (Gen3, černý) - JVN (Gen3, noires) - NS-Brille (Gen3, Schwarz) - Occhiali notturni (Gen3, neri) - Gogle noktowizyjne (Gen3, czarne) - Óculos de visão noturna (Gen3, pretos) - ПНВ (Gen3, черный) - Sistema de visión nocturna (Gen3, negro) - - - NV Goggles (Gen4) - Noktovizor (Gen4) - JVN (Gen4) - NS-Brille (Gen4) - Occhiali notturni (Gen4) - Gogle noktowizyjne (Gen4) - Óculos de visão noturna (Gen4) - ПНВ (Gen4) - Sistema de visión nocturna (Gen4) - - - NV Goggles (Wide) - NS-Brille (Weitwinkel) - Sistema de visión nocturna (Panorámicas) - Gogle noktowizyjne (panoramiczne) - Noktovizor (Širokoúhlý) - ПНВ (Широкий) - - - Brightness: %1 - Helligkeit: %1 - Brillo: %1 - Czułość: %1 - Jas: %1 - Luminosité : %1 - Контраст: - Fényerő: %1 - Luminosidade: %1 - Luminosità: %1 - - - Increase NVG Brightness - Nachtsichtgerätshelligkeit erhöhen - Aumentar el brillo de las NVG - Zwiększ czułość noktowizji - Zvýšení jasu noktovizoru - Augmenter la luminosité des JVN - Увеличить яркость ПНВ - Fényerő növelése - Aumentar Luminosidade do EVN - Aumenta la luminosità dell'NVG - - - Decrease NVG Brightness - Nachtsichtgerätshelligkeit verringern - Disminuir el brillo de las NVG - Zmniejsz czułość noktowizji - Snížení jasu noktovizoru - Baisser la luminosité des JVN - Уменьшить яркость ПНВ - Fényerő csökkentése - Diminuir Luminosidade do EVN - Riduci la luminosità dell'NVG - - + + + NV Goggles (Gen1) + Noktovizor (Gen1) + JVN (Gen1) + NS-Brille (Gen1) + Occhiali notturni (Gen1) + Gogle noktowizyjne (Gen1) + Óculos de visão noturna (Gen1) + ПНВ (Gen1) + Sistema de visión nocturna (Gen1) + Éjjellátó szemüveg (1. Gen.) + + + NV Goggles (Gen2) + Noktovizor (Gen2) + JVN (Gen2) + NS-Brille (Gen2) + Occhiali notturni (Gen2) + Gogle noktowizyjne (Gen2) + Óculos de visão noturna (Gen2) + ПНВ (Gen2) + Sistema de visión nocturna (Gen2) + Éjjellátó szemüveg (2. Gen.) + + + NV Goggles (Gen3) + Noktovizor (Gen3) + JVN (Gen3) + NS-Brille (Gen3) + Occhiali notturni (Gen3) + Gogle noktowizyjne (Gen3) + Óculos de visão noturna (Gen3) + ПНВ (Gen3) + Sistema de visión nocturna (Gen3) + Éjjellátó szemüveg (3. Gen.) + + + NV Goggles (Gen3, Brown) + Noktovizor (Gen3, hnědý) + JVN (Gen3, marron) + NS-Brille (Gen3, Braun) + Occhiali notturni (Gen3, marroni) + Gogle noktowizyjne (Gen3, brązowe) + Óculos de visão noturna (Gen3, marrons) + ПНВ (Gen3, коричневый) + Sistema de visión nocturna (Gen3, marrón) + Éjjellátó szemüveg (3. Gen., barna) + + + NV Goggles (Gen3, Green) + Noktovizor (Gen3, zelený) + JVN (Gen3, vertes) + NS-Brille (Gen3, Grün) + Occhiali notturni (Gen3, verdi) + Gogle noktowizyjne (Gen3, zielone) + Óculos de visão noturna (Gen3, verdes) + ПНВ (Gen3, зеленый) + Sistema de visión nocturna (Gen3, verde) + Éjjellátó szemüveg (3. Gen., zöld) + + + NV Goggles (Gen3, Black) + Noktovizor (Gen3, černý) + JVN (Gen3, noires) + NS-Brille (Gen3, Schwarz) + Occhiali notturni (Gen3, neri) + Gogle noktowizyjne (Gen3, czarne) + Óculos de visão noturna (Gen3, pretos) + ПНВ (Gen3, черный) + Sistema de visión nocturna (Gen3, negro) + Éjjellátó szemüveg (3. Gen., fekete) + + + NV Goggles (Gen4) + Noktovizor (Gen4) + JVN (Gen4) + NS-Brille (Gen4) + Occhiali notturni (Gen4) + Gogle noktowizyjne (Gen4) + Óculos de visão noturna (Gen4) + ПНВ (Gen4) + Sistema de visión nocturna (Gen4) + Éjjellátó szemüveg (4. Gen.) + + + NV Goggles (Wide) + NS-Brille (Weitwinkel) + Sistema de visión nocturna (Panorámicas) + Gogle noktowizyjne (panoramiczne) + Noktovizor (Širokoúhlý) + ПНВ (Широкий) + Éjjellátó szemüveg (széles látószögű) + + + Brightness: %1 + Helligkeit: %1 + Brillo: %1 + Czułość: %1 + Jas: %1 + Luminosité : %1 + Контраст: + Fényerő: %1 + Luminosidade: %1 + Luminosità: %1 + + + Increase NVG Brightness + Nachtsichtgerätshelligkeit erhöhen + Aumentar el brillo de las NVG + Zwiększ czułość noktowizji + Zvýšení jasu noktovizoru + Augmenter la luminosité des JVN + Увеличить яркость ПНВ + Éjjellátó fényerejének növelése + Aumentar Luminosidade do EVN + Aumenta la luminosità dell'NVG + + + Decrease NVG Brightness + Nachtsichtgerätshelligkeit verringern + Disminuir el brillo de las NVG + Zmniejsz czułość noktowizji + Snížení jasu noktovizoru + Baisser la luminosité des JVN + Уменьшить яркость ПНВ + Éjjellátó fényerejének csökkentése + Diminuir Luminosidade do EVN + Riduci la luminosità dell'NVG + + \ No newline at end of file diff --git a/addons/optics/stringtable.xml b/addons/optics/stringtable.xml index 3e518a63d1..28530ecf1e 100644 --- a/addons/optics/stringtable.xml +++ b/addons/optics/stringtable.xml @@ -1,125 +1,126 @@  - + - - - RCO (2D) - RCO (2D) - RCO (2D) - RCO (2D) - RCO (2D) - RCO (2D) - RCO (2D) - RCO (2D) - RCO (2D) - - - - RCO (PIP) - RCO (PIP) - RCO (PIP) - RCO (BIB) - RCO (PIP) - RCO (PIP) - RCO (PIP) - RCO (PIP) - RCO (PIP) - - - - ARCO (2D) - ARCO (2D) - ARCO (2D) - ARCO (2D) - ARCO (2D) - ARCO (2D) - ARCO (2D) - ARCO (2D) - ARCO (2D) - - - - ARCO (PIP) - ARCO (PIP) - ARCO (PIP) - ARCO (BIB) - ARCO (PIP) - ARCO (PIP) - ARCO (PIP) - ARCO (PIP) - ARCO (PIP) - - - - MRCO (2D) - MRCO (2D) - MRCO (2D) - MRCO (2D) - MRCO (2D) - MRCO (2D) - MRCO (2D) - Прицел MRCO (2D) - MRCO (2D) - - - - MRCO (PIP) - MRCO (PIP) - MRCO (PIP) - MRCO (BIB) - MRCO (PIP) - MRCO (PIP) - MRCO (PIP) - Прицел MRCO (PIP) - MRCO (PIP) - - - - MOS (2D) - MOS (2D) - MOS (2D) - MOS (2D) - MOS (2D) - MOS (2D) - MOS (2D) - MOS (2D) - MOS (2D) - - - - MOS (PIP) - MOS (PIP) - MOS (PIP) - MOS (BIB) - MOS (PIP) - MOS (PIP) - MOS (PIP) - MOS (PIP) - MOS (PIP) - - - - LRPS (2D) - LRPS (2D) - LRPS (2D) - LRPS (2D) - LRPS (2D) - LRPS (2D) - LRPS (2D) - LRPS (2D) - MPLD (2D) - - - - LRPS (PIP) - LRPS (PIP) - LRPS (PIP) - LRPS (BIB) - LRPS (PIP) - LRPS (PIP) - LRPS (PIP) - LRPS (PIP) - MPLD (PIP) - - - + + + RCO (2D) + RCO (2D) + RCO (2D) + RCO (2D) + RCO (2D) + RCO (2D) + RCO (2D) + RCO (2D) + RCO (2D) + RCO (2D) + + + RCO (PIP) + RCO (PIP) + RCO (PIP) + RCO (BIB) + RCO (PIP) + RCO (PIP) + RCO (PIP) + RCO (PIP) + RCO (PIP) + RCO (PIP) + + + ARCO (2D) + ARCO (2D) + ARCO (2D) + ARCO (2D) + ARCO (2D) + ARCO (2D) + ARCO (2D) + ARCO (2D) + ARCO (2D) + ARCO (2D) + + + ARCO (PIP) + ARCO (PIP) + ARCO (PIP) + ARCO (BIB) + ARCO (PIP) + ARCO (PIP) + ARCO (PIP) + ARCO (PIP) + ARCO (PIP) + ARCO (PIP) + + + MRCO (2D) + MRCO (2D) + MRCO (2D) + MRCO (2D) + MRCO (2D) + MRCO (2D) + MRCO (2D) + Прицел MRCO (2D) + MRCO (2D) + MRCO (2D) + + + MRCO (PIP) + MRCO (PIP) + MRCO (PIP) + MRCO (BIB) + MRCO (PIP) + MRCO (PIP) + MRCO (PIP) + Прицел MRCO (PIP) + MRCO (PIP) + MRCO (PIP) + + + MOS (2D) + MOS (2D) + MOS (2D) + MOS (2D) + MOS (2D) + MOS (2D) + MOS (2D) + MOS (2D) + MOS (2D) + MOS (2D) + + + MOS (PIP) + MOS (PIP) + MOS (PIP) + MOS (BIB) + MOS (PIP) + MOS (PIP) + MOS (PIP) + MOS (PIP) + MOS (PIP) + MOS (PIP) + + + LRPS (2D) + LRPS (2D) + LRPS (2D) + LRPS (2D) + LRPS (2D) + LRPS (2D) + LRPS (2D) + LRPS (2D) + MPLD (2D) + LRPS (2D) + + + LRPS (PIP) + LRPS (PIP) + LRPS (PIP) + LRPS (BIB) + LRPS (PIP) + LRPS (PIP) + LRPS (PIP) + LRPS (PIP) + MPLD (PIP) + LRPS (PIP) + + + \ No newline at end of file diff --git a/addons/optionsmenu/stringtable.xml b/addons/optionsmenu/stringtable.xml index 23fa52a52a..97defb0ba9 100644 --- a/addons/optionsmenu/stringtable.xml +++ b/addons/optionsmenu/stringtable.xml @@ -1,155 +1,171 @@  + - - - ACE Options - ACE Optionen - Opciones ACE - Opcje ACE - ACE Nastavení - ACE Options - ACE Настройки - Opções do ACE - ACE Opciók - Opzioni ACE - - - Fix Animation - Behebe Animation - Arreglar animación - Фикс анимации - Opravit animace - - - Reset All - Alles Zurücksetzen - Reiniciar todo - Полный сброс - Vyresetovat vše - - - Colors - Farben - Colores - Цвета - Barvy - - - Options - Optionen - Opciones - Opcje - Nastavení - Options - Настройки - Opções - Opciók - Opzioni - - - Values - Valores - Значения - Hodnoty - - - Yes - Ja - Si - Tak - Ano - Oui - Да - Igen - Sim - Si - - - No - Nein - No - Nie - Ne - Non - Нет - Nem - Não - No - - - Setting: - Nastavení: - Einstellung: - Установки: - Ajuste: - - - Export - Exportieren - Exportar - Экспорт - Exportovat - - - Open Export Menu - Öffne Exportmenü - Abrir menu d'exportación - Открыть меню экспорта - Otevřít exportovací menu - - - String input. - String input. - Introducir frase - Строчный ввод. - - - Array. Seperate elements by using ,. - Array. Teile unterschiedliche Elemente mit ,. - Matriz. Separa elementos usando ,. - Массив. Разделяйте элемены, используя запятую. - - - Number - Nummer - Numero - Число - Číslo - - - Uknown input type - Unbekannter Eingabetyp - Tipo de entrada desconocida - Неизвестный тип ввода - Neznámý vstup - - - Save input - Speichere Eingabe - Guardar entrada - Сохранить ввод - Uložit vstup - - - Include Client Settings - Beinhalte Client-Einstellungen - Incluir configuración de cliente - Включить настройки клиента - Zahrnout nastavení klienta - - - Exclude Client Settings - Schließe Client-Einstellungen aus - Excluir configuración de cliente - Исключить настройки клиента - Nezahrnout nastavení klienta - - - Settings exported to clipboard - Einstellungen in die Zwischenablage exportiert - Configuración exportada al portapapeles - Настройки экспортированы в буфер обмена - Nastevení exportována do schránky - - - + + + ACE Options + ACE Optionen + Opciones ACE + Opcje ACE + ACE Nastavení + ACE Options + ACE Настройки + Opções do ACE + ACE Beállítások + Opzioni ACE + + + Fix Animation + Behebe Animation + Arreglar animación + Фикс анимации + Opravit animace + Animációk kijavítása + + + Reset All + Alles Zurücksetzen + Reiniciar todo + Полный сброс + Vyresetovat vše + Minden visszaállítása + + + Colors + Farben + Colores + Цвета + Barvy + Színek + + + Options + Optionen + Opciones + Opcje + Nastavení + Options + Настройки + Opções + Beállítások + Opzioni + + + Values + Valores + Значения + Hodnoty + Értékek + + + Yes + Ja + Si + Tak + Ano + Oui + Да + Igen + Sim + Si + + + No + Nein + No + Nie + Ne + Non + Нет + Nem + Não + No + + + Setting: + Nastavení: + Einstellung: + Установки: + Ajuste: + Opció: + + + Export + Exportieren + Exportar + Экспорт + Exportovat + Exportálás + + + Open Export Menu + Öffne Exportmenü + Abrir menu d'exportación + Открыть меню экспорта + Otevřít exportovací menu + Exportálási menü megnyitása + + + String input. + String input. + Introducir frase + Строчный ввод. + String bevitel. + + + Array. Seperate elements by using ,. + Array. Teile unterschiedliche Elemente mit ,. + Matriz. Separa elementos usando ,. + Массив. Разделяйте элемены, используя запятую. + Array. Válasszad el az elemeket vesszővel. + + + Number + Nummer + Numero + Число + Číslo + Szám + + + Uknown input type + Unbekannter Eingabetyp + Tipo de entrada desconocida + Неизвестный тип ввода + Neznámý vstup + Ismeretlen beviteli típus + + + Save input + Speichere Eingabe + Guardar entrada + Сохранить ввод + Uložit vstup + Bevitel elmentése + + + Include Client Settings + Beinhalte Client-Einstellungen + Incluir configuración de cliente + Включить настройки клиента + Zahrnout nastavení klienta + Kliens-beállítások melléklése + + + Exclude Client Settings + Schließe Client-Einstellungen aus + Excluir configuración de cliente + Исключить настройки клиента + Nezahrnout nastavení klienta + Kliens-beállítások elhagyása + + + Settings exported to clipboard + Einstellungen in die Zwischenablage exportiert + Configuración exportada al portapapeles + Настройки экспортированы в буфер обмена + Nastevení exportována do schránky + Beállítások exportálva a vágólapba + + + \ No newline at end of file diff --git a/addons/overheating/stringtable.xml b/addons/overheating/stringtable.xml index 558abeb406..f57d27a7f1 100644 --- a/addons/overheating/stringtable.xml +++ b/addons/overheating/stringtable.xml @@ -1,155 +1,159 @@  + - - - Display text on jam - Zeige Text bei Ladehemmung - Mostrar texto al encasquillar - Показывать текст, когда клинит оружие - Zobrazit upozornění při zaseknutí - - - Display a notification whenever your weapon gets jammed - Zeige einen Hinweis wenn die Waffe eine Ladehemmung hat - Mostrar notificación cada vez que el arma se encasquille - Демонстровать уведомление, каждый раз, когда клинит Ваше оружие. - Zobrazí upozornění při zaseknutí zbraně - - - Spare barrel - Ersatzlauf - Cañón de repuesto - Zapasowa lufa - Náhradní hlaveň - Deuxième canon - Запасной ствол - Tartalék cső - Cano Reserva - Canna di ricambio - - - Use to swap barrel. - Benutzen, um Lauf zu wechseln. - Permite intercambiar el cañón - Umożliwia wymianę lufy - Používané k výměně hlavně - Utilisé pour changer de canon. - Используется для смены ствола. - Cső kicseréléséhez. - Use para trocar o cano/estriamento. - Usata per cambiare la canna. - - - Weapon jammed! - Ladehemmung! - Arma encasquillada! - Broń się zacięła! - Zbraň se zasekla! - Arme enrayée - Оружие заклинило! - Elakadt a fegyver! - Arma travada! - Arma inceppata! - - - Clear jam - Ladehemmung beheben - Desencasquillar el arma - Usuń zacięcie - Uvolnit zbraň - Désenrayer l'arme - Исправить клин оружия. - Hárítsd el az akadályt! - Destravar arma - Ripulisci l'arma - - - Jam cleared - Ladehemmung behoben - Arma desencasquillada - Zacięcie usunięte - Zbraň uvolněna - Arme désenrayée - Оружие исправлено - Akadály elhárítva! - Arma destravada - Arma pronta al fuoco - - - Swap barrel - Lauf wechseln - Cambiar el cañón - Wymień lufę - Vyměnit hlaveň - Changer de canon - Сменить ствол - Cserélj csövet! - Substituir cano - Sostiuisci la canna - - - Swapping barrel... - Lauf wird gewechselt... - Cambiando el cañón... - Wymienianie lufy... - Vyměňuji hlaveň ... - Changement du canon... - Смена ствола... - Cső cserélése... - Substituindo cano... - Sto sostituendo la canna ... - - - Swapped barrel - Lauf gewechselt - Cañón cambiado - Lufa wymieniona - Hlaveň vyměněna - Canon changé - Ствол сменен - Cső kicserélve! - Cano substituído - Canna sostituita - - - Check weapons temperature - Temperatur der Waffe prüfen - Verificar temperatura del arma - Sprawdź temperaturę broni - Vérifier la température de l'arme - Hőmérséklet ellenőrzése - Zjistit teplotu zbraně - Conferir temperatura da arma - Controlla la temperatura della canna - Проверить температуру оружия - - - Check weapon<br/>temperature - Verificar temperatura<br/>del arma - - - Checking temperature ... - Prüfe Temperatur ... - Verificando temperatura ... - Sprawdzanie temperatury ... - Vérification de la température ... - Hőmérséklet ellenőrzése... - Zjišťuju teplotu ... - Conferindo temperatura ... - Sto controllando la temperatura ... - Проверка температуры ... - - - Temperature - Temperatur - Temperatura - Temperatura - Température - Hőmérséklet - Teplota - Temperatura - Temperatura - Температура - - - + + + Display text on jam + Zeige Text bei Ladehemmung + Mostrar texto al encasquillar + Показывать текст, когда клинит оружие + Zobrazit upozornění při zaseknutí + Szöveges értesítés kijelzése a fegyver elakadásakor + + + Display a notification whenever your weapon gets jammed + Zeige einen Hinweis wenn die Waffe eine Ladehemmung hat + Mostrar notificación cada vez que el arma se encasquille + Демонстровать уведомление, каждый раз, когда клинит Ваше оружие. + Zobrazí upozornění při zaseknutí zbraně + Egy szöveges értesítés jelenik meg, amikor a fegyver megakad + + + Spare barrel + Ersatzlauf + Cañón de repuesto + Zapasowa lufa + Náhradní hlaveň + Deuxième canon + Запасной ствол + Tartalék cső + Cano Reserva + Canna di ricambio + + + Use to swap barrel. + Benutzen, um Lauf zu wechseln. + Permite intercambiar el cañón + Umożliwia wymianę lufy + Používané k výměně hlavně + Utilisé pour changer de canon. + Используется для смены ствола. + Használd a cső kicseréléséhez. + Use para trocar o cano/estriamento. + Usata per cambiare la canna. + + + Weapon jammed! + Ladehemmung! + Arma encasquillada! + Broń się zacięła! + Zbraň se zasekla! + Arme enrayée + Оружие заклинило! + Megakadt a fegyver! + Arma travada! + Arma inceppata! + + + Clear jam + Ladehemmung beheben + Desencasquillar el arma + Usuń zacięcie + Uvolnit zbraň + Désenrayer l'arme + Исправить клин оружия. + Akadás elhárítása + Destravar arma + Ripulisci l'arma + + + Jam cleared + Ladehemmung behoben + Arma desencasquillada + Zacięcie usunięte + Zbraň uvolněna + Arme désenrayée + Оружие исправлено + Akadás elhárítva + Arma destravada + Arma pronta al fuoco + + + Swap barrel + Lauf wechseln + Cambiar el cañón + Wymień lufę + Vyměnit hlaveň + Changer de canon + Сменить ствол + Cső cserélése + Substituir cano + Sostiuisci la canna + + + Swapping barrel... + Lauf wird gewechselt... + Cambiando el cañón... + Wymienianie lufy... + Vyměňuji hlaveň ... + Changement du canon... + Смена ствола... + Cső kicserélése folyamatban... + Substituindo cano... + Sto sostituendo la canna ... + + + Swapped barrel + Lauf gewechselt + Cañón cambiado + Lufa wymieniona + Hlaveň vyměněna + Canon changé + Ствол сменен + Cső kicserélve + Cano substituído + Canna sostituita + + + Check weapons temperature + Temperatur der Waffe prüfen + Verificar temperatura del arma + Sprawdź temperaturę broni + Vérifier la température de l'arme + Fegyver hőmérsékletének ellenőrzése + Zjistit teplotu zbraně + Conferir temperatura da arma + Controlla la temperatura della canna + Проверить температуру оружия + + + Check weapon<br/>temperature + Verificar temperatura<br/>del arma + Fegyverhő<br/>ellenőrzése + + + Checking temperature ... + Prüfe Temperatur ... + Verificando temperatura ... + Sprawdzanie temperatury ... + Vérification de la température ... + Hőmérséklet ellenőrzése ... + Zjišťuju teplotu ... + Conferindo temperatura ... + Sto controllando la temperatura ... + Проверка температуры ... + + + Temperature + Temperatur + Temperatura + Temperatura + Température + Hőmérséklet + Teplota + Temperatura + Temperatura + Температура + + + \ No newline at end of file diff --git a/addons/parachute/stringtable.xml b/addons/parachute/stringtable.xml index f97b389eeb..52ccaefe77 100644 --- a/addons/parachute/stringtable.xml +++ b/addons/parachute/stringtable.xml @@ -1,46 +1,46 @@  - + - - - Altimeter - Altimètre - Höhenmesser - Výškoměr - Wysokościomierz - Altímetro - Magasságmérő - Высотомер - - - Altimeter Watch - Montre altimètre - Höhenmesser - Hodinky s výškoměrem - Zegarek z wysokościomierzem - Reloj altímetro - Magasságmérő - Часы с высотомером - - - Used to show height, descent rate and the time. - Affiche la hauteur, le taux de descente et l'heure. - Zeigt Höhe, Fallgeschwindigkeit und Uhrzeit. - Používané k zjištění výšky, rychlosti sestupu a času. - Używany przez spadochroniarzy, pokazuje wysokość, prędkość opadania oraz czas. - Utilizado para mostrar altura, tasa de descenso y hora. - Mutatja a magasságot, zuhanás sebességét és az időt. - Используется для определения высоты, скорости снижения и времени. - - - Non-Steerable Parachute - Ungelenkter Fallschirm - Paracaídas no dirigible - Parachute non manœuvrable - Niesterowalny spadochron - Neříditelný padák - Irányithatatlan ejtőernyő - Неуправляемый парашют - - + + + Altimeter + Altimètre + Höhenmesser + Výškoměr + Wysokościomierz + Altímetro + Magasságmérő + Высотомер + + + Altimeter Watch + Montre altimètre + Höhenmesser + Hodinky s výškoměrem + Zegarek z wysokościomierzem + Reloj altímetro + Magasságmérős karóra + Часы с высотомером + + + Used to show height, descent rate and the time. + Affiche la hauteur, le taux de descente et l'heure. + Zeigt Höhe, Fallgeschwindigkeit und Uhrzeit. + Používané k zjištění výšky, rychlosti sestupu a času. + Używany przez spadochroniarzy, pokazuje wysokość, prędkość opadania oraz czas. + Utilizado para mostrar altura, tasa de descenso y hora. + Mutatja a magasságot, a zuhanási sebességet, és az időt. + Используется для определения высоты, скорости снижения и времени. + + + Non-Steerable Parachute + Ungelenkter Fallschirm + Paracaídas no dirigible + Parachute non manœuvrable + Niesterowalny spadochron + Neříditelný padák + Irányíthatatlan ejtőernyő + Неуправляемый парашют + + \ No newline at end of file diff --git a/addons/realisticnames/stringtable.xml b/addons/realisticnames/stringtable.xml index ee0b2bec00..376353a6d7 100644 --- a/addons/realisticnames/stringtable.xml +++ b/addons/realisticnames/stringtable.xml @@ -1,1335 +1,1382 @@  + - - - XM312 - XM312 - XM312 - XM312 - XM312 - XM312 - XM312 - XM312 - XM312 - XM312A - - - XM312A - XM312A - XM312 - XM312A - XM312A - XM312A - XM312A - XM312A - XM312A - XM312A - - - XM312 (High) - XM312 (Hoch) - XM312 (Alto) - XM312 (Haut) - XM312 (Vysoký) - XM312 (Wysoki) - XM312 (Высокий) - XM312 (Alta) - XM312 (Magasított) - XM312 (Alta) - - - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - XM307 - - - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - XM307A - - - XM307 (High) - XM307 (Hoch) - XM307 (Alto) - XM307 (Haut) - XM307 (Vysoký) - XM307 (Wysoki) - XM307 (Высокий) - XM307 (Alta) - XM307 (Magasított) - XM307 (Alta) - - - Mini-Spike Launcher (AT) - Mini-Spike Lenkflugkörper (AT) - Lanzador Mini-Spike (AT) - Poste de tir Mini-Spike (AC) - Mini-Spike Odpalovač (AT) - Wyrzutnia Mini-Spike (AT) - Mini-Spike Пусковое устройство (ПТРК) - Lança-mísseis Mini-Spike (AC) - Mini-Spike rakétarendszer (páncéltörő) - Lanciatore Mini-Spike (AC) - - - Mini-Spike Launcher (AA) - Mini-Spike Lenkflugkörper (AA) - Lanzador Mini-Spike (AA) - Poste de tir Mini-Spike (AA) - Mini-Spike Odpalovač (AA) - Wyrzutnia Mini-Spike (AA) - Mini-Spike Пусковое устройство (ВВ) - Lança-mísseis Mini-Spike (AA) - Mini-Spike rakétarendszer (légvédelmi) - Lanciatore Mini-Spike (AA) - - - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - YABHON-R3 - - - YABHON-R3 (CAS) - YABHON-R3 (Luftnahunterstützung) - YABHON-R3 (CAS) - YABHON-R3 (CAS) - YABHON-R3 (CAS) - YABHON-R3 (штурмовик) - - - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - M-ATV - - - M-ATV (HMG) - M-ATV (SMG) - M-ATV (HMG) - M-ATV (CKM) - M-ATV (TK) - M-ATV (HMG) - M-ATV (Пулемет) - M-ATV (HMG) - M-ATV (HMG) - M-ATV (HMG) - - - M-ATV (GMG) - M-ATV (GMW) - M-ATV (GMG) - M-ATV (GMG) - M-ATV (Granátomet) - M-ATV (GMG) - M-ATV (Гранатомет) - M-ATV (GMG) - M-ATV (GMG) - M-ATV (GMG) - - - Merkava Mk IV M - Merkava Mk IV M - Merkava Mk IV M - Merkawa Mk IV M - Merkava Mk IV M - Merkava Mk IV M - Меркава Mk IV M - Merkava Mk IV M - Merkava Mk IV M - Merkava Mk IV M - - - Merkava Mk IV LIC - Merkava Mk IV LIC - Merkava Mk IV LIC - Merkawa Mk IV LIC - Merkava Mk IV LIC - Merkava Mk IV LIC - Меркава Mk IV LIC - Merkava Mk IV LIC - Merkava Mk IV LIC - Merkava Mk IV LIC - - - Sholef - Sholef - Sholef - Sholef - Sholef - Sholef - Шолеф - Sholef - Sholef - Sholef - - - Seara - Seara - Seara - Seara - Seara - Seara - Seara - Seara - Seara - Seara - - - Namer - Namer - Namer - Namer - Namer - Namer - Намер - Namer - Namer - Namer - - - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - Bardelas - - - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - Patria AMV - - - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - Nemmera - - - HEMTT Transport - HEMTT Transport - HEMTT de transporte - HEMTT Transportowy - HEMTT Valník - HEMTT Transport - HEMTT Транспортный - HEMTT Transporte - HEMTT szállítójármű - HEMTT da trasporto - - - HEMTT Transport (covered) - HEMTT Transport (bedeckt) - HEMTT de transporte (cubierto) - HEMTT Transportowy (zakryty) - HEMTT Valník (krytý) - HEMTT Transport (bâché) - HEMTT Транспортный (крытый) - HEMTT Transporte (coberto) - HEMTT szállítójármű (ponyvás) - HEMTT da trasporto (coperto) - - - HEMTT - HEMTT - HEMTT - HEMTT - HEMTT - HEMTT Tracteur - HEMTT - HEMTT - HEMTT - HEMTT - - - HEMTT Container - HEMTT Container - HEMTT de contenedor - HEMTT Kontener - HEMTT Skříňový - HEMTT Conteneur - HEMTT Контейнер - HEMTT Contêiner - HEMTT Konténer - HEMTT portacontainer - - - HEMTT Medical - HEMTT Sanitäter - HEMTT médico - HEMTT Medyczny - HEMTT Zdravotnický - HEMTT Sanitaire - HEMTT Медицинский - HEMTT Médico - HEMTT (egészségügyi) - HEMTT Medico - - - HEMTT Ammo - HEMTT Munition - HEMTT de munición - HEMTT Amunicyjny - HEMTT Muniční - HEMTT Munitions - HEMTT Боеприпасы - HEMTT Munições - HEMTT (lőszerszállító) - HEMTT di rifornimento munizioni - - - HEMTT Fuel - HEMTT Treibstoff - HEMTT de combustible - HEMTT Cysterna - HEMTT Cisterna - HEMTT Citerne - HEMTT Заправщик - HEMTT Combustível - HEMTT (üzemanyag-szállító) - HEMTT di rifornimento carburante - - - HEMTT Repair - HEMTT Instandsetzung - HEMTT de reparación - HEMTT Naprawczy - HEMTT Opravárenský - HEMTT Réparation - HEMTT Ремонтный - HEMTT Reparador - HEMTT (szerelő-jármű) - HEMTT Riparatore - - - Fennek - Fennek - Fennek - Fennek - Fennek - Fennek - Феннек - Fennek - Fennek - Fennek - - - Fennek (HMG) - Fennek (SMG) - Fennek (HMG) - Fennek (CKM) - Fennek (TK) - Fennek (HMG) - Феннек (Пулемет) - Fennek (HMG) - Fennek (HMG) - Fennek (HMG) - - - Fennek (GMG) - Fennek (GMW) - Fennek (GMG) - Fennek (GMG) - Fennek (granátomet) - Fennek (GMG) - Феннек (Гранатомет) - Fennek (GMG) - Fennek (GMG) - Fennek (GMG) - - - Leopard 2SG - Leopard 2SG - Leopard 2SG - Leopard 2SG - Leopard 2SG - Leopard 2SG - Леопард 2SG - Leopard 2SG - Leopard 2SG - Leopard 2SG - - - FV510 Warrior - FV510 Warrior - FV510 Warrior - FV510 Warrior - FV510 Warrior - FV510 Warrior - FV510 Уорриор - FV510 Warrior - FV510 Warrior - FV510 Warrior - - - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - Pandur II - - - KamAZ Transport - KamAZ Transport - KamAZ de transporte - KamAZ transportowy - KAMAZ Valník - KamAZ Transport - КамАЗ Траспортный - KamAZ Transporte - KamAZ szállítójármű - KamAZ da trasporto - - - KamAZ Transport (covered) - KamAZ Transport (bedeckt) - KamAZ de transporte (cubierto) - KamAZ Transportowy (zakryty) - KAMAZ Valník (krytý) - KamAZ Transport (bâché) - КамАЗ Траспортный (Крытый) - KamAZ Transporte (coberto) - KamAZ szállítójármű (ponyvás) - KamAZ da trasporto (coperto) - - - KamAZ Ammo - KamAZ Munition - KamAZ de munición - KamAZ Amunicyjny - KAMAZ Muniční - KamAZ Munitions - КамАЗ Боеприпасы - KamAZ Munições - KamAZ (lőszerszállító) - KamAZ di rifornimento munizioni - - - KamAZ Fuel - KamAZ Treibstoff - KamAZ de combustible - KamAZ cysterna - KAMAZ Cisterna - KamAZ Citerne - КамАЗ Заправщик - KamAZ Combustível - KamAZ (üzemanyag-szállító) - KamAZ di rifornimento carburante - - - KamAZ Repair - KamAZ Instandsetzung - KamAZ de reparación - KamAZ Naprawczy - KAMAZ Opravárenský - KamAZ Réparation - КамАЗ Ремонтный - KamAZ Reparador - KamAZ (szerelő-jármű) - KamAZ riparatore - - - KamAZ Medical - KamAZ Sanitäter - KamAZ médico - KamAZ Medyczny - KAMAZ Zdravotnický - KamAZ Sanitaire - КамАЗ Медицинский - KamAZ Médico - KamAZ (egészségügyi) - KamAZ Medico - - - Punisher - Punisher - Punisher - Punisher - Punisher - Punisher - Kаратель - Punisher - Punisher - Punisher - - - Punisher (HMG) - Punisher (SMG) - Punisher (HMG) - Punisher (CKM) - Punisher (TK) - Punisher (HMG) - Kаратель (Пулемет) - Punisher (HMG) - Punisher (HMG) - Punisher (HMG) - - - Punisher (GMG) - Punisher (GMW) - Punisher (GMG) - Punisher (CKM) - Punisher (granátomet) - Punisher (GMG) - Kаратель (Гранатомет) - Punisher (GMG) - Punisher (GMG) - Punisher (GMG) - - - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - T100 Черный Орел - T100 Black Eagle - T100 Black Eagle - T100 Black Eagle - - - 2S9 Sochor - 2S9 Sochor - 2S9 Sochor - 259 Sochor - 2S9 Sochor - 2S9 Sochor - 2S9 Сокор - 2S9 Sochor - 2S9 Sochor - 2S9 Sochor - - - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - БМ-2Т Сталкер - BM-2T Stalker - BM-2T Stalker - BM-2T Stalker - - - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ЗСУ-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - ZSU-35 Tigris - - - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - Otokar ARMA - - - Typhoon Transport - Typhoon Transport - Typhoon de transporte - Typhoon Transportowy - Typhoon valník - Typhoon Transport - Тайфун Транспортный - Typhoon Transporte - Typhoon szállítójármű - Typhoon da trasporto - - - Typhoon Transport (covered) - Typhoon Transport (bedeckt) - Typhoon de transporte (cubierto) - Typhoon Transportowy (przykryty) - Typhoon valník (krytý) - Typhoon Transport (bâché) - Тайфун Транспортный (kрытый) - Typhoon Transporte (coberto) - Typhoon szállítójármű (ponyvás) - Typhoon da trasporto (coperto) - - - Typhoon Device - Typhoon Gerät - Typhoon de dispositivo - Typhoon Urządzenie - Typhoon zařízení - Typhoon Dispositif - Тайфун Устройство - Typhoon Dispositivo - Typhoon (szerkezet) - Typhoon per dispositivo - - - Typhoon Ammo - Typhoon Munition - Typhoon de munición - Typhoon Amunicyjny - Typhoon muniční - Typhoon Munitions - Тайфун Боеприпасы - Typhoon Munições - Typhoon (lőszerszállító) - Typhoon di rifornimento munizioni - - - Typhoon Fuel - Typhoon Treibstoff - Typhoon de combustible - Typhoon Cysterna - Typhoon cisterna - Typhoon Citerne - Тайфун Заправщик - Typhoon Combustível - Typhoon (üzemanyag-szállító) - Typhoon di rifornimento carburante - - - Typhoon Repair - Typhoon Instandsetzung - Typhoon de reparación - Typhoon Naprawczy - Typhoon opravárenský - Typhoon Réparation - Тайфун Ремонтный - Typhoon Reparador - Typhoon (szerelő-jármű) - Typhoon riparatore - - - Typhoon Medical - Typhoon Sanitäter - Typhoon médico - Typhoon Medyczny - Typhoon zdravotnický - Typhoon Sanitaire - Тайфун Медицинский - Typhoon Médico - Typhoon (egészségügyi) - Typhoon medico - - - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Commanche - RAH-66 Команч - RAH-66 Comanche - RAH-66 Comanche - RAH-66 Comanche - - - MH-6 Little Bird - MH-6 Little Bird - MH-6 Litte Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - MH-6 Little Bird - - - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - AH-6 Little Bird - - - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - CH-47I Chinook - - - CH-47I Chinook (unarmed) - CH-47I Chinook (unbewaffnet) - CH-47I Chinnok (Desarmado) - CH-47I Chinook (nieuzbrojony) - CH-47I Chinook (невооруженный) - CH-47I Chinook (neozbrojený) - - - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Тандерболт II - A-10D Thunderbolt II - A-10D Thunderbolt II - A-10D Thunderbolt II - - - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - AW159 Wildcat - - - AW159 Wildcat (unarmed) - AW159 Wildcat (unbewaffnet) - AW159 Wildcat (desarmado) - AW159 Wildcat (nieuzbrojony) - AW159 Wildcat (neozbrojený) - AW159 Wildcat (non-armé) - AW159 Wildcat (невооруженный) - AW159 Wildcat (desarmado) - AW159 Wildcat (fegyvertelen) - AW159 Wildcat (disarmato) - - - AW101 Merlin - AW101 Merlin - AW101 Merlin - AW101 Merlin - AW101 Merlin - AW101 Merlin - AW101 Мерлин - AW101 Merlin - AW101 Merlin - AW101 Merlin - - - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 Альбатрос (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - L-159 ALCA (CAS) - - - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 ALCA (AA) - L-159 Альбатрос (AA) - L-159 ALCA (ВВ) - L-159 ALCA (AA) - L-159 ALCA (AA) - - - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Касатка - Ka-60 Kasatka - Ka-60 Kasatka - Ka-60 Kasatka - - - Ka-60 Kasatka (unarmed) - Ka-60 Kasatka (unbewaffnet) - Ka-60 Kasatka (desarmado) - Ka-60 Kasatka (nieuzbrojony) - Ka-60 Kasatka (neozbrojená) - Ka-60 Kasatka (non-armé) - Ka-60 Касатка (невооруженный) - Ka-60 Kasatka (desarmado) - Ka-60 Kasatka (fegyvertelen) - Ka-60 Kasatka (disarmato) - - - Yak-130 - Yak-130 - Yak-130 - Jak-130 - Jak-130 - Yak-130 - Як-130 - Yak-130 - Jak-130 - Yak-130 - - - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - MD 500 - - - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - M4A1 SLAM - - - M18A1 Claymore - M18A1 Claymore - M18A1 Claymore - Mina kierunkowa M18A1 Claymore - Mina Claymore M18A1 - M18A1 Claymore Mine antipersonnel à effet dirigé - M18A1 Клеймор - M18A1 Claymore - M18A1 Claymore akna - M18A1 Claymore Mina antiuomo - - - M183 Demolition Charge Assembly - M183 Geballte Sprengladung - Conjunto de carga de demolición M183 - Ładunek burzący M183 - Demoliční nálož M183 - M183 Charge de Démolition - M183 Комплектный подрывной заряд - M183 Sacola de Demolição - M183 romboló töltet - M183 Demolition Charge Assembly - - - M112 Demolition Block - M112 Sprengladung - Bloque de demolición M112 - Ładunek burzący M112 - Výbušná nálož M112 - Pétard M112 - M112 подрывной заряд - M112 Carga de Demolição - M112 romboló töltet - M112 Demolition Block - - - M67 Fragmentation Grenade - M67 Splittergranate - Granada de fragmentación M67 - Granat obronny M67 - Granát M67 - M67 Grenade à fragmentation - M67 ручная осколочная граната - M67 Granada de fragmentação - M67 repeszgránát - M67 Granata a frammentazione - - - M83 Smoke Grenade (White) - M83 Rauchgranate (Weiss) - Granada de humo M83 (Blanco) - Granat dymny M83 (Biały) - M83 Kouřový Granát (bílý) - M83 Grenade fumigène (Blanche) - M83 дымовая граната (Белый) - M83 Granada de fumaça (Branca) - M83 füstgránát (Fehér) - M83 Granata fumogena (Bianco) - - - M18 Smoke Grenade (Blue) - M18 Rauchgranate (Blau) - Granada de humo M18 (Azul) - Granat dymny M18 (Niebieski) - M18 Kouřový Granát (modrý) - M18 Grenade fumigène (Bleue) - M18 дымовая граната (Синий) - M18 Granada de fumaça (Azul) - M18 füstgránát (Kék) - M18 Granata fumogena (Blu) - - - M18 Smoke Grenade (Green) - M18 Rauchgranate (Grün) - Granada de humo M18 (Verde) - Granat dymny M18 (Zielony) - M18 Kouřový Granát (zelený) - M18 Grenade fumigène (Verte) - M18 дымовая граната (Зелёный) - M18 Granada de fumaça (Verde) - M18 füstgránát (Zöld) - M18 Granata fumogena (Verde) - - - M18 Smoke Grenade (Orange) - M18 Rauchgranate (Orange) - Granada de humo M18 (Naranja) - Granat dymny M18 (Pomarańczowy) - M18 Kouřový Granát (oranžový) - M18 Grenade fumigène (Orange) - M18 дымовая граната (Оранжевый) - M18 Granada de fumaça (Laranja) - M18 füstgránát (Narancssárga) - M18 Granata fumogena (Arancione) - - - M18 Smoke Grenade (Purple) - M18 Rauchgranate (Violett) - Granada de humo M18 (Púrpura) - Granat dymny M18 (Fioletowy) - M18 Kouřový Granát (fialový) - M18 Grenade fumigène (Pourpre) - M18 дымовая граната (Пурпурный) - M18 Granada de fumaça (Roxa) - M18 füstgránát (Lila) - M18 Granata fumogena (Viola) - - - M18 Smoke Grenade (Red) - M18 Rauchgranate (Rot) - Granada de humo M18 (Rojo) - Granat dymny M18 (Czerwony) - M18 Kouřový Granát (červený) - M18 Grenade fumigène (Rouge) - M18 дымовая граната (Красный) - M18 Granada de fumaça (Vermelha) - M18 füstgránát (Piros) - M18 Granata fumogena (Rosso) - - - M18 Smoke Grenade (Yellow) - M18 Rauchgranate (Gelb) - Granada de humo M18 (Amarillo) - Granat dymny M18 (Żółty) - M18 Kouřový Granát (žlutý) - M18 Grenade fumigène (Jaune) - M183 дымовая граната (Жёлтые) - M18 Granada de fumaça (Amarela) - M18 füstgránát (Sárga) - M18 Granata fumogena (Giallo) - - - M15 Anti-Tank Mine - M15 Panzerabwehrmine - Mina antitanque M15 - Mina przeciwpancerna M15 - Protitanková mina M15 - M15 Mine antichar - M15 противотанковая мина - M15 Mina anticarro - M15 harckocsiakna - M15 Mine anticarro - - - VS-50 Anti-Personnel Mine - VS-50 Antipersonenmine - Mina antipersona VS-50 - Mina przeciwpiechotna VS-50 - Protipěchotní mina VS-50 - VS-50 Mine antipersonnel à pression - VS-50 Противопехотная мина - VS-50 Mina antipessoal - VS-50 gyalogsági taposóakna - VS-50 Mine antiuomo - - - M26 Anti-Personnel Bounding Mine - M26 Antipersonensprungmine - Mina antipersona M26 - Mina przeciwpiechotna M26 - Šrapnelová mina M26 - M26 Mine antipersonnel bondissante - M26 Противопехотная мина - M26 Mina saltadora antipessoal - M26 gyalogsági ugróakna - M26 Mine saltanti antiuomo - - - PMR-3 Anti-Personnel Tripwire Mine - PMR-3 Antipersonenstolperdrahtmine - Mina antipersona de alambre PMR-3 - Mina przeciwpiechotna PMR-3 - Nástražná mina PMR-3 - PMR-3 Mine antipersonnel à traction - PMR-3 Противопехотная мина - PMR-3 Mina antipessoal (armadilha) - PMR-3 botlódrótos gyalogsági akna - PMR-3 Mine antiuomo - - - P99 - P99 - P99 - - - MP-443 Grach - MP-443 Grach - MP-443 Grach - - - ACP-C2 - ACP-C2 - ACP-C2 - - - FNX-45 Tactical - FNX-45 Tactical - FNX-45 Tactical - - - Chiappa Rhino 60DS - Chiappa Rhino 60DS - Chiappa Rhino 60DS - - - Taurus Judge - Taurus Judge - Taurus Judge - - - NLAW - NLAW - NLAW - - - RPG-32 - RPG-32 - RPG-32 - - - Mini-Spike (AA) - Mini-Spike (AA) - Mini-Spike (PL) - - - Mini-Spike (AT) - Mini-Spike (AT) - Mini-Spike (PT) - - - MX - MX - MX - - - MX (Black) - MX (Black) - - - MXC - MXC - MXC - - - MXC (Black) - MXC (Black) - - - MX 3GL - MX 3GL - MX 3GL - - - MX 3GL (Black) - MX 3GL (Black) - - - MX LSW - MX LSW - MX LSW - - - MX LSW (Black) - MX LSW (Black) - - - MXM - MXM - MXM - - - MXM (Black) - MXM (Black) - - - KT2002 Katiba - KT2002 Katiba - KT2002 Katiba - - - KT2002C Katiba - KT2002C Katiba - KT2002C Katiba - - - KT2002 Katiba KGL - KT2002 Katiba KGL - KT2002 Katiba KGL - - - F2000 (Camo) - F2000 (Camo) - - - F2000 - F2000 - F2000 - - - F2000 Tactical (Camo) - F2000 Tactical (Camo) - - - F2000 Tactical - F2000 Tactical - F2000 Tactical - - - F2000 EGLM (Camo) - F2000 EGLM (Camo) - - - F2000 EGLM - F2000 EGLM - F2000 EGLM - - - TAR-21 - TAR-21 - TAR-21 - - - CTAR-21 - CTAR-21 - CTAR-21 - - - TAR-21 EGLM - TAR-21 EGLM - TAR-21 EGLM - - - Vector SMG - Vector SMG - Vector SMG - - - Scorpion Evo 3 A1 - Scorpion Evo 3 A1 - Scorpion Evo 3 A1 - - - CPW - CPW - CPW - - - RFB SDAR - RFB SDAR - RFB SDAR - - - Stoner 99 LMG - Stoner 99 LMG - Stoner 99 LMG - - - Negev NG7 - Negev NG7 - Negev NG7 - - - Mk14 Mod 1 EBR - Mk14 Mod 1 EBR - Mk14 Mod 1 EBR - - - GM6 Lynx - GM6 Lynx - GM6 Lynx - - - GM6 Lynx (Camo) - GM6 Lynx (Camo) - - - M200 Intervention - M200 Intervention - M200 Intervention - - - M200 Intervention (Camo) - M200 Intervention (Camo) - - - VS-121 - VS-121 - VS-121 - - - TODO: MAR-10 .338 - - - TODO: MAR-10 .338 (Black) - - - TODO: MAR-10 .338 (Camo) - - - TODO: MAR-10 .338 (Sand) - - - TODO: Mk-I EMR 7.62 mm - - - TODO: Mk-I EMR 7.62 mm (Black) - - - TODO: Mk-I EMR 7.62 mm (Khaki) - - - TODO: Mk-I EMR 7.62 mm (Sand) - - - TODO: Mk-I EMR 7.62 mm (Camo) - - - TODO: Mk-I EMR 7.62 mm (Woodland) - - - TODO: NATO DMR (provisional) spotter - - - TODO: ASP-1 Kir 12.7 mm - - - TODO: ASP-1 Kir 12.7 mm (Black) - - - TODO: ASP-1 Kir 12.7 mm (Tan) - - - TODO: Cyrus 9.3 mm - - - TODO: Cyrus 9.3 mm (Black) - - - TODO: Cyrus 9.3 mm (Hex) - - - TODO: Cyrus 9.3 mm (Tan) - - - TODO: Mk14 7.62 mm - - - TODO: Mk14 7.62 mm (Camo) - - - TODO: Mk14 7.62 mm (Olive) - - - TODO: Navid 9.3 mm - - - TODO: Navid 9.3 mm (Hex) - - - TODO: Navid 9.3 mm (Tan) - - - TODO: SPMG .338 - - - TODO: SPMG .338 (MTP) - - - TODO: SPMG .338 (Black) - - - TODO: SPMG .338 (Sand) - - - + + + XM312 + XM312 + XM312 + XM312 + XM312 + XM312 + XM312 + XM312 + XM312 + XM312A + + + XM312A + XM312A + XM312 + XM312A + XM312A + XM312A + XM312A + XM312A + XM312A + XM312A + + + XM312 (High) + XM312 (Hoch) + XM312 (Alto) + XM312 (Haut) + XM312 (Vysoký) + XM312 (Wysoki) + XM312 (Высокий) + XM312 (Alta) + XM312 (Magasított) + XM312 (Alta) + + + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + XM307 + + + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + XM307A + + + XM307 (High) + XM307 (Hoch) + XM307 (Alto) + XM307 (Haut) + XM307 (Vysoký) + XM307 (Wysoki) + XM307 (Высокий) + XM307 (Alta) + XM307 (Magasított) + XM307 (Alta) + + + Mini-Spike Launcher (AT) + Mini-Spike Lenkflugkörper (AT) + Lanzador Mini-Spike (AT) + Poste de tir Mini-Spike (AC) + Mini-Spike Odpalovač (AT) + Wyrzutnia Mini-Spike (AT) + Mini-Spike Пусковое устройство (ПТРК) + Lança-mísseis Mini-Spike (AC) + Mini-Spike rakétarendszer (Tankelhárító) + Lanciatore Mini-Spike (AC) + + + Mini-Spike Launcher (AA) + Mini-Spike Lenkflugkörper (AA) + Lanzador Mini-Spike (AA) + Poste de tir Mini-Spike (AA) + Mini-Spike Odpalovač (AA) + Wyrzutnia Mini-Spike (AA) + Mini-Spike Пусковое устройство (ВВ) + Lança-mísseis Mini-Spike (AA) + Mini-Spike rakétarendszer (Repülő-elhárító) + Lanciatore Mini-Spike (AA) + + + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + YABHON-R3 + + + YABHON-R3 (CAS) + YABHON-R3 (Luftnahunterstützung) + YABHON-R3 (CAS) + YABHON-R3 (CAS) + YABHON-R3 (CAS) + YABHON-R3 (штурмовик) + YABHON-R3 (Légitámogató) + + + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + M-ATV + + + M-ATV (HMG) + M-ATV (SMG) + M-ATV (HMG) + M-ATV (CKM) + M-ATV (TK) + M-ATV (HMG) + M-ATV (Пулемет) + M-ATV (HMG) + M-ATV (nehézgéppuska) + M-ATV (HMG) + + + M-ATV (GMG) + M-ATV (GMW) + M-ATV (GMG) + M-ATV (GMG) + M-ATV (Granátomet) + M-ATV (GMG) + M-ATV (Гранатомет) + M-ATV (GMG) + M-ATV (gránátgéppuska) + M-ATV (GMG) + + + Merkava Mk IV M + Merkava Mk IV M + Merkava Mk IV M + Merkawa Mk IV M + Merkava Mk IV M + Merkava Mk IV M + Меркава Mk IV M + Merkava Mk IV M + Merkava Mk IV M + Merkava Mk IV M + + + Merkava Mk IV LIC + Merkava Mk IV LIC + Merkava Mk IV LIC + Merkawa Mk IV LIC + Merkava Mk IV LIC + Merkava Mk IV LIC + Меркава Mk IV LIC + Merkava Mk IV LIC + Merkava Mk IV LIC + Merkava Mk IV LIC + + + Sholef + Sholef + Sholef + Sholef + Sholef + Sholef + Шолеф + Sholef + Sholef + Sholef + + + Seara + Seara + Seara + Seara + Seara + Seara + Seara + Seara + Seara + Seara + + + Namer + Namer + Namer + Namer + Namer + Namer + Намер + Namer + Namer + Namer + + + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + Bardelas + + + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + Patria AMV + + + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + Nemmera + + + HEMTT Transport + HEMTT Transport + HEMTT de transporte + HEMTT Transportowy + HEMTT Valník + HEMTT Transport + HEMTT Транспортный + HEMTT Transporte + HEMTT szállítójármű + HEMTT da trasporto + + + HEMTT Transport (covered) + HEMTT Transport (bedeckt) + HEMTT de transporte (cubierto) + HEMTT Transportowy (zakryty) + HEMTT Valník (krytý) + HEMTT Transport (bâché) + HEMTT Транспортный (крытый) + HEMTT Transporte (coberto) + HEMTT szállítójármű (ponyvás) + HEMTT da trasporto (coperto) + + + HEMTT + HEMTT + HEMTT + HEMTT + HEMTT + HEMTT Tracteur + HEMTT + HEMTT + HEMTT + HEMTT + + + HEMTT Container + HEMTT Container + HEMTT de contenedor + HEMTT Kontener + HEMTT Skříňový + HEMTT Conteneur + HEMTT Контейнер + HEMTT Contêiner + HEMTT (konténer) + HEMTT portacontainer + + + HEMTT Medical + HEMTT Sanitäter + HEMTT médico + HEMTT Medyczny + HEMTT Zdravotnický + HEMTT Sanitaire + HEMTT Медицинский + HEMTT Médico + HEMTT (egészségügyi) + HEMTT Medico + + + HEMTT Ammo + HEMTT Munition + HEMTT de munición + HEMTT Amunicyjny + HEMTT Muniční + HEMTT Munitions + HEMTT Боеприпасы + HEMTT Munições + HEMTT (lőszerszállító) + HEMTT di rifornimento munizioni + + + HEMTT Fuel + HEMTT Treibstoff + HEMTT de combustible + HEMTT Cysterna + HEMTT Cisterna + HEMTT Citerne + HEMTT Заправщик + HEMTT Combustível + HEMTT (üzemanyag-szállító) + HEMTT di rifornimento carburante + + + HEMTT Repair + HEMTT Instandsetzung + HEMTT de reparación + HEMTT Naprawczy + HEMTT Opravárenský + HEMTT Réparation + HEMTT Ремонтный + HEMTT Reparador + HEMTT (szerelő-jármű) + HEMTT Riparatore + + + Fennek + Fennek + Fennek + Fennek + Fennek + Fennek + Феннек + Fennek + Fennek + Fennek + + + Fennek (HMG) + Fennek (SMG) + Fennek (HMG) + Fennek (CKM) + Fennek (TK) + Fennek (HMG) + Феннек (Пулемет) + Fennek (HMG) + Fennek (nehézgéppuska) + Fennek (HMG) + + + Fennek (GMG) + Fennek (GMW) + Fennek (GMG) + Fennek (GMG) + Fennek (granátomet) + Fennek (GMG) + Феннек (Гранатомет) + Fennek (GMG) + Fennek (gránátgéppuska) + Fennek (GMG) + + + Leopard 2SG + Leopard 2SG + Leopard 2SG + Leopard 2SG + Leopard 2SG + Leopard 2SG + Леопард 2SG + Leopard 2SG + Leopard 2SG + Leopard 2SG + + + FV510 Warrior + FV510 Warrior + FV510 Warrior + FV510 Warrior + FV510 Warrior + FV510 Warrior + FV510 Уорриор + FV510 Warrior + FV510 Warrior + FV510 Warrior + + + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + Pandur II + + + KamAZ Transport + KamAZ Transport + KamAZ de transporte + KamAZ transportowy + KAMAZ Valník + KamAZ Transport + КамАЗ Траспортный + KamAZ Transporte + KamAZ szállítójármű + KamAZ da trasporto + + + KamAZ Transport (covered) + KamAZ Transport (bedeckt) + KamAZ de transporte (cubierto) + KamAZ Transportowy (zakryty) + KAMAZ Valník (krytý) + KamAZ Transport (bâché) + КамАЗ Траспортный (Крытый) + KamAZ Transporte (coberto) + KamAZ szállítójármű (ponyvás) + KamAZ da trasporto (coperto) + + + KamAZ Ammo + KamAZ Munition + KamAZ de munición + KamAZ Amunicyjny + KAMAZ Muniční + KamAZ Munitions + КамАЗ Боеприпасы + KamAZ Munições + KamAZ (lőszerszállító) + KamAZ di rifornimento munizioni + + + KamAZ Fuel + KamAZ Treibstoff + KamAZ de combustible + KamAZ cysterna + KAMAZ Cisterna + KamAZ Citerne + КамАЗ Заправщик + KamAZ Combustível + KamAZ (üzemanyag-szállító) + KamAZ di rifornimento carburante + + + KamAZ Repair + KamAZ Instandsetzung + KamAZ de reparación + KamAZ Naprawczy + KAMAZ Opravárenský + KamAZ Réparation + КамАЗ Ремонтный + KamAZ Reparador + KamAZ (szerelő-jármű) + KamAZ riparatore + + + KamAZ Medical + KamAZ Sanitäter + KamAZ médico + KamAZ Medyczny + KAMAZ Zdravotnický + KamAZ Sanitaire + КамАЗ Медицинский + KamAZ Médico + KamAZ (egészségügyi) + KamAZ Medico + + + Punisher + Punisher + Punisher + Punisher + Punisher + Punisher + Kаратель + Punisher + Punisher + Punisher + + + Punisher (HMG) + Punisher (SMG) + Punisher (HMG) + Punisher (CKM) + Punisher (TK) + Punisher (HMG) + Kаратель (Пулемет) + Punisher (HMG) + Punisher (nehézgéppuska) + Punisher (HMG) + + + Punisher (GMG) + Punisher (GMW) + Punisher (GMG) + Punisher (CKM) + Punisher (granátomet) + Punisher (GMG) + Kаратель (Гранатомет) + Punisher (GMG) + Punisher (gránátgéppuska) + Punisher (GMG) + + + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + T100 Black Eagle + T100 Черный Орел + T100 Black Eagle + T100 Fekete Sas + T100 Black Eagle + + + 2S9 Sochor + 2S9 Sochor + 2S9 Sochor + 259 Sochor + 2S9 Sochor + 2S9 Sochor + 2S9 Сокор + 2S9 Sochor + 2S9 Sochor + 2S9 Sochor + + + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + БМ-2Т Сталкер + BM-2T Stalker + BM-2T Stalker + BM-2T Stalker + + + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ЗСУ-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + ZSU-35 Tigris + + + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + Otokar ARMA + + + Typhoon Transport + Typhoon Transport + Typhoon de transporte + Typhoon Transportowy + Typhoon valník + Typhoon Transport + Тайфун Транспортный + Typhoon Transporte + Typhoon szállítójármű + Typhoon da trasporto + + + Typhoon Transport (covered) + Typhoon Transport (bedeckt) + Typhoon de transporte (cubierto) + Typhoon Transportowy (przykryty) + Typhoon valník (krytý) + Typhoon Transport (bâché) + Тайфун Транспортный (kрытый) + Typhoon Transporte (coberto) + Typhoon szállítójármű (ponyvás) + Typhoon da trasporto (coperto) + + + Typhoon Device + Typhoon Gerät + Typhoon de dispositivo + Typhoon Urządzenie + Typhoon zařízení + Typhoon Dispositif + Тайфун Устройство + Typhoon Dispositivo + Typhoon (eszköz) + Typhoon per dispositivo + + + Typhoon Ammo + Typhoon Munition + Typhoon de munición + Typhoon Amunicyjny + Typhoon muniční + Typhoon Munitions + Тайфун Боеприпасы + Typhoon Munições + Typhoon (lőszerszállító) + Typhoon di rifornimento munizioni + + + Typhoon Fuel + Typhoon Treibstoff + Typhoon de combustible + Typhoon Cysterna + Typhoon cisterna + Typhoon Citerne + Тайфун Заправщик + Typhoon Combustível + Typhoon (üzemanyag-szállító) + Typhoon di rifornimento carburante + + + Typhoon Repair + Typhoon Instandsetzung + Typhoon de reparación + Typhoon Naprawczy + Typhoon opravárenský + Typhoon Réparation + Тайфун Ремонтный + Typhoon Reparador + Typhoon (szerelő-jármű) + Typhoon riparatore + + + Typhoon Medical + Typhoon Sanitäter + Typhoon médico + Typhoon Medyczny + Typhoon zdravotnický + Typhoon Sanitaire + Тайфун Медицинский + Typhoon Médico + Typhoon (egészségügyi) + Typhoon medico + + + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Commanche + RAH-66 Команч + RAH-66 Comanche + RAH-66 Comanche + RAH-66 Comanche + + + MH-6 Little Bird + MH-6 Little Bird + MH-6 Litte Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + MH-6 Little Bird + + + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + AH-6 Little Bird + + + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + CH-47I Chinook + + + CH-47I Chinook (unarmed) + CH-47I Chinook (unbewaffnet) + CH-47I Chinnok (Desarmado) + CH-47I Chinook (nieuzbrojony) + CH-47I Chinook (невооруженный) + CH-47I Chinook (neozbrojený) + CH-47I Chinook (fegyvertelen) + + + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Тандерболт II + A-10D Thunderbolt II + A-10D Thunderbolt II + A-10D Thunderbolt II + + + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + AW159 Wildcat + + + AW159 Wildcat (unarmed) + AW159 Wildcat (unbewaffnet) + AW159 Wildcat (desarmado) + AW159 Wildcat (nieuzbrojony) + AW159 Wildcat (neozbrojený) + AW159 Wildcat (non-armé) + AW159 Wildcat (невооруженный) + AW159 Wildcat (desarmado) + AW159 Wildcat (fegyvertelen) + AW159 Wildcat (disarmato) + + + AW101 Merlin + AW101 Merlin + AW101 Merlin + AW101 Merlin + AW101 Merlin + AW101 Merlin + AW101 Мерлин + AW101 Merlin + AW101 Merlin + AW101 Merlin + + + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 ALCA (CAS) + L-159 Альбатрос (CAS) + L-159 ALCA (CAS) + L-159 ALCA (Légitámogató) + L-159 ALCA (CAS) + + + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 ALCA (AA) + L-159 Альбатрос (AA) + L-159 ALCA (ВВ) + L-159 ALCA (Repülő-elhárító) + L-159 ALCA (AA) + + + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Касатка + Ka-60 Kasatka + Ka-60 Kasatka + Ka-60 Kasatka + + + Ka-60 Kasatka (unarmed) + Ka-60 Kasatka (unbewaffnet) + Ka-60 Kasatka (desarmado) + Ka-60 Kasatka (nieuzbrojony) + Ka-60 Kasatka (neozbrojená) + Ka-60 Kasatka (non-armé) + Ka-60 Касатка (невооруженный) + Ka-60 Kasatka (desarmado) + Ka-60 Kasatka (fegyvertelen) + Ka-60 Kasatka (disarmato) + + + Yak-130 + Yak-130 + Yak-130 + Jak-130 + Jak-130 + Yak-130 + Як-130 + Yak-130 + Jak-130 + Yak-130 + + + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + MD 500 + + + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + M4A1 SLAM + + + M18A1 Claymore + M18A1 Claymore + M18A1 Claymore + Mina kierunkowa M18A1 Claymore + Mina Claymore M18A1 + M18A1 Claymore Mine antipersonnel à effet dirigé + M18A1 Клеймор + M18A1 Claymore + M18A1 Claymore akna + M18A1 Claymore Mina antiuomo + + + M183 Demolition Charge Assembly + M183 Geballte Sprengladung + Conjunto de carga de demolición M183 + Ładunek burzący M183 + Demoliční nálož M183 + M183 Charge de Démolition + M183 Комплектный подрывной заряд + M183 Sacola de Demolição + M183 romboló töltet + M183 Demolition Charge Assembly + + + M112 Demolition Block + M112 Sprengladung + Bloque de demolición M112 + Ładunek burzący M112 + Výbušná nálož M112 + Pétard M112 + M112 подрывной заряд + M112 Carga de Demolição + M112 romboló tömb + M112 Demolition Block + + + M67 Fragmentation Grenade + M67 Splittergranate + Granada de fragmentación M67 + Granat obronny M67 + Granát M67 + M67 Grenade à fragmentation + M67 ручная осколочная граната + M67 Granada de fragmentação + M67 repeszgránát + M67 Granata a frammentazione + + + M83 Smoke Grenade (White) + M83 Rauchgranate (Weiss) + Granada de humo M83 (Blanco) + Granat dymny M83 (Biały) + M83 Kouřový Granát (bílý) + M83 Grenade fumigène (Blanche) + M83 дымовая граната (Белый) + M83 Granada de fumaça (Branca) + M83 füstgránát (Fehér) + M83 Granata fumogena (Bianco) + + + M18 Smoke Grenade (Blue) + M18 Rauchgranate (Blau) + Granada de humo M18 (Azul) + Granat dymny M18 (Niebieski) + M18 Kouřový Granát (modrý) + M18 Grenade fumigène (Bleue) + M18 дымовая граната (Синий) + M18 Granada de fumaça (Azul) + M18 füstgránát (Kék) + M18 Granata fumogena (Blu) + + + M18 Smoke Grenade (Green) + M18 Rauchgranate (Grün) + Granada de humo M18 (Verde) + Granat dymny M18 (Zielony) + M18 Kouřový Granát (zelený) + M18 Grenade fumigène (Verte) + M18 дымовая граната (Зелёный) + M18 Granada de fumaça (Verde) + M18 füstgránát (Zöld) + M18 Granata fumogena (Verde) + + + M18 Smoke Grenade (Orange) + M18 Rauchgranate (Orange) + Granada de humo M18 (Naranja) + Granat dymny M18 (Pomarańczowy) + M18 Kouřový Granát (oranžový) + M18 Grenade fumigène (Orange) + M18 дымовая граната (Оранжевый) + M18 Granada de fumaça (Laranja) + M18 füstgránát (Narancssárga) + M18 Granata fumogena (Arancione) + + + M18 Smoke Grenade (Purple) + M18 Rauchgranate (Violett) + Granada de humo M18 (Púrpura) + Granat dymny M18 (Fioletowy) + M18 Kouřový Granát (fialový) + M18 Grenade fumigène (Pourpre) + M18 дымовая граната (Пурпурный) + M18 Granada de fumaça (Roxa) + M18 füstgránát (Lila) + M18 Granata fumogena (Viola) + + + M18 Smoke Grenade (Red) + M18 Rauchgranate (Rot) + Granada de humo M18 (Rojo) + Granat dymny M18 (Czerwony) + M18 Kouřový Granát (červený) + M18 Grenade fumigène (Rouge) + M18 дымовая граната (Красный) + M18 Granada de fumaça (Vermelha) + M18 füstgránát (Piros) + M18 Granata fumogena (Rosso) + + + M18 Smoke Grenade (Yellow) + M18 Rauchgranate (Gelb) + Granada de humo M18 (Amarillo) + Granat dymny M18 (Żółty) + M18 Kouřový Granát (žlutý) + M18 Grenade fumigène (Jaune) + M183 дымовая граната (Жёлтые) + M18 Granada de fumaça (Amarela) + M18 füstgránát (Sárga) + M18 Granata fumogena (Giallo) + + + M15 Anti-Tank Mine + M15 Panzerabwehrmine + Mina antitanque M15 + Mina przeciwpancerna M15 + Protitanková mina M15 + M15 Mine antichar + M15 противотанковая мина + M15 Mina anticarro + M15 harckocsiakna + M15 Mine anticarro + + + VS-50 Anti-Personnel Mine + VS-50 Antipersonenmine + Mina antipersona VS-50 + Mina przeciwpiechotna VS-50 + Protipěchotní mina VS-50 + VS-50 Mine antipersonnel à pression + VS-50 Противопехотная мина + VS-50 Mina antipessoal + VS-50 gyalogsági taposóakna + VS-50 Mine antiuomo + + + M26 Anti-Personnel Bounding Mine + M26 Antipersonensprungmine + Mina antipersona M26 + Mina przeciwpiechotna M26 + Šrapnelová mina M26 + M26 Mine antipersonnel bondissante + M26 Противопехотная мина + M26 Mina saltadora antipessoal + M26 gyalogsági ugróakna + M26 Mine saltanti antiuomo + + + PMR-3 Anti-Personnel Tripwire Mine + PMR-3 Antipersonenstolperdrahtmine + Mina antipersona de alambre PMR-3 + Mina przeciwpiechotna PMR-3 + Nástražná mina PMR-3 + PMR-3 Mine antipersonnel à traction + PMR-3 Противопехотная мина + PMR-3 Mina antipessoal (armadilha) + PMR-3 botlódrótos gyalogsági akna + PMR-3 Mine antiuomo + + + P99 + P99 + P99 + P99 + + + MP-443 Grach + MP-443 Grach + MP-443 Grach + MP-443 Grach + + + ACP-C2 + ACP-C2 + ACP-C2 + ACP-C2 + + + FNX-45 Tactical + FNX-45 Tactical + FNX-45 Tactical + FNX-45 Tactical + + + Chiappa Rhino 60DS + Chiappa Rhino 60DS + Chiappa Rhino 60DS + Chiappa Rhino 6DS + + + Taurus Judge + Taurus Judge + Taurus Judge + Taurus Judge + + + NLAW + NLAW + NLAW + NLAW + + + RPG-32 + RPG-32 + RPG-32 + RPG-32 + + + Mini-Spike (AA) + Mini-Spike (AA) + Mini-Spike (PL) + Mini-Spike (Repülő-elhárító) + + + Mini-Spike (AT) + Mini-Spike (AT) + Mini-Spike (PT) + Mini-Spike (Tankelhárító) + + + MX + MX + MX + MX + + + MX (Black) + MX (Black) + MX (Fekete) + + + MXC + MXC + MXC + MXC + + + MXC (Black) + MXC (Black) + MXC (Fekete) + + + MX 3GL + MX 3GL + MX 3GL + MX 3GL + + + MX 3GL (Black) + MX 3GL (Black) + MX 3GL (Fekete) + + + MX LSW + MX LSW + MX LSW + MX LSW + + + MX LSW (Black) + MX LSW (Black) + MX LSW (Fekete) + + + MXM + MXM + MXM + MXM + + + MXM (Black) + MXM (Black) + MXM (Fekete) + + + KT2002 Katiba + KT2002 Katiba + KT2002 Katiba + KT2002 Katiba + + + KT2002C Katiba + KT2002C Katiba + KT2002C Katiba + KT2002C Katiba + + + KT2002 Katiba KGL + KT2002 Katiba KGL + KT2002 Katiba KGL + KT2002 Katiba KGL + + + F2000 (Camo) + F2000 (Camo) + F2000 (Terepmintás) + + + F2000 + F2000 + F2000 + F2000 + + + F2000 Tactical (Camo) + F2000 Tactical (Camo) + F2000 Tactical (Terepmintás) + + + F2000 Tactical + F2000 Tactical + F2000 Tactical + F2000 Tactical + + + F2000 EGLM (Camo) + F2000 EGLM (Camo) + F2000 EGLM (Terepmintás) + + + F2000 EGLM + F2000 EGLM + F2000 EGLM + F2000 EGLM + + + TAR-21 + TAR-21 + TAR-21 + TAR-21 + + + CTAR-21 + CTAR-21 + CTAR-21 + CTAR-21 + + + TAR-21 EGLM + TAR-21 EGLM + TAR-21 EGLM + TAR-21 EGLM + + + Vector SMG + Vector SMG + Vector SMG + Vector SMG + + + Scorpion Evo 3 A1 + Scorpion Evo 3 A1 + Scorpion Evo 3 A1 + Scorpion Evo 3 A1 + + + CPW + CPW + CPW + CPW + + + RFB SDAR + RFB SDAR + RFB SDAR + RFB SDAR + + + Stoner 99 LMG + Stoner 99 LMG + Stoner 99 LMG + Stoner 99 Könnyűgéppuska + + + Negev NG7 + Negev NG7 + Negev NG7 + Negev NG7 + + + Mk14 Mod 1 EBR + Mk14 Mod 1 EBR + Mk14 Mod 1 EBR + Mk14 Mod 1 EBR + + + GM6 Lynx + GM6 Lynx + GM6 Lynx + GM6 Gepárd + + + GM6 Lynx (Camo) + GM6 Lynx (Camo) + GM6 Gepárd (Terepmintás) + + + M200 Intervention + M200 Intervention + M200 Intervention + M200 Intervention + + + M200 Intervention (Camo) + M200 Intervention (Camo) + M200 Intervention (Terepmintás) + + + VS-121 + VS-121 + VS-121 + VS-121 + + + TODO: MAR-10 .338 + + + TODO: MAR-10 .338 (Black) + + + TODO: MAR-10 .338 (Camo) + + + TODO: MAR-10 .338 (Sand) + + + TODO: Mk-I EMR 7.62 mm + + + TODO: Mk-I EMR 7.62 mm (Black) + + + TODO: Mk-I EMR 7.62 mm (Khaki) + + + TODO: Mk-I EMR 7.62 mm (Sand) + + + TODO: Mk-I EMR 7.62 mm (Camo) + + + TODO: Mk-I EMR 7.62 mm (Woodland) + + + TODO: NATO DMR (provisional) spotter + + + TODO: ASP-1 Kir 12.7 mm + + + TODO: ASP-1 Kir 12.7 mm (Black) + + + TODO: ASP-1 Kir 12.7 mm (Tan) + + + TODO: Cyrus 9.3 mm + + + TODO: Cyrus 9.3 mm (Black) + + + TODO: Cyrus 9.3 mm (Hex) + + + TODO: Cyrus 9.3 mm (Tan) + + + TODO: Mk14 7.62 mm + + + TODO: Mk14 7.62 mm (Camo) + + + TODO: Mk14 7.62 mm (Olive) + + + TODO: Navid 9.3 mm + + + TODO: Navid 9.3 mm (Hex) + + + TODO: Navid 9.3 mm (Tan) + + + TODO: SPMG .338 + + + TODO: SPMG .338 (MTP) + + + TODO: SPMG .338 (Black) + + + TODO: SPMG .338 (Sand) + + + \ No newline at end of file diff --git a/addons/reload/stringtable.xml b/addons/reload/stringtable.xml index d937de53ff..1ba147fd7a 100644 --- a/addons/reload/stringtable.xml +++ b/addons/reload/stringtable.xml @@ -1,61 +1,66 @@  + - - - Check ammo on weapon reload - Prüfe Munition beim Nachladen - Vérifier munitions au rechargement - Comprovar munición al recargar el arma - Проверять боезапас при перезарядке - Zkontrolovat munici při nabití - - - Check the ammo in your new magazine on magazine reload. - Prüfe nachgeladenes Magazin - Vérifie les munitions disponibles dans le nouveau chargeur - Comprueva la munición del nuevo cargador al recargar. - Проверяет количество патронов в новом магазине при перезарядке. - Kontroluje munice při nabití nového zásobníku. - - - Check Ammo - Munition prüfen - Verificar munición - Sprawdź amunicję - Vérifier Munitions - Lőszerellenőrzés - Zkontrolovat Munici - Controlla le munizioni - Conferir munições - Kонтроль Боеприпасы - - - Ammo - Munition - Munición - Amunicja - Munitions - Lőszer - Munice - Munizioni - Munições - Боеприпасы - - - Link belt - Gurt herstellen - Attacher bande - Enlazar cinta - Сцепить ленты - Spojit pás munice - - - Linking belt... - Stelle Gurt her.... - Attachement de la bande .. - Enlazando cinta... - Сцепка лент ... - Spojuji pás... - - - + + + Check ammo on weapon reload + Prüfe Munition beim Nachladen + Vérifier munitions au rechargement + Comprovar munición al recargar el arma + Проверять боезапас при перезарядке + Zkontrolovat munici při nabití + Lőszer ellenőrzése a fegyver újratöltésekor + + + Check the ammo in your new magazine on magazine reload. + Prüfe nachgeladenes Magazin + Vérifie les munitions disponibles dans le nouveau chargeur + Comprueva la munición del nuevo cargador al recargar. + Проверяет количество патронов в новом магазине при перезарядке. + Kontroluje munice při nabití nového zásobníku. + A lőszer ellenőrzése az új tárad behelyezésekor újratöltés közben. + + + Check Ammo + Munition prüfen + Verificar munición + Sprawdź amunicję + Vérifier Munitions + Lőszerellenőrzés + Zkontrolovat Munici + Controlla le munizioni + Conferir munições + Kонтроль Боеприпасы + + + Ammo + Munition + Munición + Amunicja + Munitions + Lőszer + Munice + Munizioni + Munições + Боеприпасы + + + Link belt + Gurt herstellen + Attacher bande + Enlazar cinta + Сцепить ленты + Spojit pás munice + Töltényheveder összekötése + + + Linking belt... + Stelle Gurt her.... + Attachement de la bande .. + Enlazando cinta... + Сцепка лент ... + Spojuji pás... + Töltényheveder összekötése folyamatban... + + + \ No newline at end of file diff --git a/addons/reloadlaunchers/stringtable.xml b/addons/reloadlaunchers/stringtable.xml index 3435d43c27..6761c72f7a 100644 --- a/addons/reloadlaunchers/stringtable.xml +++ b/addons/reloadlaunchers/stringtable.xml @@ -1,4 +1,5 @@  + @@ -7,6 +8,7 @@ Cargar lanzador Зарядить ПУ Nabít odpalovač + Kilövö betöltése Loading launcher ... @@ -14,6 +16,7 @@ Cargando lanzador ... Зарядка ПУ ... Nabíjím odpalovač ... + Kilövő betöltés alatt ... Launcher loaded @@ -21,6 +24,7 @@ Lanzador cargado ПУ заряжено Odpalovač nabit + Kilövő betöltve Load %1 @@ -28,6 +32,7 @@ Cargar %1 Загрузка %1 Nabít %1 + %1 betöltése - + \ No newline at end of file diff --git a/addons/respawn/stringtable.xml b/addons/respawn/stringtable.xml index 705ca05ecf..8ae9bc12cd 100644 --- a/addons/respawn/stringtable.xml +++ b/addons/respawn/stringtable.xml @@ -1,29 +1,34 @@  + - - - Deploy in 5 seconds ... - Wird in 5 Sekunden errichtet ... - Desplegando en 5 segundos ... - Возрождение через 5 секунд ... - - - Rallypoint deployed - Rallypoint errichtet - Punto de reunión desplegado - Точка сбора установлена - - - Teleported to Base - Zur Basis teleportiert - Teletransportado a base - Телепорт на базу - - - Teleported to Rallypoint - Zum Rallypoint teleportiert - Teletransportado al punto de reunión - Телепорт на точку сбора - - - + + + Deploy in 5 seconds ... + Wird in 5 Sekunden errichtet ... + Desplegando en 5 segundos ... + Возрождение через 5 секунд ... + Kihelyezés 5 másodperc múlva ... + + + Rallypoint deployed + Rallypoint errichtet + Punto de reunión desplegado + Точка сбора установлена + Gyülekezőpont elhelyezve + + + Teleported to Base + Zur Basis teleportiert + Teletransportado a base + Телепорт на базу + Bázisra teleportálva + + + Teleported to Rallypoint + Zum Rallypoint teleportiert + Teletransportado al punto de reunión + Телепорт на точку сбора + Gyülekezőpontra teleportálva + + + \ No newline at end of file From e7e46b3b59d38fda7e15742fc46de9470636b6d0 Mon Sep 17 00:00:00 2001 From: Harakhti Date: Tue, 14 Apr 2015 00:05:39 +0200 Subject: [PATCH 078/246] Translation: S to W That's all I've found so far. --- addons/safemode/stringtable.xml | 78 ++-- addons/switchunits/stringtable.xml | 40 +- addons/vehiclelock/stringtable.xml | 226 +++++------ addons/vehicles/stringtable.xml | 83 ++-- addons/weaponselect/stringtable.xml | 521 +++++++++++++------------- addons/winddeflection/stringtable.xml | 88 +++-- 6 files changed, 523 insertions(+), 513 deletions(-) diff --git a/addons/safemode/stringtable.xml b/addons/safemode/stringtable.xml index 9684babfdf..a955a69583 100644 --- a/addons/safemode/stringtable.xml +++ b/addons/safemode/stringtable.xml @@ -1,42 +1,42 @@  - + - - - Safe Mode - Waffe sichern - Seguro puesto - Bezpiecznik - Pojistka - Veszélytelenités - Предохранитель - - - Take off Safety - Waffe entsichern - Quitar seguro - Zwolnij bezpiecznik - Uvolnit pojistku - Veszélyesités - Снять с предохранителя - - - Put on Safety - Waffe gesichert - Poner seguro - Zabezpiecz broń - Přepnout pojistku - Veszélytelenitve - Поставить на предохранитель - - - Took off Safety - Waffe entsichert - Seguro quitado - Odbezpieczono broń - Odstranit pojistku - veszélyes - Снят с предохранителя - - + + + Safe Mode + Waffe sichern + Seguro puesto + Bezpiecznik + Pojistka + Biztonságos mód + Предохранитель + + + Take off Safety + Waffe entsichern + Quitar seguro + Zwolnij bezpiecznik + Uvolnit pojistku + Biztonsági kapcsoló eltolása + Снять с предохранителя + + + Put on Safety + Waffe gesichert + Poner seguro + Zabezpiecz broń + Přepnout pojistku + Biztonsági kapcsoló helyretolása + Поставить на предохранитель + + + Took off Safety + Waffe entsichert + Seguro quitado + Odbezpieczono broń + Odstranit pojistku + Biztonságos mód megszüntetve + Снят с предохранителя + + \ No newline at end of file diff --git a/addons/switchunits/stringtable.xml b/addons/switchunits/stringtable.xml index 81cde4b007..32e44daad8 100644 --- a/addons/switchunits/stringtable.xml +++ b/addons/switchunits/stringtable.xml @@ -1,22 +1,24 @@  - + - - - Switched unit - Einheit gewechselt - Юнит переключен - Prohozená jednotka - Przełącz jednostkę - Cambiado de unidad - - - This unit is too close to the enemy. - Diese Einheit ist zu nah am Feind. - Юнит слишком близок к противнику. - Tato jednotka je moc blízko k nepříteli. - Ta jednostka jest zbyt blisko przeciwnika. - Esta unidad está demasiado cerca del enemigo. - - + + + Switched unit + Einheit gewechselt + Юнит переключен + Prohozená jednotka + Przełącz jednostkę + Cambiado de unidad + Egység átváltva + + + This unit is too close to the enemy. + Diese Einheit ist zu nah am Feind. + Юнит слишком близок к противнику. + Tato jednotka je moc blízko k nepříteli. + Ta jednostka jest zbyt blisko przeciwnika. + Esta unidad está demasiado cerca del enemigo. + Ez az egység túl közel van az ellenséghez. + + \ No newline at end of file diff --git a/addons/vehiclelock/stringtable.xml b/addons/vehiclelock/stringtable.xml index 580283dcab..218f55a8a9 100644 --- a/addons/vehiclelock/stringtable.xml +++ b/addons/vehiclelock/stringtable.xml @@ -1,116 +1,116 @@  - + - - - Unlock Vehicle - Fahrzeug aufschließen - Vehículo abierto - Déverrouiller le véhicule - Odblokuj pojazd - Odemknout vozidlo - Jármű nyitása - Открыть машину - - - Lock Vehicle - Fahrzeug abschließen - Vehículo cerrado - Verrouiller le véhicule - Zablokuj pojazd - Zamknout vozidlo - Jármű zárása - Закрыть машину - - - Lockpick Vehicle - Fahrzeug knacken - Forzar vehículo - Crocheter le véhicule - Otwórz zamek - Vypáčit vozidlo - Jármű feltörése - Взломать замок - - - Picking Lock.... - Schloss knacken... - Forzando cierre... - Crochetage... - Otwieranie zamka... - Páčim vozidlo... - Feltörés... - Взламываем замок... - - - A custom key that will open a specific vehicle. - Ein Schlüssel der ein bestimmtes Fahrzeug aufschließt. - Una llave concreta abrirá un vehículo concreto. - Une clé propre à un seul véhicule. - Unikatowy klucz który otworzy konkretny pojazd. - Vlastní klíč, který otevře konkrétní vozidlo. - Kulcs egy járműhez - Ключ от конкретной машины. - - - A Master Key will open any lock, no matter what! - Ein Generalschlüssel der jedes Schloss öffnet... - Una llave maestra abrirá cualquier cierre, no importa cual! - Un passe-partout qui ouvrira n'importe quelle serrure. - Uniwersalny klucz który otworzy każdy zamek. - Hlavní klíč otevře libovolný zámek, bez vyjímek! - Általános kulcs minden járműhez - Универсальный ключ, открывающий любой замок. - - - A lockpick set that can pick the locks of most vehicles. - Ein Dietrich der die meisten Fahrzeugschlösser knacken kann... - Un set de ganzúas puede abrir la mayoría de cerraduras de vehículos. - Un crochet qui ouvrira la plupart des véhicules. - Zestaw wytrychów dzięki któremu można otworzyć zamki w większości pojazdów. - Sada paklíčů, která dokáže odemknout zámky u většiny vozidel. - Álkulcs melyik minden járműt nyitni tud - Набор отмычек, которым можно взломать почти любую машину. - - - A key that should open most WEST vehicles. - Ein Schlüssel der die meisten westlichen Fahrzeuge öffnen sollte... - Una llave que puede abrir la mayoría de vehículos occidentales. - Une clé qui ouvrira la plupart des véhicules WEST. - Klucz który powinien otworzyć większość pojazdów ZACHODU. - Klíč který by měl otevřít většinou Západních vozidel. - Általános kulcs WEST járművekhez - Ключ для открытия большинства машин Запада. - - - A key that should open most EAST vehicle. - Ein Schlüssel der die meisten östlichen Fahrzeuge öffnen sollte... - Una llave que puede abrir la mayoría de vehículos orientales. - Une clé qui ouvrira la plupart des véhicules EAST. - Klucz który powinien otworzyć większość pojazdów WSCHODU. - Általános kulcs EAST járművekhez - Klíč který by měl otevřít vetšinu Východních vozidel. - Ключ для открытия большинства машин Востока. - - - A key that should open most INDEP vehicle. - Ein Schlüssel der die meisten Fahrzeuge der Aufständischen öffnen sollte... - Una llave que puede abrir la mayoría de vehículos independientes. - Une clé qui ouvrira la plupart des véhicules INDEP. - Klucz który powinien otworzyć większość pojazdów INDFOR. - Általános kulcs INDEPENDENT járművekhez - Klíč který by měl otevřít většinu Nezávislých vozidel. - Ключ для открытия большинства машин Независимых. - - - A key that should open most CIV vehicle. - Ein Schlüssel der die meisten zivilen Fahrzeuge öffnen sollte... - Una llave que puede abrir la mayoría de vehículos civiles. - Une clé qui ouvrira la plupart des véhicules CIV. - Klucz który powinien otworzyć większość pojazdów CYWILNYCH. - Klíč který by měl otevřít většinu Civilních vozidel. - Általános kulcs CIVILIAN járművekhez - Ключ для открытия большинства машин Гражданских. - - + + + Unlock Vehicle + Fahrzeug aufschließen + Vehículo abierto + Déverrouiller le véhicule + Odblokuj pojazd + Odemknout vozidlo + Jármű nyitása + Открыть машину + + + Lock Vehicle + Fahrzeug abschließen + Vehículo cerrado + Verrouiller le véhicule + Zablokuj pojazd + Zamknout vozidlo + Jármű zárása + Закрыть машину + + + Lockpick Vehicle + Fahrzeug knacken + Forzar vehículo + Crocheter le véhicule + Otwórz zamek + Vypáčit vozidlo + Jármű feltörése + Взломать замок + + + Picking Lock.... + Schloss knacken... + Forzando cierre... + Crochetage... + Otwieranie zamka... + Páčim vozidlo... + Zár feltörése... + Взламываем замок... + + + A custom key that will open a specific vehicle. + Ein Schlüssel der ein bestimmtes Fahrzeug aufschließt. + Una llave concreta abrirá un vehículo concreto. + Une clé propre à un seul véhicule. + Unikatowy klucz który otworzy konkretny pojazd. + Vlastní klíč, který otevře konkrétní vozidlo. + Egy egyedi kulcs, ami egy meghatározott járművet nyit ki. + Ключ от конкретной машины. + + + A Master Key will open any lock, no matter what! + Ein Generalschlüssel der jedes Schloss öffnet... + Una llave maestra abrirá cualquier cierre, no importa cual! + Un passe-partout qui ouvrira n'importe quelle serrure. + Uniwersalny klucz który otworzy każdy zamek. + Hlavní klíč otevře libovolný zámek, bez vyjímek! + Egy főkulcs, ami minden zárat kinyit, helyzettől függetlenül! + Универсальный ключ, открывающий любой замок. + + + A lockpick set that can pick the locks of most vehicles. + Ein Dietrich der die meisten Fahrzeugschlösser knacken kann... + Un set de ganzúas puede abrir la mayoría de cerraduras de vehículos. + Un crochet qui ouvrira la plupart des véhicules. + Zestaw wytrychów dzięki któremu można otworzyć zamki w większości pojazdów. + Sada paklíčů, která dokáže odemknout zámky u většiny vozidel. + Egy tolvajkulcs-készlet, mely a legtöbb jármű zárjait fel tudja törni. + Набор отмычек, которым можно взломать почти любую машину. + + + A key that should open most WEST vehicles. + Ein Schlüssel der die meisten westlichen Fahrzeuge öffnen sollte... + Una llave que puede abrir la mayoría de vehículos occidentales. + Une clé qui ouvrira la plupart des véhicules WEST. + Klucz który powinien otworzyć większość pojazdów ZACHODU. + Klíč který by měl otevřít většinou Západních vozidel. + Egy kulcs, ami a NYUGAT egységeinek legtöbb járművét ki tudja nyitni. + Ключ для открытия большинства машин Запада. + + + A key that should open most EAST vehicle. + Ein Schlüssel der die meisten östlichen Fahrzeuge öffnen sollte... + Una llave que puede abrir la mayoría de vehículos orientales. + Une clé qui ouvrira la plupart des véhicules EAST. + Klucz który powinien otworzyć większość pojazdów WSCHODU. + Egy kulcs, ami a KELET egységeinek legtöbb járművét ki tudja nyitni. + Klíč který by měl otevřít vetšinu Východních vozidel. + Ключ для открытия большинства машин Востока. + + + A key that should open most INDEP vehicle. + Ein Schlüssel der die meisten Fahrzeuge der Aufständischen öffnen sollte... + Una llave que puede abrir la mayoría de vehículos independientes. + Une clé qui ouvrira la plupart des véhicules INDEP. + Klucz który powinien otworzyć większość pojazdów INDFOR. + Egy kulcs, ami a FÜGGETLEN egységek legtöbb járművét ki tudja nyitni. + Klíč který by měl otevřít většinu Nezávislých vozidel. + Ключ для открытия большинства машин Независимых. + + + A key that should open most CIV vehicle. + Ein Schlüssel der die meisten zivilen Fahrzeuge öffnen sollte... + Una llave que puede abrir la mayoría de vehículos civiles. + Une clé qui ouvrira la plupart des véhicules CIV. + Klucz który powinien otworzyć większość pojazdów CYWILNYCH. + Klíč který by měl otevřít většinu Civilních vozidel. + Egy kulcs, ami a CIVIL járművek többségét ki tudja nyitni. + Ключ для открытия большинства машин Гражданских. + + \ No newline at end of file diff --git a/addons/vehicles/stringtable.xml b/addons/vehicles/stringtable.xml index 4fbb91ebcd..2312ce6027 100644 --- a/addons/vehicles/stringtable.xml +++ b/addons/vehicles/stringtable.xml @@ -1,43 +1,42 @@ - + + - - - - Speed Limiter on - Begrenzer an - Limitador de velocidad activado - Ogranicznik prędkości włączony - Omezovač rychlosti zapnout - Limiteur de vitesse Activé - Ограничение скорости включено - Sebességkorlát bekapcsolva - Limitador de Velocidade Ativo - Limitatore Attivo - - - Speed Limiter off - Begrenzer aus - Limitador de velocidad desactivado - Ogranicznik prędkości wyłączony - Omezovač rychlosti vypnout - Limiteur de vitesse Désactivé - Ограничение скорости выключено - Sebességkorlát kikapcsolva - Limitador de Velocidade Desativado - Limitatore Non Attivo - - - - Speed Limiter - Begrenzer - Limitador de velocidad - Ogranicznik prędkości - Omezovač rychlosti - Limiteur de vitesse - Ограничение скорости - Sebességkorlát - Limitador de Velocidade - Limitatore di Velocità - - - + + + Speed Limiter on + Begrenzer an + Limitador de velocidad activado + Ogranicznik prędkości włączony + Omezovač rychlosti zapnout + Limiteur de vitesse Activé + Ограничение скорости включено + Sebességkorlátozó bekapcsolva + Limitador de Velocidade Ativo + Limitatore Attivo + + + Speed Limiter off + Begrenzer aus + Limitador de velocidad desactivado + Ogranicznik prędkości wyłączony + Omezovač rychlosti vypnout + Limiteur de vitesse Désactivé + Ограничение скорости выключено + Sebességkorlátozó kikapcsolva + Limitador de Velocidade Desativado + Limitatore Non Attivo + + + Speed Limiter + Begrenzer + Limitador de velocidad + Ogranicznik prędkości + Omezovač rychlosti + Limiteur de vitesse + Ограничение скорости + Sebességkorlátozó + Limitador de Velocidade + Limitatore di Velocità + + + \ No newline at end of file diff --git a/addons/weaponselect/stringtable.xml b/addons/weaponselect/stringtable.xml index c7bd64a824..589b9b53a3 100644 --- a/addons/weaponselect/stringtable.xml +++ b/addons/weaponselect/stringtable.xml @@ -1,261 +1,264 @@  + - - - Display text on grenade throw - Zeige Text beim Granatwurf - Mostrar texto al lanzar granada - Показывать текст при броске - Zobrazí text při hodu granátem - - - Display a hint or text on grenade throw. - Zeige Hinweis oder Text beim Granatwurf - Muestra una notificación o texto al lanzar granada - Показывать текст или подсказку при броске гранаты. - Zobrazí upozornění nebo text při hodu granátem. - - - Select Pistol - Pistole auswählen - Seleccionar pistola - Wybierz pistolet - Zvolit příruční zbraň - Выбрать пистолет - Sélectionner Pistolet - Pisztoly Kiválasztása - Selecionar Pistola - Seleziona la Pistola - - - Select Rifle - Gewehr auswählen - Seleccionar fusil - Wybierz karabin - Zvolit hlavní zbraň - Выбрать автомат - Sélectionner Fusil - Puska Kiválasztása - Selecionar Rifle - Seleziona il Fucile - - - Select Launcher - Raketenwerfer auswählen - Seleccionar lanzador - Wybierz wyrzutnię - Zvolit Raketomet - Выбрать гранатомет - Sélectionner Lanceur - Rakétavető Kiválasztása - Selecionar Lançador - Seleziona il Lanciatore - - - Select Grenade Launcher - Granatwerfer auswählen - Seleccionar lanzador de granadas - Wybierz granatnik - Zvolit Granátomet - Выбрать подствольный гранатомет - Sélectionner Lance-grenades - Gránátvető Kiválasztása - Selecionar Lança-Granadas - Seleziona il Lanciagranate - - - Select Binoculars - Fernglas auswählen - Seleccionar prismáticos - Wybierz lornetkę - Zvolit Dalekohled - Выбрать бинокль - Sélectionner Jumelles - Távcső Kiválasztása - Selecionar Binóculos - Seleziona il Binocolo - - - Holster Weapon - Waffe holstern - Enfundar el arma - Schowaj broń - Schovat zbraň - Убрать оружие - Arme à la bretelle - Fegyvert tokba - Guardar Arma - Nascondi l'arma - - - Engine on - Motor an - Encender motor - Włącz silnik - Moteur allumé - Motor indítása - Zapnout motor - Ligar Motor - Motore acceso - Включить двигатель - - - Engine off - Motor aus - Apagar motor - Wyłącz silnik - Moteur éteint - Motor leállítása - Vypnout motor - Desligar Motor - Motore spento - Выключить двигатель - - - Select Main Gun - Hauptgeschütz auswählen - Seleccionar arma principal - Wybierz główną broń - Sélectionner l'Arme Principale - Elsődleges Fegyver Kiválasztása - Zvolit Hlavní Zbraň - Selecionar Arma Principal - Seleziona Arma Primaria - Выбрать основное оружие - - - Select Machine Gun - Maschinengewehr auswählen - Seleccionar ametralladora - Wybierz karabin maszynowy - Sélectionner Mitrailleuse - Géppuska Kiválasztása - Zvolit Kulomet - Selecionar Metralhadora - Seleziona Mitragliatrice - Выбрать пулемёт - - - Select Missiles - Raketen auswählen - Seleccionar misiles - Wybierz rakiety - Sélectionner Missiles - Rakéták Kiválasztása - Zvolit Rakety - Selecionar Mísseis - Seleziona Missili - Выбрать ракеты - - - Grenade %1 - Granate %1 - Granada %1 - Granat %1 - Granát %1 - Gránát Kiválasztása - Граната %1 - - - Ready Grenade - Granate nehmen - Granada lista - Przygotuj granat - Odjistit granát - Kész Gránát - Подготовить гранату - - - Select Frag Grenade - Explosive Granate auswählen - Seleccionar granada de fragmenación - Wybierz granat odłamkowy - Sélectionner grenade à fragmentation - Repeszgránát Kiválasztása - Zvolit Výbušný Granát - Selecionar Granada de Fragmentação - Seleziona Granata a Frammentazione - Выбрать осколочную гранату - - - Select Non-Frag Grenade - Nichtexplosive Granate auswählen - Seleccionar granada de no fragmentación - Wybierz granat nieodłamkowy - Sélectionner grenade non-léthale - Nem Robbanó Gránát Kiválasztása - Zvolit Ne-Výbušný Granát - Selecionar Granada - Seleziona Altre Granate - Выбрать гранату - - - Throw Selected Grenade - Gewählte Granate werfen - Arrojar granada seleccionada - Rzuć wybrany granat - Lancer la grenade sélectionnée - Kiválasztott Gránát Eldobása - Hodit Zvolený Granát - Lançar Granada Selecionada - Lancia la Granata Selezionata - Бросить выбранную гранату - - - No grenades left - Keine Granaten übrig - No quedan granadas - Plus de grenades - Brak granatów - Žádné granáty - Nincs több gránát - Гранат не осталось - - - No frags left - Keine explosiven Granaten übrig - Sin granadas de fragmentación - Brak granatów odłamkowych - Plus de grenades à fragmentation - Nincs több repeszgránát - Už nejsou granáty - Não há granadas de fragmentação restantes - Nessuna granata a frammentazione rimanente - Осколочныких гранат нет - - - No misc. grenades left - Keine nichtexplosiven Granaten übrig - Sin granadas de varias - Brak granatów nieodłamkowych - Plus de grenades non-léthales - Nincs több egyéb gránát - Už nejsou žádné ostatní granáty - Não há outras granadas restantes - Nessun'altra granata rimanente. - Летальные гранаты закончились - - - No grenade selected - Keine Granate ausgewählt - Granada no seleccionada - Nie wybrano żadnego granatu - Aucune grenade sélectionnée - Nincs kiválasztva gránát - Není zvolen žádný granát - Nenhuma granada selecionada - Nessuna granata selezionata - Нет выбранной гранаты - - - Fire Smoke Launcher - Rauchwand abfeuern - Disparar lanzador de humo - Kouřový odpalovač - Tirer le lance-pots fumigènes - Wystrzel granat dymny - Füst kilövése - Запустить дымовую завесу - - - + + + Display text on grenade throw + Zeige Text beim Granatwurf + Mostrar texto al lanzar granada + Показывать текст при броске + Zobrazí text při hodu granátem + Szöveg mutatása gránát eldobásakor + + + Display a hint or text on grenade throw. + Zeige Hinweis oder Text beim Granatwurf + Muestra una notificación o texto al lanzar granada + Показывать текст или подсказку при броске гранаты. + Zobrazí upozornění nebo text při hodu granátem. + Jelez egy súgót vagy szöveget a gránát eldobásakor. + + + Select Pistol + Pistole auswählen + Seleccionar pistola + Wybierz pistolet + Zvolit příruční zbraň + Выбрать пистолет + Sélectionner Pistolet + Pisztoly Kiválasztása + Selecionar Pistola + Seleziona la Pistola + + + Select Rifle + Gewehr auswählen + Seleccionar fusil + Wybierz karabin + Zvolit hlavní zbraň + Выбрать автомат + Sélectionner Fusil + Puska Kiválasztása + Selecionar Rifle + Seleziona il Fucile + + + Select Launcher + Raketenwerfer auswählen + Seleccionar lanzador + Wybierz wyrzutnię + Zvolit Raketomet + Выбрать гранатомет + Sélectionner Lanceur + Rakétavető Kiválasztása + Selecionar Lançador + Seleziona il Lanciatore + + + Select Grenade Launcher + Granatwerfer auswählen + Seleccionar lanzador de granadas + Wybierz granatnik + Zvolit Granátomet + Выбрать подствольный гранатомет + Sélectionner Lance-grenades + Gránátvető Kiválasztása + Selecionar Lança-Granadas + Seleziona il Lanciagranate + + + Select Binoculars + Fernglas auswählen + Seleccionar prismáticos + Wybierz lornetkę + Zvolit Dalekohled + Выбрать бинокль + Sélectionner Jumelles + Távcső Kiválasztása + Selecionar Binóculos + Seleziona il Binocolo + + + Holster Weapon + Waffe holstern + Enfundar el arma + Schowaj broń + Schovat zbraň + Убрать оружие + Arme à la bretelle + Fegyvert tokba + Guardar Arma + Nascondi l'arma + + + Engine on + Motor an + Encender motor + Włącz silnik + Moteur allumé + Motor indítása + Zapnout motor + Ligar Motor + Motore acceso + Включить двигатель + + + Engine off + Motor aus + Apagar motor + Wyłącz silnik + Moteur éteint + Motor leállítása + Vypnout motor + Desligar Motor + Motore spento + Выключить двигатель + + + Select Main Gun + Hauptgeschütz auswählen + Seleccionar arma principal + Wybierz główną broń + Sélectionner l'Arme Principale + Elsődleges Fegyver Kiválasztása + Zvolit Hlavní Zbraň + Selecionar Arma Principal + Seleziona Arma Primaria + Выбрать основное оружие + + + Select Machine Gun + Maschinengewehr auswählen + Seleccionar ametralladora + Wybierz karabin maszynowy + Sélectionner Mitrailleuse + Géppuska Kiválasztása + Zvolit Kulomet + Selecionar Metralhadora + Seleziona Mitragliatrice + Выбрать пулемёт + + + Select Missiles + Raketen auswählen + Seleccionar misiles + Wybierz rakiety + Sélectionner Missiles + Rakéták Kiválasztása + Zvolit Rakety + Selecionar Mísseis + Seleziona Missili + Выбрать ракеты + + + Grenade %1 + Granate %1 + Granada %1 + Granat %1 + Granát %1 + Gránát: %1 + Граната %1 + + + Ready Grenade + Granate nehmen + Granada lista + Przygotuj granat + Odjistit granát + Gránát előkészítése + Подготовить гранату + + + Select Frag Grenade + Explosive Granate auswählen + Seleccionar granada de fragmenación + Wybierz granat odłamkowy + Sélectionner grenade à fragmentation + Repeszgránát Kiválasztása + Zvolit Výbušný Granát + Selecionar Granada de Fragmentação + Seleziona Granata a Frammentazione + Выбрать осколочную гранату + + + Select Non-Frag Grenade + Nichtexplosive Granate auswählen + Seleccionar granada de no fragmentación + Wybierz granat nieodłamkowy + Sélectionner grenade non-léthale + Nem-robbanó Gránát Kiválasztása + Zvolit Ne-Výbušný Granát + Selecionar Granada + Seleziona Altre Granate + Выбрать гранату + + + Throw Selected Grenade + Gewählte Granate werfen + Arrojar granada seleccionada + Rzuć wybrany granat + Lancer la grenade sélectionnée + Kiválasztott Gránát Eldobása + Hodit Zvolený Granát + Lançar Granada Selecionada + Lancia la Granata Selezionata + Бросить выбранную гранату + + + No grenades left + Keine Granaten übrig + No quedan granadas + Plus de grenades + Brak granatów + Žádné granáty + Nincs több gránát + Гранат не осталось + + + No frags left + Keine explosiven Granaten übrig + Sin granadas de fragmentación + Brak granatów odłamkowych + Plus de grenades à fragmentation + Nincs több repeszgránát + Už nejsou granáty + Não há granadas de fragmentação restantes + Nessuna granata a frammentazione rimanente + Осколочныких гранат нет + + + No misc. grenades left + Keine nichtexplosiven Granaten übrig + Sin granadas de varias + Brak granatów nieodłamkowych + Plus de grenades non-léthales + Nincs több egyéb gránát + Už nejsou žádné ostatní granáty + Não há outras granadas restantes + Nessun'altra granata rimanente. + Летальные гранаты закончились + + + No grenade selected + Keine Granate ausgewählt + Granada no seleccionada + Nie wybrano żadnego granatu + Aucune grenade sélectionnée + Nincs semmilyen gránát kiválasztva + Není zvolen žádný granát + Nenhuma granada selecionada + Nessuna granata selezionata + Нет выбранной гранаты + + + Fire Smoke Launcher + Rauchwand abfeuern + Disparar lanzador de humo + Kouřový odpalovač + Tirer le lance-pots fumigènes + Wystrzel granat dymny + Füstvető eltüzelése + Запустить дымовую завесу + + + \ No newline at end of file diff --git a/addons/winddeflection/stringtable.xml b/addons/winddeflection/stringtable.xml index 271332c943..4f061e2d63 100644 --- a/addons/winddeflection/stringtable.xml +++ b/addons/winddeflection/stringtable.xml @@ -1,42 +1,48 @@ - + + - - - - Wind Information - Informacje o wietrze - Información del viento - Ветер - Informace o větru - - - Direction: %1 - Kierunek: %1 - Dirección: %1 - Направление: %1 - Směr: %1 - - - Speed: %1 m/s - Prędkość: %1 - Velocidad: %1 m/s - Скорость: %1 м/с - Rychlost: %1 m/s - - - Weather Information - Informacje o pogodzie - Información Meteorológica - Погода - Informace o počasí - - - Humidity: %1% - Wilgotność: %1 - Humedad: %1% - Влажность: %1% - Vlhkost: %1% - - - - + + + + Wind Information + Informacje o wietrze + Información del viento + Ветер + Informace o větru + Szélinformáció + + + Direction: %1 + Kierunek: %1 + Dirección: %1 + Направление: %1 + Směr: %1 + Irány: %1 + + + Speed: %1 m/s + Prędkość: %1 + Velocidad: %1 m/s + Скорость: %1 м/с + Rychlost: %1 m/s + Sebesség: %1 m/s + + + Weather Information + Informacje o pogodzie + Información Meteorológica + Погода + Informace o počasí + Időjárás-Információ + + + Humidity: %1% + Wilgotność: %1 + Humedad: %1% + Влажность: %1% + Vlhkost: %1% + Páratartalom: %1% + + + + \ No newline at end of file From 35044fa16b46705d93d4902f08785526472a7d4b Mon Sep 17 00:00:00 2001 From: Harakhti Date: Tue, 14 Apr 2015 00:06:50 +0200 Subject: [PATCH 079/246] Contribution! It feels awkward to add myself on a list. --- AUTHORS.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/AUTHORS.txt b/AUTHORS.txt index 148f2835fb..087ddfae4f 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -47,6 +47,7 @@ GieNkoV gpgpgpgp Grzegorz Hamburger SV +Harakhti havena Hawkins jokoho48 From 3da3543381b4e94a9c428098d73cd05717efd097 Mon Sep 17 00:00:00 2001 From: commy2 Date: Tue, 14 Apr 2015 00:32:09 +0200 Subject: [PATCH 080/246] toggle laser vs ir laser --- addons/laserpointer/CfgVehicles.hpp | 5 +- addons/laserpointer/CfgWeapons.hpp | 31 +++++++++- addons/laserpointer/XEH_postInit.sqf | 15 ++++- addons/laserpointer/XEH_preInit.sqf | 1 + addons/laserpointer/config.cpp | 2 +- .../functions/fnc_switchLaserLightMode.sqf | 58 +++++++++++++++++++ addons/laserpointer/stringtable.xml | 12 ++++ 7 files changed, 116 insertions(+), 8 deletions(-) create mode 100644 addons/laserpointer/functions/fnc_switchLaserLightMode.sqf diff --git a/addons/laserpointer/CfgVehicles.hpp b/addons/laserpointer/CfgVehicles.hpp index 8c81837fe2..5a0ece1b1f 100644 --- a/addons/laserpointer/CfgVehicles.hpp +++ b/addons/laserpointer/CfgVehicles.hpp @@ -2,7 +2,7 @@ class CfgVehicles { class NATO_Box_Base; class Box_NATO_Support_F: NATO_Box_Base { class TransportItems { - MACRO_ADDITEM(ACE_acc_pointer_red,4); + MACRO_ADDITEM(ACE_acc_pointer_green,4); }; }; @@ -23,13 +23,12 @@ class CfgVehicles { class FIA_Box_Base_F; class Box_FIA_Support_F: FIA_Box_Base_F { class TransportItems { - MACRO_ADDITEM(ACE_acc_pointer_red,4); + MACRO_ADDITEM(ACE_acc_pointer_green,4); }; }; class ACE_Box_Misc: Box_NATO_Support_F { class TransportItems { - MACRO_ADDITEM(ACE_acc_pointer_red,4); MACRO_ADDITEM(ACE_acc_pointer_green,4); }; }; diff --git a/addons/laserpointer/CfgWeapons.hpp b/addons/laserpointer/CfgWeapons.hpp index 364f4b2168..4f6a61c83a 100644 --- a/addons/laserpointer/CfgWeapons.hpp +++ b/addons/laserpointer/CfgWeapons.hpp @@ -1,17 +1,28 @@ class SlotInfo; class PointerSlot: SlotInfo { - compatibleItems[] += {"ACE_acc_pointer_red","ACE_acc_pointer_green"}; + compatibleItems[] += {"ACE_acc_pointer_red","ACE_acc_pointer_green_IR","ACE_acc_pointer_green"}; }; class CfgWeapons { class ItemCore; class InventoryFlashLightItem_Base_F; + class acc_pointer_IR: ItemCore { + ACE_nextModeClass = "ACE_acc_pointer_red"; + ACE_modeDescription = "$STR_ACE_Laserpointer_IRLaser"; + + displayName = "$STR_ACE_Laserpointer_red"; + descriptionUse = "$STR_ACE_Laserpointer_useLaser"; + }; + class ACE_acc_pointer_red: ItemCore { + ACE_nextModeClass = "acc_pointer_IR"; + ACE_modeDescription = "$STR_ACE_Laserpointer_Laser"; + author = "$STR_ACE_Common_ACETeam"; _generalMacro = "ACE_acc_pointer_red"; - scope = 2; + scope = 1; displayName = "$STR_ACE_Laserpointer_red"; descriptionUse = "$STR_ACE_Laserpointer_useLaser"; picture = "\A3\weapons_F\Data\UI\gear_accv_pointer_CA.paa"; @@ -54,9 +65,23 @@ class CfgWeapons { inertia = 0.1; }; - class ACE_acc_pointer_green: ACE_acc_pointer_red { + class ACE_acc_pointer_green_IR: acc_pointer_IR { + ACE_nextModeClass = "ACE_acc_pointer_green"; + ACE_modeDescription = "$STR_ACE_Laserpointer_IRLaser"; + author = "$STR_ACE_Common_ACETeam"; _generalMacro = "ACE_acc_pointer_green"; + scope = 1; + displayName = "$STR_ACE_Laserpointer_green"; + }; + + class ACE_acc_pointer_green: ACE_acc_pointer_red { + ACE_nextModeClass = "ACE_acc_pointer_green_IR"; + ACE_modeDescription = "$STR_ACE_Laserpointer_Laser"; + + author = "$STR_ACE_Common_ACETeam"; + _generalMacro = "ACE_acc_pointer_green"; + scope = 2; displayName = "$STR_ACE_Laserpointer_green"; }; }; diff --git a/addons/laserpointer/XEH_postInit.sqf b/addons/laserpointer/XEH_postInit.sqf index 14e4c384d8..eade50d670 100644 --- a/addons/laserpointer/XEH_postInit.sqf +++ b/addons/laserpointer/XEH_postInit.sqf @@ -11,7 +11,7 @@ GVAR(nearUnits) = []; // @todo. Maybe move to common? [{ private "_nearUnits"; - _nearUnits = nearestObjects [positionCameraToWorld [0,0,0], ["CAManBase"], 50]; + _nearUnits = nearestObjects [positionCameraToWorld [0,0,0], ["CAManBase"], 50]; // when moving this, search also for units inside vehicles. currently breaks the laser in FFV if (count _nearUnits > 10) then { _nearUnits resize 10; @@ -24,3 +24,16 @@ GVAR(nearUnits) = []; addMissionEventHandler ["Draw3D", { call FUNC(onDraw); }]; + +// init keybinds +["ACE3", QGVAR(switchLaserLightMode), localize "STR_ACE_Laserpointer_switchLaserLight", +{ + // Conditions: canInteract + if !([ACE_player, objNull, ["isNotInside"]] call EFUNC(common,canInteractWith)) exitWith {false}; + // Conditions: specific + if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false}; + + [ACE_player, currentWeapon ACE_player] call FUNC(switchLaserLightMode); + true +}, +{false}, [38, [false, true, false]], false] call CBA_fnc_addKeybind; diff --git a/addons/laserpointer/XEH_preInit.sqf b/addons/laserpointer/XEH_preInit.sqf index e7c74d3445..1460abda36 100644 --- a/addons/laserpointer/XEH_preInit.sqf +++ b/addons/laserpointer/XEH_preInit.sqf @@ -4,5 +4,6 @@ ADDON = false; PREP(drawLaserpoint); PREP(onDraw); +PREP(switchLaserLightMode); ADDON = true; diff --git a/addons/laserpointer/config.cpp b/addons/laserpointer/config.cpp index b97587dac6..5ca5ce3470 100644 --- a/addons/laserpointer/config.cpp +++ b/addons/laserpointer/config.cpp @@ -3,7 +3,7 @@ class CfgPatches { class ADDON { units[] = {}; - weapons[] = {"ACE_acc_pointer_red","ACE_acc_pointer_green"}; + weapons[] = {"ACE_acc_pointer_red","ACE_acc_pointer_green","ACE_acc_pointer_green_IR"}; requiredVersion = REQUIRED_VERSION; requiredAddons[] = {"ace_common"}; author[] = {"commy2"}; diff --git a/addons/laserpointer/functions/fnc_switchLaserLightMode.sqf b/addons/laserpointer/functions/fnc_switchLaserLightMode.sqf new file mode 100644 index 0000000000..f996d6b270 --- /dev/null +++ b/addons/laserpointer/functions/fnc_switchLaserLightMode.sqf @@ -0,0 +1,58 @@ +// by commy2 +#include "script_component.hpp" + +private ["_unit", "_weapon"]; + +_unit = _this select 0; +_weapon = _this select 1; + +// 1 = primary, 2 = secondary, 3 = handgun +private "_currentWeaponType"; +_currentWeaponType = 0; + +private "_pointer"; +_pointer = switch (_weapon) do { + case (primaryWeapon _unit): { + _currentWeaponType = 1; + primaryWeaponItems _unit select 1 + }; + case (secondaryWeapon _unit): { + _currentWeaponType = 2; + secondaryWeaponItems _unit select 1 + }; + case (handgunWeapon _unit): { + _currentWeaponType = 3; + handgunItems _unit select 1 + }; + default {""}; +}; + +if (_pointer == "") exitWith {}; + +private "_nextPointer"; +_nextPointer = getText (configFile >> "CfgWeapons" >> _pointer >> "ACE_nextModeClass"); + +if (_nextPointer == "") exitWith {}; + +private ["_description", "_picture"]; + +_description = getText (configFile >> "CfgWeapons" >> _nextPointer >> "ACE_modeDescription"); +_picture = getText (configFile >> "CfgWeapons" >> _nextPointer >> "picture"); + +switch (_currentWeaponType) do { + case 1: { + _unit removePrimaryWeaponItem _pointer; + _unit addPrimaryWeaponItem _nextPointer; + }; + case 2: { + _unit removeSecondaryWeaponItem _pointer; + _unit addSecondaryWeaponItem _nextPointer; + }; + case 3: { + _unit removeHandgunItem _pointer; + _unit addHandgunItem _nextPointer; + }; +}; + +[_description, _picture] call EFUNC(common,displayTextPicture); +playSound "ACE_Sound_Click"; diff --git a/addons/laserpointer/stringtable.xml b/addons/laserpointer/stringtable.xml index a5a153aca4..169b5bb059 100644 --- a/addons/laserpointer/stringtable.xml +++ b/addons/laserpointer/stringtable.xml @@ -36,5 +36,17 @@ <t color='#9cf953'>Использовать: </t>вкл/выкл лазер <t color='#9cf953'>Usar: </t>encender/apagar láser + + Laser + Laser + + + IR Laser + IR-Laser + + + Switch Laser / IR Laser + Umschalten Laser / IR-Laser + From 761fef39c8db08b3ab73f15b5794bca05e3455cc Mon Sep 17 00:00:00 2001 From: jaynus Date: Mon, 13 Apr 2015 15:34:51 -0700 Subject: [PATCH 081/246] working save. --- .../functions/fnc_attackProfile_TOP.sqf | 53 ++++++++++++++++--- .../functions/fnc_guidancePFH.sqf | 14 +++-- 2 files changed, 55 insertions(+), 12 deletions(-) diff --git a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf index ef59890b99..fc9afed104 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf @@ -1,6 +1,11 @@ #define DEBUG_MODE_FULL #include "script_component.hpp" +#define STAGE_LAUNCH 1 +#define STAGE_CLIMB 2 +#define STAGE_COAST 3 +#define STAGE_TERMINAL 4 + EXPLODE_7_PVT(((_this select 1) select 0),_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); private["_targetPos", "_projectilePos", "_target", "_seekerTargetPos", "_launchParams", "_targetLaunchParams"]; private["_distanceToTarget", "_distanceToShooter", "_addHeight", "_returnTargetPos", "_state"]; @@ -11,26 +16,60 @@ _target = _launchParams select 0; _targetLaunchParams = _launchParams select 1; _state = _this select 2; +if( (count _state) < 1) then { + _state set[0, STAGE_LAUNCH]; +}; _shooterPos = getPosASL _shooter; _projectilePos = getPosASL _projectile; _distanceToTarget = _projectilePos vectorDistance _seekerTargetPos; _distanceToShooter = _projectilePos vectorDistance _shooterPos; +_distanceShooterToTarget = _shooterPos vectorDistance _seekerTargetPos; TRACE_2("", _distanceToTarget, _distanceToShooter); // Add height depending on distance for compensate -_addHeight = [0,0,0]; +_returnTargetPos = _seekerTargetPos; - - -TRACE_3("", _distanceToTarget,_distanceToShooter,_addHeight); - - _returnTargetPos = _seekerTargetPos vectorAdd _addHeight; +switch( (_state select 0) ) do { + case STAGE_LAUNCH: { + TRACE_1("STAGE_LAUNCH",""); + if(_distanceToShooter < 10) then { + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*2]; + } else { + _state set[0, STAGE_CLIMB]; + }; + }; + case STAGE_CLIMB: { + TRACE_1("STAGE_CLIMB",""); + _cruisAlt = 140; + if(_distanceShooterToTarget < 1250) then { + _cruisAlt = 140 * (_distanceShooterToTarget/1250); + TRACE_1("_cruisAlt", _cruisAlt); + }; + + if( ((ASLToATL _projectilePos) select 2) - ((ASLToATL _seekerTargetPos) select 2) >= _cruisAlt) then { + _state set[0, STAGE_COAST]; + } else { + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*2]; + }; + }; + case STAGE_COAST: { + TRACE_1("STAGE_COAST",""); + if(_distanceShooterToTarget < 1250 || _distanceToTarget < ( ((ASLToATL _projectilePos) select 2) - (( ASLToATL _seekerTargetPos) select 2) )) then { + _state set[0, STAGE_TERMINAL]; + }; + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,(_projectilePos select 2)]; + }; + case STAGE_TERMINAL: { + TRACE_1("STAGE_TERMINAL",""); + + }; +}; #ifdef DEBUG_MODE_FULL -drawLine3D [(ASLtoATL _returnTargetPos) vectorAdd _addHeight, ASLtoATL _returnTargetPos, [0,1,0,1]]; +drawLine3D [(ASLtoATL _returnTargetPos), (ASLtoATL _seekerTargetPos), [0,1,0,1]]; #endif TRACE_1("Adjusted target position", _returnTargetPos); diff --git a/addons/missileguidance/functions/fnc_guidancePFH.sqf b/addons/missileguidance/functions/fnc_guidancePFH.sqf index 8596e81924..7bba35ab71 100644 --- a/addons/missileguidance/functions/fnc_guidancePFH.sqf +++ b/addons/missileguidance/functions/fnc_guidancePFH.sqf @@ -5,7 +5,7 @@ private["_args", "_stateParams", "_launchParams", "_targetLaunchParams", "_config", "_flightParams", "_seekerParams", "_seekerTargetPos"]; private["_lastRunTime", "_runtimeDelta", "_profileAdjustedTargetPos", "_targetVectorSeeker", "_targetVector"]; -private["_minDeflection", "_maxDeflection", "_incDeflection"]; +private["_minDeflection", "_maxDeflection", "_incDeflection", "_adjustTime"]; private["_yVec", "_zVec", "_xVec"]; _args = _this select 0; @@ -21,10 +21,14 @@ _stateParams = _args select 4; _lastRunTime = _stateParams select 0; _runtimeDelta = diag_tickTime - _lastRunTime; -_adjustTime = 1/accTime; -_adjustTime = _adjustTime * (_runtimeDelta / TIMESTEP_FACTOR); -TRACE_4("Adjust timing", 1/accTime, _adjustTime, _runtimeDelta, (_runtimeDelta / TIMESTEP_FACTOR) ); - +_adjustTime = 1; +if(accTime > 0) then { + _adjustTime = 1/accTime; + _adjustTime = _adjustTime * (_runtimeDelta / TIMESTEP_FACTOR); + TRACE_4("Adjust timing", 1/accTime, _adjustTime, _runtimeDelta, (_runtimeDelta / TIMESTEP_FACTOR) ); +} else { + _adjustTime = 0; +}; _config = configFile >> "CfgAmmo" >> _ammo >> "ACE_MissileGuidance"; if(!alive _projectile || isNull _projectile || isNull _shooter) exitWith { From 22d90fee9a4a4b91c6789b3fc1e34e9bbdc5725b Mon Sep 17 00:00:00 2001 From: jaynus Date: Mon, 13 Apr 2015 16:47:09 -0700 Subject: [PATCH 082/246] Begin modelToWorld work. --- .../functions/fnc_guidancePFH.sqf | 30 ++++++------------- 1 file changed, 9 insertions(+), 21 deletions(-) diff --git a/addons/missileguidance/functions/fnc_guidancePFH.sqf b/addons/missileguidance/functions/fnc_guidancePFH.sqf index 7bba35ab71..5b69b2fd8c 100644 --- a/addons/missileguidance/functions/fnc_guidancePFH.sqf +++ b/addons/missileguidance/functions/fnc_guidancePFH.sqf @@ -1,4 +1,4 @@ -//#define DEBUG_MODE_FULL +#define DEBUG_MODE_FULL #include "script_component.hpp" #define TIMESTEP_FACTOR 0.01 @@ -44,15 +44,11 @@ if(!isNil "_seekerTargetPos") then { _minDeflection = ((_flightParams select 0) - ((_flightParams select 0) * _adjustTime)) max 0; _maxDeflection = (_flightParams select 1) * _adjustTime; _incDeflection = _flightParams select 2; - - _yVec = vectorDir _projectile; - _zVec = vectorUp _projectile; - _xVec = vectorNormalized (_yVec vectorCrossProduct _zVec); _projectilePos = getPosASL _projectile; - _targetVectorSeeker = [_projectile, [_xVec, _yVec, _zVec], _profileAdjustedTargetPos] call EFUNC(common,translateToWeaponSpace); - _targetVector = [0,0,0] vectorFromTo _targetVectorSeeker; + _targetVector = _projectile worldToModelVisual _profileAdjustedTargetPos; + _targetVectorSeeker = [0,0,0] vectorFromTo _targetVector; TRACE_1("", _targetVectorSeeker, _targetVector); private["_yaw", "_pitch"]; @@ -73,25 +69,17 @@ if(!isNil "_seekerTargetPos") then { _pitch = ( (_minDeflection max ((_targetVector select 2) min _maxDeflection) ) ); }; }; - -#ifdef DEBUG_MODE_FULL - drawIcon3D ["\a3\ui_f\data\IGUI\Cfg\Cursors\selectover_ca.paa", [1,1,1,1], ASLtoATL _projectilePos, 0.75, 0.75, 0, str _vectorTo, 1, 0.025, "TahomaB"]; - drawLine3D [ASLtoATL _projectilePos, ASLtoATL _profileAdjustedTargetPos, [1,0,0,1]]; -#endif - + if(accTime > 0) then { private["_outVector", "_vectorTo"]; - - // @TODO: Apply velocity multiplier to yaw/pitch. Basically, it can adjust faster at lower speeds - //_adjustDeflection = (vectorMagnitude velocity _projectile); - - _outVector = [_projectile, [_xVec, _yVec, _zVec], [_yaw, 1, _pitch]] call EFUNC(common,translateToModelSpace); - _vectorTo = _projectilePos vectorFromTo _outVector; - - _projectile setVectorDirAndUp [_vectorTo, vectorUp _projectile]; + _finalVector = _projectilePos vectorFromTo _profileAdjustedTargetPos; + _projectile setVectorDirAndUp [_finalVector, vectorUp _projectile]; }; #ifdef DEBUG_MODE_FULL + drawIcon3D ["\a3\ui_f\data\IGUI\Cfg\Cursors\selectover_ca.paa", [1,1,1,1], ASLtoATL _projectilePos, 0.75, 0.75, 0, str _vectorTo, 1, 0.025, "TahomaB"]; + drawLine3D [ASLtoATL _projectilePos, ASLtoATL _profileAdjustedTargetPos, [1,0,0,1]]; + hintSilent format["d: %1", _distanceToTarget]; #endif }; From 1be197728e841bf27bde59616135fa3288942225 Mon Sep 17 00:00:00 2001 From: Grzegorz Sikora Date: Tue, 14 Apr 2015 11:42:52 +0200 Subject: [PATCH 083/246] AdvBal PL translation --- addons/advanced_ballistics/stringtable.xml | 15 +++-- addons/atragmx/stringtable.xml | 38 ++++++------ addons/kestrel4500/stringtable.xml | 47 ++++++++------- addons/scopes/stringtable.xml | 69 ++++++++++++---------- addons/weather/stringtable.xml | 6 +- 5 files changed, 100 insertions(+), 75 deletions(-) diff --git a/addons/advanced_ballistics/stringtable.xml b/addons/advanced_ballistics/stringtable.xml index 7136e89d0f..29560ce149 100644 --- a/addons/advanced_ballistics/stringtable.xml +++ b/addons/advanced_ballistics/stringtable.xml @@ -1,11 +1,14 @@ - - + + + - Show Wind Info + Show Wind Info + Pokaż inf. o wietrze - Show Protractor + Show Protractor + Pokaż kątomierz - - + + \ No newline at end of file diff --git a/addons/atragmx/stringtable.xml b/addons/atragmx/stringtable.xml index 7385eee22f..6b6a921c2a 100644 --- a/addons/atragmx/stringtable.xml +++ b/addons/atragmx/stringtable.xml @@ -1,26 +1,30 @@ - - + + + - ATragMX - ATragMX - ATragMX - ATragMX - ATragMX - ATragMX - ATragMX - ATragMX - ATragMX - ATragMX + ATragMX + ATragMX + ATragMX + ATragMX + ATragMX + ATragMX + ATragMX + ATragMX + ATragMX + ATragMX - Open ATragMX + Open ATragMX + Otwórz ATragMX - Rugged PDA with ATragMX + Rugged PDA with ATragMX + Przenośny PDA z kalkulatorem balistycznym ATragMX - Open ATragMX + Open ATragMX + Otwórz ATragMX - - + + \ No newline at end of file diff --git a/addons/kestrel4500/stringtable.xml b/addons/kestrel4500/stringtable.xml index eeb2995dbb..310884f989 100644 --- a/addons/kestrel4500/stringtable.xml +++ b/addons/kestrel4500/stringtable.xml @@ -1,35 +1,42 @@ - - + + + - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV - Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV + Kestrel 4500NV - Kestrel 4500 Pocket Weather Tracker + Kestrel 4500 Pocket Weather Tracker + Anemomentr skrzydełkowy Kestrel 4500 - Open Kestrel 4500 + Open Kestrel 4500 + Otwórz Kestrel 4500 - Show Kestrel 4500 + Show Kestrel 4500 + Pokaż Kestrel 4500 - Hide Kestrel 4500 + Hide Kestrel 4500 + Ukryj Kestrel 4500 - Open Kestrel 4500 + Open Kestrel 4500 + Otwórz Kestrel 4500 - Show Kestrel 4500 + Show Kestrel 4500 + Pokaż Kestrel 4500 - - + + \ No newline at end of file diff --git a/addons/scopes/stringtable.xml b/addons/scopes/stringtable.xml index 87cbdd7cf5..c04a4e79dc 100644 --- a/addons/scopes/stringtable.xml +++ b/addons/scopes/stringtable.xml @@ -1,33 +1,42 @@  - + - - - "Minor adjustment up - - - "Minor adjustment down - - - "Minor adjustment right - - - "Minor adjustment left - - - Major adjustment up - - - Major adjustment down - - - Major adjustment right - - - Major adjustment left - - - Set zero adjustment - - + + + "Minor adjustment up + Zerowanie powoli w górę + + + "Minor adjustment down + Zerowanie powoli w dół + + + "Minor adjustment right + Zerowanie powoli w prawo + + + "Minor adjustment left + Zerowanie powoli w lewo + + + Major adjustment up + Zerowanie w górę + + + Major adjustment down + Zerowanie w dół + + + Major adjustment right + Zerowanie w prawo + + + Major adjustment left + Zerowanie w lewo + + + Set zero adjustment + Zresetuj wyzerowanie + + \ No newline at end of file diff --git a/addons/weather/stringtable.xml b/addons/weather/stringtable.xml index cd0a3e8445..4827751c6b 100644 --- a/addons/weather/stringtable.xml +++ b/addons/weather/stringtable.xml @@ -1,8 +1,10 @@ - + + Show Wind Info + Pokaż inf. o wietrze - + \ No newline at end of file From 44232987b0660cb6ee53c1fcad3a8d3d5da7c60c Mon Sep 17 00:00:00 2001 From: ulteq Date: Tue, 14 Apr 2015 12:34:27 +0200 Subject: [PATCH 084/246] Commented out deprecated icon paths --- addons/atragmx/RscTitles.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/addons/atragmx/RscTitles.hpp b/addons/atragmx/RscTitles.hpp index b5f1560e3b..8c0a647839 100644 --- a/addons/atragmx/RscTitles.hpp +++ b/addons/atragmx/RscTitles.hpp @@ -116,10 +116,10 @@ class ATragMX_RscListBox { color[]={1,1,1,0.6}; colorActive[]={1,1,1,1}; colorDisabled[]={1,1,1,0.3}; - thumb=QUOTE(PATHTOF(ui\data\igui_scrollbar_thumb_ca.paa)); - arrowFull=QUOTE(PATHTOF(ui\data\igui_arrow_top_active_ca.paa)); - arrowEmpty=QUOTE(PATHTOF(ui\data\igui_arrow_top_ca.paa)); - border=QUOTE(PATHTOF(ui\data\igui_border_scroll_ca.paa)); + //thumb="\ca\ui\data\igui_scrollbar_thumb_ca.paa"; + //arrowFull="\ca\ui\data\igui_arrow_top_active_ca.paa"; + //arrowEmpty="\ca\ui\data\igui_arrow_top_ca.paa"; + //border="\ca\ui\data\igui_border_scroll_ca.paa"; }; class ListScrollBar : ScrollBar { From 1a39005e725987b7fefe40f131630ff8dd5bb32d Mon Sep 17 00:00:00 2001 From: ulteq Date: Tue, 14 Apr 2015 12:52:21 +0200 Subject: [PATCH 085/246] Removed debug output. --- addons/kestrel4500/functions/fnc_measureWindSpeed.sqf | 2 -- 1 file changed, 2 deletions(-) diff --git a/addons/kestrel4500/functions/fnc_measureWindSpeed.sqf b/addons/kestrel4500/functions/fnc_measureWindSpeed.sqf index 7c18499e7d..db4d890977 100644 --- a/addons/kestrel4500/functions/fnc_measureWindSpeed.sqf +++ b/addons/kestrel4500/functions/fnc_measureWindSpeed.sqf @@ -28,8 +28,6 @@ if (missionNamespace getVariable [QEGVAR(advanced_ballistics,enabled), false]) t _windSpeed = (eyePos ACE_player) call FUNC(calculateWindSpeed); }; -hintSilent format["%1, %2", GVAR(MeasuredWindSpeed), _windSpeed]; - if (_windSpeed > 0.3 || {GVAR(MeasuredWindSpeed) > 0.1 && _windSpeed > 0.125}) then { GVAR(MeasuredWindSpeed) = _windSpeed; } else { From 83ce3fa2bda08c8a7fe0342a40a611292046483b Mon Sep 17 00:00:00 2001 From: commy2 Date: Tue, 14 Apr 2015 13:14:37 +0200 Subject: [PATCH 086/246] remove drawline3d --- .../functions/fnc_drawLaserpoint.sqf | 31 ++++++++++++++----- addons/laserpointer/functions/fnc_onDraw.sqf | 2 +- 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/addons/laserpointer/functions/fnc_drawLaserpoint.sqf b/addons/laserpointer/functions/fnc_drawLaserpoint.sqf index 82b989e470..93a421a094 100644 --- a/addons/laserpointer/functions/fnc_drawLaserpoint.sqf +++ b/addons/laserpointer/functions/fnc_drawLaserpoint.sqf @@ -1,6 +1,19 @@ // by commy2 and esteldunedain #include "script_component.hpp" +// init object +/*if (isNil QGVAR(laserdot)) then { + _light = "#lightpoint" createVehicleLocal [0,0,0]; + _light setLightBrightness 10; + _light setLightColor [1,0,0]; + _light setLightAmbient [1,0,0]; + _light setLightDayLight true; + //_light lightAttachObject [GVAR(laserdot), [0,0,0]]; + _light setLightAttenuation [0.04,4,4,0,0.04,0.08]; + + GVAR(laserdot) = _light; +};*/ + EXPLODE_3_PVT(_this,_unit,_range,_isGreen); _p0Pos = _unit modelToWorldVisual (_unit selectionPosition "righthand"); @@ -97,15 +110,15 @@ if (!surfaceIsWater _pL) then { _pL = ASLtoATL _pL; }; -if (call EFUNC(common,ambientBrightness) < 0.2) then { - drawLine3D [ - _p0Pos, - _pL, - [[1,0,0,1], [0,1,0,1]] select _isGreen - ]; -}; +/* +drawLine3D [ + _p0Pos, + _pL, + [[1,0,0,1], [0,1,0,1]] select _isGreen +]; +*/ -_size = 2 * (_range - (positionCameraToWorld [0,0,0] distance _pL)) / _range; +_size = 2 * (_range - (positionCameraToWorld [0,0,0] vectorDistance _pL)) / _range; _camPos = positionCameraToWorld [0,0,0.2]; if (count ([_unit, "FIRE"] intersect [_camPos, _pL]) > 0) exitWith {}; @@ -116,6 +129,8 @@ if (!surfaceIsWater _camPos) then { _camPos = ATLtoASL _camPos; }; if ( terrainIntersectASL [_camPos, _pL2]) exitWith {}; if ( lineIntersects [_camPos, _pL2]) exitWith {}; +//GVAR(laserdot) setPos _pL; + drawIcon3D [ format ["\a3\weapons_f\acc\data\collimdot_%1_ca.paa", ["red", "green"] select _isGreen], [[1,0.25,0.25,0.5*_brightness], [0.25,1,0.25,0.5*_brightness]] select _isGreen, diff --git a/addons/laserpointer/functions/fnc_onDraw.sqf b/addons/laserpointer/functions/fnc_onDraw.sqf index 6fa7275531..0e4ddf981a 100644 --- a/addons/laserpointer/functions/fnc_onDraw.sqf +++ b/addons/laserpointer/functions/fnc_onDraw.sqf @@ -28,7 +28,7 @@ _isIR = _isIR == 1; _laserID = ["ACE_acc_pointer_red", "ACE_acc_pointer_green"] find _laser; if (_laserID > -1 && {_x isFlashlightOn _weapon}) then { - [_x, 30, _laserID == 1 || _isIR] call FUNC(drawLaserpoint); + [_x, 50, _laserID == 1 || _isIR] call FUNC(drawLaserpoint); }; } forEach GVAR(nearUnits); From f89e02a5ca15b9ea2aba1e9c008357c389d78c9c Mon Sep 17 00:00:00 2001 From: commy2 Date: Tue, 14 Apr 2015 13:24:17 +0200 Subject: [PATCH 087/246] fix no laser in ffv slots --- addons/laserpointer/XEH_postInit.sqf | 26 ++++++++++---------------- addons/laserpointer/initKeybinds.sqf | 13 +++++++++++++ 2 files changed, 23 insertions(+), 16 deletions(-) create mode 100644 addons/laserpointer/initKeybinds.sqf diff --git a/addons/laserpointer/XEH_postInit.sqf b/addons/laserpointer/XEH_postInit.sqf index eade50d670..38fc35f262 100644 --- a/addons/laserpointer/XEH_postInit.sqf +++ b/addons/laserpointer/XEH_postInit.sqf @@ -11,11 +11,16 @@ GVAR(nearUnits) = []; // @todo. Maybe move to common? [{ private "_nearUnits"; - _nearUnits = nearestObjects [positionCameraToWorld [0,0,0], ["CAManBase"], 50]; // when moving this, search also for units inside vehicles. currently breaks the laser in FFV + _nearUnits = []; - if (count _nearUnits > 10) then { - _nearUnits resize 10; - }; + { + _nearUnits append crew _x; + + if (count _nearUnits > 10) exitWith { + _nearUnits resize 10; + }; + + } forEach nearestObjects [positionCameraToWorld [0,0,0], ["AllVehicles"], 50]; // when moving this, search also for units inside vehicles. currently breaks the laser in FFV GVAR(nearUnits) = _nearUnits; @@ -25,15 +30,4 @@ addMissionEventHandler ["Draw3D", { call FUNC(onDraw); }]; -// init keybinds -["ACE3", QGVAR(switchLaserLightMode), localize "STR_ACE_Laserpointer_switchLaserLight", -{ - // Conditions: canInteract - if !([ACE_player, objNull, ["isNotInside"]] call EFUNC(common,canInteractWith)) exitWith {false}; - // Conditions: specific - if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false}; - - [ACE_player, currentWeapon ACE_player] call FUNC(switchLaserLightMode); - true -}, -{false}, [38, [false, true, false]], false] call CBA_fnc_addKeybind; +#include "initKeybinds.sqf" diff --git a/addons/laserpointer/initKeybinds.sqf b/addons/laserpointer/initKeybinds.sqf new file mode 100644 index 0000000000..04516f0757 --- /dev/null +++ b/addons/laserpointer/initKeybinds.sqf @@ -0,0 +1,13 @@ +// by commy2 + +["ACE3", QGVAR(switchLaserLightMode), localize "STR_ACE_Laserpointer_switchLaserLight", +{ + // Conditions: canInteract + if !([ACE_player, objNull, ["isNotInside"]] call EFUNC(common,canInteractWith)) exitWith {false}; + // Conditions: specific + if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false}; + + [ACE_player, currentWeapon ACE_player] call FUNC(switchLaserLightMode); + true +}, +{false}, [38, [false, true, false]], false] call CBA_fnc_addKeybind; From c827c724128aacf65dbb8008ae5ad28da4fb159f Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Tue, 14 Apr 2015 10:22:26 -0300 Subject: [PATCH 088/246] AB and Kestrel: Move macros from defines.h to script_component --- addons/advanced_ballistics/functions/defines.h | 11 ----------- .../functions/fnc_calculateAirDensity.sqf | 3 +-- .../fnc_calculateAtmosphericCorrection.sqf | 1 - .../functions/fnc_handleFired.sqf | 9 ++++----- addons/advanced_ballistics/script_component.hpp | 14 +++++++++++++- addons/kestrel4500/functions/defines.h | 1 - addons/kestrel4500/functions/fnc_collectData.sqf | 3 +-- .../functions/fnc_generateOutputData.sqf | 3 +-- .../kestrel4500/functions/fnc_measureWindSpeed.sqf | 1 - addons/kestrel4500/script_component.hpp | 4 +++- 10 files changed, 23 insertions(+), 27 deletions(-) delete mode 100644 addons/advanced_ballistics/functions/defines.h delete mode 100644 addons/kestrel4500/functions/defines.h diff --git a/addons/advanced_ballistics/functions/defines.h b/addons/advanced_ballistics/functions/defines.h deleted file mode 100644 index 0aecbca287..0000000000 --- a/addons/advanced_ballistics/functions/defines.h +++ /dev/null @@ -1,11 +0,0 @@ -#define GRAVITY 9.80665 -#define ABSOLUTE_ZERO_IN_CELSIUS -273.15 -#define KELVIN(t) (t - ABSOLUTE_ZERO_IN_CELSIUS) -#define CELSIUS(t) (t + ABSOLUTE_ZERO_IN_CELSIUS) -#define UNIVERSAL_GAS_CONSTANT 8.314 -#define WATER_VAPOR_MOLAR_MASS 0.018016 -#define DRY_AIR_MOLAR_MASS 0.028964 -#define SPECIFIC_GAS_CONSTANT_DRY_AIR 287.058 -#define STD_AIR_DENSITY_ICAO 1.22498 -#define STD_AIR_DENSITY_ASM 1.20885 -#define GET_TEMPERATURE_AT_HEIGHT(h) (EGVAR(weather,currentTemperature) - 0.0065 * (h)) \ No newline at end of file diff --git a/addons/advanced_ballistics/functions/fnc_calculateAirDensity.sqf b/addons/advanced_ballistics/functions/fnc_calculateAirDensity.sqf index 73ebc0f94a..ea7a77e837 100644 --- a/addons/advanced_ballistics/functions/fnc_calculateAirDensity.sqf +++ b/addons/advanced_ballistics/functions/fnc_calculateAirDensity.sqf @@ -15,7 +15,6 @@ * None */ #include "script_component.hpp" -#include "defines.h" private ["_temperature", "_pressure", "_relativeHumidity"]; _temperature = _this select 0; // in C @@ -30,7 +29,7 @@ if (_relativeHumidity > 0) then { _pSat = 6.1078 * 10 ^ ((7.5 * _temperature) / (_temperature + 237.3)); _vaporPressure = _relativeHumidity * _pSat; _partialPressure = _pressure - _vaporPressure; - + (_partialPressure * DRY_AIR_MOLAR_MASS + _vaporPressure * WATER_VAPOR_MOLAR_MASS) / (UNIVERSAL_GAS_CONSTANT * KELVIN(_temperature)) } else { _pressure / (SPECIFIC_GAS_CONSTANT_DRY_AIR * KELVIN(_temperature)) diff --git a/addons/advanced_ballistics/functions/fnc_calculateAtmosphericCorrection.sqf b/addons/advanced_ballistics/functions/fnc_calculateAtmosphericCorrection.sqf index 0bd6ae6001..02e849399e 100644 --- a/addons/advanced_ballistics/functions/fnc_calculateAtmosphericCorrection.sqf +++ b/addons/advanced_ballistics/functions/fnc_calculateAtmosphericCorrection.sqf @@ -16,7 +16,6 @@ * Public: No */ #include "script_component.hpp" -#include "defines.h" private ["_ballisticCoefficient", "_temperature", "_pressure", "_relativeHumidity", "_atmosphereModel", "_airDensity"]; _ballisticCoefficient = _this select 0; diff --git a/addons/advanced_ballistics/functions/fnc_handleFired.sqf b/addons/advanced_ballistics/functions/fnc_handleFired.sqf index 989710019e..d628f012ee 100644 --- a/addons/advanced_ballistics/functions/fnc_handleFired.sqf +++ b/addons/advanced_ballistics/functions/fnc_handleFired.sqf @@ -18,7 +18,6 @@ * Public: No */ #include "script_component.hpp" -#include "defines.h" private ["_unit", "_weapon", "_mode", "_ammo", "_magazine", "_caliber", "_bullet", "_abort", "_index", "_opticsName", "_opticType", "_bulletTraceVisible", "_temperature", "_barometricPressure", "_atmosphereModel", "_bulletMass", "_bulletLength", "_bulletTranslation", "_airFriction", "_dragModel", "_velocityBoundaryData", "_muzzleVelocity", "_muzzleVelocityCoef", "_muzzleVelocityShift", "_bulletVelocity", "_bulletSpeed", "_bulletLength", "_bulletWeight", "_barrelTwist", "_twistDirection", "_stabilityFactor", "_transonicStabilityCoef", "_ACE_Elevation", "_ACE_Windage", "_ID"]; _unit = _this select 0; @@ -153,17 +152,17 @@ if (GVAR(AdvancedAirDragEnabled)) then { #ifdef USE_ADVANCEDBALLISTICS_DLL GVAR(currentbulletID) = (GVAR(currentbulletID) + 1) % 10000; - + "ace_advanced_ballistics" callExtension format["new:%1:%2:%3:%4:%5:%6:%7:%8:%9:%10:%11:%12:%13:%14:%15:%16:%17:%18", GVAR(currentbulletID), _airFriction, _ballisticCoefficients, _velocityBoundaries, _atmosphereModel, _dragModel, _stabilityFactor, _twistDirection, _muzzleVelocity, _transonicStabilityCoef, getPosASL _bullet, EGVAR(weather,Latitude), EGVAR(weather,currentTemperature), EGVAR(weather,Altitude), EGVAR(weather,currentHumidity), overcast, floor(time), time - floor(time)]; - + [{ private ["_index", "_bullet", "_caliber", "_bulletTraceVisible", "_bulletVelocity", "_bulletPosition"]; EXPLODE_4_PVT(_this select 0,_bullet,_caliber,_bulletTraceVisible,_index); - + if (!alive _bullet) exitWith { [_this select 1] call cba_fnc_removePerFrameHandler; }; - + _bulletVelocity = velocity _bullet; _bulletPosition = getPosASL _bullet; diff --git a/addons/advanced_ballistics/script_component.hpp b/addons/advanced_ballistics/script_component.hpp index e398f8869c..273afa2f49 100644 --- a/addons/advanced_ballistics/script_component.hpp +++ b/addons/advanced_ballistics/script_component.hpp @@ -11,4 +11,16 @@ #define DEBUG_SETTINGS DEBUG_SETTINGS_ADVANCEDBALLISTICS #endif -#include "\z\ace\addons\main\script_macros.hpp" \ No newline at end of file +#include "\z\ace\addons\main\script_macros.hpp" + +#define GRAVITY 9.80665 +#define ABSOLUTE_ZERO_IN_CELSIUS -273.15 +#define KELVIN(t) (t - ABSOLUTE_ZERO_IN_CELSIUS) +#define CELSIUS(t) (t + ABSOLUTE_ZERO_IN_CELSIUS) +#define UNIVERSAL_GAS_CONSTANT 8.314 +#define WATER_VAPOR_MOLAR_MASS 0.018016 +#define DRY_AIR_MOLAR_MASS 0.028964 +#define SPECIFIC_GAS_CONSTANT_DRY_AIR 287.058 +#define STD_AIR_DENSITY_ICAO 1.22498 +#define STD_AIR_DENSITY_ASM 1.20885 +#define GET_TEMPERATURE_AT_HEIGHT(h) (EGVAR(weather,currentTemperature) - 0.0065 * (h)) diff --git a/addons/kestrel4500/functions/defines.h b/addons/kestrel4500/functions/defines.h deleted file mode 100644 index bd59c23bd4..0000000000 --- a/addons/kestrel4500/functions/defines.h +++ /dev/null @@ -1 +0,0 @@ -#define GET_TEMPERATURE_AT_HEIGHT(h) (EGVAR(weather,currentTemperature) - 0.0065 * (h)) \ No newline at end of file diff --git a/addons/kestrel4500/functions/fnc_collectData.sqf b/addons/kestrel4500/functions/fnc_collectData.sqf index ef7be60cd8..8ebd4e01d2 100644 --- a/addons/kestrel4500/functions/fnc_collectData.sqf +++ b/addons/kestrel4500/functions/fnc_collectData.sqf @@ -13,7 +13,6 @@ * Public: No */ #include "script_component.hpp" -#include "defines.h" private ["_playerDir", "_windSpeed", "_windDir", "_crosswind", "_headwind", "_humidity", "_temperature", "_humidity", "_barometricPressure", "_altitude"]; @@ -40,7 +39,7 @@ if (GVAR(MinAvgMaxMode) == 1) then { { GVAR(ENTRIES) set [_x, (GVAR(ENTRIES) select _x) + 1]; } forEach [1, 2, 3]; - + // Wind SPD _windSpeed = call FUNC(measureWindSpeed); GVAR(MIN) set [1, (GVAR(MIN) select 1) min abs(_windSpeed)]; diff --git a/addons/kestrel4500/functions/fnc_generateOutputData.sqf b/addons/kestrel4500/functions/fnc_generateOutputData.sqf index 954b886eff..e7679df53f 100644 --- a/addons/kestrel4500/functions/fnc_generateOutputData.sqf +++ b/addons/kestrel4500/functions/fnc_generateOutputData.sqf @@ -13,7 +13,6 @@ * Public: No */ #include "script_component.hpp" -#include "defines.h" private ["_playerDir", "_textTop", "_textCenterBig", "_textCenterLine1Left", "_textCenterLine2Left", "_textCenterLine3Left", "_textCenterLine1Right", "_textCenterLine2Right", "_textCenterLine3Right", "_textInfoLine1", "_textInfoLine2", "_temperature", "_humidity", "_windSpeed", "_windDir", "_newWindSpeed", "_windSource", "_height"]; @@ -57,7 +56,7 @@ switch (GVAR(Menu)) do { _textCenterLine3Left = "Max"; _textCenterLine1Right = "N/A"; _textCenterLine2Right = "N/A"; - _textCenterLine3Right = "N/A"; + _textCenterLine3Right = "N/A"; }; }; case 1: { // Wind SPD diff --git a/addons/kestrel4500/functions/fnc_measureWindSpeed.sqf b/addons/kestrel4500/functions/fnc_measureWindSpeed.sqf index db4d890977..eb718906aa 100644 --- a/addons/kestrel4500/functions/fnc_measureWindSpeed.sqf +++ b/addons/kestrel4500/functions/fnc_measureWindSpeed.sqf @@ -13,7 +13,6 @@ * Public: No */ #include "script_component.hpp" -#include "defines.h" private ["_playerDir", "_windSpeed", "_windDir"]; diff --git a/addons/kestrel4500/script_component.hpp b/addons/kestrel4500/script_component.hpp index 3c4d599c2a..b8db2edb78 100644 --- a/addons/kestrel4500/script_component.hpp +++ b/addons/kestrel4500/script_component.hpp @@ -9,4 +9,6 @@ #define DEBUG_SETTINGS DEBUG_SETTINGS_KESTREL4500 #endif -#include "\z\ace\addons\main\script_macros.hpp" \ No newline at end of file +#include "\z\ace\addons\main\script_macros.hpp" + +#define GET_TEMPERATURE_AT_HEIGHT(h) (EGVAR(weather,currentTemperature) - 0.0065 * (h)) From 128a6f3e0fe3c70920e1ed306908974a54eee44d Mon Sep 17 00:00:00 2001 From: nomisum Date: Tue, 14 Apr 2015 16:09:04 +0200 Subject: [PATCH 089/246] added myself to authors.txt --- AUTHORS.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/AUTHORS.txt b/AUTHORS.txt index 906fc706a4..445156ebe5 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -59,6 +59,7 @@ MarcBook meat Michail Nikolaev nic547 +nomisum oscarmolinadev pokertour rakowozz From 376f9249990c3308892ec2523e7f8ec1a0da949f Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 08:24:13 -0700 Subject: [PATCH 090/246] Finish guidance rewrite. --- addons/missileguidance/CfgAmmo.hpp | 10 +- .../functions/fnc_attackProfile_DIR.sqf | 52 +++++++- .../missileguidance/functions/fnc_fired.sqf | 2 +- .../functions/fnc_guidancePFH.sqf | 124 ++++++++++-------- 4 files changed, 125 insertions(+), 63 deletions(-) diff --git a/addons/missileguidance/CfgAmmo.hpp b/addons/missileguidance/CfgAmmo.hpp index 050a23f5fd..7ad1be1fd5 100644 --- a/addons/missileguidance/CfgAmmo.hpp +++ b/addons/missileguidance/CfgAmmo.hpp @@ -40,12 +40,12 @@ class CfgAmmo { trackLead = 0; // Begin ACE guidance Configs - class ACE_MissileGuidance { + class ADDON { enabled = 1; - minDeflection = 0.005; // Minium flap deflection for guidance - maxDeflection = 0.025; // Maximum flap deflection for guidance - incDeflection = 0.005; // The incrmeent in which deflection adjusts. + minDeflection = 0.0005; // Minium flap deflection for guidance + maxDeflection = 0.0025; // Maximum flap deflection for guidance + incDeflection = 0.0005; // The incrmeent in which deflection adjusts. //minDeflection = 0.005; //maxDeflection = 0.5; //incDeflection = 0.005; @@ -110,7 +110,7 @@ class CfgAmmo { //trackLead = 0; // Begin ACE guidance Configs - class ACE_MissileGuidance { + class ADDON { enabled = 1; minDeflection = 0.005; // Minium flap deflection for guidance diff --git a/addons/missileguidance/functions/fnc_attackProfile_DIR.sqf b/addons/missileguidance/functions/fnc_attackProfile_DIR.sqf index 498b754287..90ec75ad7f 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_DIR.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_DIR.sqf @@ -1,4 +1,54 @@ //#define DEBUG_MODE_FULL #include "script_component.hpp" -_this call FUNC(attackProfile_LIN); \ No newline at end of file +EXPLODE_7_PVT(((_this select 1) select 0),_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); +private["_targetPos", "_projectilePos", "_target", "_seekerTargetPos", "_launchParams", "_targetLaunchParams"]; +private["_distanceToTarget", "_distanceToShooter", "_addHeight", "_returnTargetPos"]; +_seekerTargetPos = _this select 0; +_launchParams = _this select 1; + +_target = _launchParams select 0; +_targetLaunchParams = _launchParams select 1; + +_shooterPos = getPosASL _shooter; +_projectilePos = getPosASL _projectile; + +_distanceToTarget = _projectilePos vectorDistance _seekerTargetPos; +_distanceToShooter = _projectilePos vectorDistance _shooterPos; + +TRACE_2("", _distanceToTarget, _distanceToShooter); + +// Add height depending on distance for compensate +_addHeight = [0,0,0]; + +// Always climb an arc on initial launch if we are close to the round +if( ((ASLtoATL _projectilePos) select 2) < 5 && _distanceToShooter < 15) then { + _addHeight = _addHeight vectorAdd [0,0,_distanceToTarget]; +} else { + // If we are below the target, increase the climbing arc + if((_projectilePos select 2) < (_seekerTargetPos select 2) && _distanceToTarget > 100) then { + _addHeight = _addHeight vectorAdd [0,0, ((_seekerTargetPos select 2) - (_projectilePos select 2))]; + }; +}; + +// Handle arcing terminal low for high decent +if( (_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget < 100) then { + _addHeight = _addHeight vectorDiff [0,0, ((_projectilePos select 2) - (_seekerTargetPos select 2)) * 0.5]; +} else { + if((_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget > 100) then { + _addHeight = _addHeight vectorAdd [0,0, _distanceToTarget*0.02]; + }; +}; + + + +TRACE_3("", _distanceToTarget,_distanceToShooter,_addHeight); + + _returnTargetPos = _seekerTargetPos vectorAdd _addHeight; + +#ifdef DEBUG_MODE_FULL +drawLine3D [(ASLtoATL _returnTargetPos) vectorAdd _addHeight, ASLtoATL _returnTargetPos, [0,1,0,1]]; +#endif + +TRACE_1("Adjusted target position", _returnTargetPos); +_returnTargetPos; \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_fired.sqf b/addons/missileguidance/functions/fnc_fired.sqf index 0622ac9342..8b90b2353f 100644 --- a/addons/missileguidance/functions/fnc_fired.sqf +++ b/addons/missileguidance/functions/fnc_fired.sqf @@ -13,7 +13,7 @@ PARAMS_7(_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); // Bail on not missile if(! (_ammo isKindOf "MissileBase") ) exitWith { false }; -_config = configFile >> "CfgAmmo" >> _ammo >> "ACE_MissileGuidance"; +_config = configFile >> "CfgAmmo" >> _ammo >> QUOTE(ADDON); _enabled = getNumber ( _config >> "enabled"); // Bail if guidance is not enabled diff --git a/addons/missileguidance/functions/fnc_guidancePFH.sqf b/addons/missileguidance/functions/fnc_guidancePFH.sqf index 5b69b2fd8c..a461cf9163 100644 --- a/addons/missileguidance/functions/fnc_guidancePFH.sqf +++ b/addons/missileguidance/functions/fnc_guidancePFH.sqf @@ -1,16 +1,20 @@ -#define DEBUG_MODE_FULL +//#define DEBUG_MODE_FULL #include "script_component.hpp" #define TIMESTEP_FACTOR 0.01 -private["_args", "_stateParams", "_launchParams", "_targetLaunchParams", "_config", "_flightParams", "_seekerParams", "_seekerTargetPos"]; -private["_lastRunTime", "_runtimeDelta", "_profileAdjustedTargetPos", "_targetVectorSeeker", "_targetVector"]; -private["_minDeflection", "_maxDeflection", "_incDeflection", "_adjustTime"]; -private["_yVec", "_zVec", "_xVec"]; - +private["_launchParams", "_targetLaunchParams", "_flightParams", "_seekerParams", "_stateParams"]; +private["_lastRunTime", "_runtimeDelta", "_adjustTime", "_args", "_seekerTargetPos", "_projectilePos"]; +private["_profileAdjustedTargetPos", "_incDeflection", "_minDeflection", "_maxDeflection"]; +private["_targetVector", "_adjustVector", "_finalAdjustVector", "_changeVector", "_pitch", "_yaw", "_roll"]; + _args = _this select 0; EXPLODE_7_PVT((_args select 0),_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); +if(!alive _projectile || isNull _projectile || isNull _shooter) exitWith { + [(_this select 1)] call cba_fnc_removePerFrameHandler; +}; + _launchParams = _args select 1; _targetLaunchParams = _launchParams select 1; _flightParams = _args select 2; @@ -19,9 +23,9 @@ _seekerParams = _args select 3; _stateParams = _args select 4; _lastRunTime = _stateParams select 0; - _runtimeDelta = diag_tickTime - _lastRunTime; _adjustTime = 1; + if(accTime > 0) then { _adjustTime = 1/accTime; _adjustTime = _adjustTime * (_runtimeDelta / TIMESTEP_FACTOR); @@ -29,61 +33,69 @@ if(accTime > 0) then { } else { _adjustTime = 0; }; -_config = configFile >> "CfgAmmo" >> _ammo >> "ACE_MissileGuidance"; -if(!alive _projectile || isNull _projectile || isNull _shooter) exitWith { - [(_this select 1)] call cba_fnc_removePerFrameHandler; -}; +_minDeflection = ((_flightParams select 0) - ((_flightParams select 0) * _adjustTime)) max 0; +_maxDeflection = (_flightParams select 1) * _adjustTime; +_incDeflection = _flightParams select 2; -// TODO: placeholder for "last seek target position" +_projectilePos = getPosASL _projectile; + +// @TODO: placeholder for "last seek target position" +// Last target pos should be optional based on the seeker unit _seekerTargetPos = [ [0,0,0], _args, (_stateParams select 1)] call FUNC(doSeekerSearch); -if(!isNil "_seekerTargetPos") then { - - _profileAdjustedTargetPos = [_seekerTargetPos,_args, (_stateParams select 2)] call FUNC(doAttackProfile); - - _minDeflection = ((_flightParams select 0) - ((_flightParams select 0) * _adjustTime)) max 0; - _maxDeflection = (_flightParams select 1) * _adjustTime; - _incDeflection = _flightParams select 2; - - _projectilePos = getPosASL _projectile; - - _targetVector = _projectile worldToModelVisual _profileAdjustedTargetPos; - _targetVectorSeeker = [0,0,0] vectorFromTo _targetVector; - TRACE_1("", _targetVectorSeeker, _targetVector); - - private["_yaw", "_pitch"]; - _yaw = 0; - _pitch = 0; - - if((_targetVectorSeeker select 0) < 0) then { - _yaw = - ( (_minDeflection max (abs(_targetVector select 0) min _maxDeflection) ) ); - } else { - if((_targetVectorSeeker select 0) > 0) then { - _yaw = ( (_minDeflection max ((_targetVector select 0) min _maxDeflection) ) ); - }; +if(isNil "_seekerTargetPos") then { + _seekerTargetPos = _seekerTargetPos vectorAdd ((velocity _projectile) vectorMultiply 5); +} else { + if( (vectorMagnitude _seekerTargetPos) == 0) then { + _seekerTargetPos = _seekerTargetPos vectorAdd ((velocity _projectile) vectorMultiply 5); }; - if((_targetVectorSeeker select 2) < 0) then { - _pitch = - ( (_minDeflection max (abs(_targetVector select 2) min _maxDeflection) ) ); - } else { - if((_targetVectorSeeker select 2) > 0) then { - _pitch = ( (_minDeflection max ((_targetVector select 2) min _maxDeflection) ) ); - }; - }; - - if(accTime > 0) then { - private["_outVector", "_vectorTo"]; - _finalVector = _projectilePos vectorFromTo _profileAdjustedTargetPos; - _projectile setVectorDirAndUp [_finalVector, vectorUp _projectile]; - }; - -#ifdef DEBUG_MODE_FULL - drawIcon3D ["\a3\ui_f\data\IGUI\Cfg\Cursors\selectover_ca.paa", [1,1,1,1], ASLtoATL _projectilePos, 0.75, 0.75, 0, str _vectorTo, 1, 0.025, "TahomaB"]; - drawLine3D [ASLtoATL _projectilePos, ASLtoATL _profileAdjustedTargetPos, [1,0,0,1]]; - - hintSilent format["d: %1", _distanceToTarget]; -#endif }; +_profileAdjustedTargetPos = [_seekerTargetPos,_args, (_stateParams select 2)] call FUNC(doAttackProfile); +_targetVector = _projectilePos vectorFromTo _profileAdjustedTargetPos; +_adjustVector = _targetVector vectorDiff (vectorDir _projectile); + +_yaw = 0; +_pitch = 0; +_roll = 0; +if((_adjustVector select 0) < 0) then { + _yaw = - ( (_minDeflection max (abs(_adjustVector select 0) min _maxDeflection) ) ); +} else { + if((_adjustVector select 0) > 0) then { + _yaw = ( (_minDeflection max ((_adjustVector select 0) min _maxDeflection) ) ); + }; +}; +if((_adjustVector select 1) < 0) then { + _roll = - ( (_minDeflection max (abs(_adjustVector select 1) min _maxDeflection) ) ); +} else { + if((_adjustVector select 1) > 0) then { + _roll = ( (_minDeflection max ((_adjustVector select 1) min _maxDeflection) ) ); + }; +}; +if((_adjustVector select 2) < 0) then { + _pitch = - ( (_minDeflection max (abs(_adjustVector select 2) min _maxDeflection) ) ); +} else { + if((_adjustVector select 2) > 0) then { + _pitch = ( (_minDeflection max ((_adjustVector select 2) min _maxDeflection) ) ); + }; +}; +_finalAdjustVector = [_yaw, _roll, _pitch]; +TRACE_2("", _pitch, _yaw); +TRACE_4("", _targetVector, _targetRelativeVector, _adjustVector, _finalAdjustVector); + +if(accTime > 0) then { + _changeVector = (vectorDir _projectile) vectorAdd _finalAdjustVector; + //_changeVector = (vectorDir _projectile) vectorAdd _adjustVector; // Test direct to target + _projectile setVectorDirAndUp [_changeVector, vectorUp _projectile]; +}; + +#ifdef DEBUG_MODE_FULL +drawIcon3D ["\a3\ui_f\data\IGUI\Cfg\Cursors\selectover_ca.paa", [1,1,1,1], ASLtoATL _projectilePos, 0.75, 0.75, 0, str _vectorTo, 1, 0.025, "TahomaB"]; +drawLine3D [ASLtoATL _projectilePos, ASLtoATL _profileAdjustedTargetPos, [1,0,0,1]]; + +hintSilent format["d: %1", _distanceToTarget]; +#endif + _stateParams set[0, diag_tickTime]; _args set[4, _stateParams]; From c436541f1c163eaca68380cf007e01b805dc74a7 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 09:36:39 -0700 Subject: [PATCH 091/246] Reworked, fun fun. --- addons/missileguidance/CfgAmmo.hpp | 10 +++++----- addons/missileguidance/XEH_pre_init.sqf | 1 + .../functions/fnc_attackProfile_TOP.sqf | 4 ++-- .../functions/fnc_changeMissileDirection.sqf | 11 +++++++++++ addons/missileguidance/functions/fnc_guidancePFH.sqf | 3 +-- 5 files changed, 20 insertions(+), 9 deletions(-) create mode 100644 addons/missileguidance/functions/fnc_changeMissileDirection.sqf diff --git a/addons/missileguidance/CfgAmmo.hpp b/addons/missileguidance/CfgAmmo.hpp index 7ad1be1fd5..ebff1a65ae 100644 --- a/addons/missileguidance/CfgAmmo.hpp +++ b/addons/missileguidance/CfgAmmo.hpp @@ -43,8 +43,8 @@ class CfgAmmo { class ADDON { enabled = 1; - minDeflection = 0.0005; // Minium flap deflection for guidance - maxDeflection = 0.0025; // Maximum flap deflection for guidance + minDeflection = 0.00025; // Minium flap deflection for guidance + maxDeflection = 0.00025; // Maximum flap deflection for guidance incDeflection = 0.0005; // The incrmeent in which deflection adjusts. //minDeflection = 0.005; //maxDeflection = 0.5; @@ -113,9 +113,9 @@ class CfgAmmo { class ADDON { enabled = 1; - minDeflection = 0.005; // Minium flap deflection for guidance - maxDeflection = 0.25; // Maximum flap deflection for guidance - incDeflection = 0.005; // The incrmeent in which deflection adjusts. + minDeflection = 0.00005; // Minium flap deflection for guidance + maxDeflection = 0.025; // Maximum flap deflection for guidance + incDeflection = 0.00005; // The incrmeent in which deflection adjusts. //minDeflection = 0.005; //maxDeflection = 0.5; //incDeflection = 0.005; diff --git a/addons/missileguidance/XEH_pre_init.sqf b/addons/missileguidance/XEH_pre_init.sqf index 403d6245ca..4a5beaa329 100644 --- a/addons/missileguidance/XEH_pre_init.sqf +++ b/addons/missileguidance/XEH_pre_init.sqf @@ -2,6 +2,7 @@ PREP(rotateVectLineGetMap); PREP(rotateVectLine); +PREP(changeMissileDirection); PREP(checkSeekerAngle); PREP(checkLos); diff --git a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf index fc9afed104..4e83e046ff 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf @@ -1,4 +1,4 @@ -#define DEBUG_MODE_FULL +//#define DEBUG_MODE_FULL #include "script_component.hpp" #define STAGE_LAUNCH 1 @@ -64,7 +64,7 @@ switch( (_state select 0) ) do { }; case STAGE_TERMINAL: { TRACE_1("STAGE_TERMINAL",""); - + //_returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget * 0.02]; }; }; diff --git a/addons/missileguidance/functions/fnc_changeMissileDirection.sqf b/addons/missileguidance/functions/fnc_changeMissileDirection.sqf new file mode 100644 index 0000000000..fda7ba9d07 --- /dev/null +++ b/addons/missileguidance/functions/fnc_changeMissileDirection.sqf @@ -0,0 +1,11 @@ +#include "script_component.hpp" +private ["_projectile", "_v", "_l", "_r"]; + +_projectile = _this select 0; +_v = _this select 1; + +_l = sqrt ((_v select 0) ^ 2 + (_v select 1) ^ 2); +_r = -(_v select 2) / _l; + +_projectile setVectorDirAndUp [ _v, [(_v select 0) * _r,(_v select 1) * _r, _l] ]; +_projectile setVelocity (_v vectorMultiply (vectorMagnitude (velocity _projectile))); \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_guidancePFH.sqf b/addons/missileguidance/functions/fnc_guidancePFH.sqf index a461cf9163..f7fd56c164 100644 --- a/addons/missileguidance/functions/fnc_guidancePFH.sqf +++ b/addons/missileguidance/functions/fnc_guidancePFH.sqf @@ -85,8 +85,7 @@ TRACE_4("", _targetVector, _targetRelativeVector, _adjustVector, _finalAdjustVec if(accTime > 0) then { _changeVector = (vectorDir _projectile) vectorAdd _finalAdjustVector; - //_changeVector = (vectorDir _projectile) vectorAdd _adjustVector; // Test direct to target - _projectile setVectorDirAndUp [_changeVector, vectorUp _projectile]; + [_projectile, _changeVector] call FUNC(changeMissileDirection); }; #ifdef DEBUG_MODE_FULL From 6f3ce278942a40cfa80f6ab007e03427f6bf6605 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 10:25:08 -0700 Subject: [PATCH 092/246] Javelin refined, working, locking fixes, UI fixes, missile guidance rewrite --- addons/javelin/RscInGameUI.hpp | 44 ++++-------- .../javelin/functions/fnc_cycleFireMode.sqf | 8 +-- addons/javelin/functions/fnc_onOpticDraw.sqf | 30 +++++--- addons/javelin/script_component.hpp | 2 +- addons/missileguidance/ACE_GuidanceConfig.hpp | 8 +-- addons/missileguidance/CfgAmmo.hpp | 4 +- addons/missileguidance/XEH_pre_init.sqf | 6 +- .../functions/fnc_attackProfile_AIR.sqf | 52 +------------- .../functions/fnc_attackProfile_DIR.sqf | 52 +------------- .../functions/fnc_attackProfile_JAV_DIR.sqf | 69 +++++++++++++++++++ ..._TOP.sqf => fnc_attackProfile_JAV_TOP.sqf} | 0 .../functions/fnc_attackProfile_LIN.sqf | 6 -- .../functions/fnc_attackProfile_PYM.sqf | 4 -- .../functions/fnc_checkSeekerAngle.sqf | 2 +- 14 files changed, 121 insertions(+), 166 deletions(-) create mode 100644 addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf rename addons/missileguidance/functions/{fnc_attackProfile_TOP.sqf => fnc_attackProfile_JAV_TOP.sqf} (100%) delete mode 100644 addons/missileguidance/functions/fnc_attackProfile_PYM.sqf diff --git a/addons/javelin/RscInGameUI.hpp b/addons/javelin/RscInGameUI.hpp index 8c73f3d8d1..8b33c95c01 100644 --- a/addons/javelin/RscInGameUI.hpp +++ b/addons/javelin/RscInGameUI.hpp @@ -12,20 +12,10 @@ class RscLine; class RscInGameUI { class ACE_RscOptics_javelin { idd = 300; - controls[] = { "ACE_javelin_elements_group", "CA_Distance", "ACE_Targeting" }; //, "ACE_TargetingConstrains", "ACE_TargetingGate", "ACE_TargetingLines"}; + 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];"; - class CA_Distance: RscOpticsValue { - idc = 151; - sizeEx = "0"; - colorText[] = {0,0,0,0}; - x = 0; - y = 0; - w = 0; - h = 0; - }; - class ACE_javelin_elements_group: RscControlsGroup { x = "SafezoneX"; @@ -45,6 +35,16 @@ class RscInGameUI { height = 0.001; }; class Controls { + class CA_Distance: RscOpticsValue { + idc = 151; + sizeEx = "0"; + colorText[] = {0,0,0,0}; + x = 0; + y = 0; + w = 0; + h = 0; + }; + class ACE_javelin_Day_mode_off: RscPicture { idc = 1001; x = "(SafezoneX+(SafezoneW -SafezoneH*3/4)/2)+ (0.03/4)*3*SafezoneH - SafezoneX"; @@ -58,7 +58,7 @@ class RscInGameUI { idc = 160; colorText[] = {0.2941,0.8745,0.2157,1}; }; - class ACE_javelin_WFOV_mode_off: ACE_javelin_Day_mode_off { + class CA_Javelin_WFOV_mode_off : ACE_javelin_Day_mode_off { idc = 1004; x = "(SafezoneX+(SafezoneW -SafezoneH*3/4)/2)+ (0.307/4)*3*SafezoneH - SafezoneX"; text = "\A3\ui_f\data\igui\rscingameui\rscoptics_titan\wfov_co.paa"; @@ -81,13 +81,6 @@ class RscInGameUI { height = 0.001; }; class Controls { - class ACE_javelin_WFOV_mode: ACE_javelin_WFOV_mode_off { - idc = -1; - y = "0.031*SafezoneH - SafezoneY"; - x = "((SafezoneW -SafezoneH*3/4)/2)+ (0.307/4)*3*SafezoneH - SafezoneX"; - colorText[] = {0.2941,0.8745,0.2157,1}; - }; - /* class StadiaL: RscLine { x = "0.4899*SafezoneW - SafezoneX"; y = "0.171*SafezoneH - SafezoneY"; @@ -130,10 +123,10 @@ class RscInGameUI { h = 0; colorText[] = {0.2941,0.8745,0.2157,1}; }; - */ + }; }; - class ACE_javelin_NFOV_mode_off: ACE_javelin_Day_mode_off { + class CA_Javelin_NFOV_mode_off: ACE_javelin_Day_mode_off { idc = 1003; x = "(SafezoneX+(SafezoneW -SafezoneH*3/4)/2)+ (0.586/4)*3*SafezoneH - SafezoneX"; text = "\A3\ui_f\data\igui\rscingameui\rscoptics_titan\nfov_co.paa"; @@ -156,13 +149,6 @@ class RscInGameUI { height = 0.001; }; class Controls { - class ACE_javelin_NFOV_mode: ACE_javelin_NFOV_mode_off { - idc = 699003; - x = "((SafezoneW -SafezoneH*3/4)/2)+ (0.586/4)*3*SafezoneH - SafezoneX"; - y = "0.031*SafezoneH - SafezoneY"; - colorText[] = {0.2941,0.8745,0.2157,1}; - }; - /* class StadiaL: RscLine { x = "0.4788*SafezoneW - SafezoneX"; y = "0.171*SafezoneH - SafezoneY"; @@ -205,7 +191,7 @@ class RscInGameUI { h = "0.1895*SafezoneH"; colorText[] = {0.2941,0.8745,0.2157,1}; }; - */ + }; }; diff --git a/addons/javelin/functions/fnc_cycleFireMode.sqf b/addons/javelin/functions/fnc_cycleFireMode.sqf index 4fed8e05cc..2245bb71e5 100644 --- a/addons/javelin/functions/fnc_cycleFireMode.sqf +++ b/addons/javelin/functions/fnc_cycleFireMode.sqf @@ -4,10 +4,10 @@ TRACE_1("enter", _this); private["_player", "_currentFireMode"]; -_currentFireMode = ACE_player getVariable["ace_missileguidance_attackProfile", "TOP"]; -if(_currentFireMode == "LIN") then { - _currentFireMode = "TOP"; +_currentFireMode = ACE_player getVariable["ace_missileguidance_attackProfile", "JAV_TOP"]; +if(_currentFireMode == "JAV_DIR") then { + _currentFireMode = "JAV_TOP"; } else { - _currentFireMode = "LIN"; + _currentFireMode = "JAV_DIR"; }; ACE_player setVariable["ace_missileguidance_attackProfile", _currentFireMode, false]; diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index 1694702f98..049a3f8843 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -3,9 +3,8 @@ TRACE_1("enter", _this); #define __TRACKINTERVAL 0 // how frequent the check should be. -#define __LOCKONTIME 3.0 // Lock on won't occur sooner -#define __LOCKONTIMERANDOM 0.3 // Deviation in lock on time -#define __SENSORSQUARE 1 // Locking on sensor square side in angles +#define __LOCKONTIME 3 // Lock on won't occur sooner +#define __LOCKONTIMERANDOM 2 // Deviation in lock on time #define __OffsetX ((ctrlPosition __JavelinIGUITargetingLineV) select 0) - 0.5 #define __OffsetY ((ctrlPosition __JavelinIGUITargetingLineH) select 1) - 0.5 @@ -113,10 +112,11 @@ if (isNull _newTarget) then { __JavelinIGUITargetingLines ctrlShow false; __JavelinIGUITargetingConstraints ctrlShow false; - ACE_player setVariable ["ace_missileguidance_target",nil, false]; + ACE_player setVariable ["ace_missileguidance_target",nil, false]; // Disallow fire - //if (ACE_player ammo "Javelin" > 0 || {ACE_player ammo "ACE_Javelin_Direct" > 0}) then {ACE_player setWeaponReloadingTime //[player, "Javelin", 0.2];}; + if (ACE_player ammo (currentWeapon ACE_player) > 0) then { ACE_player setWeaponReloadingTime [player, (currentWeapon ACE_player), 0.2]; }; + } else { if (_newTarget distance ACE_player < 2500 && {(call CBA_fnc_getFoV) select 1 > 9} @@ -131,7 +131,7 @@ if (isNull _newTarget) then { playSound "ACE_Javelin_Locking"; } else { - if(diag_tickTime - _lockTime > __LOCKONTIME) then { + if(diag_tickTime - _lockTime > __LOCKONTIME + (random __LOCKONTIMERANDOM)) then { TRACE_2("LOCKED!", _currentTarget, _lockTime); __JavelinIGUISeek ctrlSetTextColor __ColorGreen; @@ -170,6 +170,9 @@ if (isNull _newTarget) then { ACE_player setVariable["ace_missileguidance_target", _currentTarget, false]; + // Allow fire + ACE_player setWeaponReloadingTime [player, (currentWeapon ACE_player), 0]; + if(diag_tickTime > _soundTime) then { playSound "ACE_Javelin_Locked"; _soundTime = diag_tickTime + 0.25; @@ -208,21 +211,26 @@ if (isNull _newTarget) then { playSound "ACE_Javelin_Locking"; _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]; }; }; }; } else { - // Something is wrong with our seek + // No targets found _currentTarget = objNull; - ACE_player setVariable["ace_missileguidance_target", nil, false]; + _lockTime = 0; __JavelinIGUISeek ctrlSetTextColor __ColorGray; __JavelinIGUITargeting ctrlShow false; __JavelinIGUITargetingGate ctrlShow false; __JavelinIGUITargetingLines ctrlShow false; - + __JavelinIGUITargetingConstraints ctrlShow false; + 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]; }; + }; }; //TRACE_2("", _newTarget, _currentTarget); diff --git a/addons/javelin/script_component.hpp b/addons/javelin/script_component.hpp index e313bf8347..7234a1e3d4 100644 --- a/addons/javelin/script_component.hpp +++ b/addons/javelin/script_component.hpp @@ -24,7 +24,7 @@ #define __JavelinIGUISeek (__JavelinIGUI displayCtrl 699000) #define __JavelinIGUITop (__JavelinIGUI displayCtrl 699001) #define __JavelinIGUIDir (__JavelinIGUI displayCtrl 699002) -#define __JavelinIGUINFOV (__JavelinIGUI displayCtrl 699003) +#define __JavelinIGUINFOV (__JavelinIGUI displayCtrl 1003) #define __JavelinIGUIWFOV (__JavelinIGUI displayCtrl 1004) #define __JavelinIGUIRangefinder (__JavelinIGUI displayCtrl 151) diff --git a/addons/missileguidance/ACE_GuidanceConfig.hpp b/addons/missileguidance/ACE_GuidanceConfig.hpp index 4c0122c8e4..f3434fef9b 100644 --- a/addons/missileguidance/ACE_GuidanceConfig.hpp +++ b/addons/missileguidance/ACE_GuidanceConfig.hpp @@ -27,19 +27,19 @@ class GVAR(AttackProfiles) { functionName = QFUNC(attackProfile_HI); }; - class TOP { + class JAV_DIR { name = ""; visualName = ""; description = ""; - functionName = QFUNC(attackProfile_TOP); + functionName = QFUNC(attackProfile_JAV_DIR); }; - class PYM { + class JAV_TOP { name = ""; visualName = ""; description = ""; - functionName = QFUNC(attackProfile_PYM); + functionName = QFUNC(attackProfile_JAV_TOP); }; }; diff --git a/addons/missileguidance/CfgAmmo.hpp b/addons/missileguidance/CfgAmmo.hpp index ebff1a65ae..15782c0c49 100644 --- a/addons/missileguidance/CfgAmmo.hpp +++ b/addons/missileguidance/CfgAmmo.hpp @@ -134,8 +134,8 @@ class CfgAmmo { seekerMaxRange = 2500; // Range from the missile which the seeker can visually search // Attack profile type selection - defaultAttackProfile = "TOP"; - attackProfiles[] = { "TOP", "LIN" }; + defaultAttackProfile = "JAV_TOP"; + attackProfiles[] = { "JAV_TOP", "JAV_DIR" }; }; }; }; \ No newline at end of file diff --git a/addons/missileguidance/XEH_pre_init.sqf b/addons/missileguidance/XEH_pre_init.sqf index 4a5beaa329..8d277bc3b0 100644 --- a/addons/missileguidance/XEH_pre_init.sqf +++ b/addons/missileguidance/XEH_pre_init.sqf @@ -18,10 +18,12 @@ PREP(attackProfile_LIN); PREP(attackProfile_DIR); PREP(attackProfile_MID); PREP(attackProfile_HI); -PREP(attackProfile_TOP); -PREP(attackprofile_PYM); PREP(attackProfile_AIR); +// Javelin profiles +PREP(attackProfile_JAV_DIR); +PREP(attackProfile_JAV_TOP); + // Seeker search functions PREP(seekerType_SALH); PREP(seekerType_Optic); \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_attackProfile_AIR.sqf b/addons/missileguidance/functions/fnc_attackProfile_AIR.sqf index d416b6a9e2..498b754287 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_AIR.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_AIR.sqf @@ -1,54 +1,4 @@ //#define DEBUG_MODE_FULL #include "script_component.hpp" -EXPLODE_7_PVT(((_this select 1) select 0),_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); -private["_targetPos", "_projectilePos", "_target", "_seekerTargetPos", "_launchParams", "_targetLaunchParams"]; -private["_distanceToTarget", "_distanceToShooter", "_addHeight", "_returnTargetPos"]; -_seekerTargetPos = _this select 0; -_launchParams = _this select 1; - -_target = _launchParams select 0; -_targetLaunchParams = _launchParams select 1; - -_shooterPos = getPosASL _shooter; -_projectilePos = getPosASL _projectile; - -_distanceToTarget = _projectilePos vectorDistance _seekerTargetPos; -_distanceToShooter = _projectilePos vectorDistance _shooterPos; - -TRACE_2("", _distanceToTarget, _distanceToShooter); - -// Add height depending on distance for compensate -_addHeight = [0,0,0]; - -// Always climb an arc on initial launch if we are close to the round -if( ((ASLtoATL _projectilePos) select 2) < 5 && _distanceToShooter < 15) then { - _addHeight = _addHeight vectorAdd [0,0,_distanceToTarget]; -} else { - // If we are below the target, increase the climbing arc - if((_projectilePos select 2) < (_seekerTargetPos select 2) && _distanceToTarget > 100) then { - _addHeight = _addHeight vectorAdd [0,0, ((_seekerTargetPos select 2) - (_projectilePos select 2))]; - }; -}; - -// Handle arcing terminal low for high decent -if( (_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget < 100) then { - _addHeight = _addHeight vectorDiff [0,0, ((_projectilePos select 2) - (_seekerTargetPos select 2))]; -} else { - if((_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget > 100) then { - _addHeight = _addHeight vectorAdd [0,0, _distanceToTarget]; - }; -}; - - - -TRACE_3("", _distanceToTarget,_distanceToShooter,_addHeight); - - _returnTargetPos = _seekerTargetPos vectorAdd _addHeight; - -#ifdef DEBUG_MODE_FULL -drawLine3D [(ASLtoATL _returnTargetPos) vectorAdd _addHeight, ASLtoATL _returnTargetPos, [0,1,0,1]]; -#endif - -TRACE_1("Adjusted target position", _returnTargetPos); -_returnTargetPos; \ No newline at end of file +_this call FUNC(attackProfile_LIN); \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_attackProfile_DIR.sqf b/addons/missileguidance/functions/fnc_attackProfile_DIR.sqf index 90ec75ad7f..498b754287 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_DIR.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_DIR.sqf @@ -1,54 +1,4 @@ //#define DEBUG_MODE_FULL #include "script_component.hpp" -EXPLODE_7_PVT(((_this select 1) select 0),_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); -private["_targetPos", "_projectilePos", "_target", "_seekerTargetPos", "_launchParams", "_targetLaunchParams"]; -private["_distanceToTarget", "_distanceToShooter", "_addHeight", "_returnTargetPos"]; -_seekerTargetPos = _this select 0; -_launchParams = _this select 1; - -_target = _launchParams select 0; -_targetLaunchParams = _launchParams select 1; - -_shooterPos = getPosASL _shooter; -_projectilePos = getPosASL _projectile; - -_distanceToTarget = _projectilePos vectorDistance _seekerTargetPos; -_distanceToShooter = _projectilePos vectorDistance _shooterPos; - -TRACE_2("", _distanceToTarget, _distanceToShooter); - -// Add height depending on distance for compensate -_addHeight = [0,0,0]; - -// Always climb an arc on initial launch if we are close to the round -if( ((ASLtoATL _projectilePos) select 2) < 5 && _distanceToShooter < 15) then { - _addHeight = _addHeight vectorAdd [0,0,_distanceToTarget]; -} else { - // If we are below the target, increase the climbing arc - if((_projectilePos select 2) < (_seekerTargetPos select 2) && _distanceToTarget > 100) then { - _addHeight = _addHeight vectorAdd [0,0, ((_seekerTargetPos select 2) - (_projectilePos select 2))]; - }; -}; - -// Handle arcing terminal low for high decent -if( (_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget < 100) then { - _addHeight = _addHeight vectorDiff [0,0, ((_projectilePos select 2) - (_seekerTargetPos select 2)) * 0.5]; -} else { - if((_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget > 100) then { - _addHeight = _addHeight vectorAdd [0,0, _distanceToTarget*0.02]; - }; -}; - - - -TRACE_3("", _distanceToTarget,_distanceToShooter,_addHeight); - - _returnTargetPos = _seekerTargetPos vectorAdd _addHeight; - -#ifdef DEBUG_MODE_FULL -drawLine3D [(ASLtoATL _returnTargetPos) vectorAdd _addHeight, ASLtoATL _returnTargetPos, [0,1,0,1]]; -#endif - -TRACE_1("Adjusted target position", _returnTargetPos); -_returnTargetPos; \ No newline at end of file +_this call FUNC(attackProfile_LIN); \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf b/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf new file mode 100644 index 0000000000..da01b7d900 --- /dev/null +++ b/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf @@ -0,0 +1,69 @@ +//#define DEBUG_MODE_FULL +#include "script_component.hpp" + +#define STAGE_LAUNCH 1 +#define STAGE_CLIMB 2 +#define STAGE_COAST 3 +#define STAGE_TERMINAL 4 + +EXPLODE_7_PVT(((_this select 1) select 0),_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); +private["_targetPos", "_projectilePos", "_target", "_seekerTargetPos", "_launchParams", "_targetLaunchParams"]; +private["_distanceToTarget", "_distanceToShooter", "_addHeight", "_returnTargetPos", "_state"]; +_seekerTargetPos = _this select 0; +_launchParams = _this select 1; + +_target = _launchParams select 0; +_targetLaunchParams = _launchParams select 1; + +_state = _this select 2; +if( (count _state) < 1) then { + _state set[0, STAGE_LAUNCH]; +}; + +_shooterPos = getPosASL _shooter; +_projectilePos = getPosASL _projectile; + +_distanceToTarget = _projectilePos vectorDistance _seekerTargetPos; +_distanceToShooter = _projectilePos vectorDistance _shooterPos; +_distanceShooterToTarget = _shooterPos vectorDistance _seekerTargetPos; + +TRACE_2("", _distanceToTarget, _distanceToShooter); + +// Add height depending on distance for compensate +_returnTargetPos = _seekerTargetPos; + +switch( (_state select 0) ) do { + case STAGE_LAUNCH: { + TRACE_1("STAGE_LAUNCH",""); + if(_distanceToShooter < 10) then { + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*2]; + } else { + _state set[0, STAGE_CLIMB]; + }; + }; + case STAGE_CLIMB: { + TRACE_1("STAGE_CLIMB",""); + _cruisAlt = 60; + if(_distanceShooterToTarget < w) then { + _cruisAlt = 60 * (_distanceShooterToTarget/2000); + TRACE_1("_cruisAlt", _cruisAlt); + }; + + if( ((ASLToATL _projectilePos) select 2) - ((ASLToATL _seekerTargetPos) select 2) >= _cruisAlt) then { + _state set[0, STAGE_TERMINAL]; + } else { + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*2]; + }; + }; + case STAGE_TERMINAL: { + TRACE_1("STAGE_TERMINAL",""); + //_returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget * 0.02]; + }; +}; + +#ifdef DEBUG_MODE_FULL +drawLine3D [(ASLtoATL _returnTargetPos), (ASLtoATL _seekerTargetPos), [0,1,0,1]]; +#endif + +TRACE_1("Adjusted target position", _returnTargetPos); +_returnTargetPos; \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_attackProfile_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf similarity index 100% rename from addons/missileguidance/functions/fnc_attackProfile_TOP.sqf rename to addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf diff --git a/addons/missileguidance/functions/fnc_attackProfile_LIN.sqf b/addons/missileguidance/functions/fnc_attackProfile_LIN.sqf index 90ec75ad7f..bd2998995f 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_LIN.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_LIN.sqf @@ -40,12 +40,6 @@ if( (_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget }; }; - - -TRACE_3("", _distanceToTarget,_distanceToShooter,_addHeight); - - _returnTargetPos = _seekerTargetPos vectorAdd _addHeight; - #ifdef DEBUG_MODE_FULL drawLine3D [(ASLtoATL _returnTargetPos) vectorAdd _addHeight, ASLtoATL _returnTargetPos, [0,1,0,1]]; #endif diff --git a/addons/missileguidance/functions/fnc_attackProfile_PYM.sqf b/addons/missileguidance/functions/fnc_attackProfile_PYM.sqf deleted file mode 100644 index 498b754287..0000000000 --- a/addons/missileguidance/functions/fnc_attackProfile_PYM.sqf +++ /dev/null @@ -1,4 +0,0 @@ -//#define DEBUG_MODE_FULL -#include "script_component.hpp" - -_this call FUNC(attackProfile_LIN); \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf b/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf index 7308ce1723..d85cb01fcd 100644 --- a/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf +++ b/addons/missileguidance/functions/fnc_checkSeekerAngle.sqf @@ -12,7 +12,7 @@ * Boolean */ - #define DEBUG_MODE_FULL +//#define DEBUG_MODE_FULL #include "script_component.hpp" private["_seeker", "_targetPos", "_seekerMaxAngle", "_vectorTo", "_sensorPos", "_vertOk", "_horzOk", "_dir", "_headingPitch"]; From f0940707be43ace67d411de333c1c90c904b5db3 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 10:27:37 -0700 Subject: [PATCH 093/246] Disable locking on unloaded. Closes #539 --- addons/javelin/functions/fnc_onOpticDraw.sqf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index 049a3f8843..e9d3e304ad 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -51,6 +51,10 @@ if ((velocity ACE_player) distance [0,0,0] > 0.5 && {cameraView == "GUNNER"} && // Refresh the firemode [] call FUNC(showFireMode); + +// bail on not loaded +if (ACE_player ammo (currentWeapon ACE_player) == 0) exitWith { }; + _range = parseNumber (ctrlText __JavelinIGUIRangefinder); TRACE_1("Viewing range", _range); if (_range > 50 && {_range < 2500}) then { From fb5b524023294814365ef072fbb88594628c50e3 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 10:39:00 -0700 Subject: [PATCH 094/246] Loosen DAGR curve --- addons/missileguidance/CfgAmmo.hpp | 4 ++-- addons/missileguidance/functions/fnc_attackProfile_LIN.sqf | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/addons/missileguidance/CfgAmmo.hpp b/addons/missileguidance/CfgAmmo.hpp index 15782c0c49..a05ecee9bc 100644 --- a/addons/missileguidance/CfgAmmo.hpp +++ b/addons/missileguidance/CfgAmmo.hpp @@ -44,7 +44,7 @@ class CfgAmmo { enabled = 1; minDeflection = 0.00025; // Minium flap deflection for guidance - maxDeflection = 0.00025; // Maximum flap deflection for guidance + maxDeflection = 0.001; // Maximum flap deflection for guidance incDeflection = 0.0005; // The incrmeent in which deflection adjusts. //minDeflection = 0.005; //maxDeflection = 0.5; @@ -65,7 +65,7 @@ class CfgAmmo { // Attack profile type selection defaultAttackProfile = "LIN"; - attackProfiles[] = { "LIN", "DIR", "MID", "HI", "TOP", "PYM" }; + attackProfiles[] = { "LIN", "DIR", "MID", "HI" }; }; }; diff --git a/addons/missileguidance/functions/fnc_attackProfile_LIN.sqf b/addons/missileguidance/functions/fnc_attackProfile_LIN.sqf index bd2998995f..032ae51791 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_LIN.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_LIN.sqf @@ -16,7 +16,7 @@ _projectilePos = getPosASL _projectile; _distanceToTarget = _projectilePos vectorDistance _seekerTargetPos; _distanceToShooter = _projectilePos vectorDistance _shooterPos; -TRACE_2("", _distanceToTarget, _distanceToShooter); +TRACE_3("", _distanceToTarget, _distanceToShooter, _seekerTargetPos); // Add height depending on distance for compensate _addHeight = [0,0,0]; @@ -40,6 +40,8 @@ if( (_projectilePos select 2) > (_seekerTargetPos select 2) && _distanceToTarget }; }; +_returnTargetPos = _seekerTargetPos vectorAdd _addHeight; + #ifdef DEBUG_MODE_FULL drawLine3D [(ASLtoATL _returnTargetPos) vectorAdd _addHeight, ASLtoATL _returnTargetPos, [0,1,0,1]]; #endif From 1dd41a00ba1e57134719d20d14ccd6429243dcde Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 10:51:53 -0700 Subject: [PATCH 095/246] integration. --- addons/missileguidance/functions/fnc_seekerType_SALH.sqf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/missileguidance/functions/fnc_seekerType_SALH.sqf b/addons/missileguidance/functions/fnc_seekerType_SALH.sqf index 828550aeeb..b6ed8d65a4 100644 --- a/addons/missileguidance/functions/fnc_seekerType_SALH.sqf +++ b/addons/missileguidance/functions/fnc_seekerType_SALH.sqf @@ -6,15 +6,15 @@ _seekerTargetPos = _this select 0; _launchParams = _this select 1; _seekerParams = _launchParams select 3; +_angleFov = _seekerParams select 0; -_laserResult = [(getPosASL _projectile), [ACE_DEFAULT_LASER_WAVELENGTH,ACE_DEFAULT_LASER_WAVELENGTH], ACE_DEFAULT_LASER_CODE] call EFUNC(laser,seekerFindLaserSpot); +_laserResult = [(getPosASL _projectile), (velocity _projectile), _angleFov, [ACE_DEFAULT_LASER_WAVELENGTH,ACE_DEFAULT_LASER_WAVELENGTH], ACE_DEFAULT_LASER_CODE] call EFUNC(laser,seekerFindLaserSpot); _foundTargetPos = _laserResult select 0; TRACE_1("Search", _laserResult); if(!isNil "_foundTargetPos") then { - _angleFov = _seekerParams select 0; - _canSeeTarget = [_projectile, _foundTargetPos, _angleFov] call FUNC(checkSeekerAngle); + //_canSeeTarget = [_projectile, _foundTargetPos, _angleFov] call FUNC(checkSeekerAngle); // If we got here, it was an invalid target, just return a spot 5m in front of the missile if(!_canSeeTarget) then { From db890f3b48861598def2f0025cb472a816606298 Mon Sep 17 00:00:00 2001 From: ViperMaul Date: Tue, 14 Apr 2015 10:52:30 -0700 Subject: [PATCH 096/246] #576 - Obsolete PBO removal support added to build.py --- tools/build.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/tools/build.py b/tools/build.py index 2b792f77dc..c6a425975e 100644 --- a/tools/build.py +++ b/tools/build.py @@ -19,6 +19,11 @@ def check_for_changes(addonspath, module): return True return mod_time(os.path.join(addonspath, module)) > mod_time(os.path.join(addonspath, "ace_{}.pbo".format(module))) +def check_for_obsolete_pbos(addonspath, file): + module = file[4:-4] + if not os.path.exists(os.path.join(addonspath, module)): + return True + return False def main(): print(""" @@ -36,6 +41,16 @@ def main(): made = 0 failed = 0 skipped = 0 + removed = 0 + + for file in os.listdir(addonspath): + if os.path.isfile(file): + if check_for_obsolete_pbos(addonspath, file): + removed += 1 + print(" Removing obsolete file => " + file) + os.remove(file) + print("") + for p in os.listdir(addonspath): path = os.path.join(addonspath, p) if not os.path.isdir(path): @@ -65,7 +80,7 @@ def main(): print(" Successfully made {}.".format(p)) print("\n# Done.") - print(" Made {}, skipped {}, failed to make {}.".format(made, skipped, failed)) + print(" Made {}, skipped {}, removed {}, failed to make {}.".format(made, skipped, removed, failed)) if __name__ == "__main__": From c76abbe98aa2a8a56df5927365b51cb745d90af2 Mon Sep 17 00:00:00 2001 From: "Pierre (meat)" Date: Tue, 14 Apr 2015 19:57:23 +0200 Subject: [PATCH 097/246] Update AUTHORS.txt blackpixxel was twice listed --- AUTHORS.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AUTHORS.txt b/AUTHORS.txt index 906fc706a4..1932ff017b 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -76,4 +76,4 @@ ruPaladin BlackPixxel Asgar Serran Kavinsky -BlackPixxel + From 837f155ad73d225b63afc5c9b31073904962dd58 Mon Sep 17 00:00:00 2001 From: ulteq Date: Tue, 14 Apr 2015 20:17:54 +0200 Subject: [PATCH 098/246] Fixed incorrect key handler return value --- addons/scopes/XEH_postInit.sqf | 8 -------- addons/scopes/functions/fnc_adjustScope.sqf | 2 ++ 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/addons/scopes/XEH_postInit.sqf b/addons/scopes/XEH_postInit.sqf index f9d44cb5fa..ca4017222a 100644 --- a/addons/scopes/XEH_postInit.sqf +++ b/addons/scopes/XEH_postInit.sqf @@ -42,7 +42,6 @@ if !(hasInterface) exitWith {}; // Statement [ACE_player, ELEVATION_UP, MINOR_INCREMENT] call FUNC(adjustScope); - true }, {false}, [201, [false, false, false]], true] call cba_fnc_addKeybind; @@ -56,7 +55,6 @@ if !(hasInterface) exitWith {}; // Statement [ACE_player, ELEVATION_DOWN, MINOR_INCREMENT] call FUNC(adjustScope); - true }, {false}, [209, [false, false, false]], true] call cba_fnc_addKeybind; @@ -70,7 +68,6 @@ if !(hasInterface) exitWith {}; // Statement [ACE_player, WINDAGE_LEFT, MINOR_INCREMENT] call FUNC(adjustScope); - true }, {false}, [209, [false, true, false]], true] call cba_fnc_addKeybind; @@ -84,7 +81,6 @@ if !(hasInterface) exitWith {}; // Statement [ACE_player, WINDAGE_RIGHT, MINOR_INCREMENT] call FUNC(adjustScope); - true }, {false}, [201, [false, true, false]], true] call cba_fnc_addKeybind; @@ -98,7 +94,6 @@ if !(hasInterface) exitWith {}; // Statement [ACE_player, ELEVATION_UP, MAJOR_INCREMENT] call FUNC(adjustScope); - true }, {false}, [201, [true, false, false]], true] call cba_fnc_addKeybind; @@ -112,7 +107,6 @@ if !(hasInterface) exitWith {}; // Statement [ACE_player, ELEVATION_DOWN, MAJOR_INCREMENT] call FUNC(adjustScope); - true }, {false}, [209, [true, false, false]], true] call cba_fnc_addKeybind; @@ -126,7 +120,6 @@ if !(hasInterface) exitWith {}; // Statement [ACE_player, WINDAGE_LEFT, MAJOR_INCREMENT] call FUNC(adjustScope); - true }, {false}, [209, [true, true, false]], true] call cba_fnc_addKeybind; @@ -140,7 +133,6 @@ if !(hasInterface) exitWith {}; // Statement [ACE_player, WINDAGE_RIGHT, MAJOR_INCREMENT] call FUNC(adjustScope); - true }, {false}, [201, [true, true, false]], true] call cba_fnc_addKeybind; diff --git a/addons/scopes/functions/fnc_adjustScope.sqf b/addons/scopes/functions/fnc_adjustScope.sqf index 301b166559..76c62a4688 100644 --- a/addons/scopes/functions/fnc_adjustScope.sqf +++ b/addons/scopes/functions/fnc_adjustScope.sqf @@ -69,3 +69,5 @@ if ((_elevation + _zero) < _maxVertical select 0 or (_elevation + _zero) > _maxV if (_windage < _maxHorizontal select 0 or _windage > _maxHorizontal select 1) exitWith {false}; [_unit, _elevation, _windage, _zero] call FUNC(applyScopeAdjustment); + +true From 24830f815fba6aa7c8e21e96fe688d1bd98570fa Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 11:18:16 -0700 Subject: [PATCH 099/246] random lock interval was causing phasing. --- addons/javelin/functions/fnc_onOpticDraw.sqf | 5 +++-- addons/javelin/functions/fnc_onOpticLoad.sqf | 7 ++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index e9d3e304ad..85877f1f16 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -4,7 +4,7 @@ TRACE_1("enter", _this); #define __TRACKINTERVAL 0 // how frequent the check should be. #define __LOCKONTIME 3 // Lock on won't occur sooner -#define __LOCKONTIMERANDOM 2 // Deviation in lock on time + #define __OffsetX ((ctrlPosition __JavelinIGUITargetingLineV) select 0) - 0.5 #define __OffsetY ((ctrlPosition __JavelinIGUITargetingLineH) select 1) - 0.5 @@ -39,6 +39,7 @@ _currentTarget = _args select 1; _runTime = _args select 2; _lockTime = _args select 3; _soundTime = _args select 4; +_randomLockInterval = _args select 5; // Find a target within the optic range _newTarget = objNull; @@ -135,7 +136,7 @@ if (isNull _newTarget) then { playSound "ACE_Javelin_Locking"; } else { - if(diag_tickTime - _lockTime > __LOCKONTIME + (random __LOCKONTIMERANDOM)) then { + if(diag_tickTime - _lockTime > __LOCKONTIME + _randomLockInterval) then { TRACE_2("LOCKED!", _currentTarget, _lockTime); __JavelinIGUISeek ctrlSetTextColor __ColorGreen; diff --git a/addons/javelin/functions/fnc_onOpticLoad.sqf b/addons/javelin/functions/fnc_onOpticLoad.sqf index a12d0ef176..d38e1c3305 100644 --- a/addons/javelin/functions/fnc_onOpticLoad.sqf +++ b/addons/javelin/functions/fnc_onOpticLoad.sqf @@ -2,6 +2,8 @@ #include "script_component.hpp" TRACE_1("enter", _this); +#define __LOCKONTIMERANDOM 2 // Deviation in lock on time + if((count _this) > 0) then { uiNameSpace setVariable ['ACE_RscOptics_javelin',_this select 0]; }; @@ -22,10 +24,13 @@ uiNameSpace setVariable [QGVAR(arguments), objNull, // currentTargetObject 0, // Run Time 0, // Lock Time - 0 // Sound timer + 0, // Sound timer + (random __LOCKONTIMERANDOM) // random lock time addition ] ]; + + _pfh_handle = uiNamespace getVariable ["ACE_RscOptics_javelin_PFH", nil]; if(isNil "_pfh_handle") then { _pfh_handle = [FUNC(onOpticDraw), 0, []] call CBA_fnc_addPerFrameHandler; From c379f2775eb2cb9494999f7985206e0c11ad4d55 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 20:27:42 +0200 Subject: [PATCH 100/246] Style fixes --- addons/medical/CfgVehicles.hpp | 86 ++++++++++++---------------------- 1 file changed, 29 insertions(+), 57 deletions(-) diff --git a/addons/medical/CfgVehicles.hpp b/addons/medical/CfgVehicles.hpp index 4d7b23463a..18455b034d 100644 --- a/addons/medical/CfgVehicles.hpp +++ b/addons/medical/CfgVehicles.hpp @@ -645,7 +645,7 @@ class CfgVehicles { EGVAR(dragging,dragPosition[]) = {0,1.2,0}; EGVAR(dragging,dragDirection) = 0; class ACE_Actions { - class ACE_MainActions { + class ACE_MainActions { displayName = "$STR_ACE_Interaction_MainAction"; distance = 5; condition = QUOTE(true); @@ -696,10 +696,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_BANDAGE_BASIC_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_fieldDressing - { + class TransportItems { + class ACE_fieldDressing { name = "ACE_fieldDressing"; count = 1; }; @@ -711,10 +709,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_PACKING_BANDAGE_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_packingBandage - { + class TransportItems { + class ACE_packingBandage { name = "ACE_packingBandage"; count = 1; }; @@ -726,10 +722,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_BANDAGE_ELASTIC_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_elasticBandage - { + class TransportItems { + class ACE_elasticBandage { name = "ACE_elasticBandage"; count = 1; }; @@ -741,10 +735,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_TOURNIQUET_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_tourniquet - { + class TransportItems { + class ACE_tourniquet { name = "ACE_tourniquet"; count = 1; }; @@ -756,10 +748,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_MORPHINE_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_morphine - { + class TransportItems { + class ACE_morphine { name = "ACE_morphine"; count = 1; }; @@ -771,10 +761,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_ATROPINE_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_atropine - { + class TransportItems { + class ACE_atropine { name = "ACE_atropine"; count = 1; }; @@ -786,10 +774,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_EPINEPHRINE_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_epinephrine - { + class TransportItems { + class ACE_epinephrine { name = "ACE_epinephrine"; count = 1; }; @@ -801,10 +787,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_PLASMA_IV; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_plasmaIV - { + class TransportItems { + class ACE_plasmaIV { name = "ACE_plasmaIV"; count = 1; }; @@ -817,10 +801,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_BLOOD_IV; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_bloodIV - { + class TransportItems { + class ACE_bloodIV { name = "ACE_bloodIV"; count = 1; }; @@ -832,10 +814,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_SALINE_IV; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_salineIV - { + class TransportItems { + class ACE_salineIV { name = "ACE_salineIV"; count = 1; }; @@ -847,10 +827,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_QUIKCLOT_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_quikClot - { + class TransportItems { + class ACE_quikClot { name = "ACE_quikclot"; count = 1; }; @@ -862,10 +840,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_AID_KIT_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_personalAidKit - { + class TransportItems { + class ACE_personalAidKit { name = "ACE_personalAidKit"; count = 1; }; @@ -877,10 +853,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_SURGICALKIT_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_surgicalKit - { + class TransportItems { + class ACE_surgicalKit { name = "ACE_surgicalKit"; count = 1; }; @@ -892,10 +866,8 @@ class CfgVehicles { displayName = $STR_ACE_MEDICAL_BODYBAG_DISPLAY; author = "$STR_ACE_Common_ACETeam"; vehicleClass = "Items"; - class TransportItems - { - class ACE_bodyBag - { + class TransportItems { + class ACE_bodyBag { name = "ACE_bodyBag"; count = 1; }; From a4c93ab2e20272d6b9943299d75f008a7e84c1c3 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 20:28:00 +0200 Subject: [PATCH 101/246] Add seperate crates for basic and advanced --- addons/medical/CfgVehicles.hpp | 35 +++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/addons/medical/CfgVehicles.hpp b/addons/medical/CfgVehicles.hpp index 18455b034d..dc13964752 100644 --- a/addons/medical/CfgVehicles.hpp +++ b/addons/medical/CfgVehicles.hpp @@ -878,9 +878,42 @@ class CfgVehicles { class ACE_medicalSupplyCrate: NATO_Box_Base { scope = 2; accuracy = 1000; - displayName = "[ACE] Medical Supply Crate"; + displayName = "[ACE] Medical Supply Crate (basic)"; model = PATHTOF(data\ace_medcrate.p3d); author = "$STR_ACE_Common_ACETeam"; + class TransportItems { + class ACE_fieldDressing { + name = "ACE_fieldDressing"; + count = 50; + }; + class ACE_morphine { + name = "ACE_morphine"; + count = 25; + }; + class ACE_epinephrine { + name = "ACE_epinephrine"; + count = 25; + }; + class ACE_bloodIV { + name = "ACE_bloodIV"; + count = 15; + }; + class ACE_bloodIV_500 { + name = "ACE_bloodIV_500"; + count = 15; + }; + class ACE_bloodIV_250 { + name = "ACE_bloodIV_250"; + count = 15; + }; + class ACE_bodyBag { + name = "ACE_bodyBag"; + count = 10; + }; + }; + }; + class ACE_medicalSupplyCrate_advanced: ACE_medicalSupplyCrate { + displayName = "[ACE] Medical Supply Crate (advanced)"; class TransportItems { class ACE_fieldDressing { name = "ACE_fieldDressing"; From 7ca36cdb6597ae8da36611684a9c17a166ca0635 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 20:28:19 +0200 Subject: [PATCH 102/246] Always show wounds, even for very low damage --- addons/medical/functions/fnc_displayPatientInformation.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/medical/functions/fnc_displayPatientInformation.sqf b/addons/medical/functions/fnc_displayPatientInformation.sqf index fb374f8631..7952a41ec0 100644 --- a/addons/medical/functions/fnc_displayPatientInformation.sqf +++ b/addons/medical/functions/fnc_displayPatientInformation.sqf @@ -128,7 +128,7 @@ if (_show) then { { _selectionBloodLoss set [_forEachIndex, _target getHitPointDamage _x]; - if (_target getHitPointDamage _x > 0.1 && {_forEachIndex == _selectionN}) then { + if (_target getHitPointDamage _x > 0 && {_forEachIndex == _selectionN}) then { // @todo localize _allInjuryTexts pushBack [format ["%1 %2", ["Lightly wounded", "Heavily wounded"] select (_target getHitPointDamage _x > 0.5), From ba377dfd3a382ca58e155ca9236961f8df8fec63 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 20:40:17 +0200 Subject: [PATCH 103/246] Show seperate message for "scratches"; localize --- .../fnc_displayPatientInformation.sqf | 20 ++++++++++++---- addons/medical/stringtable.xml | 24 +++++++++++++++++++ 2 files changed, 39 insertions(+), 5 deletions(-) diff --git a/addons/medical/functions/fnc_displayPatientInformation.sqf b/addons/medical/functions/fnc_displayPatientInformation.sqf index 7952a41ec0..ecd2218c2b 100644 --- a/addons/medical/functions/fnc_displayPatientInformation.sqf +++ b/addons/medical/functions/fnc_displayPatientInformation.sqf @@ -129,11 +129,21 @@ if (_show) then { _selectionBloodLoss set [_forEachIndex, _target getHitPointDamage _x]; if (_target getHitPointDamage _x > 0 && {_forEachIndex == _selectionN}) then { - // @todo localize - _allInjuryTexts pushBack [format ["%1 %2", - ["Lightly wounded", "Heavily wounded"] select (_target getHitPointDamage _x > 0.5), - ["head", "torso", "left arm", "right arm", "left leg", "right leg"] select _forEachIndex - ], [1,1,1,1]]; + _pointDamage = _target getHitPointDamage _x; + _severity = switch (true) do { + case (_pointDamage > 0.5): {localize "STR_ACE_Medical_HeavilyWounded"}; + case (_pointDamage > 0.1): {localize "STR_ACE_Medical_LightlyWounded"}; + default {localize "STR_ACE_Medical_VeryLightlyWounded"}; + }; + _part = localize ([ + "STR_ACE_Medical_Head", + "STR_ACE_Medical_Torso", + "STR_ACE_Medical_LeftArm", + "STR_ACE_Medical_RightArm", + "STR_ACE_Medical_LeftLeg", + "STR_ACE_Medical_RightLeg" + ] select _forEachIndex); + _allInjuryTexts pushBack [format ["%1 %2", _severity, toLower _part], [1,1,1,1]]; }; } forEach ["HitHead", "HitBody", "HitLeftArm", "HitRightArm", "HitLeftLeg", "HitRightLeg"]; }; diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 145c14b264..d423ae3204 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1284,5 +1284,29 @@ %1 założył stazę %1 a appliqué un garrot + + Head + Kopf + + + Torso + Torso + + + Left Arm + Linker Arm + + + Right Arm + Rechter Arm + + + Left Leg + Linkes Bein + + + Right Leg + Rechtes Bein + From 71b19b46214a9b47cc3aa583ebb0a9c781815248 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 20:40:38 +0200 Subject: [PATCH 104/246] Remove duplicate bleeding code --- addons/medical/functions/fnc_getBloodLoss.sqf | 2 +- .../functions/fnc_handleUnitVitals.sqf | 19 +++++++------------ 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/addons/medical/functions/fnc_getBloodLoss.sqf b/addons/medical/functions/fnc_getBloodLoss.sqf index fb5a6d9e36..f6b26f7686 100644 --- a/addons/medical/functions/fnc_getBloodLoss.sqf +++ b/addons/medical/functions/fnc_getBloodLoss.sqf @@ -13,7 +13,7 @@ #include "script_component.hpp" -#define BLOODLOSSRATE_BASIC 0.08 +#define BLOODLOSSRATE_BASIC 0.2 private ["_totalBloodLoss","_tourniquets","_openWounds", "_value", "_cardiacOutput", "_internalWounds"]; // TODO Only use this calculation if medium or higher, otherwise use vanilla calculations (for basic medical). diff --git a/addons/medical/functions/fnc_handleUnitVitals.sqf b/addons/medical/functions/fnc_handleUnitVitals.sqf index fc13e19d29..81c9ffea40 100644 --- a/addons/medical/functions/fnc_handleUnitVitals.sqf +++ b/addons/medical/functions/fnc_handleUnitVitals.sqf @@ -28,9 +28,8 @@ if (_syncValues) then { }; _bloodVolume = (_unit getvariable [QGVAR(bloodVolume), 0]) + ([_unit] call FUNC(getBloodVolumeChange)); -if (_bloodVolume <= 0) then { - _bloodVolume = 0; -}; +_bloodVolume = _bloodVolume max 0; + _unit setvariable [QGVAR(bloodVolume), _bloodVolume, _syncValues]; // Set variables for synchronizing information across the net @@ -78,15 +77,11 @@ if (GVAR(level) == 1) then { // bleeding _blood = _unit getVariable [QGVAR(bloodVolume), 100]; - _blood = (_blood - 0.4 * (damage _unit) * _interval) max 0; - if (_blood != (_unit getVariable [QGVAR(bloodVolume), 100])) then { - _unit setVariable [QGVAR(bloodVolume), _blood, _syncValues]; - if (_blood <= 35 and !(_unit getVariable ["ACE_isUnconscious", false])) then { - [_unit, true] call FUNC(setUnconscious); - }; - if (_blood == 0) then { - [_unit] call FUNC(setDead); - }; + if (_blood <= 35 and !(_unit getVariable ["ACE_isUnconscious", false])) then { + [_unit, true] call FUNC(setUnconscious); + }; + if (_blood == 0) then { + [_unit] call FUNC(setDead); }; }; From 739807303b6cdb1ff15c488f6dce45df0c39272e Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 11:42:26 -0700 Subject: [PATCH 105/246] Fix script error for canceling designation and dying while designating. --- .../functions/fnc_laserHudDesignateOff.sqf | 5 +++++ .../functions/fnc_laserHudDesignateOn.sqf | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf b/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf index 17e7fcb76e..f8ff2ca0f5 100644 --- a/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf +++ b/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf @@ -22,4 +22,9 @@ if( (count _this) > 2) then { GVAR(active) = false; +if(!isNil QGVAR(selfDesignateHandle)) then { + [GVAR(selfDesignateHandle)] call CBA_fnc_removePerFrameHandler; + GVAR(selfDesignateHandle) = nil; +}; + true \ No newline at end of file diff --git a/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOn.sqf b/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOn.sqf index c480c051bb..400bf21756 100644 --- a/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOn.sqf +++ b/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOn.sqf @@ -83,7 +83,7 @@ if(!GVAR(active)) then { // @TODO: Nou gets to field all tickets about missing lasers. //_localLaserTarget = "LaserTargetW" createVehicleLocal (getpos ACE_player); - _handle = [FUNC(laserHudDesignatePFH), 0.1, [ACE_player, _laserUuid, nil]] call cba_fnc_addPerFrameHandler; + GVAR(selfDesignateHandle) = [FUNC(laserHudDesignatePFH), 0.1, [ACE_player, _laserUuid, nil]] call cba_fnc_addPerFrameHandler; } else { [] call FUNC(laserHudDesignateOff); [] call FUNC(laserHudDesignateOn); From e7807c009f301f835a98d00b981aee32e8e3033a Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 21:28:18 +0200 Subject: [PATCH 106/246] Use playerInventoryChanged instead of Take This makes sure to also fire when other mods, like TFAR (when adding backpacks) add items via script. --- addons/medical/CfgEventHandlers.hpp | 8 -------- addons/medical/XEH_postInit.sqf | 5 +++++ 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/addons/medical/CfgEventHandlers.hpp b/addons/medical/CfgEventHandlers.hpp index bf96b6a239..2fe5d0a9e5 100644 --- a/addons/medical/CfgEventHandlers.hpp +++ b/addons/medical/CfgEventHandlers.hpp @@ -47,11 +47,3 @@ class Extended_Local_EventHandlers { }; }; }; - -class Extended_Take_EventHandlers { - class CAManBase { - class ADDON { - take = QUOTE(call FUNC(itemCheck)); - }; - }; -}; diff --git a/addons/medical/XEH_postInit.sqf b/addons/medical/XEH_postInit.sqf index 1b0a38f1af..f5cd793b13 100644 --- a/addons/medical/XEH_postInit.sqf +++ b/addons/medical/XEH_postInit.sqf @@ -266,3 +266,8 @@ if (USE_WOUND_EVENT_SYNC) then { // Prevent all types of interaction while unconscious // @todo: probably remove this when CBA keybind hold key works properly ["isNotUnconscious", {!((_this select 0) getVariable ["ACE_isUnconscious", false])}] call EFUNC(common,addCanInteractWithCondition); + +// Item Event Handler +["playerInventoryChanged", { + [ACE_player] call FUNC(itemCheck); +}] call EFUNC(common,addEventHandler); From ebcdafe6109c2a17ac673fae7b70a347d9d30708 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 21:43:19 +0200 Subject: [PATCH 107/246] Fix spelling of "isClientSetable" --- addons/common/config.cpp | 14 +++++++------- .../functions/fnc_setSettingFromConfig.sqf | 4 ++-- addons/goggles/config.cpp | 2 +- addons/hearing/config.cpp | 2 +- addons/interact_menu/config.cpp | 2 +- addons/inventory/config.cpp | 2 +- addons/microdagr/config.cpp | 2 +- addons/movement/config.cpp | 2 +- addons/nametags/config.cpp | 18 +++++++++--------- addons/overheating/config.cpp | 2 +- addons/reload/config.cpp | 2 +- addons/weaponselect/config.cpp | 2 +- 12 files changed, 27 insertions(+), 27 deletions(-) diff --git a/addons/common/config.cpp b/addons/common/config.cpp index 90309af612..769ba37de1 100644 --- a/addons/common/config.cpp +++ b/addons/common/config.cpp @@ -69,9 +69,9 @@ class ACE_Settings { * force = 0; * * Does it appear on the options menu? - * isClientSetable = 1; + * isClientSettable = 1; * - * The following settings only apply when isClientSetable == 1 + * The following settings only apply when isClientSettable == 1 * Stringtable entry with the setting name * displayName = "$STR_ACE_Common_SettingName"; * @@ -90,14 +90,14 @@ class ACE_Settings { /*class GVAR(enableNumberHotkeys) { value = 1; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Common_EnableNumberHotkeys"; };*/ class GVAR(settingFeedbackIcons) { value = 1; typeName = "SCALAR"; force = 0; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Common_SettingFeedbackIconsName"; description = "$STR_ACE_Common_SettingFeedbackIconsDesc"; values[] = {"Hide", "Top right, downwards", "Top right, to the left", "Top left, downwards", "Top left, to the right"}; @@ -106,7 +106,7 @@ class ACE_Settings { value = 0; typeName = "SCALAR"; force = 0; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Common_SettingProgressbarLocationName"; description = "$STR_ACE_Common_SettingProgressbarLocationDesc"; values[] = {"Top", "Bottom"}; @@ -114,14 +114,14 @@ class ACE_Settings { class GVAR(displayTextColor) { value[] = {0,0,0,0.1}; typeName = "COLOR"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Common_SettingDisplayTextColorName"; description = "$STR_ACE_Common_SettingDisplayTextColorDesc"; }; class GVAR(displayTextFontColor) { value[] = {1,1,1,1}; typeName = "COLOR"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Common_SettingDisplayTextFontColorName"; description = "$STR_ACE_Common_SettingDisplayTextFontColorDesc"; }; diff --git a/addons/common/functions/fnc_setSettingFromConfig.sqf b/addons/common/functions/fnc_setSettingFromConfig.sqf index 9d93b9e62d..4d81ef3535 100644 --- a/addons/common/functions/fnc_setSettingFromConfig.sqf +++ b/addons/common/functions/fnc_setSettingFromConfig.sqf @@ -58,7 +58,7 @@ if (isNil _name) then { /*_settingData = [ _name, _typeName, - _isClientSetable, + _isClientSettable, _localizedName, _localizedDescription, _possibleValues, @@ -68,7 +68,7 @@ if (isNil _name) then { _settingData = [ _name, _typeName, - (getNumber (_optionEntry >> "isClientSetable")) > 0, + (getNumber (_optionEntry >> "isClientSettable")) > 0, getText (_optionEntry >> "displayName"), getText (_optionEntry >> "description"), getArray (_optionEntry >> "values"), diff --git a/addons/goggles/config.cpp b/addons/goggles/config.cpp index efda9b5436..7e8afe4d3d 100644 --- a/addons/goggles/config.cpp +++ b/addons/goggles/config.cpp @@ -247,7 +247,7 @@ class ACE_Settings { class GVAR(showInThirdPerson) { value = 0; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Goggles_ShowInThirdPerson"; }; }; diff --git a/addons/hearing/config.cpp b/addons/hearing/config.cpp index 6aab92b9bf..0813d0648e 100644 --- a/addons/hearing/config.cpp +++ b/addons/hearing/config.cpp @@ -38,7 +38,7 @@ class ACE_Settings { class GVAR(DisableEarRinging) { value = 0; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Hearing_DisableEarRinging"; }; }; diff --git a/addons/interact_menu/config.cpp b/addons/interact_menu/config.cpp index 17900c2f6b..aaeb6db3e0 100644 --- a/addons/interact_menu/config.cpp +++ b/addons/interact_menu/config.cpp @@ -20,7 +20,7 @@ class ACE_Settings { class GVAR(AlwaysUseCursorSelfInteraction) { value = 0; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Interact_Menu_AlwaysUseCursorSelfInteraction"; }; }; diff --git a/addons/inventory/config.cpp b/addons/inventory/config.cpp index c7b6649be6..1268f8b886 100644 --- a/addons/inventory/config.cpp +++ b/addons/inventory/config.cpp @@ -18,7 +18,7 @@ class ACE_Settings { class GVAR(inventoryDisplaySize) { value = 0; typeName = "SCALAR"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Inventory_SettingName"; description = "$STR_ACE_Inventory_SettingDescription"; values[] = {"Normal (Default Size)", "Medium", "Bigger"}; diff --git a/addons/microdagr/config.cpp b/addons/microdagr/config.cpp index e337aa96d5..4e459c126c 100644 --- a/addons/microdagr/config.cpp +++ b/addons/microdagr/config.cpp @@ -21,6 +21,6 @@ class ACE_Settings { class GVAR(MapDataAvailable) { value = 2; typeName = "SCALAR"; - isClientSetable = 0; + isClientSettable = 0; }; }; diff --git a/addons/movement/config.cpp b/addons/movement/config.cpp index 51ab97b80a..6cf2c9470c 100644 --- a/addons/movement/config.cpp +++ b/addons/movement/config.cpp @@ -21,7 +21,7 @@ class ACE_Settings { class GVAR(useImperial) { value = 0; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Movement_UseImperial"; }; }; diff --git a/addons/nametags/config.cpp b/addons/nametags/config.cpp index e67703e147..dce054a9ec 100644 --- a/addons/nametags/config.cpp +++ b/addons/nametags/config.cpp @@ -19,55 +19,55 @@ class ACE_Settings { class GVAR(defaultNametagColor) { value[] = {0.77, 0.51, 0.08, 1}; typeName = "COLOR"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_NameTags_DefaultNametagColor"; }; class GVAR(showPlayerNames) { value = 1; typeName = "SCALAR"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_NameTags_ShowPlayerNames"; values[] = {"Disabled", "Enabled", "Only Cursor", "Only On Keypress", "Only Cursor and KeyPress"}; }; class GVAR(showPlayerRanks) { value = 1; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_NameTags_ShowPlayerRanks"; }; class GVAR(showVehicleCrewInfo) { value = 1; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_NameTags_ShowVehicleCrewInfo"; }; class GVAR(showNamesForAI) { value = 0; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_NameTags_ShowNamesForAI"; }; class GVAR(showCursorTagForVehicles) { value = 0; typeName = "BOOL"; - isClientSetable = 0; + isClientSettable = 0; }; class GVAR(showSoundWaves) { value = 1; typeName = "SCALAR"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_NameTags_ShowSoundWaves"; values[] = {"Disabled", "Use Nametag settings", "Always Show All"}; }; class GVAR(PlayerNamesViewDistance) { value = 5; typeName = "SCALAR"; - isClientSetable = 0; + isClientSettable = 0; }; class GVAR(PlayerNamesMaxAlpha) { value = 0.8; typeName = "SCALAR"; - isClientSetable = 0; + isClientSettable = 0; }; }; diff --git a/addons/overheating/config.cpp b/addons/overheating/config.cpp index 3ccc8ee603..bd6cdbbdd3 100644 --- a/addons/overheating/config.cpp +++ b/addons/overheating/config.cpp @@ -23,7 +23,7 @@ class CfgPatches { class ACE_Settings { class GVAR(DisplayTextOnJam) { typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; value = 1; displayName = "$STR_ACE_overheating_SettingDisplayTextName"; description = "$STR_ACE_overheating_SettingDisplayTextDesc"; diff --git a/addons/reload/config.cpp b/addons/reload/config.cpp index 372292de89..02f5014379 100644 --- a/addons/reload/config.cpp +++ b/addons/reload/config.cpp @@ -25,7 +25,7 @@ class CfgPatches { class ACE_Settings { class GVAR(DisplayText) { typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; value = 1; displayName = "$STR_ACE_reload_SettingDisplayTextName"; description = "$STR_ACE_reload_SettingDisplayTextDesc"; diff --git a/addons/weaponselect/config.cpp b/addons/weaponselect/config.cpp index 80be936e98..68d0fe842d 100644 --- a/addons/weaponselect/config.cpp +++ b/addons/weaponselect/config.cpp @@ -17,7 +17,7 @@ class CfgPatches { class ACE_Settings { class GVAR(DisplayText) { typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; value = 1; displayName = "$STR_ACE_Weaponselect_SettingDisplayTextName"; description = "$STR_ACE_Weaponselect_SettingDisplayTextDesc"; From 684c36f8a5f215dcffb239ad215f874aec1bd775 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 21:49:56 +0200 Subject: [PATCH 108/246] Add pain effect option --- addons/medical/ACE_Settings.hpp | 6 ++++++ addons/medical/XEH_postInit.sqf | 3 +-- addons/medical/stringtable.xml | 8 ++++++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/addons/medical/ACE_Settings.hpp b/addons/medical/ACE_Settings.hpp index 4d2f2db9be..bd243b2d3f 100644 --- a/addons/medical/ACE_Settings.hpp +++ b/addons/medical/ACE_Settings.hpp @@ -117,4 +117,10 @@ class ACE_Settings { typeName = "BOOL"; value = 1; }; + class GVAR(painEffectType) { + typeName = "SCALAR"; + value = 0; + values[] = {"$STR_ACE_Medical_PainEffect_Flash", "$STR_ACE_Medical_PainEffect_Chroma"} + isClientSettable = 1; + }; }; diff --git a/addons/medical/XEH_postInit.sqf b/addons/medical/XEH_postInit.sqf index f5cd793b13..7bcb536cd3 100644 --- a/addons/medical/XEH_postInit.sqf +++ b/addons/medical/XEH_postInit.sqf @@ -172,8 +172,7 @@ if (isNil QGVAR(level)) then { // Pain effect _strength = ACE_player getVariable [QGVAR(pain), 0]; // _strength = _strength * (ACE_player getVariable [QGVAR(coefPain), GVAR(coefPain)]); @todo - GVAR(alternativePainEffect) = false; // @todo - if (GVAR(alternativePainEffect)) then { + if (GVAR(painEffectType) == 1) then { GVAR(effectPainCC) ppEffectEnable false; if ((ACE_player getVariable [QGVAR(pain), 0]) > 0 && {alive ACE_player}) then { _strength = _strength * 0.15; diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index d423ae3204..8e8d428b8f 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1308,5 +1308,13 @@ Right Leg Rechtes Bein + + Colour Flashing + Farbblinken + + + Chromatic Aberration + Chromatische Aberration + From 7af6ea36a6f0458389d7e6f0d04309ebed8c3b94 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 22:07:43 +0200 Subject: [PATCH 109/246] Fix missing pain effect option name --- addons/medical/ACE_Settings.hpp | 3 ++- addons/medical/stringtable.xml | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/addons/medical/ACE_Settings.hpp b/addons/medical/ACE_Settings.hpp index bd243b2d3f..56e5a531ec 100644 --- a/addons/medical/ACE_Settings.hpp +++ b/addons/medical/ACE_Settings.hpp @@ -118,9 +118,10 @@ class ACE_Settings { value = 1; }; class GVAR(painEffectType) { + displayName = "$STR_ACE_Medical_painEffectType"; typeName = "SCALAR"; value = 0; - values[] = {"$STR_ACE_Medical_PainEffect_Flash", "$STR_ACE_Medical_PainEffect_Chroma"} + values[] = {"$STR_ACE_Medical_painEffect_Flash", "$STR_ACE_Medical_painEffect_Chroma"}; isClientSettable = 1; }; }; diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 8e8d428b8f..391e277083 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1308,11 +1308,15 @@ Right Leg Rechtes Bein - + + Pain Effect Type + Schmerzeffekt-Typ + + Colour Flashing Farbblinken - + Chromatic Aberration Chromatische Aberration From f0a716fee8a513d0e942b56d9069f3ece94afb2c Mon Sep 17 00:00:00 2001 From: ulteq Date: Tue, 14 Apr 2015 22:17:27 +0200 Subject: [PATCH 110/246] Added new ammo classes: *762x67mm Mk248 Mod 0 *762x67mm Mk248 Mod 1 *762x67mm Berger Hybrid OTM *65x47mm Scenar --- addons/ballistics/CfgAmmo.hpp | 80 ++++++++++++++++++++++++++++++++--- 1 file changed, 74 insertions(+), 6 deletions(-) diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index 620484950d..cea249cb4f 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -90,7 +90,8 @@ class CfgAmmo { ACE_muzzleVelocities[]={780, 880, 920}; ACE_barrelLengths[]={10, 16.3, 20}; }; - class ACE_545x39_Ball_7T3M : B_556x45_Ball_Tracer_Red { + class B_556x45_Ball_Tracer_Yellow; + class ACE_545x39_Ball_7T3M : B_556x45_Ball_Tracer_Yellow { airFriction=-0.001162; caliber=0.5; deflecting=18; @@ -122,9 +123,24 @@ class CfgAmmo { ACE_barrelLengths[]={10, 16, 20, 24, 26, 30}; }; class B_65x39_Case_yellow; - class ACE_B_65x39_Caseless_Tracer_Dim : B_65x39_Case_yellow { + class ACE_65x39_Caseless_Tracer_Dim : B_65x39_Case_yellow { nvgOnly = 1; }; + class ACE_65x47_Ball_Scenar: B_65x39_Caseless + { + airFriction=-0.00078; + typicalSpeed=820 ; + ACE_caliber=0.264; + ACE_bulletLength=1.364; + ACE_bulletMass=139; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.290}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={760, 790, 820, 830}; + ACE_barrelLengths[]={16, 20, 24, 26}; + }; class B_762x51_Ball : BulletBase { airFriction=-0.001035; typicalSpeed=833; @@ -140,8 +156,8 @@ class CfgAmmo { ACE_muzzleVelocities[]={700, 800, 820, 833, 845}; ACE_barrelLengths[]={10, 16, 20, 24, 26}; }; - class B_762x51_Tracer_Red; - class ACE_B_762x51_Tracer_Dim: B_762x51_Tracer_Red { + class B_762x51_Tracer_Yellow; + class ACE_B_762x51_Tracer_Dim: B_762x51_Tracer_Yellow { nvgOnly = 1; }; class ACE_762x51_Ball_M118LR : B_762x51_Ball { @@ -160,6 +176,57 @@ class CfgAmmo { ACE_muzzleVelocities[]={750, 780, 790, 794}; ACE_barrelLengths[]={16, 20, 24, 26}; }; + class ACE_762x67_Ball_Mk248_Mod_0 : B_762x51_Ball + { + airFriction=-0.000830; + caliber=1.08; + hit=17; + typicalSpeed=900; + ACE_caliber=0.308; + ACE_bulletLength=1.353; + ACE_bulletMass=190; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.268}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={865, 900, 924}; + ACE_barrelLengths[]={20, 24, 26}; + }; + class ACE_762x67_Ball_Mk248_Mod_1 : B_762x51_Ball + { + airFriction=-0.000815; + caliber=1.12; + hit=18; + typicalSpeed=867; + ACE_caliber=0.308; + ACE_bulletLength=1.489; + ACE_bulletMass=220; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.310}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={847, 867, 877}; + ACE_barrelLengths[]={20, 24, 26}; + }; + class ACE_762x67_Ball_Berger_Hybrid_OTM : B_762x51_Ball + { + airFriction=-0.00076; + caliber=1.15; + hit=19; + typicalSpeed=853; + ACE_caliber=0.308; + ACE_bulletLength=1.602; + ACE_bulletMass=230; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.368}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={800, 853, 884}; + ACE_barrelLengths[]={20, 24, 26}; + }; class ACE_762x51_Ball_Subsonic : B_762x51_Ball { airFriction=-0.000535; caliber=0.5; @@ -204,7 +271,8 @@ class CfgAmmo { ACE_muzzleVelocities[]={700, 800, 820, 833}; ACE_barrelLengths[]={16, 20, 24, 26}; }; - class ACE_762x54_Ball_7T2 : B_762x51_Tracer_Red { + class B_762x54_Tracer_Green; + class ACE_762x54_Ball_7T2 : B_762x54_Tracer_Green { airFriction=-0.001023; caliber=0.9; hit=15; @@ -251,7 +319,7 @@ class CfgAmmo { ACE_muzzleVelocities[]={650, 716, 750}; ACE_barrelLengths[]={10, 16.3, 20}; }; - class ACE_762x39_Ball_57N231P : B_762x51_Tracer_Red { + class ACE_762x39_Ball_57N231P : B_762x51_Tracer_Yellow { airFriction=-0.0015168; hit=12; typicalSpeed=716; From e214511e36c65442ffc88dd795e6488dfd59a0ec Mon Sep 17 00:00:00 2001 From: ulteq Date: Tue, 14 Apr 2015 22:19:51 +0200 Subject: [PATCH 111/246] Added new magazine classes: *ACE_100Rnd_65x39_caseless_mag_Tracer_Dim *ACE_200Rnd_65x39_cased_Box_Tracer_Dim *ACE_30Rnd_556x45_Stanag_Mk262_mag *ACE_30Rnd_556x45_Stanag_Mk318_mag *ACE_10Rnd_762x51_M118LR_Mag *ACE_20Rnd_762x51_M118LR_Mag *ACE_20Rnd_762x67_Mk248_Mod_0_Mag *ACE_20Rnd_762x67_Mk248_Mod_1_Mag *ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag *ACE_30Rnd_65x47_Scenar_mag *ACE_10Rnd_762x54_Tracer_mag --- addons/ballistics/CfgMagazines.hpp | 103 +++++++++++++- addons/ballistics/stringtable.xml | 209 +++++++++++++---------------- 2 files changed, 195 insertions(+), 117 deletions(-) diff --git a/addons/ballistics/CfgMagazines.hpp b/addons/ballistics/CfgMagazines.hpp index 6e6f5a11e8..f9e936dc04 100644 --- a/addons/ballistics/CfgMagazines.hpp +++ b/addons/ballistics/CfgMagazines.hpp @@ -11,22 +11,54 @@ class CfgMagazines { class 100Rnd_65x39_caseless_mag_Tracer: 100Rnd_65x39_caseless_mag { initSpeed = 760; }; + class ACE_100Rnd_65x39_caseless_mag_Tracer_Dim: 100Rnd_65x39_caseless_mag_Tracer { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_65x39_Caseless_Tracer_Dim"; + displayName = "$STR_ACE_100Rnd_65x39_caseless_mag_Tracer_DimName"; + displayNameShort = "$STR_ACE_100Rnd_65x39_caseless_mag_Tracer_DimNameShort"; + descriptionShort = "$STR_ACE_100Rnd_65x39_caseless_mag_Tracer_DimDescription"; + picture = "\A3\weapons_f\data\ui\m_100rnd_65x39_yellow_ca.paa"; + }; class 200Rnd_65x39_cased_Box: 100Rnd_65x39_caseless_mag { initSpeed = 760; }; + class ACE_200Rnd_65x39_cased_Box_Tracer_Dim: 200Rnd_65x39_cased_Box { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_65x39_Caseless_Tracer_Dim"; + displayName = "$STR_ACE_200Rnd_65x39_cased_Box_Tracer_DimName"; + displayNameShort = "$STR_ACE_200Rnd_65x39_cased_Box_Tracer_DimNameShort"; + descriptionShort = "$STR_ACE_200Rnd_65x39_cased_Box_Tracer_DimDescription"; + picture = "\A3\weapons_f\data\ui\m_200rnd_65x39_yellow_ca.paa"; + }; class 30Rnd_65x39_caseless_mag_Tracer: 30Rnd_65x39_caseless_mag { }; class ACE_30Rnd_65x39_caseless_mag_Tracer_Dim: 30Rnd_65x39_caseless_mag_Tracer { author = "$STR_ACE_Common_ACETeam"; - ammo = "ACE_B_65x39_Caseless_Tracer_Dim"; + ammo = "ACE_65x39_Caseless_Tracer_Dim"; displayName = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimName"; displayNameShort = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimNameShort"; descriptionShort = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimDescription"; - picture = "\A3\weapons_f\data\ui\m_30stanag_caseless_yellow_CA.paa"; + picture = "\A3\weapons_f\data\ui\m_30stanag_caseless_yellow_ca.paa"; }; class 30Rnd_556x45_Stanag: CA_Magazine { }; + class ACE_30Rnd_556x45_Stanag_Mk262_mag: 30Rnd_556x45_Stanag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_556x45_Ball_Mk262"; + displayName = "$STR_ACE_30Rnd_556x45_Stanag_Mk262_mag_Name"; + displayNameShort = "$STR_ACE_30Rnd_556x45_Stanag_Mk262_mag_NameShort"; + descriptionShort = "$STR_ACE_30Rnd_556x45_Stanag_Mk262_mag_Description"; + initSpeed = 832; + }; + class ACE_30Rnd_556x45_Stanag_Mk318_mag: 30Rnd_556x45_Stanag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_556x45_Ball_Mk318"; + displayName = "$STR_ACE_30Rnd_556x45_Stanag_Mk318_mag_Name"; + displayNameShort = "$STR_ACE_30Rnd_556x45_Stanag_Mk318_mag_NameShort"; + descriptionShort = "$STR_ACE_30Rnd_556x45_Stanag_Mk318_mag_Description"; + initSpeed = 922; + }; class 30Rnd_556x45_Stanag_Tracer_Red: 30Rnd_556x45_Stanag { }; class ACE_30Rnd_556x45_Stanag_Tracer_Dim: 30Rnd_556x45_Stanag_Tracer_Red { @@ -35,7 +67,7 @@ class CfgMagazines { displayName = "$STR_ACE_30Rnd_556x45_mag_Tracer_DimName"; displayNameShort = "$STR_ACE_30Rnd_556x45_mag_Tracer_DimNameShort"; descriptionShort = "$STR_ACE_30Rnd_556x45_mag_Tracer_DimDescription"; - picture = "\A3\weapons_f\data\ui\m_30stanag_yellow_ca.paa"; + picture = "\A3\weapons_f\data\ui\m_20stanag_red_ca.paa"; }; class 20Rnd_762x51_Mag: CA_Magazine { @@ -50,7 +82,7 @@ class CfgMagazines { class 150Rnd_762x51_Box_Tracer: 150Rnd_762x51_Box { initSpeed = 833; }; - class ACE_20Rnd_762x51_Mag_Tracer: 20Rnd_762x51_Mag { //@todo Green tracers for opfor and yellow tracers for independent + class ACE_20Rnd_762x51_Mag_Tracer: 20Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "B_762x51_Tracer_Red"; displayName = "$STR_ACE_20Rnd_762x51_mag_TracerName"; @@ -76,6 +108,61 @@ class CfgMagazines { initSpeed = 325; }; + class ACE_10Rnd_762x51_M118LR_Mag: 10Rnd_762x51_Mag + { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_762x51_Ball_M118LR"; + count=10; + displayName = "$STR_ACE_10Rnd_762x51_M118LR_Mag_Name"; + displayNameShort = "$STR_ACE_10Rnd_762x51_M118LR_Mag_NameShort"; + descriptionShort = "$STR_ACE_10Rnd_762x51_M118LR_Mag_Description"; + initSpeed = 780; + }; + class ACE_20Rnd_762x51_M118LR_Mag: 20Rnd_762x51_Mag + { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_762x51_Ball_M118LR"; + displayName = "$STR_ACE_20Rnd_762x51_M118LR_Mag_Name"; + displayNameShort = "$STR_ACE_20Rnd_762x51_M118LR_Mag_NameShort"; + descriptionShort = "$STR_ACE_20Rnd_762x51_M118LR_Mag_Description"; + initSpeed = 780; + }; + class ACE_20Rnd_762x67_Mk248_Mod_0_Mag: 20Rnd_762x51_Mag + { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_762x67_Ball_Mk248_Mod_0"; + displayName = "$STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_Name"; + displayNameShort = "$STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_NameShort"; + descriptionShort = "$STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_Description"; + initSpeed = 865; + }; + class ACE_20Rnd_762x67_Mk248_Mod_1_Mag: 20Rnd_762x51_Mag + { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_762x67_Ball_Mk248_Mod_1"; + displayName = "$STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_Name"; + displayNameShort = "$STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_NameShort"; + descriptionShort = "$STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_Description"; + initSpeed = 847; + }; + class ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag: 20Rnd_762x51_Mag + { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_762x67_Ball_Berger_Hybrid_OTM"; + displayName = "$STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_Name"; + displayNameShort = "$STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_NameShort"; + descriptionShort = "$STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_Description"; + initSpeed = 800; + }; + class ACE_30Rnd_65x47_Scenar_mag: 30Rnd_65x39_caseless_mag + { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_65x47_Ball_Scenar"; + count=30; + displayName = "30rnd 6.5mm Mag (HPBT Scenar)"; + descriptionshort = "Caliber: 65x47 mm (HPBT Scenar)
Rounds: 30
Used in: MXM"; + }; + class 30Rnd_9x21_Mag: CA_Magazine { initSpeed = 450; }; @@ -123,6 +210,14 @@ class CfgMagazines { class 10Rnd_762x54_Mag: 10Rnd_762x51_Mag { initSpeed = 800; }; + class ACE_10Rnd_762x54_Tracer_mag: 16Rnd_9x21_Mag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_762x54_Ball_7T2"; + displayName = "$STR_ACE_10Rnd_762x54_Tracer_mag_Name"; + displayNameShort = "$STR_ACE_10Rnd_762x54_Tracer_mag_NameShort"; + descriptionShort = "$STR_ACE_10Rnd_762x54_Tracer_mag_Description"; + initSpeed = 800; + }; class 150Rnd_762x54_Box: 150Rnd_762x51_Box { initSpeed = 750; diff --git a/addons/ballistics/stringtable.xml b/addons/ballistics/stringtable.xml index 261a6a8ea1..721e561f83 100644 --- a/addons/ballistics/stringtable.xml +++ b/addons/ballistics/stringtable.xml @@ -257,42 +257,6 @@ Calibro: 5.56x45 mm Traccianti IR-DIM<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Калибр: 5.56x45 мм трассирующие под ПНВ<br />Патронов: 30<br />Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR
- - 5.56mm 30Rnd SD Mag - 5,56 mm Hangtompítós 30-as Tár - 5,56 mm 30-Schuss-Magazin SD - Cargador de 30 balas SD de 5,56 mm - Ch. 5,56mm 30Cps SD - Magazynek 5,56mm 30rd SD - 5.56mm 30ks SD Zásobník - Carregador de 30 projéteis SD de 5,56mm - Caricatore 5.56mm 30Rnd Sil. - Магазин из 30-ти 5.56 мм дозвуковых - - - 5.56mm SD - 5,56 mm Hangtompítós - 5,56mm SD - 5,56 mm SD - 5,56mm SD - 5,56mm SD - 5.56mm SD - 5,56mm SD - 5.56 Sil. - 5.56 мм дозвуковые - - - Caliber: 5.56x45 mm SD<br />Rounds: 30<br />Used in: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56x45 mm Hangtompítós<br />Lőszerek: 30<br />Használható: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56x45 mm SD<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm SD<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5.56x45 mm SD<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56 x 45 mm SD<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Ráže: 5.56x45 mm SD<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibre: 5,56x45 mm SD<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Calibro: 5.56x45 mm Sil.<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Калибр: 5.56x45 мм дозвуковые<br />Патронов: 30<br />Применимы в: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - 5.56mm 30Rnd AP Mag 5,56 mm Páncéltörő 30-as Tár @@ -474,52 +438,7 @@ Calibro: 7.62x51 mm AP<br />Munizioni: 20<br />In uso su: Mk18 ABR Калибр: 7.62x51 мм дозвуковые<br />Патронов: 20<br />Применимы в: Mk18 ABR - - Caliber: 7.62x51mm M118LR<br />Rounds: 20<br />Type: M14 - Kaliber: 7,62x51 mm M118LR<br />Lőszerek: 20<br />Típus: M14 - Kaliber: 7,62x51mm M118LR<br />Schuss: 20<br />Typ: M14 - Calibre: 7,62x51mm M118LR<br />Balas: 20<br />Tipo: M14 - Kaliber: 7,62 x 51 mm M118LR<br />Pociski: 20<br />Typ: M14 - Kalibr: 7.62x51mm M118LR<br />Náboje: 20<br />Typ: M14 - Calibre : 7,62x51mm M118LR<br />Cartouches: 20<br />Type: M14 - Calibre: 7,62x51mm M118LR<br />Projéteis: 20<br />Tipo: M14 - Калибр: 7.62x51mm M118LR<br />Патронов: 20<br />Тип: M14 - Calibro: 7.62x51mm M118LR<br />Munizioni:20<br />In uso su: M14 - - - .338 LM 10Rnd Tracer Mag - .338 LM 10-Schuss-Magazin Leuchtspur - Magazynek .338 LM 10rd Smugacz - .338 LM 10Rnd Svítící Zásobník - - - .338 LM Tracer - .338 LM Leuchtspur - .338 LM Smugacz - .338 LM Svítící - - - Caliber: .338 Lapua Magnum Tracer<br />Rounds: 10<br />Used in: MAR-10 - Kaliber: .338 Lapua Magnum Leuchtspur<br />Schuss: 10<br />Verwendet für: MAR-10 - Kaliber: .338 Lapua Magnum Smugacz<br />Pociski: 10<br />Używane w: MAR-10 - - - .338 LM 10Rnd IR-DIM Mag - .338 LM 10-Schuss-Magazin Leuchtspur IR-DIM - Magazynek .338 LM 10rd IR-DIM - - - .338 LM IR-DIM - .338 LM IR-DIM - .338 LM IR-DIM - .338 LM IR-DIM - - - Caliber: .338 Lapua Magnum Tracer IR-DIM<br />Rounds: 10<br />Used in: MAR-10 - Kaliber: .338 Lapua Magnum Leuchtspur IR-DIM<br />Schuss: 10<br />Verwendet für: MAR-10 - Kaliber: .338 Lapua Magnum Smugacz IR-DIM<br />Pociski: 10<br />Używane w: MAR-10 - .338 LM 10Rnd AP Mag .338 LM 10-Schuss-Magazin Hartkern @@ -536,22 +455,6 @@ Kaliber: .338 Lapua Magnum Hartkern<br />Schuss: 10<br />Verwendet für: MAR-10 Kaliber: .338 Lapua Magnum AP<br />Pociski: 10<br />Używany w: MAR-10 - - .338 LM 10Rnd SD Mag - .338 LM 10-Schuss-Magazin Unterschall - Magazynek .338 LM 10rd SD - - - .338 LM SD - .338 LM SD - .338 LM SD - .338 LM SD - - - Caliber: .338 Lapua Magnum SD<br />Rounds: 10<br />Used in: MAR-10 - Kaliber: .338 Lapua Magnum Unterschall<br />Schuss: 10<br />Verwendet für: MAR-10 - Kaliber: .338 Lapua Magnum SD<br />Pociski: 10<br />Używany w: MAR-10 - .338 NM 130Rnd Tracer Belt @@ -650,22 +553,6 @@ Kaliber: 9,3x64mm Hartkern<br />Schuss: 10<br />Verwendet für: Cyrus Kaliber: 9,3 x 64 mm AP<br />Pociski: 10<br />Używany w: Cyrus - - 9.3mm 10Rnd SD Mag - 9,3mm 10-Schuss-Magazin Unterschall - Magazynek 9,3mm 10rd SD - - - 9.3mm SD - 9,3mm SD - 9,3mm SD - 9.3mm SD - - - Caliber: 9.3x64mm SD<br />Rounds: 10<br />Used in: Cyrus - Kaliber: 9,3x64mm Unterschall<br />Schuss: 10<br />Verwendet für: Cyrus - Kaliber: 9,3 x 64 mm SD<br />Pociski: 10<br />Używany w: Cyrus - 9.3mm 150Rnd Tracer Belt @@ -716,16 +603,112 @@ Kaliber: 9,3 x 64 mm AP<br />Pociski: 150<br />Używane w: Navid + 9x19mm 16Rnd Mag + 9x19mm + 9x19mm 16Rnd Mag + 9x19mm 30Rnd Mag + 9x19mm + 9x19mm 30Rnd Mag + + + 7.62x54mm 10Rnd Tracer IR-DIM Mag + + + 7.62mm IR-DIM + + + 7.62x54mm 10Rnd Tracer IR-DIM Mag + + + 6.5mm 100Rnd Tracer IR-DIM Mag + + + 6.5mm IR-DIM + + + 6.5mm 100Rnd Tracer IR-DIM Mag + + + 6.5mm 200Rnd Tracer IR-DIM Belt + + + 6.5mm IR-DIM + + + 6.5mm 200Rnd Tracer IR-DIM Belt + + + 5.56mm 30Rnd Mag (Mk262) + + + 5.56mm (Mk262) + + + Caliber: 5.56x45 mm NATO (Mk262)<br />Rounds: 30 + + + 5.56mm 30Rnd Mag (Mk318) + + + 5.56mm (Mk318) + + + Caliber: 5.56x45 mm NATO (Mk318)<br />Rounds: 30 + + + 7.62mm 10Rnd Mag (M118LR) + + + 7.62mm (M118LR) + + + Caliber: 7.62x51 mm NATO (M118LR)<br />Rounds: 10 + + + 7.62mm 20Rnd Mag (M118LR) + + + 7.62mm (M118LR) + + + Caliber: 7.62x51 mm NATO (M118LR)<br />Rounds: 20 + + + 7.62mm 20Rnd Mag (Mk248 Mod 0) + + + 7.62mm (Mk248 Mod 0) + + + Caliber: 7.62x67 mm NATO (Mk248 Mod 0)<br />Rounds: 20 + + + 7.62mm 20Rnd Mag (Mk248 Mod 1) + + + 7.62mm (Mk248 Mod 1) + + + Caliber: 7.62x67 mm NATO (Mk248 Mod 1)<br />Rounds: 20 + + + 7.62mm 20Rnd Mag (Berger Hybrid OTM) + + + 7.62mm (OTM) + + + Caliber: 7.62x67 mm NATO (Berger Hybrid OTM)<br />Rounds: 20 \ No newline at end of file From 1d64b8c36ee8ed8bb5dcca9d2fd62912fa40c037 Mon Sep 17 00:00:00 2001 From: ulteq Date: Tue, 14 Apr 2015 22:22:36 +0200 Subject: [PATCH 112/246] Added the new magazines into various ammo boxes --- addons/ballistics/CfgVehicles.hpp | 150 ++++++++++++++++++++++++++++++ 1 file changed, 150 insertions(+) diff --git a/addons/ballistics/CfgVehicles.hpp b/addons/ballistics/CfgVehicles.hpp index efd2132d95..e114bef671 100644 --- a/addons/ballistics/CfgVehicles.hpp +++ b/addons/ballistics/CfgVehicles.hpp @@ -9,4 +9,154 @@ class CfgVehicles { //hitPart = "systemChat str _this"; }; }; + + class NATO_Box_Base; + class Box_NATO_Wps_F: NATO_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + }; + }; + + class Box_NATO_WpsSpecial_F: NATO_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_65x39_caseless_mag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_100Rnd_65x39_caseless_mag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_200Rnd_65x39_cased_Box_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Tracer_Dim,1); + }; + }; + + class Box_NATO_Ammo_F: NATO_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); + }; + }; + + class Box_NATO_Support_F: NATO_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,6); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_SD,3); + }; + }; + + class ReammoBox_F; + class B_supplyCrate_F: ReammoBox_F { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); + }; + }; + + class EAST_Box_Base; + class Box_East_Wps_F: EAST_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x54_Tracer_mag,4); + }; + }; + + class Box_East_WpsSpecial_F: EAST_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Tracer_Dim,1); + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x54_Tracer_mag,4); + }; + }; + + class Box_East_Ammo_F: EAST_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x54_Tracer_mag,4); + }; + }; + + class Box_East_Support_F: EAST_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,6); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_SD,3); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x54_Tracer_mag,4); + }; + }; + + class IND_Box_Base; + class Box_IND_Wps_F: IND_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk262_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk318_mag,4); + }; + }; + + class Box_IND_WpsSpecial_F: IND_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Tracer_Dim,4); + }; + }; + + class Box_IND_Ammo_F: IND_Box_Base { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk262_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk318_mag,4); + }; + }; + + class FIA_Box_Base_F; + class Box_FIA_Wps_F: FIA_Box_Base_F { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk262_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk318_mag,4); + }; + }; + + class Box_FIA_Ammo_F: FIA_Box_Base_F { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk262_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk318_mag,4); + }; + }; + + class I_supplyCrate_F: B_supplyCrate_F { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk262_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk318_mag,4); + }; + }; + + class IG_supplyCrate_F: ReammoBox_F { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk262_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk318_mag,4); + }; + }; + + class C_supplyCrate_F: ReammoBox_F { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + }; + }; + + class ACE_Box_Misc: Box_NATO_Support_F { + class TransportMagazines { + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_SD,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x67_Mk248_Mod_0_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x67_Mk248_Mod_1_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x54_Tracer_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk262_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk318_mag,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_65x39_caseless_mag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_100Rnd_65x39_caseless_mag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_200Rnd_65x39_cased_Box_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + }; + }; }; From 035ed573b8b255877c85378e3f48933f56677334 Mon Sep 17 00:00:00 2001 From: ulteq Date: Tue, 14 Apr 2015 22:23:36 +0200 Subject: [PATCH 113/246] Reworked the magazine configs --- addons/ballistics/CfgWeapons.hpp | 143 ++++++++++++++++++++++++++++++- 1 file changed, 139 insertions(+), 4 deletions(-) diff --git a/addons/ballistics/CfgWeapons.hpp b/addons/ballistics/CfgWeapons.hpp index 513829130f..7944215c29 100644 --- a/addons/ballistics/CfgWeapons.hpp +++ b/addons/ballistics/CfgWeapons.hpp @@ -56,6 +56,14 @@ class CfgWeapons { }; }; class arifle_MX_SW_F: arifle_MX_Base_F { + magazines[] = { + "100Rnd_65x39_caseless_mag_Tracer", + "100Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + "ACE_100Rnd_65x39_caseless_mag_Tracer_Dim", + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + }; initSpeed = -1.0; ACE_barrelTwist=9; ACE_barrelLength=16.0; @@ -76,6 +84,12 @@ class CfgWeapons { }; }; class arifle_MXM_F: arifle_MX_Base_F { + magazines[] = { + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim", + "ACE_30Rnd_65x47_Scenar_mag" + }; initSpeed = -1.018; ACE_barrelTwist=9; ACE_barrelLength=18; @@ -111,6 +125,11 @@ class CfgWeapons { /* Other */ class LMG_Mk200_F: Rifle_Long_Base_F { + magazines[] = { + "200Rnd_65x39_cased_Box", + "200Rnd_65x39_cased_Box_Tracer", + "ACE_200Rnd_65x39_cased_Box_Tracer_Dim" + }; initSpeed = -0.9763; class WeaponSlotsInfo: WeaponSlotsInfo { class MuzzleSlot: MuzzleSlot { @@ -180,7 +199,7 @@ class CfgWeapons { /* SMGs */ class SDAR_base_F: Rifle_Base_F { - initSpeed = -0.9723; + initSpeed = -0.989; class Single: Mode_SemiAuto { dispersion = 0.0008727; // radians. Equal to 3 MOA, about the limit of mass-produced M855 plus // some extra because Kel-Tec. @@ -284,26 +303,51 @@ class CfgWeapons { ACE_barrelLength=7; }; class arifle_Katiba_F: arifle_katiba_Base_F { - initSpeed = -1.09; + magazines[] = { + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + }; + initSpeed = -1.08; ACE_barrelTwist=8; ACE_barrelLength=28.7; }; class arifle_Katiba_C_F: arifle_katiba_Base_F { + magazines[] = { + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + }; initSpeed = -1.07; ACE_barrelTwist=8; ACE_barrelLength=26.8; }; class arifle_Katiba_GL_F: arifle_katiba_Base_F { - initSpeed = -1.09; + magazines[] = { + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + }; + initSpeed = -1.08; ACE_barrelTwist=8; ACE_barrelLength=28.7; }; class arifle_MX_F: arifle_MX_Base_F { + magazines[] = { + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + }; initSpeed = -0.99; ACE_barrelTwist=9; ACE_barrelLength=14.5; }; class arifle_MX_GL_F: arifle_MX_Base_F { + magazines[] = { + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + }; initSpeed = -0.99; ACE_barrelTwist=9; ACE_barrelLength=14.5; @@ -315,6 +359,11 @@ class CfgWeapons { }; */ class arifle_MXC_F: arifle_MX_Base_F { + magazines[] = { + "30Rnd_65x39_caseless_mag", + "30Rnd_65x39_caseless_mag_Tracer", + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + }; initSpeed = -0.965; ACE_barrelTwist=8; ACE_barrelLength=10.5; @@ -326,7 +375,17 @@ class CfgWeapons { }; */ class arifle_SDAR_F: SDAR_base_F { - initSpeed = -0.9723; + magazines[] = { + "20Rnd_556x45_UW_mag", + "30Rnd_556x45_Stanag", + "30Rnd_556x45_Stanag_Tracer_Red", + "30Rnd_556x45_Stanag_Tracer_Green", + "30Rnd_556x45_Stanag_Tracer_Yellow", + "ACE_30Rnd_556x45_Stanag_Mk262_mag", + "ACE_30Rnd_556x45_Stanag_Mk318_mag", + "ACE_30Rnd_556x45_Stanag_Tracer_Dim" + }; + initSpeed = -0.989; ACE_barrelTwist=11.25; ACE_barrelLength=18; }; @@ -336,16 +395,43 @@ class CfgWeapons { ACE_barrelLength=7.7; }; class arifle_TRG20_F: Tavor_base_F { + magazines[] = { + "30Rnd_556x45_Stanag", + "30Rnd_556x45_Stanag_Tracer_Red", + "30Rnd_556x45_Stanag_Tracer_Green", + "30Rnd_556x45_Stanag_Tracer_Yellow", + "ACE_30Rnd_556x45_Stanag_Mk262_mag", + "ACE_30Rnd_556x45_Stanag_Mk318_mag", + "ACE_30Rnd_556x45_Stanag_Tracer_Dim" + }; initSpeed = -0.95; ACE_barrelTwist=7; ACE_barrelLength=15; }; class arifle_TRG21_F: Tavor_base_F { + magazines[] = { + "30Rnd_556x45_Stanag", + "30Rnd_556x45_Stanag_Tracer_Red", + "30Rnd_556x45_Stanag_Tracer_Green", + "30Rnd_556x45_Stanag_Tracer_Yellow", + "ACE_30Rnd_556x45_Stanag_Mk262_mag", + "ACE_30Rnd_556x45_Stanag_Mk318_mag", + "ACE_30Rnd_556x45_Stanag_Tracer_Dim" + }; initSpeed = -0.989; ACE_barrelTwist=7; ACE_barrelLength=18.1; }; class arifle_TRG21_GL_F: Tavor_base_F { + magazines[] = { + "30Rnd_556x45_Stanag", + "30Rnd_556x45_Stanag_Tracer_Red", + "30Rnd_556x45_Stanag_Tracer_Green", + "30Rnd_556x45_Stanag_Tracer_Yellow", + "ACE_30Rnd_556x45_Stanag_Mk262_mag", + "ACE_30Rnd_556x45_Stanag_Mk318_mag", + "ACE_30Rnd_556x45_Stanag_Tracer_Dim" + }; initSpeed = -0.989; ACE_barrelTwist=7; ACE_barrelLength=18.1; @@ -357,16 +443,43 @@ class CfgWeapons { }; */ class arifle_Mk20_F: mk20_base_F { + magazines[] = { + "30Rnd_556x45_Stanag", + "30Rnd_556x45_Stanag_Tracer_Red", + "30Rnd_556x45_Stanag_Tracer_Green", + "30Rnd_556x45_Stanag_Tracer_Yellow", + "ACE_30Rnd_556x45_Stanag_Mk262_mag", + "ACE_30Rnd_556x45_Stanag_Mk318_mag", + "ACE_30Rnd_556x45_Stanag_Tracer_Dim" + }; initSpeed = -0.98; ACE_barrelTwist=7; ACE_barrelLength=17.4; }; class arifle_Mk20C_F: mk20_base_F { + magazines[] = { + "30Rnd_556x45_Stanag", + "30Rnd_556x45_Stanag_Tracer_Red", + "30Rnd_556x45_Stanag_Tracer_Green", + "30Rnd_556x45_Stanag_Tracer_Yellow", + "ACE_30Rnd_556x45_Stanag_Mk262_mag", + "ACE_30Rnd_556x45_Stanag_Mk318_mag", + "ACE_30Rnd_556x45_Stanag_Tracer_Dim" + }; initSpeed = -0.956; ACE_barrelTwist=7; ACE_barrelLength=16; }; class arifle_Mk20_GL_F: mk20_base_F { + magazines[] = { + "30Rnd_556x45_Stanag", + "30Rnd_556x45_Stanag_Tracer_Red", + "30Rnd_556x45_Stanag_Tracer_Green", + "30Rnd_556x45_Stanag_Tracer_Yellow", + "ACE_30Rnd_556x45_Stanag_Mk262_mag", + "ACE_30Rnd_556x45_Stanag_Mk318_mag", + "ACE_30Rnd_556x45_Stanag_Tracer_Dim" + }; initSpeed = -0.956; ACE_barrelTwist=7; ACE_barrelLength=16; @@ -377,11 +490,21 @@ class CfgWeapons { ACE_barrelLength=5.5; }; class srifle_DMR_01_F: DMR_01_base_F { + magazines[] = { + "10Rnd_762x54_Mag", + "ACE_10Rnd_762x54_Tracer_mag" + }; initSpeed = -1.025; ACE_barrelTwist=9.5; ACE_barrelLength=24; }; class srifle_EBR_F: EBR_base_F { + magazines[] = { + "20Rnd_762x51_Mag", + "ACE_20Rnd_762x51_Mag_Tracer_Dim", + "ACE_20Rnd_762x51_M118LR_Mag", + "ACE_20Rnd_762x51_Mag_SD" + }; initSpeed = -0.9724; ACE_barrelTwist=12; ACE_barrelLength=18; @@ -409,6 +532,12 @@ class CfgWeapons { ACE_barrelLength=26; }; class srifle_DMR_03_F: DMR_03_base_F { + magazines[] = { + "20Rnd_762x51_Mag", + "ACE_20Rnd_762x51_Mag_Tracer_Dim", + "ACE_20Rnd_762x51_M118LR_Mag", + "ACE_20Rnd_762x51_Mag_SD" + }; initSpeed = -0.9843; ACE_barrelTwist=10; ACE_barrelLength=20; @@ -424,6 +553,12 @@ class CfgWeapons { ACE_barrelLength=24.41; }; class srifle_DMR_06_camo_F: DMR_06_base_F { + magazines[] = { + "20Rnd_762x51_Mag", + "ACE_20Rnd_762x51_Mag_Tracer_Dim", + "ACE_20Rnd_762x51_M118LR_Mag", + "ACE_20Rnd_762x51_Mag_SD" + }; initSpeed = -0.9916; ACE_barrelTwist=12; ACE_barrelLength=22; From 91e25dc215df2340bae62b2a03fc502857ce5a2c Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 22:34:08 +0200 Subject: [PATCH 114/246] Missing stringtable entries --- addons/medical/stringtable.xml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 391e277083..5704fd0bb9 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1284,6 +1284,18 @@ %1 założył stazę %1 a appliqué un garrot
+ + Heavily wounded + Schwer verwundet: + + + Lightly wounded + Leicht verwundet: + + + Very lightly wounded + Sehr leicht verwundet: + Head Kopf From 2391c5e6d6264df1423df7670ba7e5ba6bd411c0 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 22:34:19 +0200 Subject: [PATCH 115/246] Tweak crate names --- addons/medical/CfgVehicles.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/medical/CfgVehicles.hpp b/addons/medical/CfgVehicles.hpp index dc13964752..2b1f7c9468 100644 --- a/addons/medical/CfgVehicles.hpp +++ b/addons/medical/CfgVehicles.hpp @@ -878,7 +878,7 @@ class CfgVehicles { class ACE_medicalSupplyCrate: NATO_Box_Base { scope = 2; accuracy = 1000; - displayName = "[ACE] Medical Supply Crate (basic)"; + displayName = "[ACE] Medical Supply Crate (Basic)"; model = PATHTOF(data\ace_medcrate.p3d); author = "$STR_ACE_Common_ACETeam"; class TransportItems { @@ -913,7 +913,7 @@ class CfgVehicles { }; }; class ACE_medicalSupplyCrate_advanced: ACE_medicalSupplyCrate { - displayName = "[ACE] Medical Supply Crate (advanced)"; + displayName = "[ACE] Medical Supply Crate (Advanced)"; class TransportItems { class ACE_fieldDressing { name = "ACE_fieldDressing"; From 13d7649c4a5957365cac9a698f9321564c9e04dd Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 22:49:26 +0200 Subject: [PATCH 116/246] Buff colour flashing effect --- addons/medical/XEH_postInit.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/medical/XEH_postInit.sqf b/addons/medical/XEH_postInit.sqf index 7bcb536cd3..296673ea5a 100644 --- a/addons/medical/XEH_postInit.sqf +++ b/addons/medical/XEH_postInit.sqf @@ -197,7 +197,7 @@ if (isNil QGVAR(level)) then { } else { GVAR(effectPainCA) ppEffectEnable false; if ((ACE_player getVariable [QGVAR(pain), 0]) > 0 && {alive ACE_player}) then { - _strength = _strength * 0.6; + _strength = _strength * 0.9; GVAR(effectPainCC) ppEffectEnable true; GVAR(effectPainCC) ppEffectAdjust [1,1,0, [1,1,1,1], [0,0,0,0], [1,1,1,1], [1 - _strength,1 - _strength,0,0,0,0.2,2]]; GVAR(effectPainCC) ppEffectCommit 0.01; From 676f7c8732508b1bce2e7ef746d492b6bbd4b7e1 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 22:49:39 +0200 Subject: [PATCH 117/246] Remove hitpart from action names for non-self --- addons/medical/ACE_Medical_Actions.hpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/addons/medical/ACE_Medical_Actions.hpp b/addons/medical/ACE_Medical_Actions.hpp index 72263c0b45..036dd5e9d9 100644 --- a/addons/medical/ACE_Medical_Actions.hpp +++ b/addons/medical/ACE_Medical_Actions.hpp @@ -7,7 +7,7 @@ class ACE_Head { icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitHead"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'head', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'head', 'Bandage')] call DFUNC(treatment)); @@ -78,7 +78,7 @@ class ACE_Torso { icon = PATHTOF(UI\icons\medical_cross.paa); distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitBody"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'body', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'body', 'Bandage')] call DFUNC(treatment)); @@ -178,7 +178,7 @@ class ACE_ArmLeft { distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitLeftArm"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'hand_l', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'hand_l', 'Bandage')] call DFUNC(treatment)); @@ -334,7 +334,7 @@ class ACE_ArmRight { distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitRightArm"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'hand_r', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'hand_r', 'Bandage')] call DFUNC(treatment)); @@ -487,7 +487,7 @@ class ACE_LegLeft { distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitLeftLeg"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'leg_l', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'leg_l', 'Bandage')] call DFUNC(treatment)); @@ -628,7 +628,7 @@ class ACE_LegRight { distance = MEDICAL_ACTION_DISTANCE; class Bandage { - displayName = "$STR_ACE_Medical_Bandage_HitRightLeg"; + displayName = "$STR_ACE_Medical_Bandage"; distance = 2.0; condition = QUOTE([ARR_4(_player, _target, 'leg_r', 'Bandage')] call DFUNC(canTreatCached)); statement = QUOTE([ARR_4(_player, _target, 'leg_r', 'Bandage')] call DFUNC(treatment)); From f07949cf193a6daf188bad6cacd83585901d2831 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 22:57:18 +0200 Subject: [PATCH 118/246] Remove some old todos --- addons/medical/CfgWeapons.hpp | 1 - addons/medical/XEH_postInit.sqf | 5 ----- 2 files changed, 6 deletions(-) diff --git a/addons/medical/CfgWeapons.hpp b/addons/medical/CfgWeapons.hpp index 51795d266c..8fd58e2571 100644 --- a/addons/medical/CfgWeapons.hpp +++ b/addons/medical/CfgWeapons.hpp @@ -19,7 +19,6 @@ class CfgWeapons { }; }; - // @todo localize class ACE_ItemCore; class ACE_fieldDressing: ACE_ItemCore { scope = 2; diff --git a/addons/medical/XEH_postInit.sqf b/addons/medical/XEH_postInit.sqf index 296673ea5a..12adad4210 100644 --- a/addons/medical/XEH_postInit.sqf +++ b/addons/medical/XEH_postInit.sqf @@ -153,11 +153,6 @@ GVAR(effectTimeBlood) = time; GVAR(lastHeartBeat) = time; GVAR(lastHeartBeatSound) = time; -// @todo, remove once parameters are set up -if (isNil QGVAR(level)) then { - GVAR(level) = 0; -}; - // HEARTRATE BASED EFFECTS [{ _heartRate = ACE_player getVariable [QGVAR(heartRate), 70]; From 9e64538bc7f1b89572a3fca3a97c3613487fb8b4 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 23:00:17 +0200 Subject: [PATCH 119/246] Fix minor adjustment strings --- addons/scopes/stringtable.xml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/addons/scopes/stringtable.xml b/addons/scopes/stringtable.xml index c04a4e79dc..9e070efa73 100644 --- a/addons/scopes/stringtable.xml +++ b/addons/scopes/stringtable.xml @@ -1,21 +1,20 @@  - - "Minor adjustment up + Minor adjustment up Zerowanie powoli w górę - "Minor adjustment down + Minor adjustment down Zerowanie powoli w dół - "Minor adjustment right + Minor adjustment right Zerowanie powoli w prawo - "Minor adjustment left + Minor adjustment left Zerowanie powoli w lewo @@ -39,4 +38,4 @@ Zresetuj wyzerowanie - \ No newline at end of file + From 9b80245479f32a9fbb358c84a5a1004016c5937d Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Tue, 14 Apr 2015 23:13:02 +0200 Subject: [PATCH 120/246] Fix speed limiter not working --- addons/vehicles/XEH_postInit.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/vehicles/XEH_postInit.sqf b/addons/vehicles/XEH_postInit.sqf index 8f714105b6..c7665cf2aa 100644 --- a/addons/vehicles/XEH_postInit.sqf +++ b/addons/vehicles/XEH_postInit.sqf @@ -7,7 +7,7 @@ if !(hasInterface) exitWith {}; ["ACE3", QGVAR(speedLimiter), localize "STR_ACE_SpeedLimiter", { // Conditions: canInteract - if !([ACE_player, objNull, []] call EFUNC(common,canInteractWith)) exitWith {false}; + if !([ACE_player, objNull, ["isnotinside"]] call EFUNC(common,canInteractWith)) exitWith {false}; // Conditions: specific if !(ACE_player == driver vehicle ACE_player && {vehicle ACE_player isKindOf 'Car' || From c6943fbdaf2b73b84c0134970168be5c72043b78 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 14:45:21 -0700 Subject: [PATCH 121/246] fixes to ACRE volume, and this transform should really be in set/get global volume. Closes #588 --- addons/common/functions/fnc_setHearingCapability.sqf | 2 +- addons/common/functions/fnc_setVolume.sqf | 6 +++--- addons/hearing/functions/fnc_updateVolume.sqf | 2 +- addons/medical/XEH_postInit.sqf | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/addons/common/functions/fnc_setHearingCapability.sqf b/addons/common/functions/fnc_setHearingCapability.sqf index 26d8ca98ac..c90a5448ae 100644 --- a/addons/common/functions/fnc_setHearingCapability.sqf +++ b/addons/common/functions/fnc_setHearingCapability.sqf @@ -52,4 +52,4 @@ _lowestVolume = 1; // Set Radio mod variables. player setVariable ["tf_globalVolume", _lowestVolume]; -player setVariable ["acre_sys_core_globalVolume", _lowestVolume]; +[_lowestVolume] call acre_api_fnc_setGlobalVolume; diff --git a/addons/common/functions/fnc_setVolume.sqf b/addons/common/functions/fnc_setVolume.sqf index ee2c42e39c..133a09bd24 100644 --- a/addons/common/functions/fnc_setVolume.sqf +++ b/addons/common/functions/fnc_setVolume.sqf @@ -27,8 +27,8 @@ if (_setVolume) then { player setVariable ["tf_unable_to_use_radio", false]; // ACRE2 - [NORMAL_LEVEL] call acre_api_fnc_setGlobalVolume; - player setVariable ["acre_sys_core_isDisabled", false, true]; + if (!isNil "acre_api_fnc_setGlobalVolume") then { [NORMAL_LEVEL^0.33] call acre_api_fnc_setGlobalVolume; }; + player setVariable ["acre_sys_core_isDisabled", false, true]; } else { // Vanilla Game @@ -40,7 +40,7 @@ if (_setVolume) then { player setVariable ["tf_unable_to_use_radio", true]; // ACRE2 - [MUTED_LEVEL] call acre_api_fnc_setGlobalVolume; + if (!isNil "acre_api_fnc_setGlobalVolume") then { [MUTED_LEVEL^0.33] call acre_api_fnc_setGlobalVolume; }; player setVariable ["acre_sys_core_isDisabled", true, true]; }; diff --git a/addons/hearing/functions/fnc_updateVolume.sqf b/addons/hearing/functions/fnc_updateVolume.sqf index 1aa38848a5..dd51f30e19 100644 --- a/addons/hearing/functions/fnc_updateVolume.sqf +++ b/addons/hearing/functions/fnc_updateVolume.sqf @@ -56,7 +56,7 @@ if (!(missionNameSpace getVariable [QGVAR(disableVolumeUpdate), false])) then { 0.1 fadeSound _volume; 0.1 fadeSpeech _volume; ACE_player setVariable ["tf_globalVolume", _volume]; - if (!isNil "acre_api_fnc_setGlobalVolume") then {[_volume] call acre_api_fnc_setGlobalVolume;}; + if (!isNil "acre_api_fnc_setGlobalVolume") then {[_volume^(0.33)] call acre_api_fnc_setGlobalVolume;}; }; //hintSilent format ["GVAR(currentDeafness), _Volume = %1, %2", GVAR(currentDeafness), _volume]; diff --git a/addons/medical/XEH_postInit.sqf b/addons/medical/XEH_postInit.sqf index 1b0a38f1af..905c34cd48 100644 --- a/addons/medical/XEH_postInit.sqf +++ b/addons/medical/XEH_postInit.sqf @@ -21,14 +21,14 @@ GVAR(heartBeatSounds_Slow) = ["ACE_heartbeat_slow_1", "ACE_heartbeat_slow_2"]; _unit setVariable ["tf_unable_to_use_radio", true, true]; _unit setVariable ["acre_sys_core_isDisabled", true, true]; - _unit setVariable ["acre_sys_core_globalVolume", 0.4]; + if (!isNil "acre_api_fnc_setGlobalVolume") then { [0.4] call acre_api_fnc_setGlobalVolume; }; } else { _unit setVariable ["tf_globalVolume", 1]; _unit setVariable ["tf_voiceVolume", 1, true]; _unit setVariable ["tf_unable_to_use_radio", false, true]; _unit setVariable ["acre_sys_core_isDisabled", false, true]; - _unit setVariable ["acre_sys_core_globalVolume", 1]; + if (!isNil "acre_api_fnc_setGlobalVolume") then { [1] call acre_api_fnc_setGlobalVolume; }; }; }; }] call ace_common_fnc_addEventHandler; From 85c10328ae27d28230ea9b3e15a418cb4d39d5e2 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 14:58:19 -0700 Subject: [PATCH 122/246] missed one. --- addons/common/functions/fnc_setHearingCapability.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/common/functions/fnc_setHearingCapability.sqf b/addons/common/functions/fnc_setHearingCapability.sqf index c90a5448ae..76837b4433 100644 --- a/addons/common/functions/fnc_setHearingCapability.sqf +++ b/addons/common/functions/fnc_setHearingCapability.sqf @@ -52,4 +52,4 @@ _lowestVolume = 1; // Set Radio mod variables. player setVariable ["tf_globalVolume", _lowestVolume]; -[_lowestVolume] call acre_api_fnc_setGlobalVolume; +if (!isNil "acre_api_fnc_setGlobalVolume") then { [_lowestVolume^0.33] call acre_api_fnc_setGlobalVolume; }; From c136b78fc8052877086d0bc4d553dfa8bfb5e20d Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 15:11:49 -0700 Subject: [PATCH 123/246] rename 20mm --- addons/aircraft/CfgAmmo.hpp | 2 +- addons/aircraft/CfgMagazines.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/aircraft/CfgAmmo.hpp b/addons/aircraft/CfgAmmo.hpp index f29c1d56d6..41462354d8 100644 --- a/addons/aircraft/CfgAmmo.hpp +++ b/addons/aircraft/CfgAmmo.hpp @@ -16,7 +16,7 @@ class CfgAmmo { explosionEffects = "ExploAmmoExplosion"; model = "\A3\Weapons_f\Data\bullettracer\tracer_red"; }; - class ACE_20mm_HEDP : B_20mm {}; + class ACE_20mm_HE : B_20mm {}; class ACE_20mm_AP : B_20mm { hit = 50; indirectHit = 12; diff --git a/addons/aircraft/CfgMagazines.hpp b/addons/aircraft/CfgMagazines.hpp index 2445182163..b09bac6943 100644 --- a/addons/aircraft/CfgMagazines.hpp +++ b/addons/aircraft/CfgMagazines.hpp @@ -10,7 +10,7 @@ class CfgMagazines { // an extended magazine for the comanche class 300Rnd_20mm_shells; class ACE_500Rnd_20mm_shells_Comanche: 300Rnd_20mm_shells { - ammo = "ACE_20mm_HEDP"; + ammo = "ACE_20mm_HE"; count = 500; }; }; From ad750977e0d1c4f602ecd1737f4706742130c776 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Tue, 14 Apr 2015 19:17:05 -0300 Subject: [PATCH 124/246] Fix ACRE volume on medical unconsciousness --- addons/medical/XEH_postInit.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/medical/XEH_postInit.sqf b/addons/medical/XEH_postInit.sqf index 280861adb4..309bb2a888 100644 --- a/addons/medical/XEH_postInit.sqf +++ b/addons/medical/XEH_postInit.sqf @@ -21,7 +21,7 @@ GVAR(heartBeatSounds_Slow) = ["ACE_heartbeat_slow_1", "ACE_heartbeat_slow_2"]; _unit setVariable ["tf_unable_to_use_radio", true, true]; _unit setVariable ["acre_sys_core_isDisabled", true, true]; - if (!isNil "acre_api_fnc_setGlobalVolume") then { [0.4] call acre_api_fnc_setGlobalVolume; }; + if (!isNil "acre_api_fnc_setGlobalVolume") then { [0.4^0.33] call acre_api_fnc_setGlobalVolume; }; } else { _unit setVariable ["tf_globalVolume", 1]; _unit setVariable ["tf_voiceVolume", 1, true]; From 81e61e2f047de2ca90a79f33d2a18a633c75ed3e Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 15:30:04 -0700 Subject: [PATCH 125/246] Added non-radio speaking event to ACRE isSpeaking functionality. Why is this propegating a setVariable every speaking event though? ACRE already propegates that. Closes #591 --- addons/nametags/functions/fnc_initIsSpeaking.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/nametags/functions/fnc_initIsSpeaking.sqf b/addons/nametags/functions/fnc_initIsSpeaking.sqf index b7dc920fa2..56c5cfc2f1 100644 --- a/addons/nametags/functions/fnc_initIsSpeaking.sqf +++ b/addons/nametags/functions/fnc_initIsSpeaking.sqf @@ -42,7 +42,7 @@ _pfEHCode = switch (true) do { case (isClass (configFile >> "cfgPatches" >> "acre_api")): { { _oldSetting = ACE_player getVariable [QGVAR(isSpeaking), false]; - _newSetting = ([ACE_player] call ACRE_api_fnc_isBroadcasting) || {!(isNull findDisplay 55)}; + _newSetting = ([ACE_player] call acre_api_fnc_isSpeaking) || ([ACE_player] call acre_api_fnc_isBroadcasting) || {!(isNull findDisplay 55)}; if (!(_oldSetting isEqualTo _newSetting)) then { ACE_player setVariable [QGVAR(isSpeaking), _newSetting, true]; }; From 3543b9c8068307296289ddcd752e8a5218535d4c Mon Sep 17 00:00:00 2001 From: Grzegorz Sikora Date: Wed, 15 Apr 2015 00:43:42 +0200 Subject: [PATCH 126/246] PL Translation Some french, german and russian entries were listed twice, had to remove one of two here and there so this list is for revision by different translators --- addons/ballistics/stringtable.xml | 72 +++++++++++++++++++++------- addons/common/stringtable.xml | 8 +--- addons/interact_menu/stringtable.xml | 1 - addons/interaction/stringtable.xml | 4 -- addons/laserpointer/stringtable.xml | 6 ++- addons/medical/stringtable.xml | 36 ++++++-------- addons/microdagr/stringtable.xml | 11 +++-- 7 files changed, 81 insertions(+), 57 deletions(-) diff --git a/addons/ballistics/stringtable.xml b/addons/ballistics/stringtable.xml index 721e561f83..5cc3186963 100644 --- a/addons/ballistics/stringtable.xml +++ b/addons/ballistics/stringtable.xml @@ -33,7 +33,7 @@ Kaliber: 6,5x39 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL Calibre: 6,5x39 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL Calibre: 6,5x39 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL - Kaliber: 6,5 x 39 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm Smugacz IR-DIM<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL Ráže: 6.5x39 mm Svítící IR-DIM<br />Munice: 30<br />Použití: MX/C/M/SW/3GL Calibre: 6,5x39 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL Calibro: 6.5x39 mm Traccianti IR-DIM <br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL @@ -69,7 +69,7 @@ Kaliber: 6,5x39 mm SD<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL Calibre: 6,5x39 mm SD<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL Calibre: 6,5x39 mm SD<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL - Kaliber: 6,5 x 39 mm SD<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm SD<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL Ráže: 6.5x39 mm SD<br />Munice: 30<br />Použití: MX/C/M/SW/3GL Calibre: 6,5x39 mm SD<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL Calibro: 6.5x39 mm Sil.<br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL @@ -105,7 +105,7 @@ Kaliber: 6,5x39 mm AP<br />Patronen: 30<br />Eingesetzt von: MX/C/M/SW/3GL Calibre: 6,5x39 mm AP<br />Balas: 30<br />Se usa en: MX/C/M/SW/3GL Calibre: 6,5x39 mm AP<br />Cartouches: 30<br />Utilisé dans: MX/C/M/SW/3GL - Kaliber: 6,5 x 39 mm AP<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL + Kaliber: 6,5x39 mm AP<br />Pociski: 30<br />Używane w: MX/C/M/SW/3GL Ráže: 6.5x39 mm AP<br />Munice: 30<br />Použití: MX/C/M/SW/3GL Calibre: 6,5x39 mm AP<br />Projéteis: 30<br />Usado em: MX/C/M/SW/3GL Calibro: 6.5x39 mm AP<br />Munizioni: 30<br />In uso su: MX/C/M/SW/3GL @@ -142,7 +142,7 @@ Kaliber: 6,5x39 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: Katiba Calibre: 6,5x39 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: Katiba Calibre: 6,5x39 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: Katiba - Kaliber: 6,5x39 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: Katiba + Kaliber: 6,5x39 mm Smugacz IR-DIM<br />Pociski: 30<br />Używane w: Katiba Ráže: 6.5x39 mm Svítící IR-DIM<br />Munice: 30<br />Použití: Katiba Calibre: 6,5x39 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: Katiba Calibro: 6.5x39 mm Tracciant IR-DIM<br />Munizioni: 30<br />In uso su: Katiba @@ -178,7 +178,7 @@ Kaliber: 6,5x39 mm SD<br />Patronen: 30<br />Eingesetzt von: Katiba Calibre: 6,5x39 mm SD<br />Balas: 30<br />Se usa en: Katiba Calibre: 6,5x39 mm SD<br />Cartouches: 30<br />Utilisé dans: Katiba - Kaliber: 6,5 x 39 mm SD<br />Naboje: 30<br />Używane w: Katiba + Kaliber: 6,5x39 mm SD<br />Naboje: 30<br />Używane w: Katiba Ráže: 6.5x39 mm SD<br />Munice: 30<br />Použití: Katiba Calibre: 6,5x39 mm SD<br />Projéteis: 30<br />Usado em: Katiba Calibro: 6.5x39 mm Sil.<br />Munizioni: 30<br />In uso su: Katiba @@ -214,7 +214,7 @@ Kaliber: 6,5x39 mm AP<br />Patronen: 30<br />Eingesetzt von: Katiba Calibre: 6,5x39 mm AP<br />Balas: 30<br />Se usa en: Katiba Calibre: 6,5x39 mm AP<br />Cartouches: 30<br />Utilisé dans: Katiba - Kaliber: 6,5 x 39 mm AP<br />Pociski: 30<br />Używane w: Katiba + Kaliber: 6,5x39 mm AP<br />Pociski: 30<br />Używane w: Katiba Ráže: 6.5x39 mm AP<br />Munice: 30<br />Použití: Katiba Calibre: 6,5x39 mm AP<br />Projéteis: 30<br />Usado em: Katiba Calibro: 6.5x39 mm AP<br />Munizioni: 30<br />In uso su: Katiba @@ -251,7 +251,7 @@ Kaliber: 5,56x45 mm Leuchtspur IR-DIM<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Calibre: 5,56x45 mm Trazadoras IR-DIM<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Calibre: 5,56x45 mm Traçantes IR-DIM<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56 x 45 mm Smugowy IR-DIM<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56x45 mm Smugacz IR-DIM<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Ráže: 5.56x45 mm Svítící IR-DIM<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Calibre: 5,56x45 mm Traçante IR-DIM<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Calibro: 5.56x45 mm Traccianti IR-DIM<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR @@ -287,7 +287,7 @@ Kaliber: 5,56x45 mm AP<br />Patronen: 30<br />Eingesetzt von: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Calibre: 5,56x45 mm AP<br />Balas: 30<br />Se usa en: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Calibre: 5,56x45 mm AP<br />Cartouches: 30<br />Utilisé dans: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR - Kaliber: 5,56 x 45 mm AP<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR + Kaliber: 5,56x45 mm AP<br />Pociski: 30<br />Używane w: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Ráže: 5.56x45 mm AP<br />Munice: 30<br />Použití: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Calibre: 5,56x45 mm AP<br />Projéteis: 30<br />Usado em: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR Calibro: 5.56x45 mm AP<br />Munizioni: 30<br />In uso su: TRG-20, TRG-21/EGLM, Mk20/C/EGLM, SDAR @@ -324,7 +324,7 @@ Kaliber: 7,62x51 mm Leuchtspur<br />Patronen: 20<br />Eingesetzt von: EBR Calibre: 7,62x51 mm Trazadora<br />Balas: 20<br />Se usa en: Mk18 ABR Calibre: 7,62x51 mm Traçantes<br />Cartouches: 20<br />Utilisé dans: EBR - Kaliber: 7,62 x 51 mm Smugacz<br />Pociski: 20<br />Używane w: Mk18 ABR + Kaliber: 7,62x51 mm Smugacz<br />Pociski: 20<br />Używane w: Mk18 ABR Ráže: 7.62x51 mm Svítící<br />Munice: 20<br />Použití: Mk18 ABR Calibre: 7,62x51 mm Traçante<br />Projéteis: 20<br />Usado em: Mk18 ABR Calibro: 7.62x51 mm Traccianti<br />Munizioni: 20<br />In uso su: Mk18 ABR @@ -360,7 +360,7 @@ Kaliber: 7,62x51 mm Leuchtspur IR-DIM<br />Patronen: 20<br />Eingesetzt von: EBR Calibre: 7,62x51 mm Trazadoras IR-DIM<br />Balas: 20<br />Se usa en: Mk18 ABR Calibre: 7,62x51 mm Traçantes IR-DIM<br />Cartouches: 20<br />Utilisé dans: EBR - Kaliber: 7,62 x 51 mm Smugacz IR-DIM<br />Pociski: 20<br />Używane w: Mk18 ABR + Kaliber: 7,62x51 mm Smugacz IR-DIM<br />Pociski: 20<br />Używane w: Mk18 ABR Ráže: 7.62x51 mm Svítící IR-DIM<br />Munice: 20<br />Použití: Mk18 ABR Calibre: 7,62x51 mm Traçante IR-DIM<br />Projéteis: 20<br />Usado em: Mk18 ABR Calibro: 7.62x51 mm Traccianti IR-DIM<br />Munizioni: 20<br />In uso su: Mk18 ABR @@ -396,7 +396,7 @@ Kaliber: 7,62x51 mm SD<br />Patronen: 20<br />Eingesetzt von: EBR Calibre: 7,62x51 mm SD<br />Balas: 20<br />Se usa en: Mk18 ABR Calibre: 7,62x51 mm SD<br />Cartouches: 20<br />Utilisé dans: EBR - Kaliber: 7,62 x 51 mm SD<br />Pociski: 20<br />Używane w: Mk18 ABR + Kaliber: 7,62x51 mm SD<br />Pociski: 20<br />Używane w: Mk18 ABR Ráže: 7.62x51 mm SD<br />Munice: 20<br />Použití: Mk18 ABR Calibre: 7,62x51 mm SD<br />Projéteis: 20<br />Usado em: Mk18 ABR Calibro: 7.62x51 mm Sil.<br />Munizioni: 20<br />In uso su: Mk18 ABR @@ -432,7 +432,7 @@ Kaliber: 7,62x51 mm AP<br />Patronen: 20<br />Eingesetzt von: EBR Calibre: 7,62x51 mm AP<br />Balas: 20<br />Se usa en: Mk18 ABR Calibre: 7,62x51 mm AP<br />Cartouches: 20<br />Utilisé dans: EBR - Kaliber: 7,62 x 51 mm AP<br />Pociski: 20<br />Używane w: Mk18 ABR + Kaliber: 7,62x51 mm AP<br />Pociski: 20<br />Używane w: Mk18 ABR Ráže: 7.62x51 mm AP<br />Munice: 20<br />Použití: Mk18 ABR Calibre: 7,62x51 mm AP<br />Projéteis: 20<br />Usado em: Mk18 ABR Calibro: 7.62x51 mm AP<br />Munizioni: 20<br />In uso su: Mk18 ABR @@ -519,7 +519,7 @@ Caliber: 9.3x64mm Tracer<br />Rounds: 10<br />Used in: Cyrus Kaliber: 9,3x64mm Leuchtspur<br />Schuss: 10<br />Verwendet für: Cyrus - Kaliber: 9,3 x 64 mm Smugacz<br />Pociski: 10<br />Używany w: Cyrus + Kaliber: 9,3x64 mm Smugacz<br />Pociski: 10<br />Używany w: Cyrus 9.3mm 10Rnd Tracer IR-DIM Mag @@ -535,7 +535,7 @@ Caliber: 9.3x64mm Tracer IR-DIM<br />Rounds: 10<br />Used in: Cyrus Kaliber: 9,3x64mm Leuchtspur IR-DIM<br />Schuss: 10<br />Verwendet für: Cyrus - Kaliber: 9,3 x 64 mm Smugacz IR-DIM<br />Pociski: 10<br />Używany w: Cyrus + Kaliber: 9,3x64 mm Smugacz IR-DIM<br />Pociski: 10<br />Używany w: Cyrus 9.3mm 10Rnd AP Mag @@ -551,7 +551,7 @@ Caliber: 9.3x64mm AP<br />Rounds: 10<br />Used in: Cyrus Kaliber: 9,3x64mm Hartkern<br />Schuss: 10<br />Verwendet für: Cyrus - Kaliber: 9,3 x 64 mm AP<br />Pociski: 10<br />Używany w: Cyrus + Kaliber: 9,3x64 mm AP<br />Pociski: 10<br />Używany w: Cyrus @@ -568,7 +568,7 @@ Caliber: 9.3x64mm Tracer<br />Rounds: 150<br />Used in: Navid Kaliber: 9,3x64mm Leuchtspur<br />Schuss: 150<br />Verwendet für: Navid - Kaliber: 9,3 x 64 mm Smugacz<br />Pociski: 150<br />Używane w: Navid + Kaliber: 9,3x64 mm Smugacz<br />Pociski: 150<br />Używane w: Navid 9.3mm 150Rnd Tracer IR-DIM Belt @@ -584,7 +584,7 @@ Caliber: 9.3x64mm Tracer IR-DIM<br />Rounds: 150<br />Used in: Navid Kaliber: 9,3x64mm Leuchtspur IR-DIM<br />Schuss: 150<br />Verwendet für: Navid - Kaliber: 9,3 x 64 mm Smugacz IR-DIM<br />Pociski: 150<br />Używane w: Navid + Kaliber: 9,3x64 mm Smugacz IR-DIM<br />Pociski: 150<br />Używane w: Navid 9.3mm 150Rnd AP Belt @@ -600,115 +600,151 @@ Caliber: 9.3x64mm AP<br />Rounds: 150<br />Used in: Navid Kaliber: 9,3x64mm Hartkern<br />Schuss: 150<br />Verwendet für: Navid - Kaliber: 9,3 x 64 mm AP<br />Pociski: 150<br />Używane w: Navid + Kaliber: 9,3x64 mm AP<br />Pociski: 150<br />Używane w: Navid 9x19mm 16Rnd Mag + Magazynek 9x19mm 16rd 9x19mm + 9x19mm 9x19mm 16Rnd Mag + Magazynek 9x19mm 16rd 9x19mm 30Rnd Mag + Magazynek 9x19mm 30rd 9x19mm + 9x19mm 9x19mm 30Rnd Mag + Magazynek 9x19mm 30rd 7.62x54mm 10Rnd Tracer IR-DIM Mag + Magazynek 7,62x54 mm 10rd Smugacz IR-DIM 7.62mm IR-DIM + 7,62mm IR-DIM 7.62x54mm 10Rnd Tracer IR-DIM Mag + Magazynek 7,62x54 mm 10rd Smugacz IR-DIM 6.5mm 100Rnd Tracer IR-DIM Mag + Magazynek 6,5mm 100rd Smugacz IR-DIM 6.5mm IR-DIM + 6,5mm IR-DIM 6.5mm 100Rnd Tracer IR-DIM Mag + Magazynek 6,5mm 100rd Smugacz IR-DIM 6.5mm 200Rnd Tracer IR-DIM Belt + Magazynek 6,5mm 200rd Smugacz IR-DIM 6.5mm IR-DIM + 6,5mm IR-DIM 6.5mm 200Rnd Tracer IR-DIM Belt + Magazynek 6,5mm 200rd Smugacz IR-DIM 5.56mm 30Rnd Mag (Mk262) + Magazynek 5,56mm 30rd Mk262 5.56mm (Mk262) + 5,56mm (Mk262) Caliber: 5.56x45 mm NATO (Mk262)<br />Rounds: 30 + Kaliber: 5,56x45 mm NATO (Mk262)<br />Pociski: 30 5.56mm 30Rnd Mag (Mk318) + Magazynek 5,56mm 30rd Mk318 5.56mm (Mk318) + 5,56mm (Mk318) Caliber: 5.56x45 mm NATO (Mk318)<br />Rounds: 30 + Kaliber: 5,56x45 mm NATO (Mk318)<br />Pociski: 30 7.62mm 10Rnd Mag (M118LR) + Magazynek 7,62mm 10rd (M118LR) 7.62mm (M118LR) + 7,62mm (M118LR) Caliber: 7.62x51 mm NATO (M118LR)<br />Rounds: 10 + Kaliber: 7,62x51 mm NATO (M118LR)<br />Pociski: 10 7.62mm 20Rnd Mag (M118LR) + Magazynek 7,62mm 20rd (M118LR) 7.62mm (M118LR) + 7,62mm (M118LR) Caliber: 7.62x51 mm NATO (M118LR)<br />Rounds: 20 + Kaliber: 7,62x51 mm NATO (M118LR)<br />Pociski: 20 7.62mm 20Rnd Mag (Mk248 Mod 0) + Magazynek 7,62mm 20rd (Mk248 Mod 0) 7.62mm (Mk248 Mod 0) + 7,62mm (Mk248 Mod 0) Caliber: 7.62x67 mm NATO (Mk248 Mod 0)<br />Rounds: 20 + Kaliber: 7,62x51 mm NATO (Mk248 Mod 0)<br />Pociski: 20 7.62mm 20Rnd Mag (Mk248 Mod 1) + Magazynek 7,62mm 20rd (Mk248 Mod 0) 7.62mm (Mk248 Mod 1) + 7,62mm (Mk248 Mod 1) Caliber: 7.62x67 mm NATO (Mk248 Mod 1)<br />Rounds: 20 + Kaliber: 7,62x67 mm NATO (Mk248 Mod 1)<br />Pociski: 20 7.62mm 20Rnd Mag (Berger Hybrid OTM) + Magazynek 7,62mm 20rd (Berger Hybrid OTM) 7.62mm (OTM) + 7,62mm (OTM) Caliber: 7.62x67 mm NATO (Berger Hybrid OTM)<br />Rounds: 20 + Kaliber: 7,62x67 mm NATO (Berger Hybrid OTM)<br />Pociski: 20 \ No newline at end of file diff --git a/addons/common/stringtable.xml b/addons/common/stringtable.xml index f29ff773a4..ee82f9c3a5 100644 --- a/addons/common/stringtable.xml +++ b/addons/common/stringtable.xml @@ -325,7 +325,6 @@ Acepta peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones. Akceptuj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. Accetta le richieste degli altri giocatori. Queste possono riguardare l'uso o la condivisione dell'equipaggiamento, o di determinate azioni. - Подтвердить запросы, посланные другими игроками. Это могут быть просьбы о передаче снаряжения или выполнении определённых действий. Přijimutí žádosti poslané jinými hráči. Mohou to být žádosti k použítí/sdílení vybavení nebo k vykonání určité činnosti. Принять запросы, отправленные другими игроками. Например, запросы на использование/совместное использование снаряжения, выполнение определенных действий Accepter les requêtes d'autres joueurs. Comme l'utilisation / l'échange d'équipement, la réalistion d'actions. @@ -336,7 +335,6 @@ Rechazar peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones. Ignoruj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności. Rifiuta le richieste degli altri giocatori. Queste possono riguardare l'uso o la condivisione dell'equipaggiamento, o di determinate azioni. - Отклонить запросы, посланные другими игроками. Это могут быть просьбы о передаче снаряжения или выполнении определённых действий. Zamítnutí žádostii poslané jinými hráči. Mohou to být žádosti k použítí/sdílení vybavení nebo k vykonání určité činnosti. Отклонить запросы, отправленные другими игроками. Например, запросы на использование/совместное использование снаряжения, выполнение определенных действий Rejeter les requêtes d'autres joueurs. Comme l'utilisation / l'échange d'équipement, la réalistion d'actions. @@ -433,7 +431,7 @@ A banana is an edible fruit, botanically a berry, produced by several kinds of large herbaceous flowering plants in the genus Musa. - Die Banane ist eine essbare Frucht, biologisch betrachtet jedoch eine Beere. Sie wächst an unterschiedlichen, krautartigen Gewächsen aus der Familie der Musa. + Die Bananen (Musa) sind eine Pflanzengattung in der Familie der Bananengewächse (Musaceae) innerhalb der Einkeimblättrigen Pflanzen (Monokotyledonen). Una banana es una fruta comestible, botanicamente una baya, producida por varios tipos de grandes plantas herbáceas del género Musa. Banán je protáhlé ovoce a plod banánovníku (epigeická bobule). Una banana è un frutto commestibile, nello specifico una bacca cuoiosa, prodotto da un gran numero di grandi pianti erbacee dotate di fiori, della famiglia delle Musaceae. @@ -442,8 +440,4 @@ Une banane est un fruit qui, d'un point de vue botanique, fait partie du groupe des baies. Produite par plusieurs sortes de grandes plantes à fleurs herbacées du type Musa. - - Die Bananen (Musa) sind eine Pflanzengattung in der Familie der Bananengewächse (Musaceae) innerhalb der Einkeimblättrigen Pflanzen (Monokotyledonen). - - diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index d10c6c93b7..bd8ded64ce 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -3,7 +3,6 @@ Always display cursor for self interaction - Toujours afficher le curseur pour l'interaction personnelle Immer den Cursor für Selbst-Interaktionen anzeigen. Mostrar siempre el cursor para la interacción propia Всегда показывать курсор для взаимодействия с собой diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index d28756364b..259ee9c339 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -12,7 +12,6 @@ Torso - Torse Torso Torso Trup @@ -22,7 +21,6 @@ Head - Tête Kopf Cabeza Hlava @@ -68,7 +66,6 @@ Weapon - Arme Waffe Arma Zbraň @@ -697,7 +694,6 @@ Interact - Interagir Interagiere Interagir Interakce diff --git a/addons/laserpointer/stringtable.xml b/addons/laserpointer/stringtable.xml index b9d046a03a..d53ab478e0 100644 --- a/addons/laserpointer/stringtable.xml +++ b/addons/laserpointer/stringtable.xml @@ -1,4 +1,5 @@  + @@ -39,14 +40,17 @@ Laser Laser + Laser IR Laser IR-Laser + Laser IR Switch Laser / IR Laser Umschalten Laser / IR-Laser + Przełącz Laser / Laser IR - + \ No newline at end of file diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 5704fd0bb9..65b663708b 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1,4 +1,5 @@  + @@ -18,7 +19,6 @@ Aplikovat adrenalin Injecter de l'épinéphrine Ввести адреналин - Adrénaline Adrenalin Injetar Epinefrina Inietta Epinefrina @@ -49,7 +49,6 @@ Transfuse Plasma - Plasma Plasmatransfusion Transfundir plasma Transfúze plazmy @@ -59,7 +58,6 @@ Transfuse Saline - Solution Saline Salzlösungtransfusion Transfundir salino Transfúze fyziologický roztoku @@ -69,7 +67,6 @@ Apply Tourniquet - Garrot Aderpresse anwenden Aplicar torniquete Aplikovat škrtidlo @@ -186,7 +183,6 @@ Injecting Atropine ... - Injection d'Atropine ... Atropin injizieren ... Inyectando Atropina ... Aplikuji atropin ... @@ -208,7 +204,6 @@ Transfusing Saline ... - Transfusion de Solution Saline Sallösungtransfusion ... Transfusión de salino ... Probíha transfúze fyziologický roztoku ... @@ -218,7 +213,6 @@ Transfusing Plasma ... - Transfusion de Plasma Plasmatransfusion ... Transfusión de plasma ... Probíha transfúze plazmy ... @@ -294,7 +288,6 @@ Check Pulse - Vérification du Pouls Puls überprüfen Comprobar pulso Проверить пульс @@ -421,7 +414,6 @@ Minor - Blessé léger Gering Menor Незначительная @@ -906,7 +898,6 @@ Bodybag Sac à corps Мешок для трупов - Housse mortuaire Bolsa para cadáveres Worek na zwłoki Leichensack @@ -947,7 +938,6 @@ You checked %1 Vous diagnostiquez %1 Вы осмотрели раненого %1 - Vous examinez %1 Examinando a %1 Zbadałeś %1 Kontrolliert %1 @@ -957,6 +947,7 @@ Vous avez trouvé une tension de %2/%3 Артериальное давление %2/%3 La Presión Arterial es %2/%3 + Wyczuwasz ciśnienie krwi o wartości %2/%3 You find a low blood pressure @@ -1000,7 +991,6 @@ Pulse - Pulsations Пульс Pouls Pulso @@ -1017,7 +1007,6 @@ You checked %1 - Vous avez Diagnostiqué %1 Вы осмотрели раненого %1 Vous examinez %1 Examinando a %1 @@ -1076,14 +1065,12 @@ You check response of patient Vous vérifiez la réponse du patient Вы проверяете реакцию раненого - Vérification de l'état de conscience du patient Compruebas si el paciente reacciona Sprawdzasz przytomność pacjenta Du prüfst ob der Patient ansprechbar ist %1 is responsive - %1 est conscient %1 реагирует на раздражители %1 est conscient %1 ha reaccionado @@ -1092,7 +1079,6 @@ %1 is not responsive - %1 n'est pas conscient %1 не реагирует %1 est inconscient %1 no reacciona @@ -1101,7 +1087,6 @@ You checked %1 - Vous diagnostiqué %1 Вы осмотрели раненого %1 Vous avez examiné %1 Examinas a %1 @@ -1112,7 +1097,6 @@ Bandaged Bandé Повязка наложена - Pansement appliqué Vendado Zabandażowano @@ -1120,7 +1104,6 @@ You bandage %1 (%2) Vous bandez %1 (%2) Вы перевязали раненого %1 (%2) - Vous avez pansé %1 (%2) Aplicas vendaje a %1 en %2 Bandażujesz %1 (%2) @@ -1128,7 +1111,6 @@ %1 is bandaging you %1 vous bande %1 перевязывает вас - %1 vous applique un pansement %1 te está vendando %1 bandażuje Ciebie @@ -1287,50 +1269,62 @@ Heavily wounded Schwer verwundet: + Ciężko ranny Lightly wounded Leicht verwundet: + Lekko ranny Very lightly wounded Sehr leicht verwundet: + B. lekko ranny Head Kopf + Głowa Torso Torso + Tors Left Arm Linker Arm + Lewe ramię Right Arm Rechter Arm + Prawe ramię Left Leg Linkes Bein + Lewa noga Right Leg Rechtes Bein + Prawa noga Pain Effect Type Schmerzeffekt-Typ + Rodzaj efektu bólu Colour Flashing Farbblinken + Pulsujące kolory Chromatic Aberration Chromatische Aberration + Aberracja chromatyczna - + \ No newline at end of file diff --git a/addons/microdagr/stringtable.xml b/addons/microdagr/stringtable.xml index 0f3c1368cb..12962ea1ac 100644 --- a/addons/microdagr/stringtable.xml +++ b/addons/microdagr/stringtable.xml @@ -1,4 +1,5 @@  + @@ -201,7 +202,7 @@ MicoDAGR Anzeigemodus Wechseln Conmutar modo de pantalla del MicroDAGR Сменить режим показа MicroDAGR - Przełącz tryb wyświetlania MicroDAGR + Przełącz GUI MicroDAGR Basculer le mode d'affichage MicroDAGR Přepnout zobrazení MircroDAGRu @@ -211,7 +212,7 @@ Mostrar MicroDAGR Показать MicroDAGR Ukázat MicroDAGR GPS - Pokaż MicroDAGR + Pokaż<br />MicroDAGR Afficher MicroDAGR @@ -220,7 +221,7 @@ Configurar MicroDAGR Настроить MicroDAGR Konfigurovat MicroDAGR GPS - Konfiguruj MicroDAGR + Konfiguruj<br />MicroDAGR Configurer MicroDAGR @@ -229,8 +230,8 @@ Cerrar MicroDAGR Закрыть MicroDAGR Zavřít MicroDAGR GPS - Zamknij MicroDAGR + Zamknij<br />MicroDAGR Fermer MicroDAGR - + \ No newline at end of file From ee04ea2f41b3583ecf31c4d55c402588eb1e3395 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Tue, 14 Apr 2015 20:21:11 -0300 Subject: [PATCH 127/246] Allow actions on coordinates instead of selections --- addons/interact_menu/functions/fnc_compileMenu.sqf | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/addons/interact_menu/functions/fnc_compileMenu.sqf b/addons/interact_menu/functions/fnc_compileMenu.sqf index a0b9b31dd4..e5b6e28c57 100644 --- a/addons/interact_menu/functions/fnc_compileMenu.sqf +++ b/addons/interact_menu/functions/fnc_compileMenu.sqf @@ -38,10 +38,17 @@ _recurseFnc = { _distance = getNumber (_entryCfg >> "distance"); _icon = getText (_entryCfg >> "icon"); _statement = compile (getText (_entryCfg >> "statement")); - _selection = getText (_entryCfg >> "selection"); - if (_selection == "") then { - _selection = [0,0,0]; + + _selection = ""; + if (isArray ( _entryCfg >> "selection" )) then { + _selection = getArray ( _entryCfg >> "selection" ) + } else { + _selection = getText (_entryCfg >> "selection") + if (_selection == "") then { + _selection = [0,0,0]; + }; }; + _condition = getText (_entryCfg >> "condition"); if (_condition == "") then {_condition = "true"}; From d538cd257cd130800093f8e8d7da719b884616e7 Mon Sep 17 00:00:00 2001 From: Grzegorz Date: Wed, 15 Apr 2015 01:44:33 +0200 Subject: [PATCH 128/246] PL translation fix Typo, wrote Mk248 Mod 0, should be Mk248 Mod 1 --- addons/ballistics/stringtable.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/ballistics/stringtable.xml b/addons/ballistics/stringtable.xml index 5cc3186963..51447237b4 100644 --- a/addons/ballistics/stringtable.xml +++ b/addons/ballistics/stringtable.xml @@ -724,7 +724,7 @@ 7.62mm 20Rnd Mag (Mk248 Mod 1) - Magazynek 7,62mm 20rd (Mk248 Mod 0) + Magazynek 7,62mm 20rd (Mk248 Mod 1) 7.62mm (Mk248 Mod 1) @@ -747,4 +747,4 @@ Kaliber: 7,62x67 mm NATO (Berger Hybrid OTM)<br />Pociski: 20 - \ No newline at end of file + From 4cdf61ab9eb0bfe89b8c40fb0da390c638229a57 Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 01:50:58 +0200 Subject: [PATCH 129/246] fix misc issues with rallypoints --- addons/respawn/CfgEventHandlers.hpp | 43 ++- addons/respawn/CfgVehicles.hpp | 330 ++++++++---------- .../respawn/functions/fnc_moveRallypoint.sqf | 6 +- addons/respawn/functions/fnc_restoreGear.sqf | 14 + .../functions/fnc_teleportToRallypoint.sqf | 23 +- 5 files changed, 210 insertions(+), 206 deletions(-) diff --git a/addons/respawn/CfgEventHandlers.hpp b/addons/respawn/CfgEventHandlers.hpp index c4a50615d1..7b00950931 100644 --- a/addons/respawn/CfgEventHandlers.hpp +++ b/addons/respawn/CfgEventHandlers.hpp @@ -6,15 +6,54 @@ class Extended_PreInit_EventHandlers { class Extended_Killed_EventHandlers { class CAManBase { - class GVAR(HandleGear) { + class ADDON { killed = QUOTE(_this call FUNC(handleKilled)); }; }; }; + class Extended_Respawn_EventHandlers { class CAManBase { - class GVAR(HandleGear) { + class ADDON { respawn = QUOTE(_this call FUNC(handleRespawn)); }; }; }; + +class Extended_Init_EventHandlers { + class ACE_Rallypoint_West { + class ADDON { + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; _this call FUNC(initRallypoint)); + }; + }; + + class ACE_Rallypoint_East { + class ADDON { + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; _this call FUNC(initRallypoint)); + }; + }; + + class ACE_Rallypoint_Independent { + class ADDON { + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; _this call FUNC(initRallypoint)); + }; + }; + + class ACE_Rallypoint_West_Base { + class ADDON { + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; _this call FUNC(initRallypoint)); + }; + }; + + class ACE_Rallypoint_East_Base { + class ADDON { + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; _this call FUNC(initRallypoint)); + }; + }; + + class ACE_Rallypoint_Independent_Base { + class ADDON { + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; _this call FUNC(initRallypoint)); + }; + }; +}; diff --git a/addons/respawn/CfgVehicles.hpp b/addons/respawn/CfgVehicles.hpp index 4b763074c2..c8ca4f9216 100644 --- a/addons/respawn/CfgVehicles.hpp +++ b/addons/respawn/CfgVehicles.hpp @@ -1,6 +1,6 @@ class CfgVehicles { class Module_F; - class ACE_ModuleRespawn : Module_F { + class ACE_ModuleRespawn: Module_F { author = "$STR_ACE_Common_ACETeam"; category = "ACE"; displayName = "Respawn System"; @@ -8,20 +8,24 @@ class CfgVehicles { scope = 2; isGlobal = 1; icon = QUOTE(PATHTOF(UI\Icon_Module_Respawn_ca.paa)); + class Arguments { class SavePreDeathGear { displayName = "Save Gear?"; description = "Respawn with the gear a soldier had just before his death?"; typeName = "BOOL"; + class values { class Yes { name = "Yes"; value = 1; }; class No { default = 1; name = "No"; value = 0; }; }; }; + class RemoveDeadBodiesDisconnected { displayName = "Remove bodies?"; description = "Remove player bodies after disconnect?"; typeName = "BOOL"; + class values { class Yes { default = 1; name = "Yes"; value = 1; }; class No { name = "No"; value = 0; }; @@ -30,7 +34,7 @@ class CfgVehicles { }; }; - class ACE_ModuleFriendlyFire : Module_F { + class ACE_ModuleFriendlyFire: Module_F { author = "$STR_ACE_Common_ACETeam"; category = "ACE"; displayName = "Friendly Fire Messages"; @@ -38,11 +42,11 @@ class CfgVehicles { scope = 2; isGlobal = 1; icon = QUOTE(PATHTOF(UI\Icon_Module_FriendlyFire_ca.paa)); - class Arguments { - }; + + class Arguments {}; }; - class ACE_ModuleRallypoint : Module_F { + class ACE_ModuleRallypoint: Module_F { author = "$STR_ACE_Common_ACETeam"; category = "ACE"; displayName = "Rallypoint System"; @@ -50,186 +54,8 @@ class CfgVehicles { scope = 2; isGlobal = 1; icon = QUOTE(PATHTOF(UI\Icon_Module_Rallypoint_ca.paa)); - class Arguments { - }; - }; - // rallypoints - class FlagCarrier; - class Flag_NATO_F : FlagCarrier { - class ACE_Actions; - }; - - class Flag_CSAT_F : FlagCarrier { - class ACE_Actions; - }; - - class Flag_AAF_F : FlagCarrier { - class ACE_Actions; - }; - - // static - class ACE_Rallypoint_West: Flag_NATO_F { - XEH_ENABLED; - - author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint West Base"; - vehicleClass = QGVAR(Rallypoints); - - class EventHandlers { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; _this call FUNC(initRallypoint)); - }; - class ACE_Actions : ACE_Actions { - class ACE_MainActions { - distance = 5; - condition = "true"; - selection = ""; - class ACE_Teleport { - displayName = "Teleport to Rallypoint"; - distance = 4; - condition = QUOTE(side group _player == west); - statement = QUOTE([ARR_3(_player, side group _player, false)] call FUNC(teleportToRallypoint)); - showDisabled = 1; - priority = 1; - }; - }; - }; - }; - - class ACE_Rallypoint_East: Flag_CSAT_F { - XEH_ENABLED; - - author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint East Base"; - vehicleClass = QGVAR(Rallypoints); - - class EventHandlers { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; _this call FUNC(initRallypoint)); - }; - class ACE_Actions : ACE_Actions { - class ACE_MainActions { - distance = 5; - condition = "true"; - selection = ""; - class ACE_Teleport { - displayName = "Teleport to Rallypoint"; - distance = 4; - condition = QUOTE(side group _player == east); - statement = QUOTE([ARR_3(_player, side group _player, false)] call FUNC(teleportToRallypoint)); - showDisabled = 1; - priority = 1; - }; - }; - }; - }; - - class ACE_Rallypoint_Independent: Flag_AAF_F { - XEH_ENABLED; - - author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint Independent Base"; - vehicleClass = QGVAR(Rallypoints); - - class EventHandlers { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; _this call FUNC(initRallypoint)); - }; - class ACE_Actions : ACE_Actions { - class ACE_MainActions { - distance = 5; - condition = "true"; - selection = ""; - class ACE_Teleport { - displayName = "Teleport to Rallypoint"; - distance = 4; - condition = QUOTE(side group _player == independent); - statement = QUOTE([ARR_3(_player, side group _player, false)] call FUNC(teleportToRallypoint)); - showDisabled = 1; - priority = 1; - }; - }; - }; - }; - - // moveable - class ACE_RallypointExit_West: Flag_NATO_F { - XEH_ENABLED; - - author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint West"; - vehicleClass = QGVAR(Rallypoints); - - class EventHandlers { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; _this call FUNC(initRallypoint)); - }; - class ACE_Actions : ACE_Actions { - class ACE_MainActions { - distance = 5; - condition = "true"; - selection = ""; - class ACE_Teleport { - displayName = "Teleport to Base"; - distance = 4; - condition = QUOTE(side group _player == west); - statement = QUOTE([ARR_3(_player, side group _player, true)] call FUNC(teleportToRallypoint)); - showDisabled = 1; - priority = 1; - }; - }; - }; - }; - - class ACE_RallypointExit_East: Flag_CSAT_F { - XEH_ENABLED; - - author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint East"; - vehicleClass = QGVAR(Rallypoints); - - class EventHandlers { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; _this call FUNC(initRallypoint)); - }; - class ACE_Actions : ACE_Actions { - class ACE_MainActions { - distance = 5; - condition = "true"; - selection = ""; - class ACE_Teleport { - displayName = "Teleport to Base"; - distance = 4; - condition = QUOTE(side group _player == east); - statement = QUOTE([ARR_3(_player, side group _player, true)] call FUNC(teleportToRallypoint)); - showDisabled = 1; - priority = 1; - }; - }; - }; - }; - - class ACE_RallypointExit_Independent: Flag_AAF_F { - XEH_ENABLED; - - author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint Independent"; - vehicleClass = QGVAR(Rallypoints); - - class EventHandlers { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; _this call FUNC(initRallypoint)); - }; - class ACE_Actions : ACE_Actions { - class ACE_MainActions { - distance = 5; - condition = "true"; - selection = ""; - class ACE_Teleport { - displayName = "Teleport to Base"; - distance = 4; - condition = QUOTE(side group _player == independent); - statement = QUOTE([ARR_3(_player, side group _player, true)] call FUNC(teleportToRallypoint)); - showDisabled = 1; - priority = 1; - }; - }; - }; + class Arguments {}; }; // team leader @@ -245,4 +71,140 @@ class CfgVehicles { }; }; }; + + // rallypoints + class FlagCarrier; + class Flag_NATO_F: FlagCarrier { + class ACE_Actions; + }; + + class Flag_CSAT_F: FlagCarrier { + class ACE_Actions; + }; + + class Flag_AAF_F: FlagCarrier { + class ACE_Actions; + }; + + // static + class ACE_Rallypoint_West_Base: Flag_NATO_F { + XEH_ENABLED; + + author = "$STR_ACE_Common_ACETeam"; + displayName = "Rallypoint West Base"; + vehicleClass = QGVAR(Rallypoints); + + class ACE_Actions: ACE_Actions { + class ACE_Teleport { + displayName = "$STR_ACE_Respawn_TeleportedToRallypoint"; + distance = 4; + condition = QUOTE(side group _player == west); + statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_West')] call FUNC(teleportToRallypoint)); + position[] = {0,0,-1}; + showDisabled = 1; + priority = 1; + }; + }; + }; + + class ACE_Rallypoint_East_Base: Flag_CSAT_F { + XEH_ENABLED; + + author = "$STR_ACE_Common_ACETeam"; + displayName = "Rallypoint East Base"; + vehicleClass = QGVAR(Rallypoints); + + class ACE_Actions: ACE_Actions { + class ACE_Teleport { + displayName = "$STR_ACE_Respawn_TeleportedToRallypoint"; + distance = 4; + condition = QUOTE(side group _player == east); + statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_East')] call FUNC(teleportToRallypoint)); + position[] = {0,0,-1}; + showDisabled = 1; + priority = 1; + }; + }; + }; + + class ACE_Rallypoint_Independent_Base: Flag_AAF_F { + XEH_ENABLED; + + author = "$STR_ACE_Common_ACETeam"; + displayName = "Rallypoint Independent Base"; + vehicleClass = QGVAR(Rallypoints); + + class ACE_Actions: ACE_Actions { + class ACE_Teleport { + displayName = "$STR_ACE_Respawn_TeleportedToRallypoint"; + distance = 4; + condition = QUOTE(side group _player == independent); + statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_Independent')] call FUNC(teleportToRallypoint)); + position[] = {0,0,-1}; + showDisabled = 1; + priority = 1; + }; + }; + }; + + // moveable + class ACE_Rallypoint_West: Flag_NATO_F { + XEH_ENABLED; + + author = "$STR_ACE_Common_ACETeam"; + displayName = "Rallypoint West"; + vehicleClass = QGVAR(Rallypoints); + + class ACE_Actions: ACE_Actions { + class ACE_Teleport { + displayName = "$STR_ACE_Respawn_TeleportedToBase"; + distance = 4; + condition = QUOTE(side group _player == west); + statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_West_Base')] call FUNC(teleportToRallypoint)); + position[] = {0,0,-1}; + showDisabled = 1; + priority = 1; + }; + }; + }; + + class ACE_Rallypoint_East: Flag_CSAT_F { + XEH_ENABLED; + + author = "$STR_ACE_Common_ACETeam"; + displayName = "Rallypoint East"; + vehicleClass = QGVAR(Rallypoints); + + class ACE_Actions: ACE_Actions { + class ACE_Teleport { + displayName = "$STR_ACE_Respawn_TeleportedToBase"; + distance = 4; + condition = QUOTE(side group _player == east); + statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_East_Base')] call FUNC(teleportToRallypoint)); + position[] = {0,0,-1}; + showDisabled = 1; + priority = 1; + }; + }; + }; + + class ACE_Rallypoint_Independent: Flag_AAF_F { + XEH_ENABLED; + + author = "$STR_ACE_Common_ACETeam"; + displayName = "Rallypoint Independent"; + vehicleClass = QGVAR(Rallypoints); + + class ACE_Actions: ACE_Actions { + class ACE_Teleport { + displayName = "$STR_ACE_Respawn_TeleportedToBase"; + distance = 4; + condition = QUOTE(side group _player == independent); + statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_Independent_Base')] call FUNC(teleportToRallypoint)); + position[] = {0,0,-1}; + showDisabled = 1; + priority = 1; + }; + }; + }; }; diff --git a/addons/respawn/functions/fnc_moveRallypoint.sqf b/addons/respawn/functions/fnc_moveRallypoint.sqf index dcd4810844..d937363310 100644 --- a/addons/respawn/functions/fnc_moveRallypoint.sqf +++ b/addons/respawn/functions/fnc_moveRallypoint.sqf @@ -26,8 +26,8 @@ _this spawn { _rallypoint = [ objNull, missionNamespace getVariable ["ACE_Rallypoint_West", objNull], - missionNamespace getVariable ["ACE_RallypointExit_East", objNull], - missionNamespace getVariable ["ACE_RallypointExit_Independent", objNull] + missionNamespace getVariable ["ACE_Rallypoint_East", objNull], + missionNamespace getVariable ["ACE_Rallypoint_Independent", objNull] ] select ([west, east, independent] find _side) + 1; if (isNull _rallypoint) exitWith {}; @@ -50,5 +50,5 @@ _this spawn { _marker setMarkerTextLocal format ["%1:%2", [date select 3, 2, 0] call CBA_fnc_FORMATNumber, [date select 4, 2, 0] call CBA_fnc_FORMATNumber]; */ - [localize "STR_ACE_Respawn_Deploy"] call EFUNC(common,displayTextStructured); + [localize "STR_ACE_Respawn_Deployed"] call EFUNC(common,displayTextStructured); }; diff --git a/addons/respawn/functions/fnc_restoreGear.sqf b/addons/respawn/functions/fnc_restoreGear.sqf index 18afba344b..5a00e3425c 100644 --- a/addons/respawn/functions/fnc_restoreGear.sqf +++ b/addons/respawn/functions/fnc_restoreGear.sqf @@ -76,6 +76,8 @@ if (_goggles != "") then { _unit addItemToVest _x; }forEach _vestitems; +private "_flagRemoveDummyBag"; +_flagRemoveDummyBag = false; if(format["%1", _backpack] != "") then { _unit addBackpack _backpack; @@ -87,6 +89,12 @@ if(format["%1", _backpack] != "") then { { _unit addItemToBackpack _x; } forEach _backpackitems; + +} else { + // dummy backpack to ensure mags being loaded + _unit addBackpack "B_Kitbag_Base"; + + _flagRemoveDummyBag = true; }; @@ -138,6 +146,12 @@ if (_handgunweapon != "") then { }; +// remove dummy bagpack +if (_flagRemoveDummyBag) then { + removeBackpack _unit; +}; + + _assignedItems = _assignedItems - [_binocular]; // items diff --git a/addons/respawn/functions/fnc_teleportToRallypoint.sqf b/addons/respawn/functions/fnc_teleportToRallypoint.sqf index 8d898441ee..82a1d68e05 100644 --- a/addons/respawn/functions/fnc_teleportToRallypoint.sqf +++ b/addons/respawn/functions/fnc_teleportToRallypoint.sqf @@ -18,30 +18,19 @@ #include "script_component.hpp" -private ["_unit", "_side", "_toBase", "_rallypoint"]; +private ["_unit", "_side", "_rallypoint", "_toBase"]; _unit = _this select 0; _side = _this select 1; -_toBase = _this select 2; +_rallypoint = _this select 2; // rallypoint names are defined in CfgVehicles.hpp -_rallypoint = ([ - [ - objNull, - missionNamespace getVariable ["ACE_RallypointExit_West", objNull], - missionNamespace getVariable ["ACE_RallypointExit_East", objNull], - missionNamespace getVariable ["ACE_RallypointExit_Independent", objNull] - ], - [ - objNull, - missionNamespace getVariable ["ACE_Rallypoint_West", objNull], - missionNamespace getVariable ["ACE_Rallypoint_East", objNull], - missionNamespace getVariable ["ACE_Rallypoint_Independent", objNull] - ] -] select _toBase) select ([west, east, independent] find _side) + 1; +_toBase = _rallypoint find "_Base" != -1; + +_rallypoint = missionNamespace getVariable [_rallypoint, objNull], if (isNull _rallypoint) exitWith {}; -_unit setPosASL (getPosASL _rallypoint); +_unit setPosASL getPosASL _rallypoint; [[localize "STR_ACE_Respawn_TeleportedToRallypoint", localize "STR_ACE_Respawn_TeleportedToBase"] select _toBase] call EFUNC(common,displayTextStructured); From b39209cc28357ef5535936a38d5bbf61a1f01ff5 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 17:09:13 -0700 Subject: [PATCH 130/246] BAD @esteldunedain! BAD DOGGY! --- addons/interact_menu/functions/fnc_compileMenu.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/interact_menu/functions/fnc_compileMenu.sqf b/addons/interact_menu/functions/fnc_compileMenu.sqf index e5b6e28c57..baf8e1c272 100644 --- a/addons/interact_menu/functions/fnc_compileMenu.sqf +++ b/addons/interact_menu/functions/fnc_compileMenu.sqf @@ -43,7 +43,7 @@ _recurseFnc = { if (isArray ( _entryCfg >> "selection" )) then { _selection = getArray ( _entryCfg >> "selection" ) } else { - _selection = getText (_entryCfg >> "selection") + _selection = getText (_entryCfg >> "selection"); if (_selection == "") then { _selection = [0,0,0]; }; From 1488ba2aac5be6a0f37c50922e888e7d6e04b58c Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Tue, 14 Apr 2015 19:52:30 -0500 Subject: [PATCH 131/246] #595 - Hide ace optino button if no world loaded I wanted to use a rscMapControl onDraw, but it throws an error onMouseMoving seems odd, but it works and I don't have to overload onLoad --- addons/optionsmenu/config.cpp | 26 +++++++++++++------------- addons/optionsmenu/gui/pauseMenu.hpp | 5 ++++- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/addons/optionsmenu/config.cpp b/addons/optionsmenu/config.cpp index 89d5768603..675e415e47 100644 --- a/addons/optionsmenu/config.cpp +++ b/addons/optionsmenu/config.cpp @@ -1,23 +1,23 @@ #include "script_component.hpp" class CfgPatches { - class ADDON { - units[] = {"ACE_moduleAllowConfigExport"}; - weapons[] = {}; - requiredVersion = REQUIRED_VERSION; - requiredAddons[] = {"ace_common"}; - author[] = {"Glowbal", "PabstMirror"}; - authorUrl = "http://github.com/Glowbal"; - VERSION_CONFIG; - }; + class ADDON { + units[] = {"ACE_moduleAllowConfigExport"}; + weapons[] = {}; + requiredVersion = REQUIRED_VERSION; + requiredAddons[] = {"ace_common"}; + author[] = {"Glowbal", "PabstMirror"}; + authorUrl = "http://github.com/Glowbal"; + VERSION_CONFIG; + }; }; class CfgAddons { - class PreloadAddons { - class ADDON { - list[] = {QUOTE(ADDON)}; + class PreloadAddons { + class ADDON { + list[] = {QUOTE(ADDON)}; + }; }; - }; }; diff --git a/addons/optionsmenu/gui/pauseMenu.hpp b/addons/optionsmenu/gui/pauseMenu.hpp index d6a831c2aa..c4cbae9916 100644 --- a/addons/optionsmenu/gui/pauseMenu.hpp +++ b/addons/optionsmenu/gui/pauseMenu.hpp @@ -96,11 +96,14 @@ class RscDisplayInterruptEditor3D: RscStandardDisplay { }; }; class RscDisplayMain: RscStandardDisplay { + //Hide the button if there is no world (-world=empty) + //Seems odd to use onMouseMoving, but I don't want to overload onLoad + onMouseMoving = "((_this select 0) displayCtrl 80085) ctrlShow (missionName != '');"; class controls { class ACE_Open_settingsMenu_Btn : ACE_Open_SettingsMenu_BtnBase { action = "if (missionName != '') then {createDialog 'ACE_settingsMenu';};"; y = "4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + safezoneY"; + idc = 80085; }; }; }; - From 2940d1f83cc521b9f89835f57f263709f7dfe3b2 Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 03:10:17 +0200 Subject: [PATCH 132/246] base rallypoints create a respawn marker if none is present in the mission --- addons/respawn/CfgEventHandlers.hpp | 14 ++++++++------ addons/respawn/functions/fnc_initRallypoint.sqf | 7 ++++++- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/addons/respawn/CfgEventHandlers.hpp b/addons/respawn/CfgEventHandlers.hpp index 7b00950931..9ff7a2bae8 100644 --- a/addons/respawn/CfgEventHandlers.hpp +++ b/addons/respawn/CfgEventHandlers.hpp @@ -23,37 +23,39 @@ class Extended_Respawn_EventHandlers { class Extended_Init_EventHandlers { class ACE_Rallypoint_West { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; _this call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; [ARR_2(_this select 0,'')] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_East { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; _this call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; [ARR_2(_this select 0,'')] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_Independent { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; _this call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; [ARR_2(_this select 0,'')] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_West_Base { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; _this call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; [ARR_2(_this select 0,'respawn_west')] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_East_Base { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; _this call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; [ARR_2(_this select 0,'respawn_east')] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_Independent_Base { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; _this call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; [ARR_2(_this select 0,'respawn_guerrila')] call FUNC(initRallypoint)); }; }; + + //respawn_civilian }; diff --git a/addons/respawn/functions/fnc_initRallypoint.sqf b/addons/respawn/functions/fnc_initRallypoint.sqf index cb4d55146f..c266026e11 100644 --- a/addons/respawn/functions/fnc_initRallypoint.sqf +++ b/addons/respawn/functions/fnc_initRallypoint.sqf @@ -16,9 +16,10 @@ #include "script_component.hpp" -private ["_rallypoint", "_name"]; +private ["_rallypoint", "_respawnMarker", "_name"]; _rallypoint = _this select 0; +_respawnMarker = _this select 1; if (!local _rallypoint) exitWith {}; @@ -31,3 +32,7 @@ if (isNil _name) then { deleteVehicle _rallypoint; diag_log text "[ACE] Respawn: ERROR Multiple Rallypoints of same type."; }; + +if (isServer && {_respawnMarker != ""} && {!(_respawnMarker in allMapMarkers)}) then { + createMarker [_respawnMarker, _rallypoint]; +}; From 37de67395f1af80ddce823f6fca4ff08206357cd Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 18:18:27 -0700 Subject: [PATCH 133/246] Fixed: issue where Javelin wouldn't hit > 1500 --- addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf index 4e83e046ff..dc8b9b8e9d 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf @@ -57,7 +57,8 @@ switch( (_state select 0) ) do { }; case STAGE_COAST: { TRACE_1("STAGE_COAST",""); - if(_distanceShooterToTarget < 1250 || _distanceToTarget < ( ((ASLToATL _projectilePos) select 2) - (( ASLToATL _seekerTargetPos) select 2) )) then { + 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 { _state set[0, STAGE_TERMINAL]; }; _returnTargetPos = _seekerTargetPos vectorAdd [0,0,(_projectilePos select 2)]; From ef6d0902386765811317bd6867388872a1b2cac8 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 18:18:38 -0700 Subject: [PATCH 134/246] Fixed: JAV_DIR was erroring. --- .../functions/fnc_attackProfile_JAV_DIR.sqf | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf b/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf index da01b7d900..822afd7f1b 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf @@ -43,12 +43,8 @@ switch( (_state select 0) ) do { }; case STAGE_CLIMB: { TRACE_1("STAGE_CLIMB",""); - _cruisAlt = 60; - if(_distanceShooterToTarget < w) then { - _cruisAlt = 60 * (_distanceShooterToTarget/2000); - TRACE_1("_cruisAlt", _cruisAlt); - }; - + _cruisAlt = 60 * (_distanceShooterToTarget/2000); + if( ((ASLToATL _projectilePos) select 2) - ((ASLToATL _seekerTargetPos) select 2) >= _cruisAlt) then { _state set[0, STAGE_TERMINAL]; } else { From ad95105508cc712beb256d32886c8fc3f2a9eeea Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 18:25:02 -0700 Subject: [PATCH 135/246] Added and enabled AMG for AI. --- addons/missileguidance/ACE_Settings.hpp | 7 ++++ addons/missileguidance/CfgEventhandlers.hpp | 8 ++++- addons/missileguidance/XEH_pre_init.sqf | 3 +- .../{fnc_fired.sqf => fnc_onFired.sqf} | 34 ++++++++++++------- .../functions/fnc_onIncomingMissile.sqf | 7 ++++ .../functions/fnc_seekerType_SALH.sqf | 12 ++++--- addons/missileguidance/stringtable.xml | 6 ++++ 7 files changed, 59 insertions(+), 18 deletions(-) rename addons/missileguidance/functions/{fnc_fired.sqf => fnc_onFired.sqf} (74%) create mode 100644 addons/missileguidance/functions/fnc_onIncomingMissile.sqf diff --git a/addons/missileguidance/ACE_Settings.hpp b/addons/missileguidance/ACE_Settings.hpp index 060bde199b..fdd4743546 100644 --- a/addons/missileguidance/ACE_Settings.hpp +++ b/addons/missileguidance/ACE_Settings.hpp @@ -6,4 +6,11 @@ class ACE_Settings { displayName = "$STR_ACE_MissileGuidance"; description = "$STR_ACE_MissileGuidance_Desc"; }; + class GVAR(enabledForAI) { + value = 1; + typeName = "BOOL"; + isClientSetable = 1; + displayName = "$STR_ACE_MissileGuidance_AI"; + description = "$STR_ACE_MissileGuidance_AI_Desc"; + }; }; \ No newline at end of file diff --git a/addons/missileguidance/CfgEventhandlers.hpp b/addons/missileguidance/CfgEventhandlers.hpp index 49f067ff46..8afeb9245e 100644 --- a/addons/missileguidance/CfgEventhandlers.hpp +++ b/addons/missileguidance/CfgEventhandlers.hpp @@ -12,6 +12,12 @@ class Extended_PostInit_EventHandlers { class Extended_FiredBIS_EventHandlers { class All { - ADDON = QUOTE(_this call FUNC(fired)); + ADDON = QUOTE(_this call FUNC(onFired)); + }; +}; + +class Extended_IncomingMissile_EventHandlers { + class All { + ADDON = QUOTE(_this call FUNC(onIncomingMissile)); }; }; \ No newline at end of file diff --git a/addons/missileguidance/XEH_pre_init.sqf b/addons/missileguidance/XEH_pre_init.sqf index 8d277bc3b0..d19b8475c9 100644 --- a/addons/missileguidance/XEH_pre_init.sqf +++ b/addons/missileguidance/XEH_pre_init.sqf @@ -7,7 +7,8 @@ PREP(changeMissileDirection); PREP(checkSeekerAngle); PREP(checkLos); -PREP(fired); +PREP(onFired); +PREP(onIncomingMissile); PREP(guidancePFH); PREP(doAttackProfile); diff --git a/addons/missileguidance/functions/fnc_fired.sqf b/addons/missileguidance/functions/fnc_onFired.sqf similarity index 74% rename from addons/missileguidance/functions/fnc_fired.sqf rename to addons/missileguidance/functions/fnc_onFired.sqf index 8b90b2353f..dea8d256f1 100644 --- a/addons/missileguidance/functions/fnc_fired.sqf +++ b/addons/missileguidance/functions/fnc_onFired.sqf @@ -2,10 +2,10 @@ #include "script_component.hpp" // Bail if guidance is disabled -if(!GVAR(enabled)) exitWith { false }; - // Bail on locality of the projectile, it should be local to us -if(!local _projectile) exitWith { false }; +if(!GVAR(enabled) || {!local _projectile} ) exitWith { false }; + +if(!GVAR(enableForAI) && {!isPlayer _shooter} ) exitWith { false }; private["_config", "_enabled", "_target", "_seekerType", "_attackProfile"]; PARAMS_7(_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); @@ -20,10 +20,13 @@ _enabled = getNumber ( _config >> "enabled"); if(isNil "_enabled" || {_enabled != 1}) exitWith { false }; _target = (vehicle _shooter) getVariable [QGVAR(target), nil]; +_targetPos = (vehicle _shooter) getVariable [QGVAR(targetPosition), nil]; _seekerType = (vehicle _shooter) getVariable [QGVAR(seekerType), nil]; _attackProfile = (vehicle _shooter) getVariable [QGVAR(attackProfile), nil]; _lockMode = (vehicle _shooter) getVariable [QGVAR(lockMode), nil]; +_launchPos = getPosASL (vehicle _shooter); + TRACE_3("Begin guidance", _target, _seekerType, _attackProfile); if ( isNil "_seekerType" || { ! ( _seekerType in (getArray (_config >> "seekerTypes" ) ) ) } ) then { @@ -38,21 +41,28 @@ 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 { - _canUseLock = getNumber (_config >> "canVanillaLock"); - if(_canUseLock > 0) then { - // @TODO: Get vanilla target - _vanillaTarget = cursorTarget; - - TRACE_1("Using Vanilla Locking", _vanillaTarget); - if(!isNil "_vanillaTarget") then { - _target = _vanillaTarget; + + 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 + _vanillaTarget = cursorTarget; + + TRACE_1("Using Vanilla Locking", _vanillaTarget); + if(!isNil "_vanillaTarget") then { + _target = _vanillaTarget; + }; }; }; }; TRACE_4("Beginning ACE guidance system",_target,_ammo,_seekerType,_attackProfile); [FUNC(guidancePFH), 0, [_this, - [ACE_player, + [_shooter, [_target, _targetPos, _launchPos], _seekerType, _attackProfile, diff --git a/addons/missileguidance/functions/fnc_onIncomingMissile.sqf b/addons/missileguidance/functions/fnc_onIncomingMissile.sqf new file mode 100644 index 0000000000..f819a97562 --- /dev/null +++ b/addons/missileguidance/functions/fnc_onIncomingMissile.sqf @@ -0,0 +1,7 @@ +//#define DEBUG_MODE_FULL +#include "script_component.hpp" +PARAMS_3(_target,_ammo,_shooter); + +if !(local (gunner _shooter) || {local _shooter}) exitWith {}; + +_shooter setVariable [QGVAR(vanilla_target),_target, false]; \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_seekerType_SALH.sqf b/addons/missileguidance/functions/fnc_seekerType_SALH.sqf index b6ed8d65a4..07f997a041 100644 --- a/addons/missileguidance/functions/fnc_seekerType_SALH.sqf +++ b/addons/missileguidance/functions/fnc_seekerType_SALH.sqf @@ -8,10 +8,14 @@ _launchParams = _this select 1; _seekerParams = _launchParams select 3; _angleFov = _seekerParams select 0; -_laserResult = [(getPosASL _projectile), (velocity _projectile), _angleFov, [ACE_DEFAULT_LASER_WAVELENGTH,ACE_DEFAULT_LASER_WAVELENGTH], ACE_DEFAULT_LASER_CODE] call EFUNC(laser,seekerFindLaserSpot); -_foundTargetPos = _laserResult select 0; -TRACE_1("Search", _laserResult); - +if(!isNil "_target") then { + // Handle AI or moving vanilla lasers + _foundTargetPos = getPosASL _target; +} else { + _laserResult = [(getPosASL _projectile), (velocity _projectile), _angleFov, [ACE_DEFAULT_LASER_WAVELENGTH,ACE_DEFAULT_LASER_WAVELENGTH], ACE_DEFAULT_LASER_CODE] call EFUNC(laser,seekerFindLaserSpot); + _foundTargetPos = _laserResult select 0; + TRACE_1("Search", _laserResult); +}; if(!isNil "_foundTargetPos") then { //_canSeeTarget = [_projectile, _foundTargetPos, _angleFov] call FUNC(checkSeekerAngle); diff --git a/addons/missileguidance/stringtable.xml b/addons/missileguidance/stringtable.xml index 3ee166a6ff..5c136388ba 100644 --- a/addons/missileguidance/stringtable.xml +++ b/addons/missileguidance/stringtable.xml @@ -12,6 +12,12 @@ Avançado Missile Guidance Részletes rakéta irányító Расширенный ракетой + + + Advanced Missile Guidance for AI + + + Enables advanced guidance on AI units. Enables advanced guidance mechanics and selection for different missiles and fire modes. From b307b4bc4bc662929df19b1e815f0c0265db62a7 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 18:38:52 -0700 Subject: [PATCH 136/246] Fixed: Flummi missed 2 isClientSettable renames. --- addons/interact_menu/config.cpp | 2 +- addons/missileguidance/ACE_Settings.hpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/interact_menu/config.cpp b/addons/interact_menu/config.cpp index bb1b09cc20..f87062bf6f 100644 --- a/addons/interact_menu/config.cpp +++ b/addons/interact_menu/config.cpp @@ -26,7 +26,7 @@ class ACE_Settings { class GVAR(UseListMenu) { value = 0; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_Interact_Menu_UseListMenu"; }; }; diff --git a/addons/missileguidance/ACE_Settings.hpp b/addons/missileguidance/ACE_Settings.hpp index fdd4743546..0ecd4b8cbc 100644 --- a/addons/missileguidance/ACE_Settings.hpp +++ b/addons/missileguidance/ACE_Settings.hpp @@ -2,14 +2,14 @@ class ACE_Settings { class GVAR(enabled) { value = 1; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_MissileGuidance"; description = "$STR_ACE_MissileGuidance_Desc"; }; class GVAR(enabledForAI) { value = 1; typeName = "BOOL"; - isClientSetable = 1; + isClientSettable = 1; displayName = "$STR_ACE_MissileGuidance_AI"; description = "$STR_ACE_MissileGuidance_AI_Desc"; }; From 91c8c89e87d9ef08efb30d1faf98b6fa542e5a72 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Tue, 14 Apr 2015 20:47:07 -0500 Subject: [PATCH 137/246] Only sync A3 VON status over network --- .../nametags/functions/fnc_initIsSpeaking.sqf | 49 ++++++++----------- 1 file changed, 21 insertions(+), 28 deletions(-) diff --git a/addons/nametags/functions/fnc_initIsSpeaking.sqf b/addons/nametags/functions/fnc_initIsSpeaking.sqf index 56c5cfc2f1..95403e0894 100644 --- a/addons/nametags/functions/fnc_initIsSpeaking.sqf +++ b/addons/nametags/functions/fnc_initIsSpeaking.sqf @@ -20,8 +20,8 @@ if (isServer) then { //If someone disconnects while speaking, reset their variable addMissionEventHandler ["HandleDisconnect", { PARAMS_1(_disconnectedPlayer); - if (_disconnectedPlayer getVariable [QGVAR(isSpeaking), false]) then { - _disconnectedPlayer setVariable [QGVAR(isSpeaking), false, true]; + if (_disconnectedPlayer getVariable [QGVAR(isSpeakingInGame), false]) then { + _disconnectedPlayer setVariable [QGVAR(isSpeakingInGame), false, true]; }; }]; }; @@ -31,46 +31,39 @@ if (!hasInterface) exitWith {}; ["playerChanged", { //When player changes, make sure to reset old unit's variable PARAMS_2(_newUnit,_oldUnit); - if (_oldUnit getVariable [QGVAR(isSpeaking), false]) then { - _oldUnit setVariable [QGVAR(isSpeaking), false, true]; + if ((!isNull _oldUnit) && {_oldUnit getVariable [QGVAR(isSpeakingInGame), false]}) then { + _oldUnit setVariable [QGVAR(isSpeakingInGame), false, true]; }; }] call EFUNC(common,addEventHandler); +//PFEH to watch the internal VON icon +//Note: class RscDisplayVoiceChat {idd = 55}; //only present when talking +[{ + _oldSetting = ACE_player getVariable [QGVAR(isSpeakingInGame), false]; + _newSetting = (!(isNull findDisplay 55)); + if (!(_oldSetting isEqualTo _newSetting)) then { + ACE_player setVariable [QGVAR(isSpeakingInGame), _newSetting, true]; + }; +} , 0.1, []] call CBA_fnc_addPerFrameHandler; -//For performance, chose different code paths at mission start based on installed mods (once, instead of checking each time) -_pfEHCode = switch (true) do { + +DFUNC(isSpeaking) = switch (true) do { case (isClass (configFile >> "cfgPatches" >> "acre_api")): { { - _oldSetting = ACE_player getVariable [QGVAR(isSpeaking), false]; - _newSetting = ([ACE_player] call acre_api_fnc_isSpeaking) || ([ACE_player] call acre_api_fnc_isBroadcasting) || {!(isNull findDisplay 55)}; - if (!(_oldSetting isEqualTo _newSetting)) then { - ACE_player setVariable [QGVAR(isSpeaking), _newSetting, true]; - }; + PARAMS_1(_unit); + (_unit getVariable [QGVAR(isSpeakingInGame), false]) || ([_unit] call acre_api_fnc_isSpeaking) || ([ACE_player] call acre_api_fnc_isBroadcasting) }; }; case (isClass (configFile >> "cfgPatches" >> "task_force_radio")): { - //Note: TFAR has a TFAR_fnc_isSpeaking function, but it has a fairly costly `callExtension` - //I think it's much faster to use the internal "tf_isSpeaking" variable - //If we don't care about the built-in VON, we could switch this to a pure event driven system { - _oldSetting = ACE_player getVariable [QGVAR(isSpeaking), false]; - _newSetting = (ACE_player getVariable ["tf_isSpeaking", false]) || {!(isNull findDisplay 55)}; - if (!(_oldSetting isEqualTo _newSetting)) then { - ACE_player setVariable [QGVAR(isSpeaking), _newSetting, true]; - }; + PARAMS_1(_unit); + (_unit getVariable [QGVAR(isSpeakingInGame), false]) || (_unit getVariable ["tf_isSpeaking", false]) }; }; default { - //Note: class RscDisplayVoiceChat {idd = 55}; //only present when talking { - _oldSetting = ACE_player getVariable [QGVAR(isSpeaking), false]; - _newSetting = (!(isNull findDisplay 55)); - if (!(_oldSetting isEqualTo _newSetting)) then { - ACE_player setVariable [QGVAR(isSpeaking), _newSetting, true]; - }; + PARAMS_1(_unit); + (_unit getVariable [QGVAR(isSpeakingInGame), false]) }; }; }; - -//Is 0.05sec precision enough?? -[_pfEHCode, 0.05, []] call CBA_fnc_addPerFrameHandler; From 00b9e2d72ca7584268b78636d49a842ab39ebab5 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Tue, 14 Apr 2015 20:49:44 -0500 Subject: [PATCH 138/246] draw3d --- addons/nametags/XEH_postInit.sqf | 1 + addons/nametags/XEH_preInit.sqf | 2 -- addons/nametags/functions/fnc_onDraw3d.sqf | 10 +++++----- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/addons/nametags/XEH_postInit.sqf b/addons/nametags/XEH_postInit.sqf index ab3cd03391..1df20e45e7 100644 --- a/addons/nametags/XEH_postInit.sqf +++ b/addons/nametags/XEH_postInit.sqf @@ -5,6 +5,7 @@ if (!hasInterface) exitWith {}; +GVAR(ShowNamesTime) = -10; // Add keybinds ["ACE3", QGVAR(showNameTags), localize "STR_ACE_NameTags_ShowNames", diff --git a/addons/nametags/XEH_preInit.sqf b/addons/nametags/XEH_preInit.sqf index 80c06cff1f..9fae94fd08 100644 --- a/addons/nametags/XEH_preInit.sqf +++ b/addons/nametags/XEH_preInit.sqf @@ -12,6 +12,4 @@ PREP(onDraw3d); PREP(onMouseZChanged); PREP(setText); -GVAR(ShowNamesTime) = -10; - ADDON = true; diff --git a/addons/nametags/functions/fnc_onDraw3d.sqf b/addons/nametags/functions/fnc_onDraw3d.sqf index 8aa503d377..d35cef0d67 100644 --- a/addons/nametags/functions/fnc_onDraw3d.sqf +++ b/addons/nametags/functions/fnc_onDraw3d.sqf @@ -50,9 +50,9 @@ if ((GVAR(showPlayerNames) in [2,4]) && {_onKeyPressAlphaMax > 0}) then { _alpha = _alpha min _onKeyPressAlphaMax; _icon = ICON_NONE; if (GVAR(showSoundWaves) == 2) then { //icon will be drawn below, so only show name here - _icon = if ((_target getVariable [QGVAR(isSpeaking), false]) && {(vehicle _target) == _target}) then {ICON_NAME} else {_defaultIcon}; + _icon = if (([_target] call FUNC(isSpeaking)) && {(vehicle _target) == _target}) then {ICON_NAME} else {_defaultIcon}; } else { - _icon = if ((_target getVariable [QGVAR(isSpeaking), false]) && {(vehicle _target) == _target} && {GVAR(showSoundWaves) > 0}) then {ICON_NAME_SPEAK} else {_defaultIcon}; + _icon = if (([_target] call FUNC(isSpeaking)) && {(vehicle _target) == _target} && {GVAR(showSoundWaves) > 0}) then {ICON_NAME_SPEAK} else {_defaultIcon}; }; [_player, _target, _alpha, _distance * 0.026, _icon] call FUNC(drawNameTagIcon); @@ -77,10 +77,10 @@ if (((GVAR(showPlayerNames) in [1,3]) && {_onKeyPressAlphaMax > 0}) || {GVAR(sho _icon = ICON_NONE; if ((GVAR(showPlayerNames) in [1,3]) && {_onKeyPressAlphaMax > 0}) then { - if ((_target getVariable [QGVAR(isSpeaking), false]) && {(vehicle _target) == _target} && {GVAR(showSoundWaves) > 0}) then {_icon = ICON_NAME_SPEAK;} else {_icon = _defaultIcon}; + if (([_target] call FUNC(isSpeaking)) && {(vehicle _target) == _target} && {GVAR(showSoundWaves) > 0}) then {_icon = ICON_NAME_SPEAK;} else {_icon = _defaultIcon}; } else { //showSoundWaves must be 2, only draw speak icon - if ((_target getVariable [QGVAR(isSpeaking), false]) && {(vehicle _target) == _target}) then {_icon = ICON_SPEAK;}; + if (([_target] call FUNC(isSpeaking)) && {(vehicle _target) == _target}) then {_icon = ICON_SPEAK;}; }; if ((_icon != ICON_NONE) && @@ -96,7 +96,7 @@ if (((GVAR(showPlayerNames) in [1,3]) && {_onKeyPressAlphaMax > 0}) || {GVAR(sho _alpha = ((1 - 0.2 * (_distance - GVAR(PlayerNamesViewDistance))) min (1 - 0.15 * (_projDist * 5 - _distance - 3)) min 1) * GVAR(PlayerNamesMaxAlpha); - if ((GVAR(showSoundWaves) == 2) && {(_target getVariable [QGVAR(isSpeaking), false]) && {(vehicle _target) == _target}}) then { + if ((GVAR(showSoundWaves) == 2) && {([_target] call FUNC(isSpeaking)) && {(vehicle _target) == _target}}) then { _alpha = 1; } else { _alpha = _alpha min _onKeyPressAlphaMax; From ee340789602485d8cdd2ee33ddf8a4f0cbe6666b Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Tue, 14 Apr 2015 22:53:10 -0300 Subject: [PATCH 139/246] Add early visibility check to interact menu --- .../functions/fnc_renderActionPoints.sqf | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/addons/interact_menu/functions/fnc_renderActionPoints.sqf b/addons/interact_menu/functions/fnc_renderActionPoints.sqf index 45c0c46a61..1d941435be 100644 --- a/addons/interact_menu/functions/fnc_renderActionPoints.sqf +++ b/addons/interact_menu/functions/fnc_renderActionPoints.sqf @@ -14,19 +14,25 @@ GVAR(currentOptions) = []; -private ["_player","_numInteractObjects","_numInteractions","_actionsVarName","_classActions","_objectActions","_target","_player","_action","_actionData","_active"]; +private ["_player","_numInteractObjects","_numInteractions","_actionsVarName","_classActions","_objectActions","_target","_player","_action","_actionData","_active","_cameraPos","_cameraDir"]; _player = ACE_player; - _fnc_renderNearbyActions = { // Render all nearby interaction menus #define MAXINTERACTOBJECTS 3 + _cameraPos = (positionCameraToWorld [0, 0, 0]) call EFUNC(common,positionToASL); + _cameraDir = ((positionCameraToWorld [0, 0, 1]) call EFUNC(common,positionToASL)) vectorDiff _cameraPos; + _numInteractObjects = 0; - _nearestObjects = nearestObjects [ACE_player, ["All"], 15]; + _nearestObjects = nearestObjects [ACE_player, ["All"], 13]; { _target = _x; + // Quick oclussion test. Exit for object more than 1 m behind the camera plane + _lambda = ((getPosASL _x) vectorDiff _cameraPos) vectorDotProduct _cameraDir; + if (_lambda < -1) exitWith {}; + _numInteractions = 0; // Prevent interacting with yourself or your own vehicle if (_target != ACE_player && {_target != vehicle ACE_player}) then { From 53ce7d0be40c52ae7b6c95065967a82a2fc36846 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Tue, 14 Apr 2015 23:12:48 -0300 Subject: [PATCH 140/246] Increase the tolerance to 2m --- addons/interact_menu/functions/fnc_renderActionPoints.sqf | 4 ++-- addons/interact_menu/script_component.hpp | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/addons/interact_menu/functions/fnc_renderActionPoints.sqf b/addons/interact_menu/functions/fnc_renderActionPoints.sqf index 1d941435be..702da00f29 100644 --- a/addons/interact_menu/functions/fnc_renderActionPoints.sqf +++ b/addons/interact_menu/functions/fnc_renderActionPoints.sqf @@ -29,9 +29,9 @@ _fnc_renderNearbyActions = { { _target = _x; - // Quick oclussion test. Exit for object more than 1 m behind the camera plane + // Quick oclussion test. Exit for object more than 2 m behind the camera plane _lambda = ((getPosASL _x) vectorDiff _cameraPos) vectorDotProduct _cameraDir; - if (_lambda < -1) exitWith {}; + if (_lambda < -2) exitWith {}; _numInteractions = 0; // Prevent interacting with yourself or your own vehicle diff --git a/addons/interact_menu/script_component.hpp b/addons/interact_menu/script_component.hpp index 958d1c802d..a086b02613 100644 --- a/addons/interact_menu/script_component.hpp +++ b/addons/interact_menu/script_component.hpp @@ -9,4 +9,6 @@ #define DEBUG_SETTINGS DEBUG_SETTINGS_INTERACT_MENU #endif -#include "\z\ace\addons\main\script_macros.hpp" \ No newline at end of file +#include "\z\ace\addons\main\script_macros.hpp" + +#define ENABLE_PERFORMANCE_COUNTERS From 57acee0f89d0bacc658c0c5438147b7d8d174ee9 Mon Sep 17 00:00:00 2001 From: jaynus Date: Tue, 14 Apr 2015 19:19:14 -0700 Subject: [PATCH 141/246] Changed: Cleaned up Missile guidance setting for AI, SCALAR. --- addons/missileguidance/ACE_Settings.hpp | 12 +++--------- .../missileguidance/functions/fnc_onFired.sqf | 4 ++-- .../functions/fnc_onIncomingMissile.sqf | 3 ++- addons/missileguidance/stringtable.xml | 18 ------------------ 4 files changed, 7 insertions(+), 30 deletions(-) diff --git a/addons/missileguidance/ACE_Settings.hpp b/addons/missileguidance/ACE_Settings.hpp index 0ecd4b8cbc..d489ef15f3 100644 --- a/addons/missileguidance/ACE_Settings.hpp +++ b/addons/missileguidance/ACE_Settings.hpp @@ -1,16 +1,10 @@ class ACE_Settings { class GVAR(enabled) { - value = 1; - typeName = "BOOL"; + value = 2; + typeName = "SCALAR"; isClientSettable = 1; displayName = "$STR_ACE_MissileGuidance"; description = "$STR_ACE_MissileGuidance_Desc"; - }; - class GVAR(enabledForAI) { - value = 1; - typeName = "BOOL"; - isClientSettable = 1; - displayName = "$STR_ACE_MissileGuidance_AI"; - description = "$STR_ACE_MissileGuidance_AI_Desc"; + values[] = {"Off", "Player Only", "Player and AI"}; }; }; \ No newline at end of file diff --git a/addons/missileguidance/functions/fnc_onFired.sqf b/addons/missileguidance/functions/fnc_onFired.sqf index dea8d256f1..186a622417 100644 --- a/addons/missileguidance/functions/fnc_onFired.sqf +++ b/addons/missileguidance/functions/fnc_onFired.sqf @@ -3,9 +3,9 @@ // Bail if guidance is disabled // Bail on locality of the projectile, it should be local to us -if(!GVAR(enabled) || {!local _projectile} ) exitWith { false }; +if(GVAR(enabled) < 1 || {!local _projectile} ) exitWith { false }; -if(!GVAR(enableForAI) && {!isPlayer _shooter} ) exitWith { false }; +if( !isPlayer _shooter && { GVAR(enabled) < 2 } ) exitWith { false }; private["_config", "_enabled", "_target", "_seekerType", "_attackProfile"]; PARAMS_7(_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); diff --git a/addons/missileguidance/functions/fnc_onIncomingMissile.sqf b/addons/missileguidance/functions/fnc_onIncomingMissile.sqf index f819a97562..33ebeb34e2 100644 --- a/addons/missileguidance/functions/fnc_onIncomingMissile.sqf +++ b/addons/missileguidance/functions/fnc_onIncomingMissile.sqf @@ -2,6 +2,7 @@ #include "script_component.hpp" PARAMS_3(_target,_ammo,_shooter); -if !(local (gunner _shooter) || {local _shooter}) exitWith {}; +if(GVAR(enabled) < 1) exitWith {}; // bail if enabled +if !(local (gunner _shooter) || {local _shooter}) exitWith {}; // bail if not shooter _shooter setVariable [QGVAR(vanilla_target),_target, false]; \ No newline at end of file diff --git a/addons/missileguidance/stringtable.xml b/addons/missileguidance/stringtable.xml index 5c136388ba..16c9a7ec74 100644 --- a/addons/missileguidance/stringtable.xml +++ b/addons/missileguidance/stringtable.xml @@ -12,24 +12,6 @@ Avançado Missile Guidance Részletes rakéta irányító Расширенный ракетой - - - Advanced Missile Guidance for AI - - - Enables advanced guidance on AI units. - - - Enables advanced guidance mechanics and selection for different missiles and fire modes. - - - Włącza zaawansowaną mechanikę i wybór dla różnych rakiet i trybów strzału. - Aktiviert die erweiterten Mechaniken für unterschiedliche Raketen und Feuermodi. - Povoluje pokročilou mechaniku řízení střel. - - - - Hydra-70 DAGR Missile From c397246534543c0ecfe4c0b206b9ea8f0268b056 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Tue, 14 Apr 2015 23:22:08 -0300 Subject: [PATCH 142/246] Fix the fov test. Issue not fixed --- .../functions/fnc_renderActionPoints.sqf | 54 +++++++++---------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/addons/interact_menu/functions/fnc_renderActionPoints.sqf b/addons/interact_menu/functions/fnc_renderActionPoints.sqf index 702da00f29..9c100ea9ad 100644 --- a/addons/interact_menu/functions/fnc_renderActionPoints.sqf +++ b/addons/interact_menu/functions/fnc_renderActionPoints.sqf @@ -29,44 +29,44 @@ _fnc_renderNearbyActions = { { _target = _x; - // Quick oclussion test. Exit for object more than 2 m behind the camera plane + // Quick oclussion test. Exit for object more than 1 m behind the camera plane _lambda = ((getPosASL _x) vectorDiff _cameraPos) vectorDotProduct _cameraDir; - if (_lambda < -2) exitWith {}; + if (_lambda > -1) then { + _numInteractions = 0; + // Prevent interacting with yourself or your own vehicle + if (_target != ACE_player && {_target != vehicle ACE_player}) then { - _numInteractions = 0; - // Prevent interacting with yourself or your own vehicle - if (_target != ACE_player && {_target != vehicle ACE_player}) then { + // Iterate through object actions, find base level actions and render them if appropiate + _actionsVarName = format [QGVAR(Act_%1), typeOf _target]; + GVAR(objectActionList) = _target getVariable [QGVAR(actions), []]; + { + // Only render them directly if they are base level actions + if (count (_x select 1) == 0) then { + // Try to render the menu + _action = _x; + if ([_target, _action] call FUNC(renderBaseMenu)) then { + _numInteractions = _numInteractions + 1; + }; + }; + } forEach GVAR(objectActionList); - // Iterate through object actions, find base level actions and render them if appropiate - _actionsVarName = format [QGVAR(Act_%1), typeOf _target]; - GVAR(objectActionList) = _target getVariable [QGVAR(actions), []]; - { - // Only render them directly if they are base level actions - if (count (_x select 1) == 0) then { - // Try to render the menu + // Iterate through base level class actions and render them if appropiate + _classActions = missionNamespace getVariable [_actionsVarName, []]; + { _action = _x; + // Try to render the menu if ([_target, _action] call FUNC(renderBaseMenu)) then { _numInteractions = _numInteractions + 1; }; - }; - } forEach GVAR(objectActionList); + } forEach _classActions; - // Iterate through base level class actions and render them if appropiate - _classActions = missionNamespace getVariable [_actionsVarName, []]; - { - _action = _x; - // Try to render the menu - if ([_target, _action] call FUNC(renderBaseMenu)) then { - _numInteractions = _numInteractions + 1; + // Limit the amount of objects the player can interact with + if (_numInteractions > 0) then { + _numInteractObjects = _numInteractObjects + 1; }; - } forEach _classActions; - - // Limit the amount of objects the player can interact with - if (_numInteractions > 0) then { - _numInteractObjects = _numInteractObjects + 1; }; + if (_numInteractObjects >= MAXINTERACTOBJECTS) exitWith {}; }; - if (_numInteractObjects >= MAXINTERACTOBJECTS) exitWith {}; } forEach _nearestObjects; }; From 7ad9238bbf35fe7cd8d1359a739c56062e57c00c Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Tue, 14 Apr 2015 23:32:03 -0300 Subject: [PATCH 143/246] Fixes --- addons/interact_menu/functions/fnc_renderActionPoints.sqf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/interact_menu/functions/fnc_renderActionPoints.sqf b/addons/interact_menu/functions/fnc_renderActionPoints.sqf index 9c100ea9ad..8d4734c8f8 100644 --- a/addons/interact_menu/functions/fnc_renderActionPoints.sqf +++ b/addons/interact_menu/functions/fnc_renderActionPoints.sqf @@ -25,11 +25,11 @@ _fnc_renderNearbyActions = { _cameraDir = ((positionCameraToWorld [0, 0, 1]) call EFUNC(common,positionToASL)) vectorDiff _cameraPos; _numInteractObjects = 0; - _nearestObjects = nearestObjects [ACE_player, ["All"], 13]; + _nearestObjects = nearestObjects [((getPosASL ACE_player) vectorAdd (_cameraDir vectorMultiply 5)) call EFUNC(common,ASLToPosition), ["All"], 8]; { _target = _x; - // Quick oclussion test. Exit for object more than 1 m behind the camera plane + // Quick oclussion test. Skip objects more than 1 m behind the camera plane _lambda = ((getPosASL _x) vectorDiff _cameraPos) vectorDotProduct _cameraDir; if (_lambda > -1) then { _numInteractions = 0; @@ -65,8 +65,8 @@ _fnc_renderNearbyActions = { _numInteractObjects = _numInteractObjects + 1; }; }; - if (_numInteractObjects >= MAXINTERACTOBJECTS) exitWith {}; }; + if (_numInteractObjects >= MAXINTERACTOBJECTS) exitWith {}; } forEach _nearestObjects; }; From d6a293c573e61f8702f404491b243da00b18a8f9 Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 05:19:03 +0200 Subject: [PATCH 144/246] disable firing if menu is opened --- addons/interaction/XEH_postInit.sqf | 3 ++ addons/interaction/XEH_preInit.sqf | 1 + .../functions/fnc_handlePlayerChanged.sqf | 31 +++++++++++++++++++ 3 files changed, 35 insertions(+) create mode 100644 addons/interaction/functions/fnc_handlePlayerChanged.sqf diff --git a/addons/interaction/XEH_postInit.sqf b/addons/interaction/XEH_postInit.sqf index 98b1cc1523..dc019b101f 100644 --- a/addons/interaction/XEH_postInit.sqf +++ b/addons/interaction/XEH_postInit.sqf @@ -74,3 +74,6 @@ GVAR(isOpeningDoor) = false; [29, [false, false, false]], false] call cba_fnc_addKeybind; ["isNotSwimming", {!underwater (_this select 0)}] call EFUNC(common,addCanInteractWithCondition); + +// disable firing while the interact menu is is is opened +["playerChanged", {_this call FUNC(handlePlayerChanged)}] call EFUNC(common,addEventHandler); diff --git a/addons/interaction/XEH_preInit.sqf b/addons/interaction/XEH_preInit.sqf index 6f10a4e834..f6d742f419 100644 --- a/addons/interaction/XEH_preInit.sqf +++ b/addons/interaction/XEH_preInit.sqf @@ -14,6 +14,7 @@ PREP(getDoor); PREP(getDoorAnimations); PREP(getDown); PREP(getSelectedButton); +PREP(handlePlayerChanged); PREP(hideMenu); PREP(hideMouseHint); PREP(isInRange); diff --git a/addons/interaction/functions/fnc_handlePlayerChanged.sqf b/addons/interaction/functions/fnc_handlePlayerChanged.sqf new file mode 100644 index 0000000000..0e16d5db9e --- /dev/null +++ b/addons/interaction/functions/fnc_handlePlayerChanged.sqf @@ -0,0 +1,31 @@ +/* + * Author: commy2 + * + * Disables firing while the menu is opened. Called from playerChanged eh. + * + * Argument: + * 0: New unit to add the addAction eh (Object) + * 1: Old unit to remove the addAction eh (String) + * + * Return value: + * NOPE + */ +#include "script_component.hpp" + +private ["_newUnit", "_oldUnit"]; + +_newUnit = _this select 0; +_oldUnit = _this select 1; + +// add to new unit +private "_ehid"; +_ehid = [_newUnit, "DefaultAction", {EGVAR(interact_menu,openedMenuType) >= 0}, {systemChat "snap"}] call EFUNC(common,addActionEventHandler); + +_newUnit setVariable [QGVAR(AAEHID), _ehid]; + +// remove from old unit +_ehid = _oldUnit getVariable [QGVAR(AAEHID), -1]; + +[_oldUnit, "DefaultAction", _ehid] call EFUNC(common,removeActionEventHandler); + +_oldUnit setVariable [QGVAR(AAEHID), -1]; From c81fa61f2e4a37af15256bbf8441c2b0a5dd6bc6 Mon Sep 17 00:00:00 2001 From: firefly2442 Date: Tue, 14 Apr 2015 22:34:58 -0500 Subject: [PATCH 145/246] match to exact directory name (case-sensitive) --- extensions/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extensions/CMakeLists.txt b/extensions/CMakeLists.txt index 46aa4f3446..6028771554 100644 --- a/extensions/CMakeLists.txt +++ b/extensions/CMakeLists.txt @@ -27,7 +27,7 @@ include_directories(AFTER "common") # Add extensions to build here add_subdirectory(fcs) -add_subdirectory(breakline) +add_subdirectory(breakLine) add_subdirectory(advanced_ballistics) message("Build Type: ${CMAKE_BUILD_TYPE}") \ No newline at end of file From 428688422ec0470a0ebd55d9b365fd609b5a4285 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Tue, 14 Apr 2015 22:47:57 -0500 Subject: [PATCH 146/246] Missing stringtable for listMenu --- addons/interact_menu/stringtable.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index bd8ded64ce..fdd9a2e6b4 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -10,6 +10,9 @@ Zawsze wyświetlaj kursor dla własnej interakcji Toujours afficher le curseur pour les interactions sur soi-même + + Display interact menu as a list + Interact Key Fremdinteraktionsmenü-Taste From 1f51a3fc8ac5fd27275621244c300dd997d318b5 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Tue, 14 Apr 2015 23:10:05 -0500 Subject: [PATCH 147/246] Never use this func anywhere --- addons/nametags/XEH_preInit.sqf | 1 - .../nametags/functions/fnc_onMouseZChanged.sqf | 18 ------------------ 2 files changed, 19 deletions(-) delete mode 100644 addons/nametags/functions/fnc_onMouseZChanged.sqf diff --git a/addons/nametags/XEH_preInit.sqf b/addons/nametags/XEH_preInit.sqf index 9fae94fd08..f3c9a97cba 100644 --- a/addons/nametags/XEH_preInit.sqf +++ b/addons/nametags/XEH_preInit.sqf @@ -9,7 +9,6 @@ PREP(getVehicleData); PREP(initIsSpeaking); PREP(moduleNameTags); PREP(onDraw3d); -PREP(onMouseZChanged); PREP(setText); ADDON = true; diff --git a/addons/nametags/functions/fnc_onMouseZChanged.sqf b/addons/nametags/functions/fnc_onMouseZChanged.sqf deleted file mode 100644 index 8892f201bc..0000000000 --- a/addons/nametags/functions/fnc_onMouseZChanged.sqf +++ /dev/null @@ -1,18 +0,0 @@ -/* - Author: aeroson - - Description: - Callback for mouse wheel change - - Parameters: - None - - Returns: - Nothing -*/ - -#include "script_component.hpp" - -if(call FUNC(canShow)) then { - call FUNC(doShow); -}; From a9f44530c9f58cd24d1193f6172ed901d8a225f9 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Wed, 15 Apr 2015 01:20:20 -0300 Subject: [PATCH 148/246] Move the function that prevents firing while the interact_menu is open to the interact_menu pbo --- addons/interact_menu/XEH_clientInit.sqf | 3 +++ addons/interact_menu/XEH_preInit.sqf | 1 + .../functions/fnc_handlePlayerChanged.sqf | 12 ++++-------- addons/interaction/XEH_postInit.sqf | 3 --- addons/interaction/XEH_preInit.sqf | 1 - 5 files changed, 8 insertions(+), 12 deletions(-) rename addons/{interaction => interact_menu}/functions/fnc_handlePlayerChanged.sqf (74%) diff --git a/addons/interact_menu/XEH_clientInit.sqf b/addons/interact_menu/XEH_clientInit.sqf index bcb2d5aa8e..ea4a971563 100644 --- a/addons/interact_menu/XEH_clientInit.sqf +++ b/addons/interact_menu/XEH_clientInit.sqf @@ -50,3 +50,6 @@ addMissionEventHandler ["Draw3D", DFUNC(render)]; GVAR(actionSelected) = false; [] call FUNC(keyUp); }] call EFUNC(common,addEventhandler); + +// disable firing while the interact menu is is is opened +["playerChanged", {_this call FUNC(handlePlayerChanged)}] call EFUNC(common,addEventHandler); diff --git a/addons/interact_menu/XEH_preInit.sqf b/addons/interact_menu/XEH_preInit.sqf index c15f8d388d..b4a3504cdd 100644 --- a/addons/interact_menu/XEH_preInit.sqf +++ b/addons/interact_menu/XEH_preInit.sqf @@ -9,6 +9,7 @@ PREP(compileMenuSelfAction); PREP(collectActiveActionTree); PREP(createAction); PREP(findActionNode); +PREP(handlePlayerChanged); PREP(isSubPath); PREP(keyDown); PREP(keyUp); diff --git a/addons/interaction/functions/fnc_handlePlayerChanged.sqf b/addons/interact_menu/functions/fnc_handlePlayerChanged.sqf similarity index 74% rename from addons/interaction/functions/fnc_handlePlayerChanged.sqf rename to addons/interact_menu/functions/fnc_handlePlayerChanged.sqf index 0e16d5db9e..bb5c3afb53 100644 --- a/addons/interaction/functions/fnc_handlePlayerChanged.sqf +++ b/addons/interact_menu/functions/fnc_handlePlayerChanged.sqf @@ -1,21 +1,17 @@ /* * Author: commy2 - * * Disables firing while the menu is opened. Called from playerChanged eh. * * Argument: - * 0: New unit to add the addAction eh (Object) - * 1: Old unit to remove the addAction eh (String) + * 0: New unit to add the addAction eh + * 1: Old unit to remove the addAction eh * * Return value: - * NOPE + * None */ #include "script_component.hpp" -private ["_newUnit", "_oldUnit"]; - -_newUnit = _this select 0; -_oldUnit = _this select 1; +EXPLODE_2_PVT(_this,_newUnit,_oldUnit); // add to new unit private "_ehid"; diff --git a/addons/interaction/XEH_postInit.sqf b/addons/interaction/XEH_postInit.sqf index dc019b101f..98b1cc1523 100644 --- a/addons/interaction/XEH_postInit.sqf +++ b/addons/interaction/XEH_postInit.sqf @@ -74,6 +74,3 @@ GVAR(isOpeningDoor) = false; [29, [false, false, false]], false] call cba_fnc_addKeybind; ["isNotSwimming", {!underwater (_this select 0)}] call EFUNC(common,addCanInteractWithCondition); - -// disable firing while the interact menu is is is opened -["playerChanged", {_this call FUNC(handlePlayerChanged)}] call EFUNC(common,addEventHandler); diff --git a/addons/interaction/XEH_preInit.sqf b/addons/interaction/XEH_preInit.sqf index f6d742f419..6f10a4e834 100644 --- a/addons/interaction/XEH_preInit.sqf +++ b/addons/interaction/XEH_preInit.sqf @@ -14,7 +14,6 @@ PREP(getDoor); PREP(getDoorAnimations); PREP(getDown); PREP(getSelectedButton); -PREP(handlePlayerChanged); PREP(hideMenu); PREP(hideMouseHint); PREP(isInRange); From 5faf4b7dfa55526b2d16a2437503d949961b55c9 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Wed, 15 Apr 2015 01:27:29 -0300 Subject: [PATCH 149/246] Remove comment --- addons/interact_menu/functions/fnc_handlePlayerChanged.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/interact_menu/functions/fnc_handlePlayerChanged.sqf b/addons/interact_menu/functions/fnc_handlePlayerChanged.sqf index bb5c3afb53..fe25853733 100644 --- a/addons/interact_menu/functions/fnc_handlePlayerChanged.sqf +++ b/addons/interact_menu/functions/fnc_handlePlayerChanged.sqf @@ -15,7 +15,7 @@ EXPLODE_2_PVT(_this,_newUnit,_oldUnit); // add to new unit private "_ehid"; -_ehid = [_newUnit, "DefaultAction", {EGVAR(interact_menu,openedMenuType) >= 0}, {systemChat "snap"}] call EFUNC(common,addActionEventHandler); +_ehid = [_newUnit, "DefaultAction", {EGVAR(interact_menu,openedMenuType) >= 0}, {}] call EFUNC(common,addActionEventHandler); _newUnit setVariable [QGVAR(AAEHID), _ehid]; From 25e8e93fd065ef4de50a8996b7008ed3d8bf95a0 Mon Sep 17 00:00:00 2001 From: esteldunedain Date: Wed, 15 Apr 2015 01:32:42 -0300 Subject: [PATCH 150/246] Add back stringtables for the list menu --- addons/interact_menu/stringtable.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index bd8ded64ce..dddf90a4de 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -10,6 +10,10 @@ Zawsze wyświetlaj kursor dla własnej interakcji Toujours afficher le curseur pour les interactions sur soi-même + + Display interaction menus as lists + Mostrar los menus de interacción como listas + Interact Key Fremdinteraktionsmenü-Taste From d0f4fb8de2b96fb9591c475f69afe237ca913f3c Mon Sep 17 00:00:00 2001 From: Patrick Date: Tue, 14 Apr 2015 23:50:48 -0500 Subject: [PATCH 151/246] Update how-to-make-a-feature-request.md minor spelling fixes --- documentation/user/how-to-make-a-feature-request.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/documentation/user/how-to-make-a-feature-request.md b/documentation/user/how-to-make-a-feature-request.md index 7a317a2c5f..bfc5401f38 100644 --- a/documentation/user/how-to-make-a-feature-request.md +++ b/documentation/user/how-to-make-a-feature-request.md @@ -8,7 +8,7 @@ parent: wiki ### Before requesting -ACE 2, AGM and CSE had a lot of features implemented or planned. All of them are or have been evaluated for inclusion in ACE3 itself, and we'd like to port the mayority of them eventually. However, due to time constraints, we have only managed to do a fraction of the job so far. +ACE 2, AGM and CSE had a lot of features implemented or planned. All of them are or have been evaluated for inclusion in ACE3 itself, and we'd like to port the majority of them eventually. However, due to time constraints, we have only managed to do a fraction of the job so far. There's really no point on making feature requests for anything included or planned for inclusion in ACE2, AGM or CSE. The majority of those things are been considered for porting or rewritting already. @@ -21,4 +21,4 @@ There's really no point on making feature requests for anything included or plan In order not to spam the issue tracker with duplicated requests, we have have created a single Issue for feature request. Any and all requests should be done there, where they will get discussed and evaluated. Before posting a new one, please make sure to check the previous entries on the thread and make a quick search; please don't reiterate requests that had already been either accepted for inclusion or disregarded. -Accepted feature requests may be moved to a sepparate issue by moderators for further discussion. +Accepted feature requests may be moved to a separate issue by moderators for further discussion. From 6c4e50a98de7a6186ef2d82c5ac0aa07b9e71359 Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 08:31:40 +0200 Subject: [PATCH 152/246] localized names for rallypoints, auto assign slot of group leader at the start of the mission as JIP persistant rallypoint mover slot --- addons/respawn/CfgEventHandlers.hpp | 9 ++++ addons/respawn/CfgVehicles.hpp | 12 ++--- addons/respawn/XEH_preInit.sqf | 1 + .../functions/fnc_handleInitPostServer.sqf | 54 +++++++++++++++++++ .../respawn/functions/fnc_handleRespawn.sqf | 5 ++ addons/respawn/stringtable.xml | 24 +++++++++ 6 files changed, 99 insertions(+), 6 deletions(-) create mode 100644 addons/respawn/functions/fnc_handleInitPostServer.sqf diff --git a/addons/respawn/CfgEventHandlers.hpp b/addons/respawn/CfgEventHandlers.hpp index 9ff7a2bae8..6d7356a607 100644 --- a/addons/respawn/CfgEventHandlers.hpp +++ b/addons/respawn/CfgEventHandlers.hpp @@ -59,3 +59,12 @@ class Extended_Init_EventHandlers { //respawn_civilian }; + +// auto assign rallypoint leader +class Extended_InitPost_EventHandlers { + class CAManBase { + class ADDON { + init = QUOTE(_this call FUNC(handleInitPostServer)); + }; + }; +}; diff --git a/addons/respawn/CfgVehicles.hpp b/addons/respawn/CfgVehicles.hpp index c8ca4f9216..28e33c6b3e 100644 --- a/addons/respawn/CfgVehicles.hpp +++ b/addons/respawn/CfgVehicles.hpp @@ -91,7 +91,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint West Base"; + displayName = "$STR_ACE_Respawn_RallypointWestBase"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { @@ -111,7 +111,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint East Base"; + displayName = "$STR_ACE_Respawn_RallypointEastBase"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { @@ -131,7 +131,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint Independent Base"; + displayName = "$STR_ACE_Respawn_RallypointIndependentBase"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { @@ -152,7 +152,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint West"; + displayName = "STR_ACE_Respawn_RallypointWest"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { @@ -172,7 +172,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint East"; + displayName = "STR_ACE_Respawn_RallypointEast"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { @@ -192,7 +192,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "Rallypoint Independent"; + displayName = "STR_ACE_Respawn_RallypointIndependent"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { diff --git a/addons/respawn/XEH_preInit.sqf b/addons/respawn/XEH_preInit.sqf index f57e1f3714..8b3f309126 100644 --- a/addons/respawn/XEH_preInit.sqf +++ b/addons/respawn/XEH_preInit.sqf @@ -5,6 +5,7 @@ ADDON = false; PREP(canMoveRallypoint); PREP(handleKilled); PREP(handleRespawn); +PREP(handleInitPostServer); PREP(initRallypoint); PREP(module); PREP(moduleFriendlyFire); diff --git a/addons/respawn/functions/fnc_handleInitPostServer.sqf b/addons/respawn/functions/fnc_handleInitPostServer.sqf new file mode 100644 index 0000000000..c83354b24e --- /dev/null +++ b/addons/respawn/functions/fnc_handleInitPostServer.sqf @@ -0,0 +1,54 @@ +// by commy2 +// execute on server only! +#include "script_component.hpp" + +private "_unit"; + +_unit = _this select 0; + +private ["_group0", "_rallypoint"]; + +_group0 = group _unit; // _group is a reserved veriable and shouldn't be used + +_rallypoint = [ + objNull, + missionNamespace getVariable ["ACE_Rallypoint_West", objNull], + missionNamespace getVariable ["ACE_Rallypoint_East", objNull], + missionNamespace getVariable ["ACE_Rallypoint_Independent", objNull] +] select ([west, east, independent] find side _group0) + 1; + +// exit if no moveable rallypoint is placed for that side +if (isNull _rallypoint) exitWith {}; + +// find leader +private "_leaderVarName"; +_leaderVarName = _group0 getVariable [QGVAR(leaderVarName), ""]; + +// exit if group already has a playable slot assigned as rallypoint leader +if (_leaderVarName != "") exitWith { + // assign JIP unit as rallypoint leader + if (str _unit == _leaderVarName) then { + _unit setVariable ["ACE_canMoveRallypoint", true, true]; + }; +}; + +// treat group leader +_unit = leader _group0; + +_leaderVarName = vehicleVarName _unit; + +if (_leaderVarName == "") then { + private "_leaderID"; + _leaderID = GETGVAR(NextLeaderID,0); + + _leaderVarName = format [QGVAR(Rallypoint_Leader_%1), _leaderID]; + + _unit setVehicleVarName _leaderVarName; + + GVAR(NextLeaderID) = _leaderID + 1; +}; + +// prevent group from getting multiple leaders; use this to assign rallypoint moving ability on JIP +_group0 setVariable [QGVAR(leaderVarName), _leaderVarName]; + +_unit setVariable ["ACE_canMoveRallypoint", true, true]; diff --git a/addons/respawn/functions/fnc_handleRespawn.sqf b/addons/respawn/functions/fnc_handleRespawn.sqf index a9fe3293ac..33a0ec09e5 100644 --- a/addons/respawn/functions/fnc_handleRespawn.sqf +++ b/addons/respawn/functions/fnc_handleRespawn.sqf @@ -25,3 +25,8 @@ _respawnedUnit = _this select 0; if (GVAR(SavePreDeathGear)) then { [_respawnedUnit, GVAR(unitGear)] call FUNC(restoreGear); }; + +// fix for setVariable public being lost on respawn for machines that JIP after the command was broadcasted +if (_respawnedUnit getVariable ["ACE_canMoveRallypoint", false]) then { + _respawnedUnit setVariable ["ACE_canMoveRallypoint", true, true]; +}; diff --git a/addons/respawn/stringtable.xml b/addons/respawn/stringtable.xml index 2aa4360275..958bc9b56f 100644 --- a/addons/respawn/stringtable.xml +++ b/addons/respawn/stringtable.xml @@ -37,5 +37,29 @@ Przeteleportowano do punktu zbiórki Odteleportován na rallypoint + + Rallypoint West (Base) + Sammelpunkt West (Basis) + + + Rallypoint East (Base) + Sammelpunkt Ost (Basis) + + + Rallypoint Independent (Base) + Sammelpunkt Widerstand (Basis) + + + Rallypoint West + Sammelpunkt West + + + Rallypoint East + Sammelpunkt Ost + + + Rallypoint Independent + Sammelpunkt Widerstand + From 09289fbf48098ffe23ba0bde1065472d2ce814cc Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 08:34:30 +0200 Subject: [PATCH 153/246] only on server though --- addons/respawn/CfgEventHandlers.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/respawn/CfgEventHandlers.hpp b/addons/respawn/CfgEventHandlers.hpp index 6d7356a607..58aa8995ee 100644 --- a/addons/respawn/CfgEventHandlers.hpp +++ b/addons/respawn/CfgEventHandlers.hpp @@ -64,7 +64,7 @@ class Extended_Init_EventHandlers { class Extended_InitPost_EventHandlers { class CAManBase { class ADDON { - init = QUOTE(_this call FUNC(handleInitPostServer)); + serverInit = QUOTE(_this call FUNC(handleInitPostServer)); }; }; }; From af3fdf9b91c04a3164fc5b60f11f8a0bf396c4bf Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:28:09 +0200 Subject: [PATCH 154/246] Update stringtable.xml Italian translation --- addons/medical/stringtable.xml | 148 +++++++++++++++++++++++++++++++-- 1 file changed, 143 insertions(+), 5 deletions(-) diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 65b663708b..a2db83b09b 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -10,6 +10,7 @@ Wstrzyknij atropinę Injecter de l'atropine Ввести атропин + Inietta atropina Inject Epinephrine @@ -21,7 +22,7 @@ Ввести адреналин Adrenalin Injetar Epinefrina - Inietta Epinefrina + Inietta epinefrina Inject Morphine @@ -45,7 +46,7 @@ Transfusion Infúzió Transfundir Sangue - Effettua Trasfusione + Effettua trasfusione di sangue Transfuse Plasma @@ -55,6 +56,7 @@ Przetocz osocze Transfuser du Plasma Перелить плазму + Effettua trasfusione di plasma Transfuse Saline @@ -64,6 +66,7 @@ Przetocz solankę Transfuser de la Saline Перелить физраствор + Effettua trasfusione di soluzione salina Apply Tourniquet @@ -72,6 +75,7 @@ Aplikovat škrtidlo Załóż stazę Appliquer un garrot + Applica laccio emostatico Bandage @@ -189,6 +193,7 @@ Wstrzykiwanie atropiny ... Injection d'Atropine ... Введение атропина... + Inietto l'atropina ... Transfusing Blood ... @@ -200,7 +205,7 @@ Transfusion Sanguine ... Infúzió... Transfundindo Sangue ... - Effettuo la trasfusione ... + Effettuo la trasfusione di sangue ... Transfusing Saline ... @@ -210,6 +215,7 @@ Przetaczanie solanki ... Transfusion de saline ... Переливание физраствора... + Effettuo la rasfusione di salina Transfusing Plasma ... @@ -219,6 +225,7 @@ Przetaczanie osocza ... Transfusion de Plasma ... Переливание плазмы... + Effettu la trasfusione di plasma ... Bandaging ... @@ -240,6 +247,7 @@ Zakładanie stazy ... Mise en place du Garrot ... Наложение жгута... + Sto applicando il laccio emostatico ... Medical @@ -260,6 +268,7 @@ Obinadlo Bandaż jałowy Bandage rapide + Bendaggio rapido Packing Bandage @@ -267,6 +276,7 @@ Vendaje compresivo Компресионный пакет Bandaż uciskowy + Bendaggio compressivo Elastic Bandage @@ -276,6 +286,7 @@ Elastické obinadlo Bandaż elastyczny Pansement élastique + Bendaggio elastico QuikClot @@ -285,6 +296,7 @@ Opatrunek QuikClot QuikClot Hémostatique + QuikClot(polvere emostatica) Check Pulse @@ -294,6 +306,7 @@ Zkontrolovat pulz Sprawdź tętno Vérifier les pulsations + Controlla il polso Check Blood Pressure @@ -303,6 +316,7 @@ Zkontrolovat krevní tlak Sprawdź ciśnienie krwi Vérification de la Tension + Controlla pressionsa sanguigna Triage Card @@ -312,6 +326,7 @@ Karta segregacyjna Karta Triage Carte de Triage + Triage Card Tourniquet @@ -321,6 +336,7 @@ Škrtidlo Staza Garrot + Laccio emostatico Remove Tourniquet @@ -330,6 +346,7 @@ Sundat škrtidlo Zdejmij stazę Enlever le Garrot + Rimuovi laccio emostatico Give Blood IV (1000ml) @@ -339,6 +356,7 @@ Podaj krew IV (1000ml) Administrer du Sang en IV (1000ml) Podat krev. transfúzi (1000ml) + Effettua trasfusione sangue IV (1000ml) Give Blood IV (500ml) @@ -348,6 +366,7 @@ Podaj krew IV (500ml) Administrer du Sang en IV (500ml) Podat krev. transfúzi (500ml) + Effettua trasfusione sangue IV (500ml) Give Blood IV (250ml) @@ -357,6 +376,7 @@ Podaj krew IV (250ml) Administrer du Sang en IV (250ml) Podat krev. transfúzi (250ml) + Effettua trasfusione sangue IV (250ml) Give Plasma IV (1000ml) @@ -366,6 +386,7 @@ Podaj osocze IV (1000ml) Administrer du Plasma en IV (1000ml) Podat plazmu (1000ml) + Effettua trasfusione plasma IV (1000ml) Give Plasma IV (500ml) @@ -375,6 +396,7 @@ Podaj osocze IV (500ml) Administrer du Plasma en IV (500ml) Podat plazmu (500ml) + Effettua trasfusione plasma IV (500ml) Give Plasma IV (250ml) @@ -384,6 +406,7 @@ Podaj osocze IV (250ml) Administrer du Plasma en IV (250ml) Podat plazmu (250ml) + Effettua trasfusione plasma IV (250ml) Give Saline IV (1000ml) @@ -393,6 +416,7 @@ Podaj solankę IV (1000ml) Administrer de la Solution Saline en IV (1000ml) Podaz fyz. roztok (1000ml) + Effettua trasfusione salina IV (1000ml) Give Saline IV (500ml) @@ -402,6 +426,7 @@ Podaj solankę IV (500ml) Administrer de la Solution Saline en IV (500ml) Podaz fyz. roztok (500ml) + Effettua trasfusione salina IV (500ml) Give Saline IV (250ml) @@ -411,6 +436,7 @@ Podaj solankę IV (250ml) Administrer de la Solution Saline en IV (250ml) Podaz fyz. roztok (250ml) + Effettua trasfusione salina IV (250ml) Minor @@ -420,6 +446,7 @@ Normalny Mineur Minimální + Minore Delayed @@ -429,6 +456,7 @@ Différé Verzögert Odložitelný + Differito Immediate @@ -438,6 +466,7 @@ Urgence Immédiate Sofort Okamžiý + Immediata Deceased @@ -447,6 +476,7 @@ Décédé Verstorben Mrtvý + Deceduto None @@ -456,6 +486,7 @@ Aucun Keine Nic + Nessuna Normal breathing @@ -465,6 +496,7 @@ Normalny oddech Normale Atmung Dýchá normálně + Respiro normale No breathing @@ -474,6 +506,7 @@ Aucune Respiration Brak oddechu Nedýchá + Mancanza di respiro Difficult breathing @@ -483,6 +516,7 @@ Trudności z oddychaniem Schwere Atmung Dýchá s obtížemi + Difficoltà a respirare Almost no breathing @@ -492,6 +526,7 @@ Respiration Faible Prawie brak oddechu Skoro nedýchá + Respira a fatica Bleeding @@ -501,6 +536,7 @@ Saignement Krwawienie zewnętrzne Krvácí + Sanguinando In Pain @@ -510,6 +546,7 @@ Ressent de la Douleur W bólu V bolestech + Con dolore Lost a lot of Blood @@ -519,6 +556,7 @@ A Perdu Bcp de Sang Stracił dużo krwi Ztratil hodně krve + Ha perso parecchio sangue Tourniquet [CAT] @@ -528,6 +566,7 @@ Garrot [CAT] Staza [typ. CAT] Škrtidlo [CAT] + Laccio emostatico [CAT] Receiving IV [%1ml] @@ -537,6 +576,7 @@ Otrzymywanie IV [%1ml] Transfusion en IV [%1ml] Přijímání transfúze [%1ml] + Ricevendo IV [%1ml] Bandage (Basic) @@ -546,6 +586,7 @@ Bandage (Standard) Bandaż (jałowy) Bandáž (standartní) + Bendaggio (base) Used to cover a wound @@ -554,6 +595,7 @@ Utilisé Pour Couvrir Une Blessure Używany w celu przykrycia i ochrony miejsca zranienia Verwendet, um Wunden abzudecken + Usato per coprire una ferita A dressing, that is a particular material used to cover a wound, which is applied over the wound once bleeding has been stemmed. @@ -562,6 +604,7 @@ Un apósito, material específico utilizado para cubrir una herida, se aplica sobre la herida una vez ha dejado de sangrar. Bandage fait d'un matériel spécial utilisé pour couvrir une blessure, qui peut etre appliqué dès que le saignement a été stoppé. Opatrunek materiałowy, używany do przykrywania ran, zakładany na ranę po zatamowaniu krwawienia. + Una benda apposta, utilizzata per coprire una ferita, la quale è applicato sopra di essa una volta fermata l'emorragia. Packing Bandage @@ -570,6 +613,7 @@ Vendaje compresivo Bandage Mèche Bandaż (uciskowy) + Bendaggio compressivo Used to pack medium to large wounds and stem the bleeding @@ -578,6 +622,7 @@ Se utiliza para vendar heridas medianas o grandes y detener el sangrado Utilisé pour remplir la cavité créée dans une blessure de taille moyenne à grande. Używany w celu opatrywania średnich i dużych ran oraz tamowania krwawienia. + Usato su medie o larghe ferite per fermare emorragie. A bandage used to pack the wound to stem bleeding and facilitate wound healing. Packing a wound is an option in large polytrauma injuries. @@ -585,6 +630,7 @@ Se utiliza para detener la hemorragia de una herida y favorecer su cicatrización. Se usa en grandes lesiones o politraumatismos. Bandage pouvant être inseré dans les blessures pour éponger le saignement et faciliter la guerrison. Ce bandage est optionnel pour soigner les lésions polytraumatique. Opatrunek stosowany w celu zatrzymania krwawienia i osłony większych ran. + Un bendaggio usato per bendare ferite con emorragie e facilitare la guarigione. Bendare una ferita è una opzione su ferite di vario tipo. Bandage (Elastic) @@ -594,6 +640,7 @@ Bandage (Élastique) Bandaż (elastyczny) Bandáž (elastická) + Benda (Elastica) Bandage kit, Elastic @@ -602,6 +649,7 @@ Kit de vendaje (Elástico) Bandage Compressif Élastique Zestaw bandaży elastycznych. + Kit bendaggio, elastico Allows an even compression and extra support to the injured area. @@ -610,6 +658,7 @@ Ce bandage peut être utilisé pour compresser la plaie afin de ralentir le saignement et assurer la tenue du bandage lors de mouvement. Elastyczna opaska podtrzymująca opatrunek oraz usztywniająca okolice stawów. Brinda una compresión uniforme y ofrece soporte extra a una zona lesionada + Permette di comprimevere e aiutare la zone ferita. Tourniquet (CAT) @@ -619,6 +668,7 @@ Garrot (CAT) Staza (typ. CAT) Škrtidlo (CAT) + Laccio emostatico (CAT) Slows down blood loss when bleeding @@ -627,6 +677,7 @@ Ralentit le saignement Zmniejsza ubytek krwi z kończyn w przypadku krwawienia. Verringert den Blutverlust während einer Blutung + Rallenta la perdita di sangue in caso di sanguinamento A constricting device used to compress venous and arterial circulation in effect inhibiting or slowing blood flow and therefore decreasing loss of blood. @@ -635,6 +686,7 @@ Un dispositif permettant de compresser les artères et veines afin de réduire la perte de sang. Opaska uciskowa CAT służy do tamowanie krwotoków w sytuacji zranienia kończyn z masywnym krwawieniem tętniczym lub żylnym. Ein Gerät, das Druck auf Venen und Arterien ausübt und so den Blutfluss verringert. + Un laccio emostatico usato per comprimere le vene e arterie per bloccare o rallentare la circolazione del sangue e quindi rallentare dissanguamenti. Morphine autoinjector @@ -644,6 +696,7 @@ Auto-injecteur de Morphine Autostrzykawka z morfiną Autoinjektor morfin + Autoiniettore di morfina Used to combat moderate to severe pain experiences @@ -652,6 +705,7 @@ Usado para combatir los estados dolorosos de moderados a severos Utilisé pour réduire les douleurs modérées à sévères. Morfina. Ma silne działanie przeciwbólowe. + Usato per combattere il dolore. An analgesic used to combat moderate to severe pain experiences. @@ -660,6 +714,7 @@ Un Analgésique puissant servant à réduire les douleurs modérées à sévères. Organiczny związek chemiczny z grupy alkaloidów. Ma silne działanie przeciwbólowe. Ein Schmerzmittel um mäßige bis starke Schmerzen zu behandeln + Un analgesico usato per combattere il dolore. Atropin autoinjector @@ -669,6 +724,7 @@ Autostrzykawka AtroPen Atropin Autoinjektor Autoinjektor atropin + Autoiniettore di Atropina Used in NBC scenarios @@ -677,6 +733,7 @@ Utilisé en cas d'attaque CBRN Atropina. Stosowana jako lek rozkurczowy i środek rozszerzający źrenice. Verwendet bei ABC Kontamination + Usato in situazioni con gas nervino. A drug used by the Military in NBC scenarios. @@ -685,6 +742,7 @@ Médicament utilisé par l'armée en cas d'attaque CBRN Atropina. Stosowana jako lek rozkurczowy i środek rozszerzający źrenice. Środek stosowany w przypadku zagrożeń NBC. Ein Medikament, das vom Militär bei ABC Kontamination verwendet wird. + E' un farmaco usato in ambito militare in scenari con presenza di gas nervino. Epinephrine autoinjector @@ -694,6 +752,7 @@ Autostrzykawka EpiPen Epiniphrin Autoinjektor Autoinjektor adrenalin + Autoiniettore di Epinefrina Increase heart rate and counter effects given by allergic reactions @@ -702,6 +761,7 @@ Augmente la fréquence cadiaque et annule les effets d'une réaction anaphylactique Adrenalina. Zwiększa puls i przeciwdziała efektom wywołanym przez reakcje alergiczne Steigert die Herzfrequenz, um den Effekt von allergischen Reaktionen zu bekämpfen + Aumenta il battito cardiaco e combatte gli effetti di reazioni allergiche. A drug that works on a sympathetic response to dilate the bronchi, increase heart rate and counter such effects given by allergic reactions (anaphylaxis). Used in sudden cardiac arrest scenarios with decreasing positive outcomes. @@ -709,6 +769,7 @@ Medicamento que dilata los bronquios, aumenta la frecuencia cardiaca y contrarresta los efectos de las reacciones alérgicas (anafilaxis). Se utiliza en caso de paros cardiacos repentinos. Medicament qui fonctionne sur le système nerveux sympathique créant une dilatation des bronches, augmente la fréquence cardiaque et annule les effets d'une réaction allergique (anaphylaxie). Utilisé lors d'arrêt cardio-respiratoire pour augmenter les chances de retrouver un pouls. EpiPen z adrenaliną ma działanie sympatykomimetyczne, tj. pobudza receptory alfa- i beta-adrenergiczne. Pobudzenie układu współczulnego prowadzi do zwiększenia częstotliwości pracy serca, zwiększenia pojemności wyrzutowej serca i przyśpieszenia krążenia wieńcowego. Pobudzenie oskrzelowych receptorów beta-adrenergicznych wywołuje rozkurcz mięśni gładkich oskrzeli, co w efekcie zmniejsza towarzyszące oddychaniu świsty i duszności. + Una sostanza che permette di dilatare i bronchi, aumentare il battito cardiaco e combattere effetti di reazioni allergiche. Usato anche in casi di arresto cardiaco. Plasma IV (1000ml) @@ -717,6 +778,7 @@ Plasma Sanguin IV (1000ml) Osocze IV (1000ml) Plasma IV (1000ml) + Plasma IV (1000ml) A volume-expanding blood supplement. @@ -724,6 +786,7 @@ Suplemento para expandir el volumen sanguíneo. Supplément visant à remplacer les volumes sanguin Składnik krwi, używany do zwiększenia jej objętości. + Aiuta ad aumentare il volume sanguigno. A volume-expanding blood supplement. @@ -731,6 +794,7 @@ Suplemento para expandir el volumen sanguíneo. Supplément visant à remplacer le volume sanguin et remplace les plaquettes. Składnik krwi, używany do zwiększenia jej objętości. + Aiuta ad aumentare il volume sanguigno. Plasma IV (500ml) @@ -739,6 +803,7 @@ Plasma Sanguin IV (500ml) Osocze IV (500ml) Plasma IV (500ml) + Plasma IV (500ml) Plasma IV (250ml) @@ -747,6 +812,7 @@ Plasma Sanguin (250ml) Osocze IV (250ml) Plasma IV (250ml) + Plasma IV (250ml) Blood IV (1000ml) @@ -755,6 +821,7 @@ Cullot Sanguin IV (1000ml) Krew IV (1000ml) Blut IV (1000ml) + Sangue IV (1000ml) Blood IV, for restoring a patients blood (keep cold) @@ -762,12 +829,14 @@ Sangre intravenosa, para restarurar el volumen sanguíneo (mantener frío) Cullot Sanguin O- ,utiliser seulement lors de perte sanguine majeur afin de remplacer le volume sanguin perdu. Habituelment utiliser lors du transport ou dans un etablisement de soin. Krew IV, używana do uzupełnienia krwi u pacjenta, trzymać w warunkach chłodniczych + Sangue usato per ripristinare pazienti in cui si è verificata una perdita di sangue (conservare al fresco) O Negative infusion blood used in strict and rare events to replenish blood supply usually conducted in the transport phase of medical care. Кровь I группы, резус-отрицательная, применяется по жизненным показаниям для возмещения объема потерянной крови на догоспитальном этапе оказания медицинской помощи. Krew 0 Rh-, używana w rzadkich i szczególnych przypadkach do uzupełnienia krwi u pacjenta, zazwyczaj w trakcie fazie transportu rannej osoby do szpitala. Utilice sólo durante gran pérdida de sangre para reemplazar el volumen de sangre perdida. Uso habitual durante el transporte de heridos. + Sangue 0 negativo usato per ripristinare sangue in pazienti in cui si è verificata una perdita di sangue. Blood IV (500ml) @@ -776,6 +845,7 @@ Cullot Sanguin IV (500ml) Krew IV (500ml) Blut IV (500ml) + Sangue IV (500ml) Blood IV (250ml) @@ -784,6 +854,7 @@ Cullot Sanguin IV (250ml) Krew IV (250ml) Blut IV (250ml) + Samgue IV (250ml) Saline IV (1000ml) @@ -792,6 +863,7 @@ Solution Saline 0.9% IV (1000ml) Solanka 0,9% IV (1000ml) Kochsalzlösung (1000ml) + Soluzione salina IV (1000ml) Saline IV, for restoring a patients blood @@ -799,6 +871,7 @@ Solución salina intravenosa, para restaurar el volumen sanguíneo Solution Saline 0.9% IV, pour rétablir temporairement la tension artérielle Solanka 0,9%, podawana dożylnie (IV), używana w celu uzupełnienia krwi u pacjenta + Soluzione salina, usata per ripristinare sangue nei pazienti. A medical volume-replenishing agent introduced into the blood system through an IV infusion. @@ -806,6 +879,7 @@ Suero fisiológico inoculado al torrente sanguíneo de forma intravenosa. Un remplacement temporaire pour rétablir la tension artérielle lors de perte sanguine, administré par intra-veineuse Używany w medycynie w formie płynu infuzyjnego jako środek nawadniający i uzupełniający niedobór elektrolitów, podawany dożylnie (IV). + Una soluzione medica per ripristinare il volume del sangue introdotta tramite trasfusione IV. Saline IV (500ml) @@ -814,6 +888,7 @@ Solution Saline 0.9% IV (500ml) Solanka 0,9% IV (500ml) Kochsalzlösung (500ml) + Soluzione salina IV (500ml) Saline IV (250ml) @@ -822,6 +897,7 @@ Solution Saline 0.9% IV (250ml) Solanka 0,9% IV (250ml) Kochsalzlösung (250ml) + Soluzione salina IV (250ml) Basic Field Dressing (QuikClot) @@ -830,6 +906,7 @@ Bandage Regulier (Coagulant) Podstawowy pakiet opatrunkowy (QuikClot) Verbandpäckchen(Gerinnungsmittel) + Bendaggio emostatico (QuikClot) QuikClot bandage @@ -838,6 +915,7 @@ Bandage coagulant Hemostatyczny pakiet QuikClot. Podstawowy opatrunek stosowany na rany. Bandage mit Gerinnungsmittel + Bendaggio emostatico (QuikClot) Hemostatic bandage with coagulant that stops bleeding. @@ -846,6 +924,7 @@ Proszkowy opatrunek adsorpcyjny przeznaczony do tamowania zagrażających życiu krwawień średniej i dużej intensywności. Vendaje hemostático con coagulante que detiene el sangrado. Verband mit Gerinnungsmittel, um starke Blutung zu behandeln. + Bendaggio emostatico con coagulante che permette di arrestare perdite di sangue Personal Aid Kit @@ -854,6 +933,7 @@ Équipement de support vital Apteczka osobista Persönliches Verbandpäckchen + Pronto soccorso personale Includes various treatment kit needed for stitching or advanced treatment @@ -862,6 +942,7 @@ Inclue du matériel medical pour les traitements avancés, tel les points de suture. Zestaw środków medycznych do opatrywania ran i dodatkowego leczenia po-urazowego Beinhaltet medizinisches Material für fortgeschrittene Behandlung und zum Nähen. + Include vario materiale medico per trattamenti avanzati. @@ -869,6 +950,7 @@ W znacznym stopniu poprawia stan pacjenta + Surgical Kit @@ -877,6 +959,7 @@ Kit quirúrgico Zestaw do szycia ran Operationsset + Kit chirurgico Surgical Kit for in field advanced medical treatment @@ -885,6 +968,7 @@ Kit quirúrgico para el tratamiento avanzado en el campo de batalla Zestaw pozwalający na zszywanie ran w polu Operationsset für fortgeschrittene medizinische Feldversorgung + Kit chirurgico per trattamenti avanzati sul campo. Surgical Kit for in field advanced medical treatment @@ -893,6 +977,7 @@ Zestaw pozwalający na zszywanie ran w polu Operationsset für fortgeschrittene medizinische Feldversorgung Trousse chirurgicale pour le traitement sur le terrain + Kit chirurgico per trattamenti avanzati sul campo. Bodybag @@ -901,6 +986,7 @@ Bolsa para cadáveres Worek na zwłoki Leichensack + Sacca per corpi A bodybag for dead bodies @@ -909,6 +995,7 @@ Una bolsa para cadáveres Worek do pakowania zwłok Ein Leichensack für Tote + Una sacca nera per trasportare cadaveri. A bodybag for dead bodies @@ -917,6 +1004,7 @@ Una bolsa para cadáveres Worek do pakowania zwłok Ein Leichensack für Tote + Una sacca nera per trasportare cadaveri. Blood Pressure @@ -925,6 +1013,7 @@ Presión arterial Ciśnienie krwi Blutdruck + Pressione sanguigna Checking Blood Pressure.. @@ -933,6 +1022,7 @@ Comprobando presión arterial... Sprawdzanie ciśnienia krwi... Blutdruck kontrollieren... + Controllando la pressione sanguigna.. You checked %1 @@ -941,6 +1031,7 @@ Examinando a %1 Zbadałeś %1 Kontrolliert %1 + Hai diagnosticato %1 You find a blood pressure of %2/%3 @@ -948,6 +1039,7 @@ Артериальное давление %2/%3 La Presión Arterial es %2/%3 Wyczuwasz ciśnienie krwi o wartości %2/%3 + Hai riscontrato una pressione di %2/%3 You find a low blood pressure @@ -956,6 +1048,7 @@ La presión arterial es baja Wyczuwasz niskie ciśnienie krwi Blutdruck ist niedrig + La pressione sanguigna è bassa You find a normal blood pressure @@ -964,6 +1057,7 @@ La presión arterial es normal Wyczuwasz normalne ciśnienie krwi Blutdruck ist normal + La pressione sanguigna è normale You find a high blood pressure @@ -972,6 +1066,7 @@ La presión arterial es alta Wyczuwasz wysokie ciśnienie krwi Blutdruck ist hoch + La pressione sanguigna è alta You find no blood pressure @@ -980,6 +1075,7 @@ No hay presión arterial Nie wyczuwasz ciśnienia krwi Patient hat keinen Blutdruck + La pressione sanguigna è assente You fail to find a blood pressure @@ -988,6 +1084,7 @@ No puedes encontrar presión arterial Nie udało Ci się sprawdzić ciśnienia krwi Blutdruck konnte nicht gefunden werden + Manca strumento per misurare pressione sanguigna Pulse @@ -996,6 +1093,7 @@ Pulso Tętno Puls + Polso Checking Heart Rate.. @@ -1004,6 +1102,7 @@ Comprobando ritmo cardíaco... Sprawdzanie tętna... Kontrolliere Herzfrequenz + Controllando il battito cardiaco.. You checked %1 @@ -1012,6 +1111,7 @@ Examinando a %1 Zbadałeś %1 Kontrolliertt %1 + Hai diagnosticato %1 You find a Heart Rate of %2 @@ -1020,6 +1120,7 @@ El ritmo cardíaco es de %2 Wyczuwasz tętno o wartości %2 Herzfrequenz ist %2 + Il battito cardiaco è %2 You find a weak Heart Rate @@ -1028,6 +1129,7 @@ El ritmo cardíaco es débil Wyczuwasz słabe tętno Schwacher Puls + Hai riscontrato un debole battito cardiaco You find a strong Heart Rate @@ -1036,6 +1138,7 @@ El ritmo cardíaco está acelerado Wyczuwasz silne tętno Starker Puls + Hai riscontrato un forte battito cardiaco You find a normal Heart Rate @@ -1044,6 +1147,7 @@ El ritmo cardíaco es bueno Wyczuwasz normalne tętno Normaler Puls + Hai riscontrato un normale battito cardiaco You find no Heart Rate @@ -1052,6 +1156,7 @@ No tiene ritmo cardíaco Wyczuwasz brak tętna Kein Puls gefunden + Hai riscontrato una assenza di battito cardiaco Response @@ -1060,6 +1165,7 @@ Respuesta Przytomność Ansprechbarkeit + Risposta You check response of patient @@ -1068,6 +1174,7 @@ Compruebas si el paciente reacciona Sprawdzasz przytomność pacjenta Du prüfst ob der Patient ansprechbar ist + Controlli la risposta del paziente %1 is responsive @@ -1076,6 +1183,7 @@ %1 ha reaccionado %1 jest przytomny %1 ist anprechbar + %1 e' cosciente %1 is not responsive @@ -1084,6 +1192,7 @@ %1 no reacciona %1 jest nieprzytomny %1 ist nicht ansprechbar + %1 e' incosciente You checked %1 @@ -1092,6 +1201,7 @@ Examinas a %1 Zbadałeś %1 Du versucht %1 anzusprechen + Hai controllato %1 Bandaged @@ -1099,6 +1209,7 @@ Повязка наложена Vendado Zabandażowano + Bendato You bandage %1 (%2) @@ -1106,6 +1217,7 @@ Вы перевязали раненого %1 (%2) Aplicas vendaje a %1 en %2 Bandażujesz %1 (%2) + Stai bendando %1 (%2) %1 is bandaging you @@ -1113,6 +1225,7 @@ %1 перевязывает вас %1 te está vendando %1 bandażuje Ciebie + %1 ti sta bendando You start stitching injures from %1 (%2) @@ -1120,6 +1233,7 @@ Vous suturez %1 (%2) Estás suturando heridas de %1 en %2 Zszywasz rany %1 (%2) + Stai suturando le ferite di %1 (%2) Stitching @@ -1127,6 +1241,7 @@ Sutures Suturando Szycie + Suturando You treat the airway of %1 @@ -1134,6 +1249,7 @@ Vous traitez les voies respiratoires de %1 Estás intubando a %1 Udrażniasz drogi oddechowe %1 + Controlli le vie respiratorie di %1 Airway @@ -1142,6 +1258,7 @@ Drogi oddechowe Atemwege Voies respiratoires + Vie respiratorie %1 is treating your airway @@ -1149,6 +1266,7 @@ %1 traite vos voies respiratoires %1 te está intubando %1 udrażnia Twoje drogi oddechowe + %1 ti sta trattando le vie respiratorie Drag @@ -1184,7 +1302,7 @@ Déposer Elenged Largar - Lascia + Load Patient Into @@ -1216,6 +1334,7 @@ Выгрузить пациента Wyładuj pacjenta Débarquer le Patient + Scarica il paziente Load patient @@ -1223,6 +1342,7 @@ Погрузить пациента Załaduj pacjenta Embarquer le Patient + Carica il paziente Place body in bodybag @@ -1230,6 +1350,7 @@ Поместить тело в мешок для трупов Zapakuj ciało do worka na zwłoki Mettre le corps dans la housse mortuaire + Metti il corpo nella sacca per cadaveri Placing body in bodybag @@ -1237,6 +1358,7 @@ Упаковка тела Pakowanie ciała do worka na zwłoki Placement du corps dans la housse + Stai mettendo il corpo nella sacca %1 has bandaged patient @@ -1244,6 +1366,7 @@ %1 перевязал пациента %1 zabandażował pacjenta %1 a pansé le patient + %1 ha bendato il paziente %1 used %2 @@ -1251,6 +1374,7 @@ %1 использовал %2 %1 użył %2 %1 utilise %2 + %1 ha usato %2 %1 has given an IV @@ -1258,6 +1382,7 @@ %1 провел переливание %1 podał IV %1 a administré une IV + %1 ha somministrato una IV %1 applied a tourniquet @@ -1265,66 +1390,79 @@ %1 наложил жгут %1 założył stazę %1 a appliqué un garrot + %1 ha applicato un laccio emostatico Heavily wounded Schwer verwundet: Ciężko ranny + Gravemente ferito Lightly wounded Leicht verwundet: Lekko ranny + Leggermente ferito Very lightly wounded Sehr leicht verwundet: B. lekko ranny + Ferito lievemente Head Kopf Głowa + Testa Torso Torso Tors + Torso Left Arm Linker Arm Lewe ramię + Braccio sinistro Right Arm Rechter Arm Prawe ramię + Braccio destro Left Leg Linkes Bein Lewa noga + Gamba sinistra Right Leg Rechtes Bein Prawa noga + Gamba destra Pain Effect Type Schmerzeffekt-Typ Rodzaj efektu bólu + Pain Effect Type Colour Flashing Farbblinken Pulsujące kolory + Colore lampeggiante Chromatic Aberration Chromatische Aberration Aberracja chromatyczna + Aberrazione cromatica - \ No newline at end of file + From 532ee164115bba856db38c7e2edd409cd06c56a2 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:30:56 +0200 Subject: [PATCH 155/246] Update stringtable.xml Italian translation --- addons/advanced_ballistics/stringtable.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/addons/advanced_ballistics/stringtable.xml b/addons/advanced_ballistics/stringtable.xml index 29560ce149..f19aa1e672 100644 --- a/addons/advanced_ballistics/stringtable.xml +++ b/addons/advanced_ballistics/stringtable.xml @@ -5,10 +5,12 @@ Show Wind Info Pokaż inf. o wietrze + Mostra indicazioni del vento Show Protractor Pokaż kątomierz + Mostra il rapportatore - \ No newline at end of file + From 2daa0e2d2935bd1593239b62a7f0808e4033c164 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:32:01 +0200 Subject: [PATCH 156/246] Update stringtable.xml Italian translation --- addons/aircraft/stringtable.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/aircraft/stringtable.xml b/addons/aircraft/stringtable.xml index 1ec3d09ae6..ae1993f6a7 100644 --- a/addons/aircraft/stringtable.xml +++ b/addons/aircraft/stringtable.xml @@ -34,6 +34,7 @@ Otevřít nákladní prostor Rámpát kinyitni Открыть грузовой отсек + Apri la porta del cargo Close Cargo Door @@ -44,6 +45,7 @@ Zavřít nákladní prostor Rámpát zárni Закрыть грузовой отсек + Chiudi la porta del cargo From f328d302e1defcfb2bf619de9cf40c106da1f910 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:42:25 +0200 Subject: [PATCH 157/246] Update stringtable.xml Italian translation --- addons/captives/stringtable.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/addons/captives/stringtable.xml b/addons/captives/stringtable.xml index 292da895f3..f5812b2bf7 100644 --- a/addons/captives/stringtable.xml +++ b/addons/captives/stringtable.xml @@ -71,6 +71,7 @@ Fogoly berakása Загрузить пленного Embarcar Prisioneiro + Carica il prigioniero Unload Captive @@ -82,6 +83,7 @@ Fogoly kivevése Выгрузить пленного Desembarcar Prisioneiro + Scarica il prigioniero Cable Tie @@ -128,6 +130,7 @@ Motozás Обыскать человека Revistar + Perquisisci la persona/Italian> Surrender @@ -137,6 +140,7 @@ Vzdát se Poddaj się Сдаться в плен + Arreso Stop Surrendering @@ -146,6 +150,7 @@ Přestat se vzdávat Podejmij walkę ponownie Отменить сдачу в плен + Annulla la resa Only use on alive units @@ -155,6 +160,7 @@ Použitelné jen na živé jednotky Używaj tylko na żywych jednostkach Применимо только к живым юнитам + Si può fare solo su persone vive Only use on dismounted inf @@ -164,6 +170,7 @@ Použitelné jen na pěsích jednotkách Używaj tylko na piechocie poza wszelkimi pojazdami Применимо только к пехоте вне техники + Si può usare solo su fanteria a piedi Nothing under mouse @@ -173,6 +180,7 @@ Nic není vybráno Nie ma nic pod kursorem Ничего не выделено + Niente selezionato From aaee9c72c1270ebdf73fe6e8ae4cf58203c60a5e Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:44:13 +0200 Subject: [PATCH 158/246] Update stringtable.xml Italian translation --- addons/disarming/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/disarming/stringtable.xml b/addons/disarming/stringtable.xml index e6820dbf16..67a7bb0d76 100644 --- a/addons/disarming/stringtable.xml +++ b/addons/disarming/stringtable.xml @@ -6,6 +6,7 @@ Öffne Inventar Otwórz ekwipunek Otevřít inventář + Apri l'inventario From c9e452a000c515a7b1f17fdb0740e92bc34da038 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:48:52 +0200 Subject: [PATCH 159/246] Update stringtable.xml Italian --- addons/disposable/stringtable.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/disposable/stringtable.xml b/addons/disposable/stringtable.xml index 86c4b2d8e8..f94c872948 100644 --- a/addons/disposable/stringtable.xml +++ b/addons/disposable/stringtable.xml @@ -10,6 +10,7 @@ Lanzador utilizado Használt cső Отстрелянная труба + Tubo utilizzato Used disposable rocket launcher @@ -20,6 +21,7 @@ Lanzador desechable utilizado Használt rakétavető Отстрелянная одноразовая пусковая установка + Lanciarazzi monouso utilizzato Preloaded Missile Dummy @@ -30,6 +32,7 @@ Preloaded Missile Dummy Preloaded Missile Dummy Заряженная ракетная пустышка + Missile stupido precaricato From 45fec0409d0a04adc480d54f1bb03d3490caaf0e Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:51:26 +0200 Subject: [PATCH 160/246] Update stringtable.xml Italian --- addons/explosives/stringtable.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/explosives/stringtable.xml b/addons/explosives/stringtable.xml index 44dde34452..626b23596a 100644 --- a/addons/explosives/stringtable.xml +++ b/addons/explosives/stringtable.xml @@ -48,6 +48,7 @@ Robbanóanyag kódja: %1 Código do explosivo: %1 Код подрыва: %1 + Codice esplosivo: %1 Place @@ -488,6 +489,7 @@ Utilizado para detonar explosivos remotamente al soltarlo. Robbanóanyagok távoli robbantásához Используется для дистанционного подрыва, после смерти оператора. + Usato per attivare esplosivi quando rilasciato Pick up @@ -496,6 +498,7 @@ Sebrat Podnieś Ramasser + Raccogli From b28ef3d22dcfc01c1ed305d23a6bf5ef26d6e4b8 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:52:40 +0200 Subject: [PATCH 161/246] Update stringtable.xml Italian --- addons/fcs/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/fcs/stringtable.xml b/addons/fcs/stringtable.xml index 1f1b0d3acf..69b81c6779 100644 --- a/addons/fcs/stringtable.xml +++ b/addons/fcs/stringtable.xml @@ -9,6 +9,7 @@ Označit cíl / Změřit vzdálenost Iluminar objetivo / Medir distancia Подсветить цель / Замерить расстояние + Illumina l'obiettivo / Misura la distanza Zeroed To From eceb7595234592383f4be2cfbb206c946bb22424 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:53:35 +0200 Subject: [PATCH 162/246] Update stringtable.xml Italian --- addons/frag/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/frag/stringtable.xml b/addons/frag/stringtable.xml index 3fa60aacf7..25d4f04a9a 100644 --- a/addons/frag/stringtable.xml +++ b/addons/frag/stringtable.xml @@ -9,6 +9,7 @@ Wyłącz fragmentację odłamków Выключить разлёт осколков Désactive la fragmentation + Disattiva la frammentazione From 9a8dd905f21008463b8e1b84d1b1c5a4d8fd74f5 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:56:39 +0200 Subject: [PATCH 163/246] Update stringtable.xml --- addons/hearing/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/hearing/stringtable.xml b/addons/hearing/stringtable.xml index a29915d5f8..da0f44a43c 100644 --- a/addons/hearing/stringtable.xml +++ b/addons/hearing/stringtable.xml @@ -105,6 +105,7 @@ Knalltrauma deaktivieren Vypnout pískání v uších Wyłącz dzwonienie w uszach + Disabilita il ronzio From 544894a05ee382835b472b3c26191e71b573dfd4 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 10:59:44 +0200 Subject: [PATCH 164/246] Update stringtable.xml Italian --- addons/interact_menu/stringtable.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index dddf90a4de..f403cf32a8 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -9,10 +9,12 @@ Zobrazit kurzor v menu pro vlastní interakci Zawsze wyświetlaj kursor dla własnej interakcji Toujours afficher le curseur pour les interactions sur soi-même + Mostra sempre il cursore per le auto interazioni Display interaction menus as lists Mostrar los menus de interacción como listas + Mostra il menù di interazione come lista Interact Key @@ -22,6 +24,7 @@ Klávesa pro interakci Klawisz interakcji Touche d'interaction + Tasto interazione Self Interaction Key @@ -31,6 +34,7 @@ Klávesa pro vlastní interakci Klawisz własnej interakcji Touche d'interaction personnelle + Tasto per auto interazioni Self Actions @@ -40,6 +44,7 @@ Vlastní akce Własne akcje Interaction personnelle + Auto interazioni Vehicle Actions @@ -49,6 +54,7 @@ Interakce s vozidly Akcje pojazdu Interaction véhicule + Interazioni con veicoli From 6e7c1ce9d2b8e0858bbf0828bd1a4797b938f3cb Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:04:18 +0200 Subject: [PATCH 165/246] Update stringtable.xml Ita --- addons/interaction/stringtable.xml | 31 +++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index b7379026ef..ce18f514f4 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -9,6 +9,7 @@ Interakcje Interactions Взаимодействия + Interazioni Torso @@ -18,6 +19,7 @@ Tors Torse Торс + Torso Head @@ -27,6 +29,7 @@ Głowa Tête Голова + Testa Left Arm @@ -36,6 +39,7 @@ Lewe ramię Bras gauche Левая рука + Braccio sinistro Right Arm @@ -45,6 +49,7 @@ Prawe ramię Bras droit Правая рука + Braccio destro Left Leg @@ -54,6 +59,7 @@ Lewa noga Jambe gauche Левая нога + Gamba sinistra Right Leg @@ -63,6 +69,7 @@ Prawa noga Jambe droite Правая нога + Gamba destra Weapon @@ -72,6 +79,7 @@ Broń Arme Оружие + Arma Interaction Menu @@ -83,7 +91,7 @@ Меню взаимодействия Interakció Menu de Interação - Menù Interattivo + Menù interazione Interaction Menu (Self) @@ -95,7 +103,7 @@ Меню взаимодействия (с собой) Interakció (saját) Menu de Interação (Individual) - Menù Interattivo (Individuale) + Menù interazione (Individuale) Open / Close Door @@ -203,7 +211,7 @@ ТАНЦЕВАТЬ! TÁNC! DANCE! - Balla! + DANZA! Stop Dancing @@ -541,21 +549,25 @@ Join Red Unirse al rojo Rejoindre Rouge + Unisciti al team rosso Join Green Unirse al verde Rejoindre Verte + Unisciti al team verde Join Blue Unirse al azul Rejoindre Bleue + Unisciti al team blu Join Yellow Unirse al amarillo Rejoindre Jaune + Unisciti al team giallo You joined Team %1 @@ -566,7 +578,7 @@ Připojil ses do %1 týmu Вы присоединились к группе %1 Você uniu-se à Equipe %1 - Sei entrato nella Squadra %1 + Sei entrato nella team %1 Csatlakoztál a %1 csapathoz @@ -578,7 +590,7 @@ Opustit tým Покинуть группу Deixar Equipe - Lascia la Squadra + Lascia il team Csapat elhagyása @@ -590,7 +602,7 @@ Opustil si tým Вы покинули группу Você deixou a Equipe - Hai lasciato la squadra + Hai lasciato il team Elhagytad a csapatot @@ -625,7 +637,7 @@ Tecla modificadora Клавиша-модификатор Tecla Modificadora - Modifica Tasto + Modifica tasto Módosító billentyű Modifikátor @@ -639,6 +651,7 @@ Hatótávolságon kívül Poza zasięgiem Mimo dosah + Non in raggio Equipment @@ -649,6 +662,7 @@ Vybavení Felszerelés Снаряжение + Equipaggiamento Push @@ -659,6 +673,7 @@ Odstrčit Tolás Толкать + Spingi Interact @@ -668,6 +683,7 @@ Взаимодействовать Interakcja Interactuar + Interagisci Passengers @@ -677,6 +693,7 @@ Pasažéři Pasażerowie Passagers + Passeggeri From 5c7b8247c53ad1f7f708319f420bf7e14cf13db2 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:05:57 +0200 Subject: [PATCH 166/246] Update stringtable.xml Italian --- addons/inventory/stringtable.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/inventory/stringtable.xml b/addons/inventory/stringtable.xml index 0702f677fa..64784c2a96 100644 --- a/addons/inventory/stringtable.xml +++ b/addons/inventory/stringtable.xml @@ -9,6 +9,7 @@ Zvětšit zobrazení inventáře Powiększ UI ekwipunku Agrandir la taille d'affichage de l'inventaire + Ingrandisci il menù inventario 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. @@ -18,6 +19,7 @@ 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. 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. 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 + Normalmente il menù inventario è scalato in base alle dimensioni interfaccia. Questa opzione di permette di ingrandirlo ulteriormente ma senza aumentare la dimensione del testo. From d1936d8e1be428ae29c47e9a43121f60b4190486 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:06:42 +0200 Subject: [PATCH 167/246] Update stringtable.xml Italian --- addons/javelin/stringtable.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/javelin/stringtable.xml b/addons/javelin/stringtable.xml index f0e933ad0d..3c53402de2 100644 --- a/addons/javelin/stringtable.xml +++ b/addons/javelin/stringtable.xml @@ -8,6 +8,7 @@ Zamknout cíl(držet) Namierz cel (przytrzymaj) Verrouiller cible (maintenir) + Aggangia il bersagio Cycle Fire Mode @@ -16,6 +17,7 @@ Cyklování režimů palby Przełącz tryb ognia Cycle mode de tir + Alterna le modalità di fuoco From 8c0f52e6153b83c7e32a2f9c13f41286e90162a2 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:08:04 +0200 Subject: [PATCH 168/246] Update stringtable.xml Italian --- addons/kestrel4500/stringtable.xml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/addons/kestrel4500/stringtable.xml b/addons/kestrel4500/stringtable.xml index 310884f989..0008da266a 100644 --- a/addons/kestrel4500/stringtable.xml +++ b/addons/kestrel4500/stringtable.xml @@ -21,22 +21,27 @@ Open Kestrel 4500 Otwórz Kestrel 4500 + Accendi Kestrel 4500 Show Kestrel 4500 Pokaż Kestrel 4500 + Mostra Kestrel 4500 Hide Kestrel 4500 Ukryj Kestrel 4500 + Nascondi Kestrel 4500 Open Kestrel 4500 Otwórz Kestrel 4500 + Accendi Kestrel 4500 Show Kestrel 4500 Pokaż Kestrel 4500 + Mostra Kestrel 4500 - \ No newline at end of file + From 96be1baddcdb820418a42e1d3d0465c0c0f65b74 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:08:43 +0200 Subject: [PATCH 169/246] Update stringtable.xml Italian --- addons/laser_selfdesignate/stringtable.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/laser_selfdesignate/stringtable.xml b/addons/laser_selfdesignate/stringtable.xml index 4fda0c031e..628c78b57d 100644 --- a/addons/laser_selfdesignate/stringtable.xml +++ b/addons/laser_selfdesignate/stringtable.xml @@ -9,6 +9,7 @@ Laserový značkovač zapnut Desygnator laserowy wł. Désignateur Laser Allumé + Designatore laser acceso Laser Designator Off @@ -18,6 +19,7 @@ Laserový značkovat vypnut Desygnator laserowy wył. Désignateur Laser Éteint + Designatore laser spento From f931c1a42ce4c445f94e25dc3e5e787c9203c7b3 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:10:05 +0200 Subject: [PATCH 170/246] Update stringtable.xml Italian --- addons/laserpointer/stringtable.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/addons/laserpointer/stringtable.xml b/addons/laserpointer/stringtable.xml index d53ab478e0..a3429a1fbf 100644 --- a/addons/laserpointer/stringtable.xml +++ b/addons/laserpointer/stringtable.xml @@ -9,6 +9,7 @@ Лазерный прицел (красный) Laserové ukazovátko (červené) Wskaźnik laserowy (czerwony) + Puntatore laser (rosso) Laser Pointer (green) @@ -17,6 +18,7 @@ Лазерный прицел (зелёный) Laserové ukazovátko (zelené) Wskaźnik laserowy (zielony) + Puntatore laser (verde) Emits visible light. @@ -25,6 +27,7 @@ Испускает узкий пучок видимого света. Vyzařuje viditelné světlo. Wydziela widzialne światło. + Emette luce visibile <t color='#9cf953'>Use: </t>Turn Laser ON/OFF @@ -51,6 +54,7 @@ Switch Laser / IR Laser Umschalten Laser / IR-Laser Przełącz Laser / Laser IR + Alterna Laser / IR Laser - \ No newline at end of file + From 5238647021d5d42bdb6206df8df4d95f06cd8735 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:12:15 +0200 Subject: [PATCH 171/246] Update stringtable.xml Italian --- addons/magazinerepack/stringtable.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/magazinerepack/stringtable.xml b/addons/magazinerepack/stringtable.xml index a524b015f9..c98f009f80 100644 --- a/addons/magazinerepack/stringtable.xml +++ b/addons/magazinerepack/stringtable.xml @@ -81,6 +81,7 @@ Перепаковка завершена Páskování dokončeno Przepakowywanie zakończone + Riempi caricatore Repacking Interrupted @@ -90,6 +91,7 @@ Перепаковка прервана Páskování přerušeno Przepakowywanie przerwane + Riempimento interrotto %1 Full and %2 Partial @@ -99,6 +101,7 @@ %1 полных и %2 неполных %1 plný a %2 částečně Pełnych: %1.<br />Częściowo pełnych: %2. + %1 pieno e %2 parziale From cb2e1c5116d03c1e9644e4b1df5d9c80ab2f2f63 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:13:19 +0200 Subject: [PATCH 172/246] Update stringtable.xml Italian --- addons/maptools/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/maptools/stringtable.xml b/addons/maptools/stringtable.xml index f2bc71e324..74c5773027 100644 --- a/addons/maptools/stringtable.xml +++ b/addons/maptools/stringtable.xml @@ -142,6 +142,7 @@ Dirección: %1° Irány: %1 Направление: %1° + Direzione : %1° From 924cd80e6045ef4f681815c7fe5547b463792594 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:13:47 +0200 Subject: [PATCH 173/246] Update stringtable.xml ITalian --- addons/markers/stringtable.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/markers/stringtable.xml b/addons/markers/stringtable.xml index 65da73a026..60a357611d 100644 --- a/addons/markers/stringtable.xml +++ b/addons/markers/stringtable.xml @@ -10,6 +10,7 @@ Kierunek: %1° Dirección: %1° Направление: %1° + Direzione: %1° - \ No newline at end of file + From 47f8161855f05fd15704947719944b37eae06340 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:18:22 +0200 Subject: [PATCH 174/246] Update stringtable.xml Italian --- addons/microdagr/stringtable.xml | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/addons/microdagr/stringtable.xml b/addons/microdagr/stringtable.xml index 12962ea1ac..ec92773357 100644 --- a/addons/microdagr/stringtable.xml +++ b/addons/microdagr/stringtable.xml @@ -10,6 +10,7 @@ MicroDAGR GPS MicroDAGR GPS MicroDAGR GPS + MicroDAGR GPS MicroDAGR advanced GPS receiver @@ -19,6 +20,7 @@ Zaawansowany odbiornik GPS MicroDAGR Récepteur GPS MicroDAGR MicroDAGR pokročílá GPS příjímač + MicroDAGR ricevitore GPS avanzato Angular Unit: @@ -28,6 +30,7 @@ Unité angulaire Winkeleinheit: Úhlová jednotka: + Unità angolare: Mils @@ -37,6 +40,7 @@ Tysiączne Mils Mils + Miglia Show Waypoints On Map: @@ -46,6 +50,7 @@ Pokaż PT na mapie: Montrer points de passage sur la carte Ukázat waypointy na mapě: + Mostra waypoint sulla mappa: Degrees @@ -55,13 +60,14 @@ Stopnie Degrés Stupně + Gradi On Zapnuto Allumé Ein - + Acceso Wł. Ativar Вкл. @@ -72,7 +78,7 @@ Vypnuto Eteint Aus - No + Spento Wył. Desativar Выкл. @@ -86,6 +92,7 @@ Entrer coordonnées Koordinaten eingeben: Napiš souřadnice: + Introduci griglia coordinate: Name of [%1] @@ -95,6 +102,7 @@ Nazwa [%1] Nom de %1 Název [%1] + Nome di [%1] MGRS-New @@ -104,6 +112,7 @@ MGRS-Nowy Info-MGRS MGRS-Nový + Nuovo MGRS WGD @@ -113,6 +122,7 @@ WGD WGD WGD + WGD Range: @@ -122,6 +132,7 @@ Dystans: Distance: Vzdálenost: + Distanza: Compass Direction @@ -131,6 +142,7 @@ Azymut Azimut Azimut: + Azimut Mark @@ -140,6 +152,7 @@ Oznacz Marque Označit + Marca Waypoints @@ -149,6 +162,7 @@ Waypointy Punkty trasy Point de passage + waypoints Connect To @@ -158,6 +172,7 @@ Připojit k Podłącz do Connecter + Collega a Settings @@ -167,6 +182,7 @@ Настройки Nastavení Ustawienia + Impostaizoni SetWP @@ -176,6 +192,7 @@ Nastavit WP UstawPT Définir point de passage + Definisci WayPoints Add @@ -185,6 +202,7 @@ Přidat Dodaj Ajouter + Aggiungi Delete @@ -205,6 +223,7 @@ Przełącz GUI MicroDAGR Basculer le mode d'affichage MicroDAGR Přepnout zobrazení MircroDAGRu + Alterna modalità display MicroDAGR Show MicoDAGR @@ -214,6 +233,7 @@ Ukázat MicroDAGR GPS Pokaż<br />MicroDAGR Afficher MicroDAGR + Mostra MicroDAGR Configure MicroDAGR @@ -223,6 +243,7 @@ Konfigurovat MicroDAGR GPS Konfiguruj<br />MicroDAGR Configurer MicroDAGR + ConfiguraMicroDAGR Close MicroDAGR @@ -232,6 +253,7 @@ Zavřít MicroDAGR GPS Zamknij<br />MicroDAGR Fermer MicroDAGR + Chiudi MicroDAGR - \ No newline at end of file + From 76ff1da57a52bd2195eb7cd60b5b070c9ed0c1aa Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:19:54 +0200 Subject: [PATCH 175/246] Update stringtable.xml Italian --- addons/missileguidance/stringtable.xml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/addons/missileguidance/stringtable.xml b/addons/missileguidance/stringtable.xml index 16c9a7ec74..921ad84701 100644 --- a/addons/missileguidance/stringtable.xml +++ b/addons/missileguidance/stringtable.xml @@ -8,7 +8,7 @@ Zaawansowane naprowadzanie rakiet Erweiterte Raketenlenkung Pokročilé řízení střel - Avanzato Missile Guidance + Guida missili avanzata Avançado Missile Guidance Részletes rakéta irányító Расширенный ракетой @@ -20,7 +20,7 @@ Hydra-70 DAGR Hydra-70 DAGR Rackete Hydra-70 DAGR - + Missile Hydra-70 DAGR @@ -32,7 +32,7 @@ DAGR DAGR DAGR - + DAGR @@ -44,7 +44,7 @@ Laserowo naprowadzana rakieta Hydra-70 DAGR Hydra-70 Lasergelenkte DAGR Rakete Hydra-70 DAGR laserem naváděná střela - + Hydra-70 DAGR missile guida laser @@ -56,7 +56,7 @@ Hellfire II AGM-114K Hellfire II AGM-114K Hellfire II AGM-114K - + Missile Hellfire II AGM-114K @@ -68,7 +68,7 @@ AGM-114K AGM-114K AGM-114K - + AGM-114K @@ -80,7 +80,7 @@ Laserowo naprowadzana rakieta Hellfire II AGM-114K Hellfire II AGM-114K Lasergelenkte Rakete Hellfire II AGM-114K laserem naváděná střela - + Missile guida laser Hellfire II AGM-114K From bc62891122bbfb465604bcf53e8f8fcdaa8f6e5d Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 11:24:20 +0200 Subject: [PATCH 176/246] Update stringtable.xml Italian --- addons/movement/stringtable.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/movement/stringtable.xml b/addons/movement/stringtable.xml index 9de9e9033f..0672c593f6 100644 --- a/addons/movement/stringtable.xml +++ b/addons/movement/stringtable.xml @@ -33,6 +33,7 @@ Trepar Vylézt Подняться + Arrampicati Can't climb here @@ -42,6 +43,7 @@ No se puede trepar aquí Zde není možné vylézt Не можете подняться здесь + Non puoi arrampicarti qui From bd5ed1362185e9ba2f15b4ecebf6f41fd356438d Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 12:27:20 +0200 Subject: [PATCH 177/246] Added ACE_65x39_Caseless_green_Tracer_Dim --- addons/ballistics/CfgAmmo.hpp | 38 +++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index cea249cb4f..2528a49c77 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -126,6 +126,10 @@ class CfgAmmo { class ACE_65x39_Caseless_Tracer_Dim : B_65x39_Case_yellow { nvgOnly = 1; }; + class B_65x39_Caseless_green; + class ACE_65x39_Caseless_green_Tracer_Dim : B_65x39_Caseless_green { + nvgOnly = 1; + }; class ACE_65x47_Ball_Scenar: B_65x39_Caseless { airFriction=-0.00078; @@ -463,23 +467,6 @@ class CfgAmmo { ACE_muzzleVelocities[]={960}; ACE_barrelLengths[]={29}; }; - class ACE_338_Ball : B_408_Ball { - airFriction=-0.000526; - caliber=1.55; - deflecting=12; - hit=20; - typicalSpeed=826; - ACE_caliber=0.338; - ACE_bulletLength=1.70; - ACE_bulletMass=300; - ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; - ACE_ballisticCoefficients[]={0.381}; - ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ICAO"; - ACE_dragModel=7; - ACE_muzzleVelocities[]={820, 826, 830}; - ACE_barrelLengths[]={24, 26.5, 28}; - }; class B_338_Ball : BulletBase { ACE_caliber=0.338; ACE_bulletLength=1.558; @@ -504,6 +491,23 @@ class CfgAmmo { ACE_muzzleVelocities[]={790, 807, 820}; ACE_barrelLengths[]={20, 24, 26}; }; + class ACE_338_Ball : B_338_Ball { + airFriction=-0.000526; + caliber=1.55; + deflecting=12; + hit=20; + typicalSpeed=826; + ACE_caliber=0.338; + ACE_bulletLength=1.70; + ACE_bulletMass=300; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.381}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={800, 820, 826, 830}; + ACE_barrelLengths[]={20, 24, 26.5, 28}; + }; class B_127x54_Ball : BulletBase { ACE_caliber=0.50; ACE_bulletLength=2.540; From 42dbd8f5d275cee32257176805a1492b81ce4f10 Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 12:30:48 +0200 Subject: [PATCH 178/246] Continued work on the magazine classes: *Fixed Katiba using the wrong magazine *Added ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim *Added ACE_10Rnd_338_300gr_HPBT_Mag *Changed some of the .338 magazine initSpeeds to match the new Mar-10 barrel length *Added the new caseless green ir dim magazine to the ammo crates *Allowed the Mar-10 to shoot .300 Win Mag --- addons/ballistics/CfgMagazines.hpp | 51 ++++++++++++++++++------------ addons/ballistics/CfgVehicles.hpp | 2 ++ addons/ballistics/CfgWeapons.hpp | 29 ++++++++++------- addons/ballistics/stringtable.xml | 18 +++++++++++ 4 files changed, 68 insertions(+), 32 deletions(-) diff --git a/addons/ballistics/CfgMagazines.hpp b/addons/ballistics/CfgMagazines.hpp index f9e936dc04..de3f80fd83 100644 --- a/addons/ballistics/CfgMagazines.hpp +++ b/addons/ballistics/CfgMagazines.hpp @@ -30,15 +30,21 @@ class CfgMagazines { descriptionShort = "$STR_ACE_200Rnd_65x39_cased_Box_Tracer_DimDescription"; picture = "\A3\weapons_f\data\ui\m_200rnd_65x39_yellow_ca.paa"; }; - class 30Rnd_65x39_caseless_mag_Tracer: 30Rnd_65x39_caseless_mag { - }; + class 30Rnd_65x39_caseless_mag_Tracer; class ACE_30Rnd_65x39_caseless_mag_Tracer_Dim: 30Rnd_65x39_caseless_mag_Tracer { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_65x39_Caseless_Tracer_Dim"; displayName = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimName"; displayNameShort = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimNameShort"; descriptionShort = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimDescription"; - picture = "\A3\weapons_f\data\ui\m_30stanag_caseless_yellow_ca.paa"; + }; + class 30Rnd_65x39_caseless_green_mag_Tracer; + class ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim: 30Rnd_65x39_caseless_green_mag_Tracer { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_65x39_Caseless_green_Tracer_Dim"; + displayName = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimName"; + displayNameShort = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimNameShort"; + descriptionShort = "$STR_ACE_30Rnd_65x39_caseless_mag_Tracer_DimDescription"; }; class 30Rnd_556x45_Stanag: CA_Magazine { @@ -108,8 +114,7 @@ class CfgMagazines { initSpeed = 325; }; - class ACE_10Rnd_762x51_M118LR_Mag: 10Rnd_762x51_Mag - { + class ACE_10Rnd_762x51_M118LR_Mag: 10Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_762x51_Ball_M118LR"; count=10; @@ -118,8 +123,7 @@ class CfgMagazines { descriptionShort = "$STR_ACE_10Rnd_762x51_M118LR_Mag_Description"; initSpeed = 780; }; - class ACE_20Rnd_762x51_M118LR_Mag: 20Rnd_762x51_Mag - { + class ACE_20Rnd_762x51_M118LR_Mag: 20Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_762x51_Ball_M118LR"; displayName = "$STR_ACE_20Rnd_762x51_M118LR_Mag_Name"; @@ -127,40 +131,45 @@ class CfgMagazines { descriptionShort = "$STR_ACE_20Rnd_762x51_M118LR_Mag_Description"; initSpeed = 780; }; - class ACE_20Rnd_762x67_Mk248_Mod_0_Mag: 20Rnd_762x51_Mag - { + class ACE_20Rnd_762x67_Mk248_Mod_0_Mag: 20Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_762x67_Ball_Mk248_Mod_0"; displayName = "$STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_Name"; displayNameShort = "$STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_NameShort"; descriptionShort = "$STR_ACE_20Rnd_762x67_Mk248_Mod_0_Mag_Description"; - initSpeed = 865; + initSpeed = 900; }; - class ACE_20Rnd_762x67_Mk248_Mod_1_Mag: 20Rnd_762x51_Mag - { + class ACE_20Rnd_762x67_Mk248_Mod_1_Mag: 20Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_762x67_Ball_Mk248_Mod_1"; displayName = "$STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_Name"; displayNameShort = "$STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_NameShort"; descriptionShort = "$STR_ACE_20Rnd_762x67_Mk248_Mod_1_Mag_Description"; - initSpeed = 847; + initSpeed = 880; }; - class ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag: 20Rnd_762x51_Mag - { + class ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag: 20Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_762x67_Ball_Berger_Hybrid_OTM"; displayName = "$STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_Name"; displayNameShort = "$STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_NameShort"; descriptionShort = "$STR_ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag_Description"; - initSpeed = 800; + initSpeed = 832; }; - class ACE_30Rnd_65x47_Scenar_mag: 30Rnd_65x39_caseless_mag - { + class ACE_30Rnd_65x47_Scenar_mag: 30Rnd_65x39_caseless_mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_65x47_Ball_Scenar"; - count=30; - displayName = "30rnd 6.5mm Mag (HPBT Scenar)"; - descriptionshort = "Caliber: 65x47 mm (HPBT Scenar)
Rounds: 30
Used in: MXM"; + displayName = "$STR_ACE_30Rnd_65x47_Scenar_mag_Name"; + displayNameShort = "$STR_ACE_30Rnd_65x47_Scenar_mag_NameShort"; + descriptionShort = "$STR_ACE_30Rnd_65x47_Scenar_mag_Description"; + }; + class 10Rnd_338_Mag; + class ACE_10Rnd_338_300gr_HPBT_Mag: 10Rnd_338_Mag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_338_Ball"; + displayName = "$STR_ACE_10Rnd_338_300gr_HPBT_Mag_Name"; + displayNameShort = "$STR_ACE_10Rnd_338_300gr_HPBT_Mag_NameShort"; + descriptionShort = "$STR_ACE_10Rnd_338_300gr_HPBT_Mag_Description"; + initSpeed = 800; }; class 30Rnd_9x21_Mag: CA_Magazine { diff --git a/addons/ballistics/CfgVehicles.hpp b/addons/ballistics/CfgVehicles.hpp index e114bef671..7c32774f9f 100644 --- a/addons/ballistics/CfgVehicles.hpp +++ b/addons/ballistics/CfgVehicles.hpp @@ -65,6 +65,7 @@ class CfgVehicles { class Box_East_WpsSpecial_F: EAST_Box_Base { class TransportMagazines { MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Tracer_Dim,1); + MACRO_ADDMAGAZINE(ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); MACRO_ADDMAGAZINE(ACE_10Rnd_762x54_Tracer_mag,4); }; @@ -154,6 +155,7 @@ class CfgVehicles { MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Mk318_mag,4); MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_30Rnd_65x39_caseless_mag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_100Rnd_65x39_caseless_mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_200Rnd_65x39_cased_Box_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); diff --git a/addons/ballistics/CfgWeapons.hpp b/addons/ballistics/CfgWeapons.hpp index 7944215c29..d5b6ad448f 100644 --- a/addons/ballistics/CfgWeapons.hpp +++ b/addons/ballistics/CfgWeapons.hpp @@ -304,9 +304,9 @@ class CfgWeapons { }; class arifle_Katiba_F: arifle_katiba_Base_F { magazines[] = { - "30Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag_Tracer", - "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + "30Rnd_65x39_caseless_green", + "30Rnd_65x39_caseless_green_mag_Tracer", + "ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim" }; initSpeed = -1.08; ACE_barrelTwist=8; @@ -314,9 +314,9 @@ class CfgWeapons { }; class arifle_Katiba_C_F: arifle_katiba_Base_F { magazines[] = { - "30Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag_Tracer", - "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + "30Rnd_65x39_caseless_green", + "30Rnd_65x39_caseless_green_mag_Tracer", + "ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim" }; initSpeed = -1.07; ACE_barrelTwist=8; @@ -324,9 +324,9 @@ class CfgWeapons { }; class arifle_Katiba_GL_F: arifle_katiba_Base_F { magazines[] = { - "30Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag_Tracer", - "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" + "30Rnd_65x39_caseless_green", + "30Rnd_65x39_caseless_green_mag_Tracer", + "ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim" }; initSpeed = -1.08; ACE_barrelTwist=8; @@ -527,9 +527,16 @@ class CfgWeapons { ACE_barrelLength=43.3; }; class srifle_DMR_02_F: DMR_02_base_F { - initSpeed = -1.0; + magazines[] = { + "10Rnd_338_Mag", + "ACE_10Rnd_338_300gr_HPBT_Mag", + "ACE_20Rnd_762x67_Mk248_Mod_0_Mag", + "ACE_20Rnd_762x67_Mk248_Mod_1_Mag", + "ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag" + }; + initSpeed = -0.962; ACE_barrelTwist=10; - ACE_barrelLength=26; + ACE_barrelLength=20; }; class srifle_DMR_03_F: DMR_03_base_F { magazines[] = { diff --git a/addons/ballistics/stringtable.xml b/addons/ballistics/stringtable.xml index 51447237b4..760a07b7aa 100644 --- a/addons/ballistics/stringtable.xml +++ b/addons/ballistics/stringtable.xml @@ -746,5 +746,23 @@ Caliber: 7.62x67 mm NATO (Berger Hybrid OTM)<br />Rounds: 20 Kaliber: 7,62x67 mm NATO (Berger Hybrid OTM)<br />Pociski: 20 + + 6.5x47mm 30Rnd Mag (HPBT Scenar) + + + 6.5mm Scenar + + + Caliber: 6.5x47mm (HPBT Scenar)<br />Rounds: 30 + + + 8.6x70mm 10Rnd Mag (300gr Sierra MatchKing HPBT) + + + .338 (HPBT) + + + Caliber: 8.6x70mm (300gr Sierra MatchKing HPBT)<br />Rounds: 10 + From 9f289e1721f8cc2bfc77c7467d2e1d1b319a4276 Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 12:53:02 +0200 Subject: [PATCH 179/246] Fixed incorrect return values in some key handlers: *Wind info *Protractor --- .../advanced_ballistics/functions/fnc_displayProtractor.sqf | 6 +++--- addons/advanced_ballistics/initKeybinds.sqf | 1 - addons/weather/XEH_postInit.sqf | 1 - addons/weather/functions/fnc_displayWindInfo.sqf | 4 ++-- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/addons/advanced_ballistics/functions/fnc_displayProtractor.sqf b/addons/advanced_ballistics/functions/fnc_displayProtractor.sqf index 2fbe558651..5fbdf2f12a 100644 --- a/addons/advanced_ballistics/functions/fnc_displayProtractor.sqf +++ b/addons/advanced_ballistics/functions/fnc_displayProtractor.sqf @@ -22,9 +22,9 @@ if (GVAR(Protractor)) exitWith { 1 cutText ["", "PLAIN"]; true }; -if (weaponLowered ACE_player) exitWith { true }; -if (vehicle ACE_player != ACE_player) exitWith { true }; -if (currentWeapon ACE_player != primaryWeapon ACE_player) exitWith { true }; +if (weaponLowered ACE_player) exitWith { false }; +if (vehicle ACE_player != ACE_player) exitWith { false }; +if (currentWeapon ACE_player != primaryWeapon ACE_player) exitWith { false }; 2 cutText ["", "PLAIN"]; EGVAR(weather,WindInfo) = false; diff --git a/addons/advanced_ballistics/initKeybinds.sqf b/addons/advanced_ballistics/initKeybinds.sqf index 5649fb943e..59866576aa 100644 --- a/addons/advanced_ballistics/initKeybinds.sqf +++ b/addons/advanced_ballistics/initKeybinds.sqf @@ -5,7 +5,6 @@ // Statement [] call FUNC(displayProtractor); - false }, {false}, [37, [true, true, false]], false, 0] call CBA_fnc_addKeybind; // (CTRL + SHIFT + K) diff --git a/addons/weather/XEH_postInit.sqf b/addons/weather/XEH_postInit.sqf index ff78eeb727..75e1277fee 100644 --- a/addons/weather/XEH_postInit.sqf +++ b/addons/weather/XEH_postInit.sqf @@ -18,7 +18,6 @@ // Statement [] call FUNC(displayWindInfo); - false }, {false}, [37, [true, false, false]], false, 0] call CBA_fnc_addKeybind; // (SHIFT + K) diff --git a/addons/weather/functions/fnc_displayWindInfo.sqf b/addons/weather/functions/fnc_displayWindInfo.sqf index da1b8be267..61d556a27c 100644 --- a/addons/weather/functions/fnc_displayWindInfo.sqf +++ b/addons/weather/functions/fnc_displayWindInfo.sqf @@ -19,8 +19,8 @@ if (GVAR(WindInfo)) exitWith { 0 cutText ["", "PLAIN"]; true }; -if (underwater ACE_player) exitWith { true }; -if (vehicle ACE_player != ACE_player) exitWith { true }; +if (underwater ACE_player) exitWith { false }; +if (vehicle ACE_player != ACE_player) exitWith { false }; 2 cutText ["", "PLAIN"]; EGVAR(advanced_ballistics,Protractor) = false; From 8f94bbfec8778cc6bc921f19688b77be4e6d9fef Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Wed, 15 Apr 2015 13:55:07 +0200 Subject: [PATCH 180/246] Make stringtableduplicates.py more useful --- tools/stringtableduplicates.py | 76 ++++++++++++++++++---------------- 1 file changed, 40 insertions(+), 36 deletions(-) diff --git a/tools/stringtableduplicates.py b/tools/stringtableduplicates.py index 16b2763853..b9b4920059 100755 --- a/tools/stringtableduplicates.py +++ b/tools/stringtableduplicates.py @@ -2,55 +2,59 @@ import os import sys + +import xml.dom from xml.dom import minidom -# STRINGTABLE DUPLICATE FINDER +# STRINGTABLE DIAG TOOL # Author: KoffeinFlummi -# ---------------------------- -# Counts duplicate stringtable entries +# --------------------- +# Counts duplicates stringtable entries + + +def check_module(projectpath, module): + """ Checks the given module for all the different languages. """ + localized = [] + + stringtablepath = os.path.join(projectpath, module, "stringtable.xml") + try: + xmldoc = minidom.parse(stringtablepath) + except IOError: + return 0 + keys = xmldoc.getElementsByTagName("Key") + + duplicates = 0 + for key in keys: + children = key.childNodes + entries = [] + for c in range(children.length): + entries.append(children.item(c)) + entries = list(filter(lambda x: x.nodeType == x.ELEMENT_NODE, entries)) + entries = list(map(lambda x: str(x.nodeName).lower(), entries)) + diff = len(entries) - len(list(set(entries))) + duplicates += diff + if diff > 0: + print key.getAttribute("ID") + + return duplicates def main(): scriptpath = os.path.realpath(__file__) projectpath = os.path.dirname(os.path.dirname(scriptpath)) projectpath = os.path.join(projectpath, "addons") - entries = {} + print("###############################") + print("# Stringtable Duplicates Tool #") + print("###############################\n") + duplicates = 0 for module in os.listdir(projectpath): - if module[0] == ".": - continue - stringtablepath = os.path.join(projectpath, module, "stringtable.xml") - try: - xmldoc = minidom.parse(stringtablepath) - except: - continue + d = check_module(projectpath, module) - keys = xmldoc.getElementsByTagName("English") - for key in keys: - text = key.firstChild.wholeText - parentid = key.parentNode.getAttribute("ID") - if text in entries: - entries[text].append(parentid) - else: - entries[text] = [parentid] + print("# {} {}".format(module.ljust(20), d)) + duplicates += d - entries = {k: v for k, v in entries.items() if len(v) > 1} - output = list([[k, v] for k, v in entries.items()]) - output = sorted(output, key=lambda x: len(x[1])*-1) - - print("Potential duplicate stringtable entries:\n") - for l in output: - k, v = l - print(k.ljust(50), end=" ") - print("Listed %i times in: %s" % (len(v), ", ".join(v))) - - print("\n# MARKDOWN\n") - - print("| Text | # Occurences | Containing Entries |") - print("|------|-------------:|--------------------|") - - for l in output: - print("| %s | %i | %s |" % (l[0], len(l[1]), ", ".join(l[1]))) + print("\nTotal number of duplicates: {}".format(duplicates)) if __name__ == "__main__": main() From 238cf1cc6351f7f0a552a482d529ea703e1d17fe Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 15:06:28 +0200 Subject: [PATCH 181/246] Added keybinds for ATragMX and Kestrel 4500 (empty by default) --- addons/atragmx/XEH_postInit.sqf | 2 +- addons/atragmx/initKeybinds.sqf | 2 +- addons/kestrel4500/XEH_postInit.sqf | 2 +- addons/kestrel4500/initKeybinds.sqf | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/addons/atragmx/XEH_postInit.sqf b/addons/atragmx/XEH_postInit.sqf index 6875b4382e..31c526fab7 100644 --- a/addons/atragmx/XEH_postInit.sqf +++ b/addons/atragmx/XEH_postInit.sqf @@ -1,6 +1,6 @@ #include "script_component.hpp" -//#include "initKeybinds.sqf" +#include "initKeybinds.sqf" if (count (profileNamespace getVariable ["ACE_ATragMX_gunList", []]) > 0) then { GVAR(gunList) = profileNamespace getVariable "ACE_ATragMX_gunList"; diff --git a/addons/atragmx/initKeybinds.sqf b/addons/atragmx/initKeybinds.sqf index 28616b872f..d8a69a09e3 100644 --- a/addons/atragmx/initKeybinds.sqf +++ b/addons/atragmx/initKeybinds.sqf @@ -8,4 +8,4 @@ false }, {false}, -[197, [false, false, false]], false, 0] call CBA_fnc_addKeybind; // (PRINT) \ No newline at end of file +[0, [false, false, false]], false, 0] call CBA_fnc_addKeybind; // (empty default key) \ No newline at end of file diff --git a/addons/kestrel4500/XEH_postInit.sqf b/addons/kestrel4500/XEH_postInit.sqf index 878f9ca0ce..461ed533db 100644 --- a/addons/kestrel4500/XEH_postInit.sqf +++ b/addons/kestrel4500/XEH_postInit.sqf @@ -1,6 +1,6 @@ #include "script_component.hpp" -//#include "initKeybinds.sqf" +#include "initKeybinds.sqf" GVAR(Menus) = ["Direction", "Wind SPD m/s", "CROSSWIND m/s", "HEADWIND m/s", "TEMP °C", "HUMIDITY %", "BARO hPA", "ALTITUDE m", "User Screen 1", "User Screen 2"]; diff --git a/addons/kestrel4500/initKeybinds.sqf b/addons/kestrel4500/initKeybinds.sqf index 657e10d907..585856cbbb 100644 --- a/addons/kestrel4500/initKeybinds.sqf +++ b/addons/kestrel4500/initKeybinds.sqf @@ -8,7 +8,7 @@ false }, {false}, -[70, [false, false, false]], false, 0] call CBA_fnc_addKeybind; // (SCROLL) +[0, [false, false, false]], false, 0] call CBA_fnc_addKeybind; // (empty default key) ["ACE3", QGVAR(DisplayKestrelKey), localize "STR_ACE_Kestrel4500_DisplayKestrelKey", { @@ -20,4 +20,4 @@ false }, {false}, -[70, [true, false, false]], false, 0] call CBA_fnc_addKeybind; // (SHIFT + SCROLL) +[0, [true, false, false]], false, 0] call CBA_fnc_addKeybind; // (empty default key) From def6c9135b605f9900c1d258141bdac20bb57c79 Mon Sep 17 00:00:00 2001 From: KoffeinFlummi Date: Wed, 15 Apr 2015 15:31:10 +0200 Subject: [PATCH 182/246] Fix typos in devenv doc --- .../development/setting-up-the-development-environment.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/documentation/development/setting-up-the-development-environment.md b/documentation/development/setting-up-the-development-environment.md index 0fbc0793f2..fe76ca6a20 100644 --- a/documentation/development/setting-up-the-development-environment.md +++ b/documentation/development/setting-up-the-development-environment.md @@ -70,12 +70,12 @@ mklink /D "[Arma 3 installation folder]\z\ace" "[location of the ACE3 project]" mklink /D "P:\z\ace" "[location of the ACE3 project]" ``` -Then, copy the `cba` folder from the `tools` folder to `P:\x\cba`. Create the `x` folder if needed. That folder contains the part of the CBA source code that are required for the macros to work. +Then, copy the `cba` folder from the `tools` folder to `P:\x\cba`. Create the `x` folder if needed. That folder contains the parts of the CBA source code that are required for the macros to work. ## Creating a Test Build -To create a development build of ACE to test changes or to debug something, run the `build.bat` file in the `tools` folder. This will populate the `addons` folder with binarized PBOs. These PBOs still point to the source files in their respective folders however, which allows you to use [file patching](#file-patching). +To create a development build of ACE to test changes or to debug something, run the `build.py` file in the `tools` folder. This will populate the `addons` folder with binarized PBOs. These PBOs still point to the source files in their respective folders however, which allows you to use [file patching](#file-patching). This also means that you cannot distribute this build to others. From bf8f9b48182ddcc02c485bf1dad7cee1da407dd7 Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 15:34:01 +0200 Subject: [PATCH 183/246] all I need is a $ --- addons/respawn/CfgVehicles.hpp | 6 +++--- addons/respawn/functions/fnc_handleInitPostServer.sqf | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/addons/respawn/CfgVehicles.hpp b/addons/respawn/CfgVehicles.hpp index 28e33c6b3e..56d2058d2c 100644 --- a/addons/respawn/CfgVehicles.hpp +++ b/addons/respawn/CfgVehicles.hpp @@ -152,7 +152,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "STR_ACE_Respawn_RallypointWest"; + displayName = "$STR_ACE_Respawn_RallypointWest"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { @@ -172,7 +172,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "STR_ACE_Respawn_RallypointEast"; + displayName = "$STR_ACE_Respawn_RallypointEast"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { @@ -192,7 +192,7 @@ class CfgVehicles { XEH_ENABLED; author = "$STR_ACE_Common_ACETeam"; - displayName = "STR_ACE_Respawn_RallypointIndependent"; + displayName = "$STR_ACE_Respawn_RallypointIndependent"; vehicleClass = QGVAR(Rallypoints); class ACE_Actions: ACE_Actions { diff --git a/addons/respawn/functions/fnc_handleInitPostServer.sqf b/addons/respawn/functions/fnc_handleInitPostServer.sqf index c83354b24e..f8a0479717 100644 --- a/addons/respawn/functions/fnc_handleInitPostServer.sqf +++ b/addons/respawn/functions/fnc_handleInitPostServer.sqf @@ -41,7 +41,7 @@ if (_leaderVarName == "") then { private "_leaderID"; _leaderID = GETGVAR(NextLeaderID,0); - _leaderVarName = format [QGVAR(Rallypoint_Leader_%1), _leaderID]; + _leaderVarName = format [QUOTE(ACE_Rallypoint_Leader_%1), _leaderID]; _unit setVehicleVarName _leaderVarName; From 67100406336a5a7b3d9a8b4e82c65dc99178f036 Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 16:13:53 +0200 Subject: [PATCH 184/246] toLower in, always follow your own advice --- addons/hearing/functions/fnc_firedNear.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/hearing/functions/fnc_firedNear.sqf b/addons/hearing/functions/fnc_firedNear.sqf index c66361801e..72776b68c6 100644 --- a/addons/hearing/functions/fnc_firedNear.sqf +++ b/addons/hearing/functions/fnc_firedNear.sqf @@ -31,7 +31,7 @@ _muzzle = _this select 4; _mode = _this select 5; _ammo = _this select 6; -if (_weapon in ["Throw", "Put"]) exitWith {}; +if (toLower _weapon in ["throw", "put"]) exitWith {}; if (_unit != vehicle _unit && {!([_unit] call EFUNC(common,isTurnedOut))}) exitWith {}; _silencer = switch (_weapon) do { From 95b04d08402e4c1c011377c875517b17f4b0eb59 Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 16:22:42 +0200 Subject: [PATCH 185/246] Added custom airFriction values for the new marksmen ammo types. --- addons/ballistics/CfgAmmo.hpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index 2528a49c77..87f3a99df1 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -248,6 +248,8 @@ class CfgAmmo { ACE_barrelLengths[]={16, 20, 24, 26}; }; class B_762x54_Ball : BulletBase { + airFriction=-0.001023; + typicalSpeed=820; ACE_caliber=0.312; ACE_bulletLength=1.14; ACE_bulletMass=152; @@ -428,6 +430,8 @@ class CfgAmmo { ACE_barrelLengths[]={20, 24, 26}; }; class B_93x64_Ball : BulletBase { + airFriction=-0.00106; + typicalSpeed=880; ACE_caliber=0.366; ACE_bulletLength=1.350; ACE_bulletMass=230; @@ -468,6 +472,8 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class B_338_Ball : BulletBase { + airFriction=-0.00061 + typicalSpeed=915; ACE_caliber=0.338; ACE_bulletLength=1.558; ACE_bulletMass=250; @@ -480,6 +486,8 @@ class CfgAmmo { ACE_barrelLengths[]={20, 26, 28}; }; class B_338_NM_Ball : BulletBase { + airFriction=-0.000537; + typicalSpeed=820; ACE_caliber=0.338; ACE_bulletLength=1.70; ACE_bulletMass=300; @@ -509,9 +517,11 @@ class CfgAmmo { ACE_barrelLengths[]={20, 24, 26.5, 28}; }; class B_127x54_Ball : BulletBase { - ACE_caliber=0.50; + airFriction=-0.00014; + typicalSpeed=300; + ACE_caliber=0.510; ACE_bulletLength=2.540; - ACE_bulletMass=950; + ACE_bulletMass=750; ACE_ammoTempMuzzleVelocityShifts[]={-2.655, -2.547, -2.285, -2.012, -1.698, -1.280, -0.764, -0.153, 0.596, 1.517, 2.619}; ACE_ballisticCoefficients[]={1.050}; ACE_velocityBoundaries[]={}; From 9c1b40f5a36bb20435a488ca343c25377b02134e Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 16:40:20 +0200 Subject: [PATCH 186/246] preparing for improved positions of action points --- addons/respawn/CfgVehicles.hpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/addons/respawn/CfgVehicles.hpp b/addons/respawn/CfgVehicles.hpp index 56d2058d2c..384376b00c 100644 --- a/addons/respawn/CfgVehicles.hpp +++ b/addons/respawn/CfgVehicles.hpp @@ -100,7 +100,7 @@ class CfgVehicles { distance = 4; condition = QUOTE(side group _player == west); statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_West')] call FUNC(teleportToRallypoint)); - position[] = {0,0,-1}; + position = "[0,0,-1]"; showDisabled = 1; priority = 1; }; @@ -120,7 +120,7 @@ class CfgVehicles { distance = 4; condition = QUOTE(side group _player == east); statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_East')] call FUNC(teleportToRallypoint)); - position[] = {0,0,-1}; + position = "[0,0,-1]"; showDisabled = 1; priority = 1; }; @@ -140,7 +140,7 @@ class CfgVehicles { distance = 4; condition = QUOTE(side group _player == independent); statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_Independent')] call FUNC(teleportToRallypoint)); - position[] = {0,0,-1}; + position = "[0,0,-1]"; showDisabled = 1; priority = 1; }; @@ -161,7 +161,7 @@ class CfgVehicles { distance = 4; condition = QUOTE(side group _player == west); statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_West_Base')] call FUNC(teleportToRallypoint)); - position[] = {0,0,-1}; + position = "[0,0,-1]"; showDisabled = 1; priority = 1; }; @@ -181,7 +181,7 @@ class CfgVehicles { distance = 4; condition = QUOTE(side group _player == east); statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_East_Base')] call FUNC(teleportToRallypoint)); - position[] = {0,0,-1}; + position = "[0,0,-1]"; showDisabled = 1; priority = 1; }; @@ -201,7 +201,7 @@ class CfgVehicles { distance = 4; condition = QUOTE(side group _player == independent); statement = QUOTE([ARR_3(_player,side group _player,'ACE_Rallypoint_Independent_Base')] call FUNC(teleportToRallypoint)); - position[] = {0,0,-1}; + position = "[0,0,-1]"; showDisabled = 1; priority = 1; }; From 0d28a890e1229ad8b1aa29559fc671f58151e07f Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 08:19:21 -0700 Subject: [PATCH 187/246] Fixes: Cycle fire mode on Titan was not working. Closes #603 --- addons/javelin/functions/fnc_showFireMode.sqf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/javelin/functions/fnc_showFireMode.sqf b/addons/javelin/functions/fnc_showFireMode.sqf index 35dff9dbd3..88374548c0 100644 --- a/addons/javelin/functions/fnc_showFireMode.sqf +++ b/addons/javelin/functions/fnc_showFireMode.sqf @@ -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 { From 6fca6017591acf97b16e162fc7ee4336be202fc7 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 18:24:57 +0300 Subject: [PATCH 188/246] Kestrel 4500NV translation to Russian --- addons/kestrel4500/stringtable.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/addons/kestrel4500/stringtable.xml b/addons/kestrel4500/stringtable.xml index e9a72d82a8..3a0e18b9e5 100644 --- a/addons/kestrel4500/stringtable.xml +++ b/addons/kestrel4500/stringtable.xml @@ -17,27 +17,33 @@ Kestrel 4500 Pocket Weather Tracker Anemomentr skrzydełkowy Kestrel 4500 + Карманная метеостанция Kestrel 4500NV Open Kestrel 4500 Otwórz Kestrel 4500 Kestrel 4500 elővétele + Открыть Kestrel 4500NV Show Kestrel 4500 Pokaż Kestrel 4500 + Показать Kestrel 4500NV Hide Kestrel 4500 Ukryj Kestrel 4500 + Убрать Kestrel 4500NV Open Kestrel 4500 Otwórz Kestrel 4500 + Открыть Kestrel 4500NV Show Kestrel 4500 Pokaż Kestrel 4500 + Показать Kestrel 4500NV From 64504a95156916f222e8b822414c66912ce287b7 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 18:27:28 +0300 Subject: [PATCH 189/246] addons/interact_menu translation to Russian --- addons/interact_menu/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index eb03f86355..8960f99e60 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -14,6 +14,7 @@ Display interaction menus as lists Mostrar los menus de interacción como listas + Показывать меню взаимодействия в виде списка Interact Key From 9caba1e3a33aefefec4c8f6ecf179aea54a93331 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 18:29:38 +0300 Subject: [PATCH 190/246] addons/weather/ translation to Russian --- addons/weather/stringtable.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/weather/stringtable.xml b/addons/weather/stringtable.xml index 4827751c6b..85b1e96383 100644 --- a/addons/weather/stringtable.xml +++ b/addons/weather/stringtable.xml @@ -5,6 +5,7 @@ Show Wind Info Pokaż inf. o wietrze + Показать информацию о погоде - \ No newline at end of file + From ad67fca8f4f8066e2ff898cda58003f4273dc8b1 Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 17:45:48 +0200 Subject: [PATCH 191/246] Update stringtable.xml --- addons/interaction/stringtable.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index ce18f514f4..dd63efef07 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -578,7 +578,7 @@ Připojil ses do %1 týmu Вы присоединились к группе %1 Você uniu-se à Equipe %1 - Sei entrato nella team %1 + Sei entrato nel team %1 Csatlakoztál a %1 csapathoz From ead2b1f06447d2494c17d6813a7802fb7b23ffca Mon Sep 17 00:00:00 2001 From: Marco Date: Wed, 15 Apr 2015 17:52:12 +0200 Subject: [PATCH 192/246] Update AUTHORS.txt --- AUTHORS.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/AUTHORS.txt b/AUTHORS.txt index 34feb3838f..e2930ee461 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -67,6 +67,7 @@ rakowozz Raspu86 Riccardo Petricca Robert Boklahánics +ramius86 simon84 Sniperwolf572 Tonic From a3965424b9fdce9d7c1aa509331589727604fd93 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 19:09:10 +0300 Subject: [PATCH 193/246] addons/medical translation to Russian --- addons/medical/stringtable.xml | 37 +++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index 8547a36eae..ea69c1c722 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -74,6 +74,7 @@ Aplikovat škrtidlo Załóż stazę Appliquer un garrot + Наложить жгут Bandage @@ -165,7 +166,7 @@ Inyectando Morfina ... Wstrzykiwanie morfiny ... Aplikuji morfin ... - Введение морфина... + Введение морфина ... Injection de Morphine... Morfium beadása ... Injetando Morfina ... @@ -177,7 +178,7 @@ Inyectando Epinefrina ... Wstrzykiwanie adrenaliny ... Aplikuji adrenalin ... - Введение адреналина... + Введение адреналина ... Injection d'Adrénaline ... Epinefrin beadása ... Injetando Epinefrina ... @@ -190,7 +191,7 @@ Aplikuji atropin ... Wstrzykiwanie atropiny ... Injection d'Atropine ... - Введение атропина... + Введение атропина ... Atropin beadása ... @@ -199,7 +200,7 @@ Transfusión de sangre ... Przetaczanie krwi ... Probíhá transfúze krve ... - Переливание крови... + Переливание крови ... Transfusion Sanguine ... Infúzió vérrel ... Transfundindo Sangue ... @@ -212,7 +213,7 @@ Probíha transfúze fyziologický roztoku ... Przetaczanie solanki ... Transfusion de saline ... - Переливание физраствора... + Переливание физраствора ... Infúzió sós vizzel ... @@ -222,7 +223,7 @@ Probíha transfúze plazmy ... Przetaczanie osocza ... Transfusion de Plasma ... - Переливание плазмы... + Переливание плазмы ... Infúzió vérplazmával ... @@ -235,7 +236,7 @@ Sto applicando la benda ... Bekötözés ... Atando ... - Перевязывание... + Перевязывание ... Applying Tourniquet ... @@ -244,7 +245,7 @@ Aplikuji škrtidlo Zakładanie stazy ... Mise en place du Garrot ... - Наложение жгута... + Наложение жгута ... Érszorító felhelyezése ... @@ -1014,7 +1015,7 @@ Checking Blood Pressure.. Mesure de la tension ... - Проверка артериального давления... + Проверка артериального давления ... Comprobando presión arterial... Sprawdzanie ciśnienia krwi... Blutdruck kontrollieren... @@ -1093,7 +1094,7 @@ Checking Heart Rate.. Vérification du rythme cardiaque ... - Проверка пульса... + Проверка пульса ... Comprobando ritmo cardíaco... Sprawdzanie tętna... Kontrolliere Herzfrequenz @@ -1182,7 +1183,7 @@ %1 is not responsive - %1 не реагирует + %1 не реагирует на раздражители %1 est inconscient %1 no reacciona %1 jest nieprzytomny @@ -1350,7 +1351,7 @@ Placing body in bodybag Colocando cuerpo en bolsa para cadáveres - Упаковка тела + Упаковка тела ... Pakowanie ciała do worka na zwłoki Placement du corps dans la housse Test hullazsákba helyezése ... @@ -1391,61 +1392,73 @@ Heavily wounded Schwer verwundet: Ciężko ranny + Сильно ранен Lightly wounded Leicht verwundet: Lekko ranny + Легко ранен Very lightly wounded Sehr leicht verwundet: B. lekko ranny + Очень легко ранен Head Kopf Głowa + Голова Torso Torso Tors + Торс Left Arm Linker Arm Lewe ramię + Левая рука Right Arm Rechter Arm Prawe ramię + Правая рука Left Leg Linkes Bein Lewa noga + Левая нога Right Leg Rechtes Bein Prawa noga + Правая нога Pain Effect Type Schmerzeffekt-Typ Rodzaj efektu bólu + Вид боли Colour Flashing Farbblinken Pulsujące kolory + Разноцветные вспышки Chromatic Aberration Chromatische Aberration Aberracja chromatyczna + Хроматическая аберрация From c793df48486e6f59867bfa5aadeea9f8580f77fe Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 09:10:00 -0700 Subject: [PATCH 194/246] Changed: Safety mode on Titan, it now doesnt show as unloaded Fixed: Some TOP shots would miss, Fixed: Lock constraints would show on fast weapon switch. --- addons/javelin/CfgEventhandlers.hpp | 6 ++ addons/javelin/RscInGameUI.hpp | 2 +- addons/javelin/XEH_pre_init.sqf | 1 + addons/javelin/functions/fnc_onFired.sqf | 18 ++++++ addons/javelin/functions/fnc_onOpticDraw.sqf | 58 +++++++++++++------ addons/javelin/functions/fnc_onOpticLoad.sqf | 3 +- .../javelin/functions/fnc_onOpticUnload.sqf | 20 +++++++ .../functions/fnc_attackProfile_JAV_TOP.sqf | 5 +- 8 files changed, 92 insertions(+), 21 deletions(-) create mode 100644 addons/javelin/functions/fnc_onFired.sqf create mode 100644 addons/javelin/functions/fnc_onOpticUnload.sqf diff --git a/addons/javelin/CfgEventhandlers.hpp b/addons/javelin/CfgEventhandlers.hpp index 2c44a05e3a..ae7f95b232 100644 --- a/addons/javelin/CfgEventhandlers.hpp +++ b/addons/javelin/CfgEventhandlers.hpp @@ -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)); + }; }; \ No newline at end of file diff --git a/addons/javelin/RscInGameUI.hpp b/addons/javelin/RscInGameUI.hpp index 8b33c95c01..d845c1d00b 100644 --- a/addons/javelin/RscInGameUI.hpp +++ b/addons/javelin/RscInGameUI.hpp @@ -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 { diff --git a/addons/javelin/XEH_pre_init.sqf b/addons/javelin/XEH_pre_init.sqf index 2b2e980191..1accd4a8f4 100644 --- a/addons/javelin/XEH_pre_init.sqf +++ b/addons/javelin/XEH_pre_init.sqf @@ -6,6 +6,7 @@ PREP(lockKeyUp); PREP(cycleFireMode); PREP(showFireMode); +PREP(onFired); PREP(onOpticLoad); PREP(onOpticDraw); diff --git a/addons/javelin/functions/fnc_onFired.sqf b/addons/javelin/functions/fnc_onFired.sqf new file mode 100644 index 0000000000..fde0f94365 --- /dev/null +++ b/addons/javelin/functions/fnc_onFired.sqf @@ -0,0 +1,18 @@ +//#define DEBUG_MODE_FULL +#include "script_component.hpp" + +PARAMS_7(_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); + +// Bail on not missile +if(! (_weapon in ["launch_Titan_short_F"]) ) exitWith { false }; + +_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; +}; \ No newline at end of file diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index 85877f1f16..3a64a36802 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -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,21 @@ _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)) + || { (vehicle ACE_player) != ACE_player } + ) 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 +109,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 +144,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 +199,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 +240,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 +257,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 +269,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 ]; \ No newline at end of file diff --git a/addons/javelin/functions/fnc_onOpticLoad.sqf b/addons/javelin/functions/fnc_onOpticLoad.sqf index d38e1c3305..a2b2692859 100644 --- a/addons/javelin/functions/fnc_onOpticLoad.sqf +++ b/addons/javelin/functions/fnc_onOpticLoad.sqf @@ -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 ] ]; diff --git a/addons/javelin/functions/fnc_onOpticUnload.sqf b/addons/javelin/functions/fnc_onOpticUnload.sqf new file mode 100644 index 0000000000..38acc1cd1c --- /dev/null +++ b/addons/javelin/functions/fnc_onOpticUnload.sqf @@ -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]; +}; diff --git a/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf index dc8b9b8e9d..fd86c2bf03 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf @@ -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",""); From 5923f246fdec8806f542b480fc05084c637833ca Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 09:25:19 -0700 Subject: [PATCH 195/246] Fixed: only exit on shooter. --- addons/javelin/functions/fnc_onFired.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/javelin/functions/fnc_onFired.sqf b/addons/javelin/functions/fnc_onFired.sqf index fde0f94365..e873e5cf3e 100644 --- a/addons/javelin/functions/fnc_onFired.sqf +++ b/addons/javelin/functions/fnc_onFired.sqf @@ -4,7 +4,7 @@ PARAMS_7(_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); // Bail on not missile -if(! (_weapon in ["launch_Titan_short_F"]) ) exitWith { false }; +if( _shooter != ACE_player || { ! (_weapon in ["launch_Titan_short_F"]) } ) exitWith { false }; _pfh_handle = uiNamespace getVariable ["ACE_RscOptics_javelin_PFH", nil]; if(!isNil "_pfh_handle") then { From 6ea38a9946a8fd2201989a4ffb568177e7b55e78 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Wed, 15 Apr 2015 11:34:27 -0500 Subject: [PATCH 196/246] Only check A3 VON if no radio mods running --- .../nametags/functions/fnc_initIsSpeaking.sqf | 49 ++++++++++--------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/addons/nametags/functions/fnc_initIsSpeaking.sqf b/addons/nametags/functions/fnc_initIsSpeaking.sqf index 95403e0894..d8ffda756c 100644 --- a/addons/nametags/functions/fnc_initIsSpeaking.sqf +++ b/addons/nametags/functions/fnc_initIsSpeaking.sqf @@ -36,32 +36,33 @@ if (!hasInterface) exitWith {}; }; }] call EFUNC(common,addEventHandler); -//PFEH to watch the internal VON icon -//Note: class RscDisplayVoiceChat {idd = 55}; //only present when talking -[{ - _oldSetting = ACE_player getVariable [QGVAR(isSpeakingInGame), false]; - _newSetting = (!(isNull findDisplay 55)); - if (!(_oldSetting isEqualTo _newSetting)) then { - ACE_player setVariable [QGVAR(isSpeakingInGame), _newSetting, true]; - }; -} , 0.1, []] call CBA_fnc_addPerFrameHandler; +if (isClass (configFile >> "cfgPatches" >> "acre_api")) then { + diag_log text format ["[ACE_nametags] - ACRE Detected"]; + DFUNC(isSpeaking) = { + PARAMS_1(_unit); + ([_unit] call acre_api_fnc_isSpeaking) || ([ACE_player] call acre_api_fnc_isBroadcasting) + }; +} else { + if (isClass (configFile >> "cfgPatches" >> "task_force_radio")) then { + diag_log text format ["[ACE_nametags] - TFR Detected"]; + DFUNC(isSpeaking) = { + PARAMS_1(_unit); + (_unit getVariable ["tf_isSpeaking", false]) + }; + } else { + //No Radio Mod - Start a PFEH to watch the internal VON icon + //Note: class RscDisplayVoiceChat {idd = 55} - only present when talking -DFUNC(isSpeaking) = switch (true) do { -case (isClass (configFile >> "cfgPatches" >> "acre_api")): { - { - PARAMS_1(_unit); - (_unit getVariable [QGVAR(isSpeakingInGame), false]) || ([_unit] call acre_api_fnc_isSpeaking) || ([ACE_player] call acre_api_fnc_isBroadcasting) - }; - }; -case (isClass (configFile >> "cfgPatches" >> "task_force_radio")): { - { - PARAMS_1(_unit); - (_unit getVariable [QGVAR(isSpeakingInGame), false]) || (_unit getVariable ["tf_isSpeaking", false]) - }; - }; - default { - { + [{ + _oldSetting = ACE_player getVariable [QGVAR(isSpeakingInGame), false]; + _newSetting = (!(isNull findDisplay 55)); + if (!(_oldSetting isEqualTo _newSetting)) then { + ACE_player setVariable [QGVAR(isSpeakingInGame), _newSetting, true]; + }; + } , 0.1, []] call CBA_fnc_addPerFrameHandler; + + DFUNC(isSpeaking) = { PARAMS_1(_unit); (_unit getVariable [QGVAR(isSpeakingInGame), false]) }; From e84689a7718eb6b4f17a8f5c0a61184867c62961 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Wed, 15 Apr 2015 11:46:01 -0500 Subject: [PATCH 197/246] #544 - Change ERROR warning to debug trace --- addons/captives/functions/fnc_setHandcuffed.sqf | 17 ++++++++--------- .../captives/functions/fnc_setSurrendered.sqf | 3 +-- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/addons/captives/functions/fnc_setHandcuffed.sqf b/addons/captives/functions/fnc_setHandcuffed.sqf index e992339186..5f134ab03b 100644 --- a/addons/captives/functions/fnc_setHandcuffed.sqf +++ b/addons/captives/functions/fnc_setHandcuffed.sqf @@ -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); diff --git a/addons/captives/functions/fnc_setSurrendered.sqf b/addons/captives/functions/fnc_setSurrendered.sqf index 30f9105511..d774e7f6e0 100644 --- a/addons/captives/functions/fnc_setSurrendered.sqf +++ b/addons/captives/functions/fnc_setSurrendered.sqf @@ -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); }; }]; From 252fb671190fc8412983502d8f387109add299a9 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 19:50:32 +0300 Subject: [PATCH 198/246] Update stringtable.xml --- addons/explosives/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/explosives/stringtable.xml b/addons/explosives/stringtable.xml index 05410e621e..c34b6d3cc6 100644 --- a/addons/explosives/stringtable.xml +++ b/addons/explosives/stringtable.xml @@ -497,6 +497,7 @@ Podnieś Ramasser Felszedés + Поднять From d8eb564c654e56335e04f4e520163eba14010964 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 19:52:29 +0300 Subject: [PATCH 199/246] Update stringtable.xml --- addons/overheating/stringtable.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/addons/overheating/stringtable.xml b/addons/overheating/stringtable.xml index 3aaeebdb00..4bb91688fa 100644 --- a/addons/overheating/stringtable.xml +++ b/addons/overheating/stringtable.xml @@ -15,7 +15,7 @@ Display a notification whenever your weapon gets jammed Zeige einen Hinweis, wenn die Waffe eine Ladehemmung hat. Mostrar notificación cada vez que el arma se encasquille - Демонстровать уведомление, каждый раз, когда клинит Ваше оружие. + Показывать уведомление каждый раз, когда клинит Ваше оружие. Zobrazí upozornění při zaseknutí zbraně Wyświetl powiadomienie za każdym razem, kiedy Twoja broń ulegnie zacięciu Affiche une notification lors d'un enrayement @@ -100,7 +100,7 @@ Wymienianie lufy... Vyměňuji hlaveň ... Changement du canon... - Смена ствола... + Смена ствола ... Cső kicserélése folyamatban... Substituindo cano... Sto sostituendo la canna ... @@ -136,6 +136,7 @@ Zkontrolovat teplotu zbraně Vérifier la température Fegyverhő ellenőrzése + Проверить температуру оружия Checking temperature ... From 7051152d934770e858d505c6db534ef1510dfa5e Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 19:53:42 +0300 Subject: [PATCH 200/246] Update stringtable.xml --- addons/disarming/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/disarming/stringtable.xml b/addons/disarming/stringtable.xml index 508c9f1d3d..ee121d0480 100644 --- a/addons/disarming/stringtable.xml +++ b/addons/disarming/stringtable.xml @@ -7,6 +7,7 @@ Otwórz ekwipunek Otevřít inventář Abrir inventario + Открыть инвентарь From 64d6bbaf2607016b80d027e10a8bb8b435ba5ec6 Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 18:55:20 +0200 Subject: [PATCH 201/246] Fixed an incorrect BC in an ATragMX gun profile --- addons/atragmx/XEH_postInit.sqf | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/addons/atragmx/XEH_postInit.sqf b/addons/atragmx/XEH_postInit.sqf index 31c526fab7..61bbf8b845 100644 --- a/addons/atragmx/XEH_postInit.sqf +++ b/addons/atragmx/XEH_postInit.sqf @@ -6,16 +6,16 @@ if (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, Ammo Class Name, Magazine Class Name, 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, "B_127x108_Ball" , "5Rnd_127x108_Mag" , 0.700, 1, "ASM" ], - ["12.7x99mm" , 880, 100, 0.0607, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 41.92, "B_127x99_Ball" , "5Rnd_mas_127x99_Stanag" , 0.670, 1, "ASM" ], - ["12.7x54mm" , 290, 100, 0.3913, -0.0014000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 61.56, "B_127x54_Ball" , "10Rnd_127x54_Mag" , 1.050, 1, "ASM" ], - ["10.4x77mm" , 910, 100, 0.0572, -0.0004800, 3.81, 0, 0.338, 0.338, 120, 0, 0, 27.15, "B_408_Ball" , "7Rnd_408_Mag" , 0.970, 1, "ASM" ], - ["9.3×64mm" , 870, 100, 0.0632, -0.0007500, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_93x64_Ball" , "10Rnd_93x64_DMR_05_Mag" , 0.368, 1, "ASM" ], - ["8.6×70mm" , 915, 100, 0.0572, -0.0006100, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_338_Ball" , "10Rnd_338_Mag" , 0.322, 7, "ICAO"], - ["7.62x51mm" , 850, 100, 0.0639, -0.0010000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.460, "B_762x51_Ball" , "20Rnd_762x51_Mag" , 0.393, 1, "ICAO"], - ["6.5x39mm" , 800, 100, 0.0689, -0.0009000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 7.776, "B_65x39_Caseless", "30Rnd_65x39_caseless_mag", 0.263, 1, "ICAO"], - ["5.56x45mm" , 920, 100, 0.0584, -0.0012650, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.000, "B_556x45_Ball" , "30Rnd_556x45_Stanag" , 0.304, 1, "ASM" ], - ["5.56x45mm Mk262" , 850, 100, 0.0643, -0.0011250, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.990, "RH_556x45_Mk262" , "RH_30Rnd_556x45_Mk262" , 0.361, 1, "ASM" ]]; + GVAR(gunList) = [["12.7x108mm" , 820, 100, 0.0659, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 48.28, "B_127x108_Ball" , "5Rnd_127x108_Mag" , 0.630, 1, "ASM" ], + ["12.7x99mm" , 880, 100, 0.0607, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 41.92, "B_127x99_Ball" , "5Rnd_mas_127x99_Stanag" , 0.670, 1, "ASM" ], + ["12.7x54mm" , 290, 100, 0.3913, -0.0014000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 61.56, "B_127x54_Ball" , "10Rnd_127x54_Mag" , 1.050, 1, "ASM" ], + ["10.4x77mm" , 910, 100, 0.0572, -0.0004800, 3.81, 0, 0.338, 0.338, 120, 0, 0, 27.15, "B_408_Ball" , "7Rnd_408_Mag" , 0.970, 1, "ASM" ], + ["9.3×64mm" , 870, 100, 0.0632, -0.0007500, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_93x64_Ball" , "10Rnd_93x64_DMR_05_Mag" , 0.368, 1, "ASM" ], + ["8.6×70mm" , 915, 100, 0.0572, -0.0006100, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_338_Ball" , "10Rnd_338_Mag" , 0.322, 7, "ICAO"], + ["7.62x51mm" , 850, 100, 0.0639, -0.0010000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.460, "B_762x51_Ball" , "20Rnd_762x51_Mag" , 0.393, 1, "ICAO"], + ["6.5x39mm" , 800, 100, 0.0689, -0.0009000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 7.776, "B_65x39_Caseless" , "30Rnd_65x39_caseless_mag" , 0.263, 1, "ICAO"], + ["5.56x45mm" , 920, 100, 0.0584, -0.0012650, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.000, "B_556x45_Ball" , "30Rnd_556x45_Stanag" , 0.304, 1, "ASM" ], + ["5.56x45mm Mk262" , 850, 100, 0.0643, -0.0011250, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.990, "ACE_556x45_Ball_Mk262" , "ACE_30Rnd_556x45_Stanag_Mk262_mag", 0.361, 1, "ASM" ]]; profileNamespace setVariable ["ACE_ATragMX_gunList", GVAR(gunList)]; }; From ea2281616ea1675c8e632877dc098f8c5dd8eb6a Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 09:55:40 -0700 Subject: [PATCH 202/246] Enable all variants of Titan. Can now vanilla-lock in cadet mode. --- addons/javelin/CfgWeapons.hpp | 3 +++ addons/javelin/functions/fnc_onFired.sqf | 4 +++- addons/javelin/functions/fnc_onOpticDraw.sqf | 4 +--- addons/missileguidance/CfgAmmo.hpp | 4 ++++ addons/missileguidance/functions/fnc_onFired.sqf | 5 ++--- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/addons/javelin/CfgWeapons.hpp b/addons/javelin/CfgWeapons.hpp index cef967e32e..4e7091c653 100644 --- a/addons/javelin/CfgWeapons.hpp +++ b/addons/javelin/CfgWeapons.hpp @@ -8,6 +8,9 @@ class CfgWeapons { weaponInfoType = "ACE_RscOptics_javelin"; modelOptics = PATHTOF(data\reticle_titan.p3d); + canLock = 1; + + lockingTargetSound[] = {"",0,1}; lockedTargetSound[] = {"",0,1}; }; diff --git a/addons/javelin/functions/fnc_onFired.sqf b/addons/javelin/functions/fnc_onFired.sqf index e873e5cf3e..04a023c9d8 100644 --- a/addons/javelin/functions/fnc_onFired.sqf +++ b/addons/javelin/functions/fnc_onFired.sqf @@ -4,7 +4,9 @@ PARAMS_7(_shooter,_weapon,_muzzle,_mode,_ammo,_magazine,_projectile); // Bail on not missile -if( _shooter != ACE_player || { ! (_weapon in ["launch_Titan_short_F"]) } ) exitWith { false }; +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 { diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index 3a64a36802..358b68ebc1 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -30,9 +30,7 @@ _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)) - || { (vehicle ACE_player) != ACE_player } - ) exitWith { +if( ! ([ (configFile >> "CfgWeapons" >> (currentWeapon (vehicle ACE_player)) ), "launch_Titan_base"] call EFUNC(common,inheritsFrom)) ) exitWith { __JavelinIGUITargeting ctrlShow false; __JavelinIGUITargetingGate ctrlShow false; __JavelinIGUITargetingLines ctrlShow false; diff --git a/addons/missileguidance/CfgAmmo.hpp b/addons/missileguidance/CfgAmmo.hpp index a05ecee9bc..3b74c87065 100644 --- a/addons/missileguidance/CfgAmmo.hpp +++ b/addons/missileguidance/CfgAmmo.hpp @@ -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" }; diff --git a/addons/missileguidance/functions/fnc_onFired.sqf b/addons/missileguidance/functions/fnc_onFired.sqf index 186a622417..ad713d8884 100644 --- a/addons/missileguidance/functions/fnc_onFired.sqf +++ b/addons/missileguidance/functions/fnc_onFired.sqf @@ -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); From 3773238e25ef2ac717e0e1b9e1db3c95c3f5be1d Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 19:56:34 +0300 Subject: [PATCH 203/246] Update stringtable.xml --- addons/atragmx/stringtable.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/addons/atragmx/stringtable.xml b/addons/atragmx/stringtable.xml index 6b6a921c2a..1468632a9b 100644 --- a/addons/atragmx/stringtable.xml +++ b/addons/atragmx/stringtable.xml @@ -17,14 +17,17 @@ Open ATragMX Otwórz ATragMX + Открыть ATragMX Rugged PDA with ATragMX Przenośny PDA z kalkulatorem balistycznym ATragMX + Защищенный КПК с ATragMX Open ATragMX Otwórz ATragMX + Открыть ATragMX - \ No newline at end of file + From e0c34f22bf59230174df93142f3f0b102a9ab4bb Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 18:59:11 +0200 Subject: [PATCH 204/246] Added ACE_338_Ball_API526 and updated some airFriction values --- addons/ballistics/CfgAmmo.hpp | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index 87f3a99df1..8e75e6ce03 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -502,8 +502,6 @@ class CfgAmmo { class ACE_338_Ball : B_338_Ball { airFriction=-0.000526; caliber=1.55; - deflecting=12; - hit=20; typicalSpeed=826; ACE_caliber=0.338; ACE_bulletLength=1.70; @@ -516,6 +514,21 @@ class CfgAmmo { ACE_muzzleVelocities[]={800, 820, 826, 830}; ACE_barrelLengths[]={20, 24, 26.5, 28}; }; + class ACE_338_Ball_API526 : B_338_Ball { + airFriction=-0.000526; + caliber=2.4; + typicalSpeed=826; + ACE_caliber=0.338; + ACE_bulletLength=1.535; + ACE_bulletMass=253; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.290}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={880, 915, 925}; + ACE_barrelLengths[]={20, 26, 28}; + }; class B_127x54_Ball : BulletBase { airFriction=-0.00014; typicalSpeed=300; @@ -545,6 +558,8 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class ACE_127x99_Ball_AMAX : B_127x99_Ball { + airFriction=-0.000374; + typicalSpeed=860; ACE_caliber=0.510; ACE_bulletLength=2.540; ACE_bulletMass=750; @@ -557,6 +572,7 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class B_127x108_Ball : BulletBase { + airFriction=-0.00064; typicalSpeed=820; ACE_caliber=0.511; ACE_bulletLength=2.520; From f8061922f7d4857e52c93bacb6c1b51de57aa002 Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 18:59:41 +0200 Subject: [PATCH 205/246] Added ACE_10Rnd_338_API526_Mag, ACE_5Rnd_127x99_Mag, ACE_5Rnd_127x99_AMAX_Mag --- addons/ballistics/CfgMagazines.hpp | 27 ++++++++++++++++++ addons/ballistics/CfgVehicles.hpp | 16 +++++++++++ addons/ballistics/stringtable.xml | 46 ++++++++++++++++++------------ 3 files changed, 71 insertions(+), 18 deletions(-) diff --git a/addons/ballistics/CfgMagazines.hpp b/addons/ballistics/CfgMagazines.hpp index de3f80fd83..7a97b3609e 100644 --- a/addons/ballistics/CfgMagazines.hpp +++ b/addons/ballistics/CfgMagazines.hpp @@ -171,6 +171,33 @@ class CfgMagazines { descriptionShort = "$STR_ACE_10Rnd_338_300gr_HPBT_Mag_Description"; initSpeed = 800; }; + class ACE_10Rnd_338_API526_Mag: 10Rnd_338_Mag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_338_Ball_API526"; + displayName = "$STR_ACE_10Rnd_338_API526_Mag_Name"; + displayNameShort = "$STR_ACE_10Rnd_338_API526_Mag_NameShort"; + descriptionShort = "$STR_ACE_10Rnd_338_API526_Mag_Description"; + initSpeed = 880; + }; + + class 5Rnd_127x108_Mag; + class ACE_5Rnd_127x99_Mag: 5Rnd_127x108_Mag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "B_127x99_Ball"; + displayName = "$STR_ACE_5Rnd_127x99_Mag_Name"; + displayNameShort = "$STR_ACE_5Rnd_127x99_Mag_NameShort"; + descriptionShort = "$STR_ACE_5Rnd_127x99_Mag_Description"; + initSpeed = 853; + }; + class ACE_5Rnd_127x99_AMAX_Mag: 5Rnd_127x108_Mag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_127x99_Ball_AMAX"; + displayName = "$STR_ACE_5Rnd_127x99_AMAX_Mag_Name"; + displayNameShort = "$STR_ACE_5Rnd_127x99_AMAX_Mag_NameShort"; + descriptionShort = "$STR_ACE_5Rnd_127x99_AMAX_Mag_Description"; + initSpeed = 860; + }; + class 30Rnd_9x21_Mag: CA_Magazine { initSpeed = 450; diff --git a/addons/ballistics/CfgVehicles.hpp b/addons/ballistics/CfgVehicles.hpp index 7c32774f9f..81252df0f2 100644 --- a/addons/ballistics/CfgVehicles.hpp +++ b/addons/ballistics/CfgVehicles.hpp @@ -23,6 +23,10 @@ class CfgVehicles { MACRO_ADDMAGAZINE(ACE_100Rnd_65x39_caseless_mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_200Rnd_65x39_cased_Box_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_30Rnd_556x45_Stanag_Tracer_Dim,1); + MACRO_ADDMAGAZINE(ACE_10Rnd_338_300gr_HPBT_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_338_API526_Mag,4); + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_Mag,4); + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_AMAX_Mag,4); }; }; @@ -32,6 +36,10 @@ class CfgVehicles { MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_338_300gr_HPBT_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_338_API526_Mag,4); + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_Mag,4); + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_AMAX_Mag,4); }; }; @@ -41,6 +49,10 @@ class CfgVehicles { MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,6); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_SD,3); + MACRO_ADDMAGAZINE(ACE_10Rnd_338_300gr_HPBT_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_338_API526_Mag,4); + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_Mag,4); + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_AMAX_Mag,4); }; }; @@ -159,6 +171,10 @@ class CfgVehicles { MACRO_ADDMAGAZINE(ACE_100Rnd_65x39_caseless_mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_200Rnd_65x39_cased_Box_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_338_300gr_HPBT_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_338_API526_Mag,4); + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_Mag,4); + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_AMAX_Mag,4);I a }; }; }; diff --git a/addons/ballistics/stringtable.xml b/addons/ballistics/stringtable.xml index 41070fa3dd..0b39dcb9d3 100644 --- a/addons/ballistics/stringtable.xml +++ b/addons/ballistics/stringtable.xml @@ -438,23 +438,6 @@ Calibro: 7.62x51 mm AP<br />Munizioni: 20<br />In uso su: Mk18 ABR Калибр: 7.62x51 мм дозвуковые<br />Патронов: 20<br />Применимы в: Mk18 ABR - - - .338 LM 10Rnd AP Mag - .338 LM 10-Schuss-Magazin Hartkern - Magazynek .338 LM 10rd AP - - - .338 LM AP - .338 LM AP - .338 LM AP - .338 LM AP - - - Caliber: .338 Lapua Magnum AP<br />Rounds: 10<br />Used in: MAR-10 - Kaliber: .338 Lapua Magnum Hartkern<br />Schuss: 10<br />Verwendet für: MAR-10 - Kaliber: .338 Lapua Magnum AP<br />Pociski: 10<br />Używany w: MAR-10 - .338 NM 130Rnd Tracer Belt @@ -756,7 +739,7 @@ Caliber: 6.5x47mm (HPBT Scenar)<br />Rounds: 30 - 8.6x70mm 10Rnd Mag (300gr Sierra MatchKing HPBT) + .338 10Rnd Mag (300gr Sierra MatchKing HPBT) .338 (HPBT) @@ -764,5 +747,32 @@ Caliber: 8.6x70mm (300gr Sierra MatchKing HPBT)<br />Rounds: 10 + + .338 10Rnd Mag (API526) + + + .338 AP + + + Caliber: 8.6x70mm (API526)<br />Rounds: 10 + + + 12.7x99mm 5Rnd Mag + + + 12.7mm + + + Caliber: 12.7x99mm<br />Rounds: 5 + + + 12.7x99mm 5Rnd Mag (AMAX) + + + 12.7mm + + + Caliber: 12.7x99mm (AMAX)<br />Rounds: 5 + From 92031cc3542a4809b0ad14a8f4142bb4941ce9ec Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 19:59:45 +0300 Subject: [PATCH 206/246] Update stringtable.xml --- addons/laserpointer/stringtable.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/laserpointer/stringtable.xml b/addons/laserpointer/stringtable.xml index 5d7aa03c67..eb328e5997 100644 --- a/addons/laserpointer/stringtable.xml +++ b/addons/laserpointer/stringtable.xml @@ -47,16 +47,19 @@ Laser Laser Laser + Лазер IR Laser IR-Laser Laser IR + ИК-лазер Switch Laser / IR Laser Umschalten Laser / IR-Laser Przełącz Laser / Laser IR + Изменить режим Лазер / ИК-лазер From 0c4734637b1679b2b591cbf3f77167aca7408944 Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 19:00:14 +0200 Subject: [PATCH 207/246] Fixed the GM6 barrel length and updated the magazines array --- addons/ballistics/CfgWeapons.hpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/addons/ballistics/CfgWeapons.hpp b/addons/ballistics/CfgWeapons.hpp index d5b6ad448f..add91d0fa2 100644 --- a/addons/ballistics/CfgWeapons.hpp +++ b/addons/ballistics/CfgWeapons.hpp @@ -522,14 +522,21 @@ class CfgWeapons { ACE_barrelLength=29; }; class srifle_GM6_F: GM6_base_F { + magazines[] = { + "5Rnd_127x108_Mag", + "5Rnd_127x108_APDS_Mag", + "ACE_5Rnd_127x99_Mag", + "ACE_5Rnd_127x99_AMAX_Mag" + }; initSpeed = -1.0; ACE_barrelTwist=15; - ACE_barrelLength=43.3; + ACE_barrelLength=36.6; }; class srifle_DMR_02_F: DMR_02_base_F { magazines[] = { "10Rnd_338_Mag", "ACE_10Rnd_338_300gr_HPBT_Mag", + "ACE_10Rnd_338_API526_Mag", "ACE_20Rnd_762x67_Mk248_Mod_0_Mag", "ACE_20Rnd_762x67_Mk248_Mod_1_Mag", "ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag" From fe72eef3da65a7a9c368b438f3ae37a4b51f2535 Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 20:02:41 +0300 Subject: [PATCH 208/246] Update stringtable.xml --- addons/advanced_ballistics/stringtable.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/advanced_ballistics/stringtable.xml b/addons/advanced_ballistics/stringtable.xml index f19aa1e672..b0a6e97f34 100644 --- a/addons/advanced_ballistics/stringtable.xml +++ b/addons/advanced_ballistics/stringtable.xml @@ -6,11 +6,13 @@ Show Wind Info Pokaż inf. o wietrze Mostra indicazioni del vento + Показать информацию о ветре Show Protractor Pokaż kątomierz Mostra il rapportatore + Показать транспортир From 396bd3954e2b70797aa7eacc510c20cd1766413a Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 19:04:41 +0200 Subject: [PATCH 209/246] Fixed a typo --- addons/ballistics/CfgVehicles.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/ballistics/CfgVehicles.hpp b/addons/ballistics/CfgVehicles.hpp index 81252df0f2..9dd4a7083d 100644 --- a/addons/ballistics/CfgVehicles.hpp +++ b/addons/ballistics/CfgVehicles.hpp @@ -174,7 +174,7 @@ class CfgVehicles { MACRO_ADDMAGAZINE(ACE_10Rnd_338_300gr_HPBT_Mag,4); MACRO_ADDMAGAZINE(ACE_10Rnd_338_API526_Mag,4); MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_Mag,4); - MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_AMAX_Mag,4);I a + MACRO_ADDMAGAZINE(ACE_5Rnd_127x99_AMAX_Mag,4); }; }; }; From 26d53d255f2267e434c0a5fd316de3c17ad6d0ee Mon Sep 17 00:00:00 2001 From: ruPaladin Date: Wed, 15 Apr 2015 20:08:39 +0300 Subject: [PATCH 210/246] Update stringtable.xml --- addons/scopes/stringtable.xml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/addons/scopes/stringtable.xml b/addons/scopes/stringtable.xml index 9e070efa73..16d6b60c4c 100644 --- a/addons/scopes/stringtable.xml +++ b/addons/scopes/stringtable.xml @@ -4,38 +4,47 @@ Minor adjustment up Zerowanie powoli w górę + Малая корректировка ВВЕРХ Minor adjustment down Zerowanie powoli w dół + Малая корректировка ВНИЗ Minor adjustment right Zerowanie powoli w prawo + Малая корректировка ВПРАВО Minor adjustment left Zerowanie powoli w lewo + Малая корректировка ВЛЕВО Major adjustment up Zerowanie w górę + Большая корректировка ВВЕРХ Major adjustment down Zerowanie w dół + Большая корректировка ВНИЗ Major adjustment right Zerowanie w prawo + Большая корректировка ВПРАВО Major adjustment left Zerowanie w lewo + Большая корректировка ВЛЕВО Set zero adjustment Zresetuj wyzerowanie + Сбросить корректировку From 25b7f779f14d0ae0ffd885b340182337225b9bc8 Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 10:11:13 -0700 Subject: [PATCH 211/246] Difficulty magic. --- addons/javelin/functions/fnc_onOpticDraw.sqf | 4 ++-- addons/javelin/functions/fnc_onOpticUnload.sqf | 2 +- addons/missileguidance/functions/fnc_onFired.sqf | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/addons/javelin/functions/fnc_onOpticDraw.sqf b/addons/javelin/functions/fnc_onOpticDraw.sqf index 358b68ebc1..13669b9d2e 100644 --- a/addons/javelin/functions/fnc_onOpticDraw.sqf +++ b/addons/javelin/functions/fnc_onOpticDraw.sqf @@ -110,7 +110,7 @@ if((call CBA_fnc_getFoV) select 1 > 9) then { FUNC(disableFire) = { _firedEH = _this select 0; - if(_firedEH < 0) then { + if(_firedEH < 0 && difficulty > 0) then { _firedEH = [ACE_player, "DefaultAction", {true}, { _canFire = ACE_player getVariable["ace_missileguidance_target", nil]; if(!isNil "_canFire") exitWith { false }; @@ -122,7 +122,7 @@ FUNC(disableFire) = { FUNC(enableFire) = { _firedEH = _this select 0; - if(_firedEH > 0) then { + if(_firedEH > 0 && difficulty > 0) then { [ACE_player, "DefaultAction", _firedEH] call EFUNC(common,removeActionEventHandler); }; -1 diff --git a/addons/javelin/functions/fnc_onOpticUnload.sqf b/addons/javelin/functions/fnc_onOpticUnload.sqf index 38acc1cd1c..4086c02766 100644 --- a/addons/javelin/functions/fnc_onOpticUnload.sqf +++ b/addons/javelin/functions/fnc_onOpticUnload.sqf @@ -13,7 +13,7 @@ if(!isNil "_pfh") then { _args = uiNamespace getVariable[QGVAR(arguments), nil ]; if(!isNil "_args") then { _disableFireEH = _args select 6; - if(_disableFireEH > 0) then { + if(_disableFireEH > 0 && difficulty > 0) then { [ACE_player, "DefaultAction", _disableFireEH] call EFUNC(common,removeActionEventHandler); }; uiNameSpace setVariable [QGVAR(arguments),nil]; diff --git a/addons/missileguidance/functions/fnc_onFired.sqf b/addons/missileguidance/functions/fnc_onFired.sqf index ad713d8884..dd96821692 100644 --- a/addons/missileguidance/functions/fnc_onFired.sqf +++ b/addons/missileguidance/functions/fnc_onFired.sqf @@ -48,7 +48,7 @@ if(isNil "_target") then { } else { _canUseLock = getNumber (_config >> "canVanillaLock"); // @TODO: Get vanilla target - if(_canUseLock > 0 || cadetMode) then { + if(_canUseLock > 0 || difficulty < 1) then { _vanillaTarget = cursorTarget; TRACE_1("Using Vanilla Locking", _vanillaTarget); From 18be5276a9171e1b85b18a67240ea620eee05b0c Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 19:18:42 +0200 Subject: [PATCH 212/246] rally point moved eh, markers at rallypoint positions --- addons/respawn/CfgEventHandlers.hpp | 7 +++ addons/respawn/XEH_postInit.sqf | 5 +++ addons/respawn/XEH_preInit.sqf | 2 + .../functions/fnc_handlePlayerChanged.sqf | 44 +++++++++++++++++++ .../respawn/functions/fnc_initRallypoint.sqf | 44 ++++++++++++++++--- .../respawn/functions/fnc_moveRallypoint.sqf | 8 ++-- .../functions/fnc_updateRallypoint.sqf | 17 +++++++ 7 files changed, 115 insertions(+), 12 deletions(-) create mode 100644 addons/respawn/XEH_postInit.sqf create mode 100644 addons/respawn/functions/fnc_handlePlayerChanged.sqf create mode 100644 addons/respawn/functions/fnc_updateRallypoint.sqf diff --git a/addons/respawn/CfgEventHandlers.hpp b/addons/respawn/CfgEventHandlers.hpp index 58aa8995ee..46ebd08657 100644 --- a/addons/respawn/CfgEventHandlers.hpp +++ b/addons/respawn/CfgEventHandlers.hpp @@ -1,9 +1,16 @@ + class Extended_PreInit_EventHandlers { class ADDON { init = QUOTE(call COMPILE_FILE(XEH_preInit)); }; }; +class Extended_PostInit_EventHandlers { + class ADDON { + init = QUOTE(call COMPILE_FILE(XEH_postInit)); + }; +}; + class Extended_Killed_EventHandlers { class CAManBase { class ADDON { diff --git a/addons/respawn/XEH_postInit.sqf b/addons/respawn/XEH_postInit.sqf new file mode 100644 index 0000000000..ada5765e86 --- /dev/null +++ b/addons/respawn/XEH_postInit.sqf @@ -0,0 +1,5 @@ +// by commy2 +#include "script_component.hpp" + +["rallypointMoved", {_this call FUNC(updateRallypoint)}] call EFUNC(common,addEventhandler); +["playerChanged", {_this call FUNC(handlePlayerChanged)}] call EFUNC(common,addEventhandler); // hide enemy rallypoint markers diff --git a/addons/respawn/XEH_preInit.sqf b/addons/respawn/XEH_preInit.sqf index 8b3f309126..dd116f108c 100644 --- a/addons/respawn/XEH_preInit.sqf +++ b/addons/respawn/XEH_preInit.sqf @@ -4,6 +4,7 @@ ADDON = false; PREP(canMoveRallypoint); PREP(handleKilled); +PREP(handlePlayerChanged); PREP(handleRespawn); PREP(handleInitPostServer); PREP(initRallypoint); @@ -16,5 +17,6 @@ PREP(removeDisconnectedPlayer); PREP(restoreGear); PREP(showFriendlyFireMessage); PREP(teleportToRallypoint); +PREP(updateRallypoint); ADDON = true; diff --git a/addons/respawn/functions/fnc_handlePlayerChanged.sqf b/addons/respawn/functions/fnc_handlePlayerChanged.sqf new file mode 100644 index 0000000000..db699066bc --- /dev/null +++ b/addons/respawn/functions/fnc_handlePlayerChanged.sqf @@ -0,0 +1,44 @@ +// by commy2 +#include "script_component.hpp" + +private "_newUnit"; + +_newUnit = _this select 0; + +switch (side group _newUnit) do { + case (west): { + ((missionNamespace getVariable ["ACE_Rallypoint_West", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 1; + ((missionNamespace getVariable ["ACE_Rallypoint_East", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_Independent", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_West_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 1; + ((missionNamespace getVariable ["ACE_Rallypoint_East_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_Independent_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + }; + + case (east): { + ((missionNamespace getVariable ["ACE_Rallypoint_West", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_East", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 1; + ((missionNamespace getVariable ["ACE_Rallypoint_Independent", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_West_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_East_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 1; + ((missionNamespace getVariable ["ACE_Rallypoint_Independent_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + }; + + case (independent): { + ((missionNamespace getVariable ["ACE_Rallypoint_West", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_East", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_Independent", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 1; + ((missionNamespace getVariable ["ACE_Rallypoint_West_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_East_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_Independent_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 1; + }; + + default { + ((missionNamespace getVariable ["ACE_Rallypoint_West", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_East", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_Independent", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_West_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_East_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + ((missionNamespace getVariable ["ACE_Rallypoint_Independent_Base", objNull]) getVariable [QGVAR(marker), ""]) setMarkerAlphaLocal 0; + }; +}; diff --git a/addons/respawn/functions/fnc_initRallypoint.sqf b/addons/respawn/functions/fnc_initRallypoint.sqf index c266026e11..81058614ed 100644 --- a/addons/respawn/functions/fnc_initRallypoint.sqf +++ b/addons/respawn/functions/fnc_initRallypoint.sqf @@ -16,23 +16,53 @@ #include "script_component.hpp" -private ["_rallypoint", "_respawnMarker", "_name"]; +private ["_rallypoint", "_respawnMarker", "_side"]; _rallypoint = _this select 0; _respawnMarker = _this select 1; +_side = _this select 2; -if (!local _rallypoint) exitWith {}; - +private "_name"; _name = typeOf _rallypoint; +// init visible marker +if (hasInterface) then { + private ["_marker", "_type"]; + + _marker = format ["ACE_Marker_%1", _name]; + + // exit if it already exist + if (_marker in allMapMarkers) exitWith {}; + + _marker = createMarkerLocal [_marker, getPosASL _rallypoint]; + _type = ["selector_selectedFriendly", "selector_selectedEnemy"] select (_respawnMarker == ""); + + _marker setMarkerTypeLocal _type; + _marker setMarkerAlphaLocal ([0,1] select (_side == playerSide)); // playerSide to guarantee init + + private "_markerDate"; + _markerDate = _rallypoint getVariable [QGVAR(markerDate), ""]; + + _marker setMarkerTextLocal _markerDate; + + _rallypoint setVariable [QGVAR(marker), _marker]; +}; + +if (!isServer) exitWith {}; + if (isNil _name) then { missionNamespace setVariable [_name, _rallypoint]; publicVariable _name; + + _rallypoint setVariable [QGVAR(side), _side, true]; + + if (_respawnMarker != "" && {!(_respawnMarker in allMapMarkers)}) then { + createMarker [_respawnMarker, _rallypoint]; + }; + + ["rallypointMoved", [_rallypoint, _side]] call EFUNC(common,globalEvent); + } else { deleteVehicle _rallypoint; diag_log text "[ACE] Respawn: ERROR Multiple Rallypoints of same type."; }; - -if (isServer && {_respawnMarker != ""} && {!(_respawnMarker in allMapMarkers)}) then { - createMarker [_respawnMarker, _rallypoint]; -}; diff --git a/addons/respawn/functions/fnc_moveRallypoint.sqf b/addons/respawn/functions/fnc_moveRallypoint.sqf index d937363310..2b008bf122 100644 --- a/addons/respawn/functions/fnc_moveRallypoint.sqf +++ b/addons/respawn/functions/fnc_moveRallypoint.sqf @@ -44,11 +44,9 @@ _this spawn { _rallypoint setPosATL _position; _unit reveal _rallypoint; - /* - _marker = format ["AGM_RallyPoint_%1", _side]; - _marker setMarkerPos _position; - _marker setMarkerTextLocal format ["%1:%2", [date select 3, 2, 0] call CBA_fnc_FORMATNumber, [date select 4, 2, 0] call CBA_fnc_FORMATNumber]; - */ + _rallypoint setVariable [QGVAR(markerDate), format ["%1:%2", date select 3, date select 4], true]; + + ["rallypointMoved", [_rallypoint, _side]] call EFUNC(common,globalEvent); [localize "STR_ACE_Respawn_Deployed"] call EFUNC(common,displayTextStructured); }; diff --git a/addons/respawn/functions/fnc_updateRallypoint.sqf b/addons/respawn/functions/fnc_updateRallypoint.sqf new file mode 100644 index 0000000000..2510a58a30 --- /dev/null +++ b/addons/respawn/functions/fnc_updateRallypoint.sqf @@ -0,0 +1,17 @@ +// by commy2 +#include "script_component.hpp" + +private ["_rallypoint", "_side"]; + +_rallypoint = _this select 0; +_side = _this select 1; + +if (!hasInterface) exitWith {}; + +private ["_marker", "_markerDate"]; + +_marker = _rallypoint getVariable [QGVAR(marker), ""]; +_markerDate = _rallypoint getVariable [QGVAR(markerDate), ""]; + +_marker setMarkerPosLocal getPosASL _rallypoint; +_marker setMarkerTextLocal _markerDate; From ae198fa307d1acce77c3440a22167b6583369092 Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 10:32:52 -0700 Subject: [PATCH 213/246] documentation matching re-orginization. --- documentation/feature/javelin.md | 10 ++++++++++ documentation/features/feature-list.md | 20 +++++++++++++++++++ documentation/features/titan-javelin-usage.md | 10 ++++++++++ .../framework/advanced-missile-guidance.md | 10 ++++++++++ .../fragmentation-configuration.md | 2 +- 5 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 documentation/feature/javelin.md create mode 100644 documentation/features/feature-list.md create mode 100644 documentation/features/titan-javelin-usage.md create mode 100644 documentation/framework/advanced-missile-guidance.md rename documentation/{development => framework}/fragmentation-configuration.md (99%) diff --git a/documentation/feature/javelin.md b/documentation/feature/javelin.md new file mode 100644 index 0000000000..eecfa8844a --- /dev/null +++ b/documentation/feature/javelin.md @@ -0,0 +1,10 @@ +--- +layout: wiki +title: Javelin/Titan Locking and Firing +group: feature +order: 5 +parent: wiki +--- + +## 1. Overview +Blah blah blah \ No newline at end of file diff --git a/documentation/features/feature-list.md b/documentation/features/feature-list.md new file mode 100644 index 0000000000..9edc405ba2 --- /dev/null +++ b/documentation/features/feature-list.md @@ -0,0 +1,20 @@ +--- +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 diff --git a/documentation/features/titan-javelin-usage.md b/documentation/features/titan-javelin-usage.md new file mode 100644 index 0000000000..8115e6812b --- /dev/null +++ b/documentation/features/titan-javelin-usage.md @@ -0,0 +1,10 @@ +--- +layout: wiki +title: ACE Titan and Javelin +group: features +order: 0 +parent: wiki +--- + + +**This page will get updated soon.** diff --git a/documentation/framework/advanced-missile-guidance.md b/documentation/framework/advanced-missile-guidance.md new file mode 100644 index 0000000000..e67bfbe0f3 --- /dev/null +++ b/documentation/framework/advanced-missile-guidance.md @@ -0,0 +1,10 @@ +--- +layout: wiki +title: Advanced Missile Guidance +group: framework +order: 5 +parent: wiki +--- + +## 1. Overview +Blah blah blah \ No newline at end of file diff --git a/documentation/development/fragmentation-configuration.md b/documentation/framework/fragmentation-configuration.md similarity index 99% rename from documentation/development/fragmentation-configuration.md rename to documentation/framework/fragmentation-configuration.md index 17ff36fa13..1372b2b69a 100644 --- a/documentation/development/fragmentation-configuration.md +++ b/documentation/framework/fragmentation-configuration.md @@ -1,7 +1,7 @@ --- layout: wiki title: Fragmentation Configuration -group: development +group: framework parent: wiki order: 7 --- From 3cff85e85d74a438f6dd4dfffae7641e8e54c83a Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 19:51:34 +0200 Subject: [PATCH 214/246] Added Mk319 Mod 0 ammo and magazines --- addons/ballistics/CfgAmmo.hpp | 20 +++++++++++++-- addons/ballistics/CfgMagazines.hpp | 19 +++++++++++++- addons/ballistics/CfgVehicles.hpp | 11 +++++++- addons/ballistics/CfgWeapons.hpp | 3 +++ addons/ballistics/stringtable.xml | 40 ++++++++++++++++++++++++------ 5 files changed, 81 insertions(+), 12 deletions(-) diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index 8e75e6ce03..a0fa47c452 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -148,7 +148,7 @@ class CfgAmmo { class B_762x51_Ball : BulletBase { airFriction=-0.001035; typicalSpeed=833; - hit=14; + hit=9; ACE_caliber=0.308; ACE_bulletLength=1.14; ACE_bulletMass=146; @@ -180,6 +180,22 @@ class CfgAmmo { ACE_muzzleVelocities[]={750, 780, 790, 794}; ACE_barrelLengths[]={16, 20, 24, 26}; }; + class ACE_762x51_Ball_Mk319_Mod_0 : B_762x51_Ball { + airFriction=-0.0014; + caliber=0.85; + hit=14; + typicalSpeed=890; + ACE_caliber=0.308; + ACE_bulletLength=1.24; + ACE_bulletMass=130; + ACE_ammoTempMuzzleVelocityShifts[]={-2.655, -2.547, -2.285, -2.012, -1.698, -1.280, -0.764, -0.153, 0.596, 1.517, 2.619}; + ACE_ballisticCoefficients[]={0.277}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=1; + ACE_muzzleVelocities[]={838, 892, 910}; + ACE_barrelLengths[]={13, 16, 20}; + }; class ACE_762x67_Ball_Mk248_Mod_0 : B_762x51_Ball { airFriction=-0.000830; @@ -234,7 +250,7 @@ class CfgAmmo { class ACE_762x51_Ball_Subsonic : B_762x51_Ball { airFriction=-0.000535; caliber=0.5; - hit=16; + hit=6; typicalSpeed=790; ACE_caliber=0.308; ACE_bulletLength=1.340; diff --git a/addons/ballistics/CfgMagazines.hpp b/addons/ballistics/CfgMagazines.hpp index 7a97b3609e..ef36fcca78 100644 --- a/addons/ballistics/CfgMagazines.hpp +++ b/addons/ballistics/CfgMagazines.hpp @@ -117,12 +117,21 @@ class CfgMagazines { class ACE_10Rnd_762x51_M118LR_Mag: 10Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_762x51_Ball_M118LR"; - count=10; + count = 10; displayName = "$STR_ACE_10Rnd_762x51_M118LR_Mag_Name"; displayNameShort = "$STR_ACE_10Rnd_762x51_M118LR_Mag_NameShort"; descriptionShort = "$STR_ACE_10Rnd_762x51_M118LR_Mag_Description"; initSpeed = 780; }; + class ACE_10Rnd_762x51_Mk319_Mod_0_Mag: 10Rnd_762x51_Mag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_762x51_Ball_Mk319_Mod_0"; + count = 10; + displayName = "$STR_ACE_10Rnd_762x51_Mk319_Mod_0_Mag_Name"; + displayNameShort = "$STR_ACE_10Rnd_762x51_Mk319_Mod_0_Mag_NameShort"; + descriptionShort = "$STR_ACE_10Rnd_762x51_Mk319_Mod_0_Mag_Description"; + initSpeed = 900; + }; class ACE_20Rnd_762x51_M118LR_Mag: 20Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_762x51_Ball_M118LR"; @@ -131,6 +140,14 @@ class CfgMagazines { descriptionShort = "$STR_ACE_20Rnd_762x51_M118LR_Mag_Description"; initSpeed = 780; }; + class ACE_20Rnd_762x51_Mk319_Mod_0_Mag: 20Rnd_762x51_Mag { + author = "$STR_ACE_Common_ACETeam"; + ammo = "ACE_762x51_Ball_Mk319_Mod_0"; + displayName = "$STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_Name"; + displayNameShort = "$STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_NameShort"; + descriptionShort = "$STR_ACE_20Rnd_762x51_Mk319_Mod_0_Mag_Description"; + initSpeed = 900; + }; class ACE_20Rnd_762x67_Mk248_Mod_0_Mag: 20Rnd_762x51_Mag { author = "$STR_ACE_Common_ACETeam"; ammo = "ACE_762x67_Ball_Mk248_Mod_0"; diff --git a/addons/ballistics/CfgVehicles.hpp b/addons/ballistics/CfgVehicles.hpp index 9dd4a7083d..f992f8cc8b 100644 --- a/addons/ballistics/CfgVehicles.hpp +++ b/addons/ballistics/CfgVehicles.hpp @@ -35,6 +35,8 @@ class CfgVehicles { MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_Mk319_Mod_0_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mk319_Mod_0_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_10Rnd_338_300gr_HPBT_Mag,4); MACRO_ADDMAGAZINE(ACE_10Rnd_338_API526_Mag,4); @@ -46,7 +48,9 @@ class CfgVehicles { class Box_NATO_Support_F: NATO_Box_Base { class TransportMagazines { MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); - MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,6); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_Mk319_Mod_0_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mk319_Mod_0_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_SD,3); MACRO_ADDMAGAZINE(ACE_10Rnd_338_300gr_HPBT_Mag,4); @@ -62,6 +66,8 @@ class CfgVehicles { MACRO_ADDMAGAZINE(ACE_30Rnd_65x47_Scenar_mag,4); MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_Mk319_Mod_0_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mk319_Mod_0_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); }; }; @@ -157,7 +163,10 @@ class CfgVehicles { class ACE_Box_Misc: Box_NATO_Support_F { class TransportMagazines { MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_SD,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_M118LR_Mag,4); + MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_Mk319_Mod_0_Mag,4); + MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mk319_Mod_0_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_Tracer_Dim,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x67_Mk248_Mod_0_Mag,4); MACRO_ADDMAGAZINE(ACE_20Rnd_762x67_Mk248_Mod_1_Mag,4); diff --git a/addons/ballistics/CfgWeapons.hpp b/addons/ballistics/CfgWeapons.hpp index add91d0fa2..dad5356755 100644 --- a/addons/ballistics/CfgWeapons.hpp +++ b/addons/ballistics/CfgWeapons.hpp @@ -503,6 +503,7 @@ class CfgWeapons { "20Rnd_762x51_Mag", "ACE_20Rnd_762x51_Mag_Tracer_Dim", "ACE_20Rnd_762x51_M118LR_Mag", + "ACE_20Rnd_762x51_Mk319_Mod_0_Mag", "ACE_20Rnd_762x51_Mag_SD" }; initSpeed = -0.9724; @@ -550,6 +551,7 @@ class CfgWeapons { "20Rnd_762x51_Mag", "ACE_20Rnd_762x51_Mag_Tracer_Dim", "ACE_20Rnd_762x51_M118LR_Mag", + "ACE_20Rnd_762x51_Mk319_Mod_0_Mag", "ACE_20Rnd_762x51_Mag_SD" }; initSpeed = -0.9843; @@ -571,6 +573,7 @@ class CfgWeapons { "20Rnd_762x51_Mag", "ACE_20Rnd_762x51_Mag_Tracer_Dim", "ACE_20Rnd_762x51_M118LR_Mag", + "ACE_20Rnd_762x51_Mk319_Mod_0_Mag", "ACE_20Rnd_762x51_Mag_SD" }; initSpeed = -0.9916; diff --git a/addons/ballistics/stringtable.xml b/addons/ballistics/stringtable.xml index 0b39dcb9d3..4786555236 100644 --- a/addons/ballistics/stringtable.xml +++ b/addons/ballistics/stringtable.xml @@ -650,8 +650,8 @@ Magazynek 5,56mm 30rd Mk262 - 5.56mm (Mk262) - 5,56mm (Mk262) + 5.56mm Mk262 + 5,56mm Mk262 Caliber: 5.56x45 mm NATO (Mk262)<br />Rounds: 30 @@ -662,8 +662,8 @@ Magazynek 5,56mm 30rd Mk318 - 5.56mm (Mk318) - 5,56mm (Mk318) + 5.56mm Mk318 + 5,56mm Mk318 Caliber: 5.56x45 mm NATO (Mk318)<br />Rounds: 30 @@ -674,8 +674,8 @@ Magazynek 7,62mm 10rd (M118LR) - 7.62mm (M118LR) - 7,62mm (M118LR) + 7.62mm M118LR + 7,62mm M118LR Caliber: 7.62x51 mm NATO (M118LR)<br />Rounds: 10 @@ -686,13 +686,37 @@ Magazynek 7,62mm 20rd (M118LR) - 7.62mm (M118LR) - 7,62mm (M118LR) + 7.62mm M118LR + 7,62mm M118LR Caliber: 7.62x51 mm NATO (M118LR)<br />Rounds: 20 Kaliber: 7,62x51 mm NATO (M118LR)<br />Pociski: 20 + + 7.62mm 10Rnd Mag (Mk319 Mod 0) + Magazynek 7,62mm 10rd (Mk319 Mod 0) + + + 7.62mm Mk319 + 7,62mm Mk319 + + + Caliber: 7.62x51 mm NATO (Mk319 Mod 0)<br />Rounds: 10 + Kaliber: 7,62x51 mm NATO (Mk319 Mod 0)<br />Pociski: 10 + + + 7.62mm 20Rnd Mag (Mk319 Mod 0) + Magazynek 7,62mm 20rd (Mk319 Mod 0) + + + 7.62mm Mk319 + 7,62mm Mk319 + + + Caliber: 7.62x51 mm NATO (Mk319 Mod 0)<br />Rounds: 20 + Kaliber: 7,62x51 mm NATO (Mk319 Mod 0)<br />Pociski: 20 + 7.62mm 20Rnd Mag (Mk248 Mod 0) Magazynek 7,62mm 20rd (Mk248 Mod 0) From e54d8dc827f05362d3b25b34a56ea48c97bd0355 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Wed, 15 Apr 2015 12:55:16 -0500 Subject: [PATCH 215/246] ProgressBar - Fixed Alignment --- addons/common/ProgressScreen.hpp | 135 ++++++++++---------- addons/common/functions/fnc_progressBar.sqf | 19 +-- 2 files changed, 76 insertions(+), 78 deletions(-) diff --git a/addons/common/ProgressScreen.hpp b/addons/common/ProgressScreen.hpp index 751d48af9f..df07e5ca2f 100644 --- a/addons/common/ProgressScreen.hpp +++ b/addons/common/ProgressScreen.hpp @@ -1,77 +1,74 @@ - class GVAR(ProgressBar_Dialog) { - idd = -1; - movingEnable = false; - onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(ctrlProgressBar)),(_this select 0) displayCtrl 1)]; uiNamespace setVariable [ARR_2(QUOTE(QGVAR(ctrlProgressBarTitle)),(_this select 0) displayCtrl 2)];); - objects[] = {}; + idd = -1; + movingEnable = false; + onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(ctrlProgressBar)),(_this select 0) displayCtrl 1)]; uiNamespace setVariable [ARR_2(QUOTE(QGVAR(ctrlProgressBarTitle)),(_this select 0) displayCtrl 2)];); + objects[] = {}; - class controlsBackground { - class Background { - idc = -1; - moving = 0; - font = "TahomaB"; - text = ""; - sizeEx = 0; - lineSpacing = 0; - access = 0; - type = 0; - style = 0; - size = 1; - colorBackground[] = {0, 0, 0, 0.0}; - colorText[] = {0, 0, 0, 0}; - x = "safezoneX"; - y = "safezoneY"; - w = "safezoneW"; - h = "safezoneH"; + class controlsBackground { + class Background { + idc = -1; + moving = 0; + font = "TahomaB"; + text = ""; + sizeEx = 0; + lineSpacing = 0; + access = 0; + type = 0; + style = 0; + size = 1; + colorBackground[] = {0, 0, 0, 0.0}; + colorText[] = {0, 0, 0, 0}; + x = "safezoneX"; + y = "safezoneY"; + w = "safezoneW"; + h = "safezoneH"; + }; + class Progress: ACE_gui_RscProgress { + idc = 1; + x = "1.2 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)"; + y = "0.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)"; + w = "37.8 * (((safezoneW / safezoneH) min 1.2) / 40)"; + h = ".8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)"; + colorFrame[] = {0,0,0,0.0}; + colorBar[] = {0.27,0.5,0.31,0.8}; + texture = "#(argb,8,8,3)color(1,1,1,0.7)"; + }; + class Title_Bar : ACE_gui_staticBase { + idc = 2; + style = 0x22; + colorBackground[] = {0, 0, 0, 0}; + colorText[] = {1, 1, 1, 1}; + x = "1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)"; + y = "0 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)"; + w = "38 * (((safezoneW / safezoneH) min 1.2) / 40)"; + h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)"; + }; }; - - class Progress: ACE_gui_RscProgress { - idc = 1; - x = "1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)"; - y = "0.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)"; - w = "38 * (((safezoneW / safezoneH) min 1.2) / 40)"; - h = ".8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)"; - colorFrame[] = {0,0,0,0.0}; - colorBar[] = {0.27,0.5,0.31,0.8}; - texture = "#(argb,8,8,3)color(1,1,1,0.7)"; - }; - - class Title_Bar : ACE_gui_staticBase { - idc = 2; - style = 0x22; - colorBackground[] = {0, 0, 0, 0}; - colorText[] = {1, 1, 1, 1}; - x = "1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)"; - y = "0 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)"; - w = "38 * (((safezoneW / safezoneH) min 1.2) / 40)"; - h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)"; - }; - }; }; class GVAR(DisableMouse_Dialog) { - idd = -1; - movingEnable = false; - onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(dlgDisableMouse)),_this select 0)];); - objects[] = {}; - class controlsBackground { - class Background { - idc = -1; - moving = 0; - font = "TahomaB"; - text = ""; - sizeEx = 0; - lineSpacing = 0; - access = 0; - type = 0; - style = 0; - size = 1; - colorBackground[] = {0, 0, 0, 0};//0.5 - colorText[] = {0, 0, 0, 0}; - x = "safezoneX"; - y = "safezoneY"; - w = "safezoneW"; - h = "safezoneH"; + idd = -1; + movingEnable = false; + onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(dlgDisableMouse)),_this select 0)];); + objects[] = {}; + class controlsBackground { + class Background { + idc = -1; + moving = 0; + font = "TahomaB"; + text = ""; + sizeEx = 0; + lineSpacing = 0; + access = 0; + type = 0; + style = 0; + size = 1; + colorBackground[] = {0, 0, 0, 0};//0.5 + colorText[] = {0, 0, 0, 0}; + x = "safezoneX"; + y = "safezoneY"; + w = "safezoneW"; + h = "safezoneH"; + }; }; - }; }; diff --git a/addons/common/functions/fnc_progressBar.sqf b/addons/common/functions/fnc_progressBar.sqf index 3191a57d72..03c56398c4 100644 --- a/addons/common/functions/fnc_progressBar.sqf +++ b/addons/common/functions/fnc_progressBar.sqf @@ -26,7 +26,7 @@ PARAMS_4(_totalTime,_args,_onFinish,_onFail); DEFAULT_PARAM(4,_localizedTitle,""); DEFAULT_PARAM(5,_condition,{true}); DEFAULT_PARAM(6,_exceptions,[]); -private ["_player", "_perFrameFunction"]; +private ["_player", "_perFrameFunction", "_ctrlPos"]; _player = ACE_player; @@ -35,14 +35,15 @@ closeDialog 0; createDialog QGVAR(ProgressBar_Dialog); (uiNamespace getVariable QGVAR(ctrlProgressBarTitle)) ctrlSetText _localizedTitle; -if (GVAR(SettingProgressBarLocation) == 1) then { - private "_ctrlPos"; - _ctrlPos = [1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2), 29 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2), 38 * (((safezoneW / safezoneH) min 1.2) / 40), 0.8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)]; - (uiNamespace getVariable QGVAR(ctrlProgressBar)) ctrlSetPosition _ctrlPos; - (uiNamespace getVariable QGVAR(ctrlProgressBarTitle)) ctrlSetPosition _ctrlPos; - (uiNamespace getVariable QGVAR(ctrlProgressBar)) ctrlCommit 0; - (uiNamespace getVariable QGVAR(ctrlProgressBarTitle)) ctrlCommit 0; -}; +//Adjust position based on user setting: +_ctrlPos = ctrlPosition (uiNamespace getVariable QGVAR(ctrlProgressBarTitle)); +_ctrlPos set [1, ((0 + 29 * GVAR(SettingProgressBarLocation)) * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2))]; +(uiNamespace getVariable QGVAR(ctrlProgressBarTitle)) ctrlSetPosition _ctrlPos; +(uiNamespace getVariable QGVAR(ctrlProgressBarTitle)) ctrlCommit 0; +_ctrlPos = ctrlPosition (uiNamespace getVariable QGVAR(ctrlProgressBar)); +_ctrlPos set [1, ((0.1 + 29 * GVAR(SettingProgressBarLocation)) * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2))]; +(uiNamespace getVariable QGVAR(ctrlProgressBar)) ctrlSetPosition _ctrlPos; +(uiNamespace getVariable QGVAR(ctrlProgressBar)) ctrlCommit 0; _perFrameFunction = { From 1a117a58932989057b63994d8b7e3406467f7748 Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 11:04:37 -0700 Subject: [PATCH 216/246] AMG documentation update. --- .../framework/advanced-missile-guidance.md | 101 +++++++++++++++++- 1 file changed, 99 insertions(+), 2 deletions(-) diff --git a/documentation/framework/advanced-missile-guidance.md b/documentation/framework/advanced-missile-guidance.md index e67bfbe0f3..3029b7b3bd 100644 --- a/documentation/framework/advanced-missile-guidance.md +++ b/documentation/framework/advanced-missile-guidance.md @@ -6,5 +6,102 @@ order: 5 parent: wiki --- -## 1. Overview -Blah blah blah \ No newline at end of file +# 1. Overview + +The ACE Advanced Missile Guidance Framework provides a setup of configuration settings, functions and a execution framework for addon makers to integrate with the missile guidance and targeting mechanisms of ACE. It also provides for mod makers to create their own custom guidance methods within the framework. + +The framework provides all the functionality needed for guidance; from laser locking, target specification and selection, to handling the fired events and tracking and steering the vehicle based on provided parameters. This way, all that needs to be defined in addons is the appropriate CfgAmmo entries for the missile. + +The framework also provides addon makers and scripters with the ability to configure custom seeker types and attack profiles, which are defined below. This allows for complete control of the guidance, locking and flight of a missile at the discretion of the addon maker. + +ACE3 provides a full suite of base concepts and guidance for the majority of modern missile weaponry avialable today; these includes all basic types of seekers (SALH/SACLOS/Optic/Thermal/etc) - as well as the different common attack profiles utilized with guided munitions (such as top-down attacks). + +Finally, flight profiles and mechanics for realistic missile simulations are also implemented; allowing for lock-steering bump guidance flight such as with the M47 Dragon or GBU steering fins, or finely tuned direct flight guidance which is currently avialable with other missile types. + +# 2. Details + +The framework is broken up into 3 major components: Locking Types, Seeker Types and Attack Profiles. In combination, these components build out the entire process of launching, locking and going terminal flight against targets. + +### Components + +##### 1. Locking Types +Locking types provide the basic functionality of targeting which will be based to a seeker type, providing target aquisition for seekers. This provides the basic functionality for providing pre-determined targets for a seeker, or allowing the seeker to perform its own target aquisition and locking. Additionally, the seeker may reference back into the locking type in order to re-perform target aquisition. + +##### 2. Seeker Types +Each seeker is generally assumed to be the logic for the seeker head unit within any given munition. Seekers within this framework provide the basic targeting functionality for the entire framework. The locking type will provide a generic target to the seeker, or the seeker may aquire a target on its own. The seeker then provides a target, either an object or a ASL position, which is then passed further into the framework. This target (or position) should be the actual current target position for the missiles flight. Seekers are required to perform all limitations and checks within their systems, although various limitations have been provided in this framework such as LOS FOV, laser guidance, etc. + +##### 3. Attack Profiles + +An attack profile adjusts the current target flight location to create the actual flight path of the missile. The attack profile is provided with all parameters of the system, including the returned target of the seeker. Using this information, the attack profile then will adjust the *direct flight target position* to specifically direct where and how the missile shall flight. + +## How it all ties together + +The system is executed in a linear series of calls to each step of the process, and feeding back the return from that step to the next step. Execution is conducted using Locking->Seeker->Profile, iteratively every frame of execution. Flight times are adjusted to accTime values and FPS lag, giving consistent flight. + +On each step of execution, a target specification array [targetObj, targetPos] is passed to the locking type, which then will return a possible modified target array. Next, this modified data is passed to the seeker type - which then, in turn, returns a position vector to the current "seeked" target position (ASL). Last, this target position is passed to the attack profile, who then returns an "adjusted attack position (ASL)", which is the location the missile should *currently* be homing on for flight. + +In the simplest sense, the entire system provides the flight trajectory of the missile homing directly on the "adjusted attack position"; thus, an attack profile would ajust this position to direct the missile. For example, Top down attacks return the adjusted attack position high above the target, until entering their terminal stages, which then changes the position to be directly ontop of the target - thus "walking the missile" along its flight path and to the kill. + +# 2. Adding AMG to a missile + +## Enabling guidance on Ammo Types +``` +class CfgAmmo { + class MissileBase; + class MyMissileType : MissileBase { + // Turn off arma crosshair-guidance + manualControl = 0; + + // Begin ACE guidance Configs + class ace_missileguidance { + enabled = 1; + + minDeflection = 0.00025; // Minium flap deflection for guidance + maxDeflection = 0.001; // Maximum flap deflection for guidance + incDeflection = 0.0005; // The incrmeent in which deflection adjusts. + + canVanillaLock = 0; // Can this default vanilla lock? Only applicable to non-cadet modes. All 'recruit' games use vanilla locking + + // Seeker type and settings for munitions + defaultSeekerType = "SALH"; + seekerTypes[] = { "SALH", "LIDAR", "SARH", "Optic", "Thermal", "GPS", "SACLOS", "MCLOS" }; + + defaultSeekerLockMode = "LOAL"; + seekerLockModes[] = { "LOAL", "LOBL" }; + + seekerAngle = 90; // Angle in front of the missile which can be searched + seekerAccuracy = 1; // seeker accuracy multiplier + + seekerMinRange = 1; + seekerMaxRange = 2500; // Range from the missile which the seeker can visually search + + // Attack profile type selection + defaultAttackProfile = "LIN"; + attackProfiles[] = { "LIN", "DIR", "MID", "HI" }; + }; +``` + +# 2. Creating your own custom seekers and attack profiles + +## Adding seeker types and attack profiles + +``` +class ace_missileguidance_attackProfiles{ + class MyAttackProfile { + name = ""; + visualName = ""; + description = ""; + + functionName = "my_fnc_doAttackProfile"; + }; +}; +class ace_missileguidance_seekerTypes { + class MySeekerType { + name = ""; + visualName = ""; + description = ""; + + functionName = "my_fnc_doSeekerType"; + }; +}; +``` \ No newline at end of file From bc5b9bdfe90ec202de318099019fa5d9ea90e724 Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Wed, 15 Apr 2015 20:11:08 +0200 Subject: [PATCH 217/246] French : update / fix strintable --- addons/interaction/stringtable.xml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/addons/interaction/stringtable.xml b/addons/interaction/stringtable.xml index 680c0409c1..0c10336309 100644 --- a/addons/interaction/stringtable.xml +++ b/addons/interaction/stringtable.xml @@ -33,6 +33,7 @@ Left Arm + Bras gauche Linker Arm Brazo izquierdo Levá paže @@ -194,7 +195,7 @@ Asumir el liderazgo Przejmij dowodzenie Stát se velitelem - Devenir Leader + Devenir Chef de groupe Стать лидером Vezetés átvétele Tornar-se Líder @@ -564,7 +565,7 @@ Join Team<br/>Green Team Grün<br/>beitreten Unirse al<br/>equipo verde - Rejoindre<br/>Verte + Rejoindre<br/>Vert Dołącz do<br/>drużyny zielonej Připojit do<br/>Zeleného týmu Присоединиться<br/>к зеленой группе @@ -576,7 +577,7 @@ Join Team<br/>Blue Team Blau<br/>beitreten Unirse al<br/>equipo azul - Rejoindre<br/>Bleue + Rejoindre<br/>Bleu Dołącz do<br/>drużyny niebieskiej Připojit do<br/>Modrého týmu Присоединиться<br/>к синей группе From 3a062a4ff93cd6a5391505438e6287e0ce7db49d Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 20:33:11 +0200 Subject: [PATCH 218/246] Fixed incorrect Mk319 Mod 0 BC/airFriction --- addons/atragmx/XEH_postInit.sqf | 2 +- addons/ballistics/CfgAmmo.hpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/addons/atragmx/XEH_postInit.sqf b/addons/atragmx/XEH_postInit.sqf index 61bbf8b845..664bc76ba4 100644 --- a/addons/atragmx/XEH_postInit.sqf +++ b/addons/atragmx/XEH_postInit.sqf @@ -12,7 +12,7 @@ if (count (profileNamespace getVariable ["ACE_ATragMX_gunList", []]) > 0) then { ["10.4x77mm" , 910, 100, 0.0572, -0.0004800, 3.81, 0, 0.338, 0.338, 120, 0, 0, 27.15, "B_408_Ball" , "7Rnd_408_Mag" , 0.970, 1, "ASM" ], ["9.3×64mm" , 870, 100, 0.0632, -0.0007500, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_93x64_Ball" , "10Rnd_93x64_DMR_05_Mag" , 0.368, 1, "ASM" ], ["8.6×70mm" , 915, 100, 0.0572, -0.0006100, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_338_Ball" , "10Rnd_338_Mag" , 0.322, 7, "ICAO"], - ["7.62x51mm" , 850, 100, 0.0639, -0.0010000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.460, "B_762x51_Ball" , "20Rnd_762x51_Mag" , 0.393, 1, "ICAO"], + ["7.62x51mm" , 820, 100, 0.0639, -0.0010000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.460, "B_762x51_Ball" , "20Rnd_762x51_Mag" , 0.393, 1, "ICAO"], ["6.5x39mm" , 800, 100, 0.0689, -0.0009000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 7.776, "B_65x39_Caseless" , "30Rnd_65x39_caseless_mag" , 0.263, 1, "ICAO"], ["5.56x45mm" , 920, 100, 0.0584, -0.0012650, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.000, "B_556x45_Ball" , "30Rnd_556x45_Stanag" , 0.304, 1, "ASM" ], ["5.56x45mm Mk262" , 850, 100, 0.0643, -0.0011250, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.990, "ACE_556x45_Ball_Mk262" , "ACE_30Rnd_556x45_Stanag_Mk262_mag", 0.361, 1, "ASM" ]]; diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index a0fa47c452..dfcd18aa52 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -181,7 +181,7 @@ class CfgAmmo { ACE_barrelLengths[]={16, 20, 24, 26}; }; class ACE_762x51_Ball_Mk319_Mod_0 : B_762x51_Ball { - airFriction=-0.0014; + airFriction=-0.00103; caliber=0.85; hit=14; typicalSpeed=890; @@ -189,7 +189,7 @@ class CfgAmmo { ACE_bulletLength=1.24; ACE_bulletMass=130; ACE_ammoTempMuzzleVelocityShifts[]={-2.655, -2.547, -2.285, -2.012, -1.698, -1.280, -0.764, -0.153, 0.596, 1.517, 2.619}; - ACE_ballisticCoefficients[]={0.277}; + ACE_ballisticCoefficients[]={0.377}; ACE_velocityBoundaries[]={}; ACE_standardAtmosphere="ICAO"; ACE_dragModel=1; From d68cc8f40e86e04996cc9977f677aca6e56fe0da Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 20:50:03 +0200 Subject: [PATCH 219/246] sync rallypoint marker on jip --- addons/respawn/CfgEventHandlers.hpp | 16 +++++----- .../respawn/functions/fnc_initRallypoint.sqf | 30 +++++++++++-------- .../respawn/functions/fnc_moveRallypoint.sqf | 2 +- .../functions/fnc_updateRallypoint.sqf | 5 ++-- 4 files changed, 29 insertions(+), 24 deletions(-) diff --git a/addons/respawn/CfgEventHandlers.hpp b/addons/respawn/CfgEventHandlers.hpp index 46ebd08657..00b6f01cea 100644 --- a/addons/respawn/CfgEventHandlers.hpp +++ b/addons/respawn/CfgEventHandlers.hpp @@ -30,45 +30,43 @@ class Extended_Respawn_EventHandlers { class Extended_Init_EventHandlers { class ACE_Rallypoint_West { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; [ARR_2(_this select 0,'')] call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; [ARR_3(_this select 0,'',west)] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_East { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; [ARR_2(_this select 0,'')] call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; [ARR_3(_this select 0,'',east)] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_Independent { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; [ARR_2(_this select 0,'')] call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; [ARR_3(_this select 0,'',independent)] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_West_Base { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; [ARR_2(_this select 0,'respawn_west')] call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_nato_CO.paa'; [ARR_3(_this select 0,'respawn_west',west)] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_East_Base { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; [ARR_2(_this select 0,'respawn_east')] call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_CSAT_CO.paa'; [ARR_3(_this select 0,'respawn_east',east)] call FUNC(initRallypoint)); }; }; class ACE_Rallypoint_Independent_Base { class ADDON { - init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; [ARR_2(_this select 0,'respawn_guerrila')] call FUNC(initRallypoint)); + init = QUOTE((_this select 0) setFlagTexture '\A3\Data_F\Flags\Flag_AAF_CO.paa'; [ARR_3(_this select 0,'respawn_guerrila',independent)] call FUNC(initRallypoint)); //respawn_civilian }; }; - - //respawn_civilian }; -// auto assign rallypoint leader class Extended_InitPost_EventHandlers { + // auto assign rallypoint leader class CAManBase { class ADDON { serverInit = QUOTE(_this call FUNC(handleInitPostServer)); diff --git a/addons/respawn/functions/fnc_initRallypoint.sqf b/addons/respawn/functions/fnc_initRallypoint.sqf index 81058614ed..44671b7c45 100644 --- a/addons/respawn/functions/fnc_initRallypoint.sqf +++ b/addons/respawn/functions/fnc_initRallypoint.sqf @@ -27,25 +27,31 @@ _name = typeOf _rallypoint; // init visible marker if (hasInterface) then { - private ["_marker", "_type"]; + // fix init having wrong position, vars etc. + [_rallypoint, _respawnMarker, _side, _name] spawn { + _rallypoint = _this select 0; + _respawnMarker = _this select 1; + _side = _this select 2; + _name = _this select 3; - _marker = format ["ACE_Marker_%1", _name]; + _marker = format ["ACE_Marker_%1", _name]; - // exit if it already exist - if (_marker in allMapMarkers) exitWith {}; + // exit if it already exist + if (_marker in allMapMarkers) exitWith {}; - _marker = createMarkerLocal [_marker, getPosASL _rallypoint]; - _type = ["selector_selectedFriendly", "selector_selectedEnemy"] select (_respawnMarker == ""); + _marker = createMarkerLocal [_marker, getPosASL _rallypoint]; + _type = ["selector_selectedFriendly", "selector_selectedEnemy"] select (_respawnMarker == ""); - _marker setMarkerTypeLocal _type; - _marker setMarkerAlphaLocal ([0,1] select (_side == playerSide)); // playerSide to guarantee init + _marker setMarkerTypeLocal _type; + _marker setMarkerAlphaLocal ([0,1] select (_side == playerSide)); // playerSide to guarantee init - private "_markerDate"; - _markerDate = _rallypoint getVariable [QGVAR(markerDate), ""]; + private "_markerDate"; + _markerDate = _rallypoint getVariable [QGVAR(markerDate), ""]; - _marker setMarkerTextLocal _markerDate; + _marker setMarkerTextLocal _markerDate; - _rallypoint setVariable [QGVAR(marker), _marker]; + _rallypoint setVariable [QGVAR(marker), _marker]; + }; }; if (!isServer) exitWith {}; diff --git a/addons/respawn/functions/fnc_moveRallypoint.sqf b/addons/respawn/functions/fnc_moveRallypoint.sqf index 2b008bf122..62d2742ef9 100644 --- a/addons/respawn/functions/fnc_moveRallypoint.sqf +++ b/addons/respawn/functions/fnc_moveRallypoint.sqf @@ -46,7 +46,7 @@ _this spawn { _rallypoint setVariable [QGVAR(markerDate), format ["%1:%2", date select 3, date select 4], true]; - ["rallypointMoved", [_rallypoint, _side]] call EFUNC(common,globalEvent); + ["rallypointMoved", [_rallypoint, _side, _position]] call EFUNC(common,globalEvent); [localize "STR_ACE_Respawn_Deployed"] call EFUNC(common,displayTextStructured); }; diff --git a/addons/respawn/functions/fnc_updateRallypoint.sqf b/addons/respawn/functions/fnc_updateRallypoint.sqf index 2510a58a30..248955155a 100644 --- a/addons/respawn/functions/fnc_updateRallypoint.sqf +++ b/addons/respawn/functions/fnc_updateRallypoint.sqf @@ -1,10 +1,11 @@ // by commy2 #include "script_component.hpp" -private ["_rallypoint", "_side"]; +private ["_rallypoint", "_side", "_position"]; _rallypoint = _this select 0; _side = _this select 1; +_position = _this select 2; if (!hasInterface) exitWith {}; @@ -13,5 +14,5 @@ private ["_marker", "_markerDate"]; _marker = _rallypoint getVariable [QGVAR(marker), ""]; _markerDate = _rallypoint getVariable [QGVAR(markerDate), ""]; -_marker setMarkerPosLocal getPosASL _rallypoint; +_marker setMarkerPosLocal _position; _marker setMarkerTextLocal _markerDate; From fa14befe63774c4e2e6d16b6b85cc299e02f8f27 Mon Sep 17 00:00:00 2001 From: Clon1998 Date: Wed, 15 Apr 2015 20:51:29 +0200 Subject: [PATCH 220/246] Update AUTHORS.txt Added my self to the # CONTRIBUTORS --- AUTHORS.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/AUTHORS.txt b/AUTHORS.txt index e2930ee461..fa47b6a427 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -33,6 +33,7 @@ Aggr094 Anthariel BlackQwar Brakoviejo +Clon1998 Codingboy Crusty eRazeri From 550c32e801ff7e2a0483db52ddcad052ccd4d1ef Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Wed, 15 Apr 2015 20:53:41 +0200 Subject: [PATCH 221/246] French : update stringtable --- addons/ballistics/stringtable.xml | 88 ++++++++++++++++++++++++++++++- 1 file changed, 86 insertions(+), 2 deletions(-) diff --git a/addons/ballistics/stringtable.xml b/addons/ballistics/stringtable.xml index 4786555236..d47bec4c63 100644 --- a/addons/ballistics/stringtable.xml +++ b/addons/ballistics/stringtable.xml @@ -443,360 +443,444 @@ .338 NM 130Rnd Tracer Belt .338 NM 130-Schuss-Gurt Leuchtspur Taśma .338 NM 130rd Smugacz + Bande .338 NM 130Cps Traçante .338 NM Tracer .338 NM Leuchtspur .338 NM Tracer .338 NM Svítící + .338 NM Traçante Caliber: .338 Norma Magnum Tracer<br />Rounds: 130<br />Used in: SPMG Kaliber: .338 Norma Magnum Leuchtspur<br />Schuss: 130<br />Verwendet für: SPMG Kaliber: .338 Norma Magnum Smugacz<br />Pociski: 130<br />Używany w: SPMG + Calibre: .338 Norma Magnum Traçante<br />Cartouches: 130<br />Utilisé dans: SPMG .338 NM 130Rnd IR-DIM Belt .338 NM 130-Schuss-Gurt Leuchtspur IR-DIM Taśma .338 NM 130rd IR-DIM + Bande .338 NM 130Cps IR-DIM .338 NM IR-DIM .338 LM IR-DIM .338 NM IR-DIM .338 NM IR-DIM + .338 NM IR-DIM Caliber: .338 Norma Magnum Tracer IR-DIM<br />Rounds: 130<br />Used in: SPMG Kaliber: .338 Norma Magnum Leuchtspur IR-DIM<br />Schuss: 130<br />Verwendet für: SPMG Kaliber: .338 Norma Magnum Smugacz IR-DIM<br />Pociski: 130<br />Używany w: SPMG + Calibre: .338 Norma Magnum Traçante IR-DIM<br />Cartouches: 130<br />Utilisé dans: SPMG .338 NM 130Rnd AP Belt .338 NM 130-Schuss-Gurt Hartkern Taśma .338 NM 130rd AP + Bande .338 NM 130Cps AP .338 NM AP .338 NM AP .338 NM AP .338 NM AP + .338 NM AP Caliber: .338 Norma Magnum AP<br />Rounds: 130<br />Used in: SPMG Kaliber: .338 Norma Magnum Hartkern<br />Schuss: 130<br />Verwendet für: SPMG Kaliber: .338 Norma Magnum AP<br />Pociski: 130<br />Używane w: SPMG + Calibre: .338 Norma Magnum AP<br />Cartouches: 130<br />Utilisé dans: SPMG 9.3mm 10Rnd Tracer Mag 9,3mm 10-Schuss-Magazin Leuchtspur Magazynek 9.3mm 10rd Smugacz + Chargeur 9.3mm 10Cps Traçante 9.3mm Tracer 9,3mm Leuchtspur 9,3mm Smugacz 9.3mm Svítící + 9.3mm Traçante Caliber: 9.3x64mm Tracer<br />Rounds: 10<br />Used in: Cyrus Kaliber: 9,3x64mm Leuchtspur<br />Schuss: 10<br />Verwendet für: Cyrus Kaliber: 9,3x64 mm Smugacz<br />Pociski: 10<br />Używany w: Cyrus + Calibre: 9.3x64mm Traçante<br />Cartouches: 10<br />Utilisé dans: Cyrus 9.3mm 10Rnd Tracer IR-DIM Mag 9,3mm 10-Schuss-Magazin Leuchtspur IR-DIM Magazynek 9,3mm 10rd Smugacz IR-DIM + Chargeur 9.3mm 10Cps Traçante IR-DIM 9.3mm IR-DIM 9,3mm IR-DIM 9,3mm IR-DIM 9.3mm IR-DIM + 9.3mm IR-DIM Caliber: 9.3x64mm Tracer IR-DIM<br />Rounds: 10<br />Used in: Cyrus Kaliber: 9,3x64mm Leuchtspur IR-DIM<br />Schuss: 10<br />Verwendet für: Cyrus Kaliber: 9,3x64 mm Smugacz IR-DIM<br />Pociski: 10<br />Używany w: Cyrus + Calibre: 9.3x64mm Traçante IR-DIM<br />Cartouches: 10<br />Utilisé dans: Cyrus 9.3mm 10Rnd AP Mag 9,3mm 10-Schuss-Magazin Hartkern Magazynek 9,3mm 10rd AP + Chargeur 9.3mm 10Cps AP 9.3mm AP 9,3mm AP 9,3mm AP 9.3mm AP + 9.3mm AP Caliber: 9.3x64mm AP<br />Rounds: 10<br />Used in: Cyrus Kaliber: 9,3x64mm Hartkern<br />Schuss: 10<br />Verwendet für: Cyrus Kaliber: 9,3x64 mm AP<br />Pociski: 10<br />Używany w: Cyrus + Calibre: 9.3x64mm AP<br />Cartouches: 10<br />Utilisé dans: Cyrus 9.3mm 150Rnd Tracer Belt 9,3mm 150-Schuss-Gurt Leuchtspur Taśma 9,3mm 150rd Smugacz + Bande 9.3mm 150Cps Traçante 9.3mm Tracer 9,3mm Leuchtspur 9,3mm Smugacz 9.3mm Svítící + 9.3mm Traçante Caliber: 9.3x64mm Tracer<br />Rounds: 150<br />Used in: Navid Kaliber: 9,3x64mm Leuchtspur<br />Schuss: 150<br />Verwendet für: Navid Kaliber: 9,3x64 mm Smugacz<br />Pociski: 150<br />Używane w: Navid + Calibre: 9.3x64mm Traçante<br />Cartouches: 150<br />Utilisé dans: Navid 9.3mm 150Rnd Tracer IR-DIM Belt 9,3mm 150-Schuss-Gurt Leuchtspur IR-DIM Taśma 9,3mm 150rd Smugacz IR-DIM + Bande 9.3mm 150Cps Traçante IR-DIM 9.3mm IR-DIM 9,3mm IR-DIM 9,3mm IR-DIM 9.3mm IR-DIM + 9.3mm IR-DIM Caliber: 9.3x64mm Tracer IR-DIM<br />Rounds: 150<br />Used in: Navid Kaliber: 9,3x64mm Leuchtspur IR-DIM<br />Schuss: 150<br />Verwendet für: Navid Kaliber: 9,3x64 mm Smugacz IR-DIM<br />Pociski: 150<br />Używane w: Navid + Calibre: 9.3x64mm Traçante IR-DIM<br />Cartouches: 150<br />Utilisé dans: Navid 9.3mm 150Rnd AP Belt 9,3mm 150-Schuss-Gurt Hartkern Taśma 9,3mm 150rd AP + Bande 9.3mm 150Cps AP 9.3mm AP 9,3mm AP 9,3mm AP 9.3mm AP + 9.3mm AP Caliber: 9.3x64mm AP<br />Rounds: 150<br />Used in: Navid Kaliber: 9,3x64mm Hartkern<br />Schuss: 150<br />Verwendet für: Navid Kaliber: 9,3x64 mm AP<br />Pociski: 150<br />Używane w: Navid + Calibre: 9.3x64mm AP<br />Cartouches: 150<br />Utilisé dans: Navid 9x19mm 16Rnd Mag Magazynek 9x19mm 16rd + Chargeur 9x19mm 16Cps 9x19mm 9x19mm + 9x19mm - 9x19mm 16Rnd Mag + 9x19mm 30Rnd Mag Magazynek 9x19mm 16rd + 9x19mm 30Cps 9x19mm 30Rnd Mag Magazynek 9x19mm 30rd + 9x19mm 30Cps 9x19mm 9x19mm + 9x19mm 9x19mm 30Rnd Mag Magazynek 9x19mm 30rd + 9x19mm 30Cps 7.62x54mm 10Rnd Tracer IR-DIM Mag Magazynek 7,62x54 mm 10rd Smugacz IR-DIM + Chargeur 7.62x54mm 10Rnd Traçante IR-DIM 7.62mm IR-DIM 7,62mm IR-DIM + 7.62mm IR-DIM 7.62x54mm 10Rnd Tracer IR-DIM Mag Magazynek 7,62x54 mm 10rd Smugacz IR-DIM + Chargeur 7.62x54mm 10Cps Traçante IR-DIM 6.5mm 100Rnd Tracer IR-DIM Mag Magazynek 6,5mm 100rd Smugacz IR-DIM + Chargeur 6.5mm 100Rnd Traçante IR-DIM 6.5mm IR-DIM 6,5mm IR-DIM + 6.5mm IR-DIM 6.5mm 100Rnd Tracer IR-DIM Mag Magazynek 6,5mm 100rd Smugacz IR-DIM + Chargeur 6.5mm 100Rnd Traçante IR-DIM 6.5mm 200Rnd Tracer IR-DIM Belt Magazynek 6,5mm 200rd Smugacz IR-DIM + Bande 6.5mm 200Rnd Traçante IR-DIM 6.5mm IR-DIM 6,5mm IR-DIM + 6.5mm IR-DIM 6.5mm 200Rnd Tracer IR-DIM Belt Magazynek 6,5mm 200rd Smugacz IR-DIM + Bande 6.5mm 200Cps Traçante IR-DIM 5.56mm 30Rnd Mag (Mk262) Magazynek 5,56mm 30rd Mk262 + 5.56mm 30Cps (Mk262) 5.56mm Mk262 5,56mm Mk262 + 5.56mm Mk262 Caliber: 5.56x45 mm NATO (Mk262)<br />Rounds: 30 Kaliber: 5,56x45 mm NATO (Mk262)<br />Pociski: 30 + Calibre: 5.56x45 mm NATO (Mk262)<br />Cartouches: 30 5.56mm 30Rnd Mag (Mk318) Magazynek 5,56mm 30rd Mk318 + 5.56mm 30Cps (Mk318) 5.56mm Mk318 5,56mm Mk318 + 5.56mm Mk318 Caliber: 5.56x45 mm NATO (Mk318)<br />Rounds: 30 Kaliber: 5,56x45 mm NATO (Mk318)<br />Pociski: 30 + Calibre: 5.56x45 mm NATO (Mk318)<br />Cartouches: 30 7.62mm 10Rnd Mag (M118LR) Magazynek 7,62mm 10rd (M118LR) + 7.62mm 10Cps (M118LR) 7.62mm M118LR 7,62mm M118LR + 7.62mm M118LR Caliber: 7.62x51 mm NATO (M118LR)<br />Rounds: 10 Kaliber: 7,62x51 mm NATO (M118LR)<br />Pociski: 10 + Calibre: 7.62x51 mm NATO (M118LR)<br />Cartouches: 10 7.62mm 20Rnd Mag (M118LR) Magazynek 7,62mm 20rd (M118LR) + 7.62mm 20Cps (M118LR) 7.62mm M118LR 7,62mm M118LR + 7.62mm M118LR Caliber: 7.62x51 mm NATO (M118LR)<br />Rounds: 20 Kaliber: 7,62x51 mm NATO (M118LR)<br />Pociski: 20 + Calibre: 7.62x51 mm NATO (M118LR)<br />Cartouches: 20 7.62mm 10Rnd Mag (Mk319 Mod 0) Magazynek 7,62mm 10rd (Mk319 Mod 0) + 7.62mm 10Cps (Mk319 Mod 0) 7.62mm Mk319 7,62mm Mk319 + 7.62mm Mk319 Caliber: 7.62x51 mm NATO (Mk319 Mod 0)<br />Rounds: 10 Kaliber: 7,62x51 mm NATO (Mk319 Mod 0)<br />Pociski: 10 + Calibre: 7.62x51 mm NATO (Mk319 Mod 0)<br />Cartouches: 10 7.62mm 20Rnd Mag (Mk319 Mod 0) Magazynek 7,62mm 20rd (Mk319 Mod 0) + 7.62mm 20Cps (Mk319 Mod 0) 7.62mm Mk319 7,62mm Mk319 + 7.62mm Mk319 Caliber: 7.62x51 mm NATO (Mk319 Mod 0)<br />Rounds: 20 Kaliber: 7,62x51 mm NATO (Mk319 Mod 0)<br />Pociski: 20 + Calibre: 7.62x51 mm NATO (Mk319 Mod 0)<br />Cartouches: 20 7.62mm 20Rnd Mag (Mk248 Mod 0) Magazynek 7,62mm 20rd (Mk248 Mod 0) + 7.62mm 20Cps (Mk248 Mod 0) 7.62mm (Mk248 Mod 0) 7,62mm (Mk248 Mod 0) + 7.62mm (Mk248 Mod 0) Caliber: 7.62x67 mm NATO (Mk248 Mod 0)<br />Rounds: 20 - Kaliber: 7,62x51 mm NATO (Mk248 Mod 0)<br />Pociski: 20 + Kaliber: 7,62x67 mm NATO (Mk248 Mod 0)<br />Pociski: 20 + Calibre: 7.62x67mm NATO (Mk248 Mod 0)<br />Cartouches: 20 7.62mm 20Rnd Mag (Mk248 Mod 1) Magazynek 7,62mm 20rd (Mk248 Mod 1) + 7.62mm 20Cps (Mk248 Mod 1) 7.62mm (Mk248 Mod 1) 7,62mm (Mk248 Mod 1) + 7.62mm (Mk248 Mod 1) Caliber: 7.62x67 mm NATO (Mk248 Mod 1)<br />Rounds: 20 Kaliber: 7,62x67 mm NATO (Mk248 Mod 1)<br />Pociski: 20 + Calibre: 7.62x67mm NATO (Mk248 Mod 1)<br />Cartouches: 20 7.62mm 20Rnd Mag (Berger Hybrid OTM) Magazynek 7,62mm 20rd (Berger Hybrid OTM) + 7.62 20Cps (Berger Hybrid OTM) 7.62mm (OTM) 7,62mm (OTM) + 7.62mm (OTM) Caliber: 7.62x67 mm NATO (Berger Hybrid OTM)<br />Rounds: 20 Kaliber: 7,62x67 mm NATO (Berger Hybrid OTM)<br />Pociski: 20 + Calibre: 7.62x67mm NATO (Berger Hybrid OTM)<br />Cartouches: 20 6.5x47mm 30Rnd Mag (HPBT Scenar) + 6.5x47mm 30Cps (HPBT Scenar) 6.5mm Scenar + 6.5mm Scenar Caliber: 6.5x47mm (HPBT Scenar)<br />Rounds: 30 + Calibre: 6.5x47mm (HPBT Scenar)<br />Cartouches: 30 .338 10Rnd Mag (300gr Sierra MatchKing HPBT) + .338 10 Cps (300gr Sierra MatchKing HPBT) .338 (HPBT) + .338 (HPBT) Caliber: 8.6x70mm (300gr Sierra MatchKing HPBT)<br />Rounds: 10 + Calibre: 8.6x70mm (300gr Sierra MatchKing HPBT)<br />Cartouches: 10 .338 10Rnd Mag (API526) + .338 10Cps (API526) .338 AP + .338 AP Caliber: 8.6x70mm (API526)<br />Rounds: 10 + Calibre: 8.6x70mm (API526)<br />Cartouches: 10 12.7x99mm 5Rnd Mag + 12.7x99mm 5Cps 12.7mm + 12.7mm Caliber: 12.7x99mm<br />Rounds: 5 + Calibre: 12.7x99mm<br />Cartouches: 5 12.7x99mm 5Rnd Mag (AMAX) + 12.7x99mm 5Rnd Mag (AMAX) 12.7mm + 12.7mm Caliber: 12.7x99mm (AMAX)<br />Rounds: 5 + Calibre: 12.7x99mm (AMAX)<br />Cartouches: 5 From 5bcb0ec4930cf08f0d9bfeb3e4874edfc1dccadf Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 12:09:47 -0700 Subject: [PATCH 222/246] Forgot to set terminal on short-range attacks. Fixes #630 --- .../functions/fnc_attackProfile_JAV_TOP.sqf | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf index fd86c2bf03..6b15a3e20a 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf @@ -48,9 +48,12 @@ switch( (_state select 0) ) do { _cruisAlt = 140 * (_distanceShooterToTarget/1250); TRACE_1("_cruisAlt", _cruisAlt); }; - if( ((ASLToATL _projectilePos) select 2) - ((ASLToATL _seekerTargetPos) select 2) >= _cruisAlt) then { - _state set[0, STAGE_COAST]; + if(_cruisAlt < 140) then { + _state set[0, STAGE_TERMINAL]; + } else { + _state set[0, STAGE_COAST]; + }; } else { _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*2]; }; From c0dbf10971277d1ced73550ba1df852622f11b4f Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Wed, 15 Apr 2015 21:14:00 +0200 Subject: [PATCH 223/246] French : update stringtable --- addons/kestrel4500/stringtable.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/addons/kestrel4500/stringtable.xml b/addons/kestrel4500/stringtable.xml index 3a0e18b9e5..bd9133f625 100644 --- a/addons/kestrel4500/stringtable.xml +++ b/addons/kestrel4500/stringtable.xml @@ -18,32 +18,38 @@ Kestrel 4500 Pocket Weather Tracker Anemomentr skrzydełkowy Kestrel 4500 Карманная метеостанция Kestrel 4500NV + Station météo portable Kestrel 4500 Open Kestrel 4500 Otwórz Kestrel 4500 Kestrel 4500 elővétele Открыть Kestrel 4500NV + Ouvrir Kestrel 4500 Show Kestrel 4500 Pokaż Kestrel 4500 Показать Kestrel 4500NV + Afficher Kestrel 4500 Hide Kestrel 4500 Ukryj Kestrel 4500 Убрать Kestrel 4500NV + Cacher Kestrel 4500 Open Kestrel 4500 Otwórz Kestrel 4500 Открыть Kestrel 4500NV + Ouvrir Kestrel 4500 Show Kestrel 4500 Pokaż Kestrel 4500 Показать Kestrel 4500NV + Afficher Kestrel 4500 From df61f5c995df9227e4be9ad3150dda395b44e9ae Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Wed, 15 Apr 2015 21:15:57 +0200 Subject: [PATCH 224/246] French : update stringtable --- addons/interact_menu/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/interact_menu/stringtable.xml b/addons/interact_menu/stringtable.xml index 8960f99e60..4a763e4fa9 100644 --- a/addons/interact_menu/stringtable.xml +++ b/addons/interact_menu/stringtable.xml @@ -15,6 +15,7 @@ Display interaction menus as lists Mostrar los menus de interacción como listas Показывать меню взаимодействия в виде списка + Afficher le menu d'interaction au format liste Interact Key From 56f6c60e1af394dfeb3b51c22f151ccb91964d6f Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Wed, 15 Apr 2015 21:17:35 +0200 Subject: [PATCH 225/246] French : update stringtable --- addons/weather/stringtable.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/addons/weather/stringtable.xml b/addons/weather/stringtable.xml index 85b1e96383..46a0653269 100644 --- a/addons/weather/stringtable.xml +++ b/addons/weather/stringtable.xml @@ -6,6 +6,7 @@ Show Wind Info Pokaż inf. o wietrze Показать информацию о погоде + Afficher information du vent From 18c65108c3421e23ef96caec1d0e160937cd95ff Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Wed, 15 Apr 2015 21:24:24 +0200 Subject: [PATCH 226/246] French : update stringtable --- addons/laserpointer/stringtable.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/laserpointer/stringtable.xml b/addons/laserpointer/stringtable.xml index eb328e5997..cf4dd742b0 100644 --- a/addons/laserpointer/stringtable.xml +++ b/addons/laserpointer/stringtable.xml @@ -48,18 +48,21 @@ Laser Laser Лазер + Laser IR Laser IR-Laser Laser IR ИК-лазер + Laser IR Switch Laser / IR Laser Umschalten Laser / IR-Laser Przełącz Laser / Laser IR Изменить режим Лазер / ИК-лазер + Changer Laser / Laser IR From 10cf02e8569dc4305daa7aca8b496198b82f3534 Mon Sep 17 00:00:00 2001 From: jaynus Date: Wed, 15 Apr 2015 12:25:57 -0700 Subject: [PATCH 227/246] Slower climb phase.Refs #630 --- .../missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf | 4 ++-- .../missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf b/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf index 822afd7f1b..ecb469527a 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_JAV_DIR.sqf @@ -48,12 +48,12 @@ switch( (_state select 0) ) do { if( ((ASLToATL _projectilePos) select 2) - ((ASLToATL _seekerTargetPos) select 2) >= _cruisAlt) then { _state set[0, STAGE_TERMINAL]; } else { - _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*2]; + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*1.5]; }; }; case STAGE_TERMINAL: { TRACE_1("STAGE_TERMINAL",""); - //_returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget * 0.02]; + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget * 0.002]; }; }; diff --git a/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf index 6b15a3e20a..c5933e6df9 100644 --- a/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf +++ b/addons/missileguidance/functions/fnc_attackProfile_JAV_TOP.sqf @@ -55,7 +55,7 @@ switch( (_state select 0) ) do { _state set[0, STAGE_COAST]; }; } else { - _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*2]; + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget*1.5]; }; }; case STAGE_COAST: { @@ -70,6 +70,7 @@ switch( (_state select 0) ) do { case STAGE_TERMINAL: { TRACE_1("STAGE_TERMINAL",""); //_returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget * 0.02]; + _returnTargetPos = _seekerTargetPos vectorAdd [0,0,_distanceToTarget * 0.002]; }; }; From 5a7ad8217064ab3333c49f918668ac646972fb3a Mon Sep 17 00:00:00 2001 From: FreeZbe Date: Wed, 15 Apr 2015 21:26:12 +0200 Subject: [PATCH 228/246] French : update stringtable --- addons/advanced_ballistics/stringtable.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/advanced_ballistics/stringtable.xml b/addons/advanced_ballistics/stringtable.xml index b0a6e97f34..badba32960 100644 --- a/addons/advanced_ballistics/stringtable.xml +++ b/addons/advanced_ballistics/stringtable.xml @@ -7,12 +7,14 @@ Pokaż inf. o wietrze Mostra indicazioni del vento Показать информацию о ветре + Afficher les info du vent Show Protractor Pokaż kątomierz Mostra il rapportatore Показать транспортир + Afficher le rapporteur From 6f6d080dbdea800fc81015978669acb2841ddcfa Mon Sep 17 00:00:00 2001 From: commy2 Date: Wed, 15 Apr 2015 22:16:54 +0200 Subject: [PATCH 229/246] port inject sound --- addons/medical/sounds/Inject.ogg | Bin 0 -> 30817 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 addons/medical/sounds/Inject.ogg diff --git a/addons/medical/sounds/Inject.ogg b/addons/medical/sounds/Inject.ogg new file mode 100644 index 0000000000000000000000000000000000000000..8418078e0f65f738b3bc5ded07cb9b17e8711ced GIT binary patch literal 30817 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 Date: Wed, 15 Apr 2015 22:19:43 +0200 Subject: [PATCH 230/246] port alternative wirecutter sound --- addons/logistics_wirecutter/sound/wirecut.ogg | Bin 0 -> 5488 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 addons/logistics_wirecutter/sound/wirecut.ogg diff --git a/addons/logistics_wirecutter/sound/wirecut.ogg b/addons/logistics_wirecutter/sound/wirecut.ogg new file mode 100644 index 0000000000000000000000000000000000000000..902488c1df6ea5076598a31c3df9f62a78975eaa GIT binary patch literal 5488 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 cYzesuCH3||T6!)NJ>g{vy+kF<6B=3mFW Date: Wed, 15 Apr 2015 22:49:47 +0200 Subject: [PATCH 231/246] Polished the ammo classes some more --- addons/ballistics/CfgAmmo.hpp | 127 +++++++++++++++++----------------- 1 file changed, 62 insertions(+), 65 deletions(-) diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index dfcd18aa52..1a783de813 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -85,7 +85,7 @@ class CfgAmmo { ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; ACE_ballisticCoefficients[]={0.168}; ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ASM"; + ACE_standardAtmosphere="ICAO"; ACE_dragModel=7; ACE_muzzleVelocities[]={780, 880, 920}; ACE_barrelLengths[]={10, 16.3, 20}; @@ -103,13 +103,13 @@ class CfgAmmo { ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; ACE_ballisticCoefficients[]={0.168}; ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ASM"; + ACE_standardAtmosphere="ICAO"; ACE_dragModel=7; ACE_muzzleVelocities[]={785, 883, 925}; ACE_barrelLengths[]={10, 16.3, 20}; }; class B_65x39_Caseless : BulletBase { - airFriction=-0.000772; + airFriction=-0.000785; typicalSpeed=800; ACE_caliber=0.264; ACE_bulletLength=1.295; @@ -142,8 +142,8 @@ class CfgAmmo { ACE_velocityBoundaries[]={}; ACE_standardAtmosphere="ICAO"; ACE_dragModel=7; - ACE_muzzleVelocities[]={760, 790, 820, 830}; - ACE_barrelLengths[]={16, 20, 24, 26}; + ACE_muzzleVelocities[]={730, 760, 790, 820, 830}; + ACE_barrelLengths[]={10, 16, 20, 24, 26}; }; class B_762x51_Ball : BulletBase { airFriction=-0.001035; @@ -173,10 +173,10 @@ class CfgAmmo { ACE_bulletLength=1.24; ACE_bulletMass=175; ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; - ACE_ballisticCoefficients[]={0.505, 0.496, 0.485, 0.485, 0.485}; - ACE_velocityBoundaries[]={853, 549, 549, 549}; + ACE_ballisticCoefficients[]={0.243}; + ACE_velocityBoundaries[]={}; ACE_standardAtmosphere="ICAO"; - ACE_dragModel=1; + ACE_dragModel=7; ACE_muzzleVelocities[]={750, 780, 790, 794}; ACE_barrelLengths[]={16, 20, 24, 26}; }; @@ -196,57 +196,6 @@ class CfgAmmo { ACE_muzzleVelocities[]={838, 892, 910}; ACE_barrelLengths[]={13, 16, 20}; }; - class ACE_762x67_Ball_Mk248_Mod_0 : B_762x51_Ball - { - airFriction=-0.000830; - caliber=1.08; - hit=17; - typicalSpeed=900; - ACE_caliber=0.308; - ACE_bulletLength=1.353; - ACE_bulletMass=190; - ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; - ACE_ballisticCoefficients[]={0.268}; - ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ICAO"; - ACE_dragModel=7; - ACE_muzzleVelocities[]={865, 900, 924}; - ACE_barrelLengths[]={20, 24, 26}; - }; - class ACE_762x67_Ball_Mk248_Mod_1 : B_762x51_Ball - { - airFriction=-0.000815; - caliber=1.12; - hit=18; - typicalSpeed=867; - ACE_caliber=0.308; - ACE_bulletLength=1.489; - ACE_bulletMass=220; - ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; - ACE_ballisticCoefficients[]={0.310}; - ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ICAO"; - ACE_dragModel=7; - ACE_muzzleVelocities[]={847, 867, 877}; - ACE_barrelLengths[]={20, 24, 26}; - }; - class ACE_762x67_Ball_Berger_Hybrid_OTM : B_762x51_Ball - { - airFriction=-0.00076; - caliber=1.15; - hit=19; - typicalSpeed=853; - ACE_caliber=0.308; - ACE_bulletLength=1.602; - ACE_bulletMass=230; - ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; - ACE_ballisticCoefficients[]={0.368}; - ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ICAO"; - ACE_dragModel=7; - ACE_muzzleVelocities[]={800, 853, 884}; - ACE_barrelLengths[]={20, 24, 26}; - }; class ACE_762x51_Ball_Subsonic : B_762x51_Ball { airFriction=-0.000535; caliber=0.5; @@ -263,6 +212,54 @@ class CfgAmmo { ACE_muzzleVelocities[]={305, 325, 335, 340}; ACE_barrelLengths[]={16, 20, 24, 26}; }; + class ACE_762x67_Ball_Mk248_Mod_0 : B_762x51_Ball { + airFriction=-0.000830; + caliber=1.08; + hit=17; + typicalSpeed=900; + ACE_caliber=0.308; + ACE_bulletLength=1.353; + ACE_bulletMass=190; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.268}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={865, 900, 924}; + ACE_barrelLengths[]={20, 24, 26}; + }; + class ACE_762x67_Ball_Mk248_Mod_1 : B_762x51_Ball { + airFriction=-0.000815; + caliber=1.12; + hit=18; + typicalSpeed=867; + ACE_caliber=0.308; + ACE_bulletLength=1.489; + ACE_bulletMass=220; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.310}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={847, 867, 877}; + ACE_barrelLengths[]={20, 24, 26}; + }; + class ACE_762x67_Ball_Berger_Hybrid_OTM : B_762x51_Ball { + airFriction=-0.00076; + caliber=1.15; + hit=19; + typicalSpeed=853; + ACE_caliber=0.308; + ACE_bulletLength=1.602; + ACE_bulletMass=230; + ACE_ammoTempMuzzleVelocityShifts[]={-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19}; + ACE_ballisticCoefficients[]={0.368}; + ACE_velocityBoundaries[]={}; + ACE_standardAtmosphere="ICAO"; + ACE_dragModel=7; + ACE_muzzleVelocities[]={800, 853, 884}; + ACE_barrelLengths[]={20, 24, 26}; + }; class B_762x54_Ball : BulletBase { airFriction=-0.001023; typicalSpeed=820; @@ -366,7 +363,7 @@ class CfgAmmo { ACE_ammoTempMuzzleVelocityShifts[]={-2.655, -2.547, -2.285, -2.012, -1.698, -1.280, -0.764, -0.153, 0.596, 1.517, 2.619}; ACE_ballisticCoefficients[]={0.17}; ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ASM"; + ACE_standardAtmosphere="ICAO"; ACE_dragModel=1; ACE_muzzleVelocities[]={440, 460, 480}; ACE_barrelLengths[]={4, 5, 9}; @@ -381,7 +378,7 @@ class CfgAmmo { ACE_ammoTempMuzzleVelocityShifts[]={-2.655, -2.547, -2.285, -2.012, -1.698, -1.280, -0.764, -0.153, 0.596, 1.517, 2.619}; ACE_ballisticCoefficients[]={0.125}; ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ASM"; + ACE_standardAtmosphere="ICAO"; ACE_dragModel=1; ACE_muzzleVelocities[]={298, 330, 350}; ACE_barrelLengths[]={3.8, 5, 9}; @@ -411,7 +408,7 @@ class CfgAmmo { ACE_ammoTempMuzzleVelocityShifts[]={-2.655, -2.547, -2.285, -2.012, -1.698, -1.280, -0.764, -0.153, 0.596, 1.517, 2.619}; ACE_ballisticCoefficients[]={0.189}; ACE_velocityBoundaries[]={}; - ACE_standardAtmosphere="ASM"; + ACE_standardAtmosphere="ICAO"; ACE_dragModel=1; ACE_muzzleVelocities[]={360, 400, 430}; ACE_barrelLengths[]={4, 4.61, 9}; @@ -488,7 +485,7 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class B_338_Ball : BulletBase { - airFriction=-0.00061 + airFriction=-0.000606 typicalSpeed=915; ACE_caliber=0.338; ACE_bulletLength=1.558; @@ -516,7 +513,7 @@ class CfgAmmo { ACE_barrelLengths[]={20, 24, 26}; }; class ACE_338_Ball : B_338_Ball { - airFriction=-0.000526; + airFriction=-0.000535; caliber=1.55; typicalSpeed=826; ACE_caliber=0.338; @@ -531,7 +528,7 @@ class CfgAmmo { ACE_barrelLengths[]={20, 24, 26.5, 28}; }; class ACE_338_Ball_API526 : B_338_Ball { - airFriction=-0.000526; + airFriction=-0.000673; caliber=2.4; typicalSpeed=826; ACE_caliber=0.338; From 25e1fd2df3ef15953ed9ccf5c51ccad5f46c0367 Mon Sep 17 00:00:00 2001 From: ulteq Date: Wed, 15 Apr 2015 22:50:04 +0200 Subject: [PATCH 232/246] Completely overworked the ATragMX gun list --- addons/atragmx/XEH_postInit.sqf | 42 +++++++++++++++++++++++++-------- 1 file changed, 32 insertions(+), 10 deletions(-) diff --git a/addons/atragmx/XEH_postInit.sqf b/addons/atragmx/XEH_postInit.sqf index 664bc76ba4..9d769d84a3 100644 --- a/addons/atragmx/XEH_postInit.sqf +++ b/addons/atragmx/XEH_postInit.sqf @@ -6,16 +6,38 @@ if (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, Ammo Class Name, Magazine Class Name, 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, "B_127x108_Ball" , "5Rnd_127x108_Mag" , 0.630, 1, "ASM" ], - ["12.7x99mm" , 880, 100, 0.0607, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 41.92, "B_127x99_Ball" , "5Rnd_mas_127x99_Stanag" , 0.670, 1, "ASM" ], - ["12.7x54mm" , 290, 100, 0.3913, -0.0014000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 61.56, "B_127x54_Ball" , "10Rnd_127x54_Mag" , 1.050, 1, "ASM" ], - ["10.4x77mm" , 910, 100, 0.0572, -0.0004800, 3.81, 0, 0.338, 0.338, 120, 0, 0, 27.15, "B_408_Ball" , "7Rnd_408_Mag" , 0.970, 1, "ASM" ], - ["9.3×64mm" , 870, 100, 0.0632, -0.0007500, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_93x64_Ball" , "10Rnd_93x64_DMR_05_Mag" , 0.368, 1, "ASM" ], - ["8.6×70mm" , 915, 100, 0.0572, -0.0006100, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_338_Ball" , "10Rnd_338_Mag" , 0.322, 7, "ICAO"], - ["7.62x51mm" , 820, 100, 0.0639, -0.0010000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.460, "B_762x51_Ball" , "20Rnd_762x51_Mag" , 0.393, 1, "ICAO"], - ["6.5x39mm" , 800, 100, 0.0689, -0.0009000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 7.776, "B_65x39_Caseless" , "30Rnd_65x39_caseless_mag" , 0.263, 1, "ICAO"], - ["5.56x45mm" , 920, 100, 0.0584, -0.0012650, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.000, "B_556x45_Ball" , "30Rnd_556x45_Stanag" , 0.304, 1, "ASM" ], - ["5.56x45mm Mk262" , 850, 100, 0.0643, -0.0011250, 3.81, 0, 0.338, 0.338, 120, 0, 0, 4.990, "ACE_556x45_Ball_Mk262" , "ACE_30Rnd_556x45_Stanag_Mk262_mag", 0.361, 1, "ASM" ]]; + GVAR(gunList) = [["12.7x108mm" , 820, 100, 0.0659, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 48.28, "B_127x108_Ball" , "5Rnd_127x108_Mag" , 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, "B_127x99_Ball" , "5Rnd_mas_127x99_Stanag" , 1.050, 1, "ASM" ], + ["12.7x99mm" , 853, 100, 0.0623, -0.0008600, 3.81, 0, 0.338, 0.338, 120, 0, 0, 41.92, "B_127x99_Ball" , "5Rnd_mas_127x99_Stanag" , 0.670, 1, "ASM" ], + + ["12.7x54mm" , 300, 100, 0.3394, -0.0014000, 3.81, 0, 0.338, 0.338, 120, 0, 0, 48.60, "B_127x54_Ball" , "10Rnd_127x54_Mag" , 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, "B_408_Ball" , "7Rnd_408_Mag" , 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, "B_93x64_Ball" , "10Rnd_93x64_DMR_05_Mag" , 0.368, 1, "ASM" ], + + [".338LM 250gr" , 880, 100, 0.0598, -0.0006060, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.20, "B_338_Ball" , "10Rnd_338_Mag" , 0.322, 7, "ICAO"], + [".338LM 300gr" , 800, 100, 0.0677, -0.0005350, 3.81, 0, 0.338, 0.338, 120, 0, 0, 19.44, "ACE_338_Ball" , "ACE_10Rnd_338_300gr_HPBT_Mag" , 0.381, 7, "ICAO"], + [".338LM API526" , 880, 100, 0.0601, -0.0006730, 3.81, 0, 0.338, 0.338, 120, 0, 0, 16.39, "ACE_338_Ball_API526" , "ACE_10Rnd_338_API526_Mag" , 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, "ACE_762x67_Ball_Mk248_Mod_0" , "ACE_20Rnd_762x67_Mk248_Mod_0_Mag" , 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, "ACE_762x67_Ball_Mk248_Mod_1" , "ACE_20Rnd_762x67_Mk248_Mod_1_Mag" , 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, "ACE_762x67_Ball_Berger_Hybrid_OTM", "ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag", 0.368, 7, "ICAO"], + + ["7.62x54mmR" , 800, 100, 0.0692, -0.0010230, 3.81, 0, 0.338, 0.338, 120, 0, 0, 9.849, "B_762x54_Ball" , "10Rnd_762x54_Mag" , 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, "B_762x51_Ball" , "20Rnd_762x51_Mag" , 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, "ACE_762x51_Ball_M118LR" , "ACE_20Rnd_762x51_M118LR_Mag" , 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, "ACE_762x51_Ball_Mk319_Mod_0" , "ACE_20Rnd_762x51_Mk319_Mod_0_Mag" , 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, "ACE_762x51_Ball_Subsonic" , "ACE_20Rnd_762x51_Mag_SD" , 0.235, 7, "ICAO"], + + ["6.5x39mm" , 800, 100, 0.0683, -0.0007850, 3.81, 0, 0.338, 0.338, 120, 0, 0, 7.970, "B_65x39_Caseless" , "30Rnd_65x39_caseless_mag" , 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, "ACE_65x47_Ball_Scenar" , "ACE_30Rnd_65x47_Scenar_mag" , 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, "B_556x45_Ball" , "30Rnd_556x45_Stanag" , 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, "ACE_556x45_Ball_Mk262" , "ACE_30Rnd_556x45_Stanag_Mk262_mag" , 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, "ACE_556x45_Ball_Mk318" , "ACE_30Rnd_556x45_Stanag_Mk318_mag" , 0.307, 1, "ASM" ]]; profileNamespace setVariable ["ACE_ATragMX_gunList", GVAR(gunList)]; }; From dd09cc4d0691d2f9c53492c1d6c717a151ce3866 Mon Sep 17 00:00:00 2001 From: Tachii Date: Thu, 16 Apr 2015 00:57:15 +0300 Subject: [PATCH 233/246] Update fnc_createAction.sqf typo --- addons/interact_menu/functions/fnc_createAction.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/interact_menu/functions/fnc_createAction.sqf b/addons/interact_menu/functions/fnc_createAction.sqf index 172bbea3a4..0b0030a1b4 100644 --- a/addons/interact_menu/functions/fnc_createAction.sqf +++ b/addons/interact_menu/functions/fnc_createAction.sqf @@ -19,7 +19,7 @@ * Action * * Example: - * [VulcanPinch","Vulcan Pinch","",{_target setDamage 1;},{true},{},[parameters], [0,0,0], 100] call ace_interact_menu_fnc_createAction; + * ["VulcanPinch","Vulcan Pinch","",{_target setDamage 1;},{true},{},[parameters], [0,0,0], 100] call ace_interact_menu_fnc_createAction; * * Public: No */ From 361efe41474cbe60a67389286a0c45acd6e06a4c Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Wed, 15 Apr 2015 17:03:59 -0500 Subject: [PATCH 234/246] Missing NoVoice words Protocol bin\config.bin/ACE_RadioProtocolNoRadio/: Missing word RallyUp / UnderFireE --- addons/common/CfgVoice.hpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/common/CfgVoice.hpp b/addons/common/CfgVoice.hpp index 9c53338e6e..1fb0f5d2b6 100644 --- a/addons/common/CfgVoice.hpp +++ b/addons/common/CfgVoice.hpp @@ -199,6 +199,8 @@ class ACE_RadioProtocolNoRadio: RadioProtocolBase { Ready[] = {}; Waiting[] = {}; StandingBy[] = {}; + RallyUp[] = {}; + UnderFireE[] = {}; /*IAmReady[] = {}; ReadyForOrders[] = {}; AwaitingOrders[] = {};*/ From c0c5af295799b8788c8cc5fee1b7bebf49da8993 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Wed, 15 Apr 2015 17:07:06 -0500 Subject: [PATCH 235/246] ballistics - fix ubc --- addons/ballistics/CfgAmmo.hpp | 4 ++-- addons/ballistics/CfgMagazines.hpp | 2 +- addons/ballistics/CfgWeapons.hpp | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index 1a783de813..d82f336952 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -260,7 +260,7 @@ class CfgAmmo { ACE_muzzleVelocities[]={800, 853, 884}; ACE_barrelLengths[]={20, 24, 26}; }; - class B_762x54_Ball : BulletBase { + class B_762x54_Ball: B_762x51_Ball { airFriction=-0.001023; typicalSpeed=820; ACE_caliber=0.312; @@ -485,7 +485,7 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class B_338_Ball : BulletBase { - airFriction=-0.000606 + airFriction=-0.000606; typicalSpeed=915; ACE_caliber=0.338; ACE_bulletLength=1.558; diff --git a/addons/ballistics/CfgMagazines.hpp b/addons/ballistics/CfgMagazines.hpp index ef36fcca78..9ce3ad3eb0 100644 --- a/addons/ballistics/CfgMagazines.hpp +++ b/addons/ballistics/CfgMagazines.hpp @@ -244,7 +244,7 @@ class CfgMagazines { initSpeed = 250; }; - class 30Rnd_45ACP_Mag_SMG_01_Tracer_Green: CA_Magazine { + class 30Rnd_45ACP_Mag_SMG_01_Tracer_Green: 30Rnd_45ACP_Mag_SMG_01 { initSpeed = 250; }; diff --git a/addons/ballistics/CfgWeapons.hpp b/addons/ballistics/CfgWeapons.hpp index dad5356755..26b07303c0 100644 --- a/addons/ballistics/CfgWeapons.hpp +++ b/addons/ballistics/CfgWeapons.hpp @@ -422,7 +422,7 @@ class CfgWeapons { ACE_barrelTwist=7; ACE_barrelLength=18.1; }; - class arifle_TRG21_GL_F: Tavor_base_F { + class arifle_TRG21_GL_F: arifle_TRG21_F { magazines[] = { "30Rnd_556x45_Stanag", "30Rnd_556x45_Stanag_Tracer_Red", From 0076be6a86e3890e0315c31a7d0a849d34dd1502 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Wed, 15 Apr 2015 17:08:35 -0500 Subject: [PATCH 236/246] Fix stringtables --- addons/captives/stringtable.xml | 2 +- addons/medical/stringtable.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/captives/stringtable.xml b/addons/captives/stringtable.xml index 54e5b26554..fec8e703b1 100644 --- a/addons/captives/stringtable.xml +++ b/addons/captives/stringtable.xml @@ -130,7 +130,7 @@ Motozás Обыскать человека Revistar - Perquisisci la persona/Italian> + Perquisisci la persona Surrender diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index d6b277463e..c9043b5b09 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -1416,7 +1416,7 @@ Déposer Elengedés Largar - + Rrilascia Load Patient Into From 0f4b7d0977f5d738f1e4fcc35aa1acadfbecdb70 Mon Sep 17 00:00:00 2001 From: Glowbal Date: Thu, 16 Apr 2015 00:14:05 +0200 Subject: [PATCH 237/246] fixes #347 Please?? --- addons/medical/functions/fnc_treatmentTourniquet.sqf | 2 +- addons/medical/functions/fnc_treatmentTourniquetLocal.sqf | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/addons/medical/functions/fnc_treatmentTourniquet.sqf b/addons/medical/functions/fnc_treatmentTourniquet.sqf index cff9458426..da50c5c1bf 100644 --- a/addons/medical/functions/fnc_treatmentTourniquet.sqf +++ b/addons/medical/functions/fnc_treatmentTourniquet.sqf @@ -40,7 +40,7 @@ if ((_tourniquets select _part) > 0) exitwith { }; _removeItem = _items select 0; -[[_target, _removeItem], QUOTE(DFUNC(treatmentTourniquetLocal)), _target] call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */ +[[_target, _removeItem, _selectionName], QUOTE(DFUNC(treatmentTourniquetLocal)), _target] call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */ [_target, _removeItem] call FUNC(addToTriageCard); [_target, "activity", "STR_ACE_MEDICAL_ACTIVITY_appliedTourniquet", [[_caller] call EFUNC(common,getName)]] call FUNC(addToLog); diff --git a/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf b/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf index 064761aea0..3b1a351bab 100644 --- a/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf +++ b/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf @@ -16,12 +16,10 @@ private ["_target", "_tourniquetItem", "_part", "_tourniquets", "_applyingTo"]; _target = _this select 0; _tourniquetItem = _this select 1; +_selectionName = _this select 2; -//[_target,"treatment",format["%1 applied a tourniquet on %2",[_caller] call EFUNC(common,getName),_selectionName]] call FUNC(addActivityToLog); -//[_target,_removeItem] call FUNC(addToTriageList); [_target] call FUNC(addToInjuredCollection); - _part = [_selectionName] call FUNC(selectionNameToNumber); // Place a tourniquet on the bodypart From 59ae4623ff49d438b57a0294c68bc60508938983 Mon Sep 17 00:00:00 2001 From: Glowbal Date: Thu, 16 Apr 2015 00:17:17 +0200 Subject: [PATCH 238/246] Derp --- addons/medical/functions/fnc_treatmentTourniquetLocal.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf b/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf index 3b1a351bab..289f852a06 100644 --- a/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf +++ b/addons/medical/functions/fnc_treatmentTourniquetLocal.sqf @@ -13,7 +13,7 @@ */ #include "script_component.hpp" -private ["_target", "_tourniquetItem", "_part", "_tourniquets", "_applyingTo"]; +private ["_target", "_tourniquetItem", "_part", "_tourniquets", "_applyingTo", "_selectionName"]; _target = _this select 0; _tourniquetItem = _this select 1; _selectionName = _this select 2; From 4169351b1ab2e1c8f2889e49054a568bdad37e25 Mon Sep 17 00:00:00 2001 From: commy2 Date: Thu, 16 Apr 2015 02:00:37 +0200 Subject: [PATCH 239/246] fix addActionEH didn't work after respawn --- addons/common/functions/fnc_addActionEventHandler.sqf | 8 ++++++-- addons/common/functions/fnc_removeActionEventHandler.sqf | 6 ++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/addons/common/functions/fnc_addActionEventHandler.sqf b/addons/common/functions/fnc_addActionEventHandler.sqf index a75b1537d1..a0e9d24f2c 100644 --- a/addons/common/functions/fnc_addActionEventHandler.sqf +++ b/addons/common/functions/fnc_addActionEventHandler.sqf @@ -31,7 +31,11 @@ if (typeName _statement == "STRING") then { _name = format ["ACE_Action_%1", _action]; -_actionsVar = _unit getVariable [_name, [-1, [-1, [], []]]]; +_actionsVar = _unit getVariable [_name, [-1, [-1, [], []], objNull]]; + +if (_unit != _actionsVar select 2) then { // check if the unit is still valid, fixes respawn issues + _actionsVar = [-1, [-1, [], []], objNull]; +}; _actionID = _actionsVar select 0; _actions = _actionsVar select 1; @@ -65,6 +69,6 @@ if (_actionID == -1) then { _actionID = _unit addAction _addAction; }; -_unit setVariable [_name, [_actionID, [_id, _actionIDs, _actions]], false]; +_unit setVariable [_name, [_actionID, [_id, _actionIDs, _actions], _unit], false]; _id diff --git a/addons/common/functions/fnc_removeActionEventHandler.sqf b/addons/common/functions/fnc_removeActionEventHandler.sqf index 7d92b3de75..2bcc970ab0 100644 --- a/addons/common/functions/fnc_removeActionEventHandler.sqf +++ b/addons/common/functions/fnc_removeActionEventHandler.sqf @@ -23,7 +23,7 @@ if (_id == -1) exitWith {}; _name = format ["ACE_Action_%1", _action]; -_actionsVar = _unit getVariable [_name, [-1, [-1, [], []]]]; +_actionsVar = _unit getVariable [_name, [-1, [-1, [], []], objNull]]; _actionID = _actionsVar select 0; _actions = _actionsVar select 1; @@ -32,6 +32,8 @@ _currentID = _actions select 0; _actionIDs = _actions select 1; _actions = _actions select 2; +if (_unit != _actionsVar select 2) exitWith {}; + _id = _actionIDs find _id; if (_id == -1) exitWith {}; @@ -47,4 +49,4 @@ if (count _actions == 0) then { _actionID = -1; }; -_unit setVariable [_name, [_actionID, [_currentID, _actionIDs, _actions]], false]; +_unit setVariable [_name, [_actionID, [_currentID, _actionIDs, _actions], _unit], false]; From b2625c43e7f1aaa172627f16e587bd215eb10a97 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Wed, 15 Apr 2015 20:30:05 -0500 Subject: [PATCH 240/246] #644 - Extra Space in macro --- .../laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf b/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf index f8ff2ca0f5..aa46c383bd 100644 --- a/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf +++ b/addons/laser_selfdesignate/functions/fnc_laserHudDesignateOff.sqf @@ -13,7 +13,7 @@ #include "script_component.hpp" if( (count _this) > 2) then { - EXPLODE_3_PVT(_this,_shooter,_laserUuid, _localLaserTarget); + EXPLODE_3_PVT(_this,_shooter,_laserUuid,_localLaserTarget); [_laserUuid] call EFUNC(laser,laserOff); // @TODO: Nou gets to field all tickets about missing lasers. From 9c9136ae91bf511d3290fe2022a06f58b40f148e Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Thu, 16 Apr 2015 02:54:50 -0500 Subject: [PATCH 241/246] Stringtable cleanup --- addons/explosives/stringtable.xml | 1 - addons/javelin/stringtable.xml | 1 - 2 files changed, 2 deletions(-) diff --git a/addons/explosives/stringtable.xml b/addons/explosives/stringtable.xml index c8d46aad30..d0b61d0814 100644 --- a/addons/explosives/stringtable.xml +++ b/addons/explosives/stringtable.xml @@ -44,7 +44,6 @@ Kod ładunku: %1 Code explosif: %1 Kód výbušniny: %1 - Codice dell'esplosivo : %1 Robbanóanyag kódja: %1 Código do explosivo: %1 Код подрыва: %1 diff --git a/addons/javelin/stringtable.xml b/addons/javelin/stringtable.xml index 819bb0f46d..0290abafed 100644 --- a/addons/javelin/stringtable.xml +++ b/addons/javelin/stringtable.xml @@ -1,4 +1,3 @@ -<<<<<<< HEAD From aa724129d1720c45eb8e3249c0b865001ea2a407 Mon Sep 17 00:00:00 2001 From: ulteq Date: Thu, 16 Apr 2015 10:51:33 +0200 Subject: [PATCH 242/246] Tuned down the default timeToLive value. --- addons/ballistics/CfgAmmo.hpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/addons/ballistics/CfgAmmo.hpp b/addons/ballistics/CfgAmmo.hpp index d82f336952..76a3970063 100644 --- a/addons/ballistics/CfgAmmo.hpp +++ b/addons/ballistics/CfgAmmo.hpp @@ -3,21 +3,20 @@ class CfgAmmo { class BulletCore; class BulletBase: BulletCore { - // Default: 6 | More is good, but too much is bad (especially with wind deflection / advanced ballistics) - timeToLive = 10; + timeToLive=6; }; class B_20mm : BulletBase { - timeToLive = 30; + timeToLive=30; }; class B_25mm : BulletBase { - timeToLive = 30; + timeToLive=30; }; class B_35mm_AA : BulletBase { - timeToLive = 30; + timeToLive=30; }; class B_30mm_AP : BulletBase { - timeToLive = 30; + timeToLive=30; }; class B_556x45_Ball : BulletBase { @@ -458,6 +457,7 @@ class CfgAmmo { ACE_barrelLengths[]={20, 24.41, 26}; }; class B_408_Ball : BulletBase { + timeToLive=10; airFriction=-0.000395; typicalSpeed=910; ACE_caliber=0.408; @@ -473,6 +473,7 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class ACE_106x83mm_Ball : B_408_Ball { + timeToLive=10; ACE_caliber=0.416; ACE_bulletLength=2.089; ACE_bulletMass=398; @@ -485,6 +486,7 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class B_338_Ball : BulletBase { + timeToLive=10; airFriction=-0.000606; typicalSpeed=915; ACE_caliber=0.338; @@ -513,6 +515,7 @@ class CfgAmmo { ACE_barrelLengths[]={20, 24, 26}; }; class ACE_338_Ball : B_338_Ball { + timeToLive=10; airFriction=-0.000535; caliber=1.55; typicalSpeed=826; @@ -528,6 +531,7 @@ class CfgAmmo { ACE_barrelLengths[]={20, 24, 26.5, 28}; }; class ACE_338_Ball_API526 : B_338_Ball { + timeToLive=10; airFriction=-0.000673; caliber=2.4; typicalSpeed=826; @@ -557,6 +561,7 @@ class CfgAmmo { ACE_barrelLengths[]={17.2}; }; class B_127x99_Ball : BulletBase { + timeToLive=10; airFriction=-0.0006; typicalSpeed=853; ACE_caliber=0.510; @@ -571,6 +576,7 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class ACE_127x99_Ball_AMAX : B_127x99_Ball { + timeToLive=10; airFriction=-0.000374; typicalSpeed=860; ACE_caliber=0.510; @@ -585,6 +591,7 @@ class CfgAmmo { ACE_barrelLengths[]={29}; }; class B_127x108_Ball : BulletBase { + timeToLive=10; airFriction=-0.00064; typicalSpeed=820; ACE_caliber=0.511; From 15240ac87c62468c9466bd09c5a33f83396e3528 Mon Sep 17 00:00:00 2001 From: ulteq Date: Thu, 16 Apr 2015 13:42:28 +0200 Subject: [PATCH 243/246] Minor code change in the extension detection logic --- addons/advanced_ballistics/XEH_postInit.sqf | 5 +++-- addons/advanced_ballistics/script_component.hpp | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/addons/advanced_ballistics/XEH_postInit.sqf b/addons/advanced_ballistics/XEH_postInit.sqf index 783a5be569..41615696ac 100644 --- a/addons/advanced_ballistics/XEH_postInit.sqf +++ b/addons/advanced_ballistics/XEH_postInit.sqf @@ -33,9 +33,10 @@ GVAR(AtmosphericDensitySimulationEnabled) = true; GVAR(currentGrid) = 0; GVAR(INIT_MESSAGE_ENABLED) = false; -GVAR(extensionAvailable) = "ace_advanced_ballistics" callExtension "version" == "1.0"; +GVAR(extensionVersion) = ("ace_advanced_ballistics" callExtension "version"); +GVAR(extensionAvailable) = (GVAR(extensionVersion) == EXTENSION_REQUIRED_VERSION); if (!GVAR(extensionAvailable)) exitWith { - if ("ace_advanced_ballistics" callExtension "version" == "") then { + if (GVAR(extensionVersion) == "") then { diag_log text "[ACE] ERROR: ace_advanced_ballistics.dll is missing"; } else { diag_log text "[ACE] ERROR: ace_advanced_ballistics.dll is incompatible"; diff --git a/addons/advanced_ballistics/script_component.hpp b/addons/advanced_ballistics/script_component.hpp index 273afa2f49..70c2f47990 100644 --- a/addons/advanced_ballistics/script_component.hpp +++ b/addons/advanced_ballistics/script_component.hpp @@ -24,3 +24,5 @@ #define STD_AIR_DENSITY_ICAO 1.22498 #define STD_AIR_DENSITY_ASM 1.20885 #define GET_TEMPERATURE_AT_HEIGHT(h) (EGVAR(weather,currentTemperature) - 0.0065 * (h)) + +#define EXTENSION_REQUIRED_VERSION "1.0" From ca3293aa1a33e00aed3f83c4db5dca0295794ade Mon Sep 17 00:00:00 2001 From: ulteq Date: Thu, 16 Apr 2015 13:43:41 +0200 Subject: [PATCH 244/246] Added ACE_Box_Ammo (WIP): *TODO: Define a model --- addons/ballistics/CfgVehicles.hpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/addons/ballistics/CfgVehicles.hpp b/addons/ballistics/CfgVehicles.hpp index f992f8cc8b..4ea9fc87a2 100644 --- a/addons/ballistics/CfgVehicles.hpp +++ b/addons/ballistics/CfgVehicles.hpp @@ -160,7 +160,12 @@ class CfgVehicles { }; }; - class ACE_Box_Misc: Box_NATO_Support_F { + class ACE_Box_Ammo: NATO_Box_Base { + scope = 2; + accuracy = 1000; + displayName = "[ACE] Ammo Supply Crate"; + // TODO: model = "..."; + author = "$STR_ACE_Common_ACETeam"; class TransportMagazines { MACRO_ADDMAGAZINE(ACE_20Rnd_762x51_Mag_SD,4); MACRO_ADDMAGAZINE(ACE_10Rnd_762x51_M118LR_Mag,4); From d6cadb593acff5c104c014eb812b1f348411fbf0 Mon Sep 17 00:00:00 2001 From: ulteq Date: Thu, 16 Apr 2015 13:44:54 +0200 Subject: [PATCH 245/246] Enabled the ATragMX to use the advanced ballistics extension --- addons/atragmx/functions/fnc_calculate_solution.sqf | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/addons/atragmx/functions/fnc_calculate_solution.sqf b/addons/atragmx/functions/fnc_calculate_solution.sqf index 90263a608c..4e7f5981c1 100644 --- a/addons/atragmx/functions/fnc_calculate_solution.sqf +++ b/addons/atragmx/functions/fnc_calculate_solution.sqf @@ -109,8 +109,12 @@ 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 = -1 * ([_dragModel, _bc, _trueSpeed] call EFUNC(advanced_ballistics,calculateRetardation)); - _bulletAccel = (vectorNormalized _trueVelocity) vectorMultiply (_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 { + ([_dragModel, _bc, _trueSpeed] call EFUNC(advanced_ballistics,calculateRetardation)) + }; + _bulletAccel = (vectorNormalized _trueVelocity) vectorMultiply (-1 * _drag); }; } else { _bulletAccel = _trueVelocity vectorMultiply (_trueSpeed * _airFriction); From 55d9f7a3da2a1fde95146d321e9bdc0a1f70a90c Mon Sep 17 00:00:00 2001 From: ulteq Date: Thu, 16 Apr 2015 13:46:32 +0200 Subject: [PATCH 246/246] The previous GUI state is now restored when you open the ATragMX --- .../atragmx/functions/fnc_create_dialog.sqf | 20 +++++++++------- addons/atragmx/functions/fnc_init.sqf | 10 ++++++++ .../functions/fnc_show_add_new_gun.sqf | 2 ++ .../atragmx/functions/fnc_show_gun_list.sqf | 10 +++++++- .../atragmx/functions/fnc_show_main_page.sqf | 2 ++ .../atragmx/functions/fnc_show_range_card.sqf | 2 ++ .../functions/fnc_show_range_card_setup.sqf | 10 ++++++++ .../fnc_show_target_range_assist.sqf | 17 +++++++++++++ .../fnc_show_target_speed_assist.sqf | 24 +++++++++++++++++++ .../fnc_show_target_speed_assist_timer.sqf | 2 ++ .../fnc_target_speed_assist_timer.sqf | 2 -- .../atragmx/functions/fnc_toggle_gun_list.sqf | 6 ----- .../functions/fnc_toggle_range_card.sqf | 2 -- .../functions/fnc_toggle_range_card_setup.sqf | 10 +------- .../fnc_toggle_target_range_assist.sqf | 15 ------------ .../fnc_toggle_target_speed_assist.sqf | 22 ----------------- .../functions/fnc_update_target_selection.sqf | 2 -- .../functions/fnc_update_unit_selection.sqf | 2 -- addons/atragmx/script_component.hpp | 4 +++- 19 files changed, 94 insertions(+), 70 deletions(-) diff --git a/addons/atragmx/functions/fnc_create_dialog.sqf b/addons/atragmx/functions/fnc_create_dialog.sqf index 01cdcba184..8dc0f3e34f 100644 --- a/addons/atragmx/functions/fnc_create_dialog.sqf +++ b/addons/atragmx/functions/fnc_create_dialog.sqf @@ -23,15 +23,19 @@ createDialog 'ATragMX_Display'; call FUNC(update_target_selection); -true call FUNC(show_main_page); +GVAR(showMainPage) call FUNC(show_main_page); -false call FUNC(show_add_new_gun); -false call FUNC(show_gun_list); -false call FUNC(show_range_card); -false call FUNC(show_range_card_setup); -false call FUNC(show_target_range_assist); -false call FUNC(show_target_speed_assist); -false call FUNC(show_target_speed_assist_timer); +GVAR(showAddNewGun) call FUNC(show_add_new_gun); +GVAR(showGunList) call FUNC(show_gun_list); +GVAR(showRangeCard) call FUNC(show_range_card); +if (GVAR(showRangeCard)) then { + ctrlSetFocus (_dsp displayCtrl 5001); + [] call FUNC(update_range_card); +}; +GVAR(showRangeCardSetup) call FUNC(show_range_card_setup); +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); { lbAdd [6000, _x select 0]; diff --git a/addons/atragmx/functions/fnc_init.sqf b/addons/atragmx/functions/fnc_init.sqf index 3f46a71fe2..267c04ea6f 100644 --- a/addons/atragmx/functions/fnc_init.sqf +++ b/addons/atragmx/functions/fnc_init.sqf @@ -56,3 +56,13 @@ GVAR(windageOutput) = [0, 0, 0, 0]; GVAR(leadOutput) = [0, 0, 0, 0]; GVAR(tofOutput) = [0, 0, 0, 0]; GVAR(velocityOutput) = [0, 0, 0, 0]; + +GVAR(showMainPage) = true; +GVAR(showAddNewGun) = false; +GVAR(showGunList) = false; +GVAR(showRangeCard) = false; +GVAR(showRangeCardSetup) = false; +GVAR(showTargetRangeAssist) = false; +GVAR(showTargetSpeedAssist) = false; +GVAR(showTargetSpeedAssistTimer) = false; + diff --git a/addons/atragmx/functions/fnc_show_add_new_gun.sqf b/addons/atragmx/functions/fnc_show_add_new_gun.sqf index 12815194dd..b1fd1deb44 100644 --- a/addons/atragmx/functions/fnc_show_add_new_gun.sqf +++ b/addons/atragmx/functions/fnc_show_add_new_gun.sqf @@ -15,4 +15,6 @@ */ #include "script_component.hpp" +GVAR(showAddNewGun) = _this; + {ctrlShow [_x, _this]} forEach [11000, 11001, 11002, 11003]; \ No newline at end of file diff --git a/addons/atragmx/functions/fnc_show_gun_list.sqf b/addons/atragmx/functions/fnc_show_gun_list.sqf index c34784e27a..8834f755f0 100644 --- a/addons/atragmx/functions/fnc_show_gun_list.sqf +++ b/addons/atragmx/functions/fnc_show_gun_list.sqf @@ -15,4 +15,12 @@ */ #include "script_component.hpp" -{ctrlShow [_x, _this]} forEach [6000, 6001, 6002, 6003, 6004, 6005, 6006, 6007]; \ No newline at end of file +GVAR(showGunList) = _this; + +{ctrlShow [_x, _this]} forEach [6000, 6001, 6002, 6003, 6004, 6005, 6006, 6007]; + +if (_this) then { + ctrlSetFocus (_dsp displayCtrl 6002); + + lbSetCurSel [6000, (GVAR(currentGun) select GVAR(currentTarget))]; +}; diff --git a/addons/atragmx/functions/fnc_show_main_page.sqf b/addons/atragmx/functions/fnc_show_main_page.sqf index 5eaf5eb560..941c7559c8 100644 --- a/addons/atragmx/functions/fnc_show_main_page.sqf +++ b/addons/atragmx/functions/fnc_show_main_page.sqf @@ -15,5 +15,7 @@ */ #include "script_component.hpp" +GVAR(showMainPage) = _this; + {ctrlShow [_x, _this]} forEach [10, 100, 11, 110, 12, 120, 13, 130, 14, 140, 20, 200, 21, 210, 22, 220, 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]; diff --git a/addons/atragmx/functions/fnc_show_range_card.sqf b/addons/atragmx/functions/fnc_show_range_card.sqf index 655630f6c5..5728d18546 100644 --- a/addons/atragmx/functions/fnc_show_range_card.sqf +++ b/addons/atragmx/functions/fnc_show_range_card.sqf @@ -15,4 +15,6 @@ */ #include "script_component.hpp" +GVAR(showRangeCard) = _this; + {ctrlShow [_x, _this]} forEach [5000, 5001, 5002, 5003, 5004, 5005, 5006, 5007]; diff --git a/addons/atragmx/functions/fnc_show_range_card_setup.sqf b/addons/atragmx/functions/fnc_show_range_card_setup.sqf index 3ed8cb5184..e9afe41cc5 100644 --- a/addons/atragmx/functions/fnc_show_range_card_setup.sqf +++ b/addons/atragmx/functions/fnc_show_range_card_setup.sqf @@ -15,4 +15,14 @@ */ #include "script_component.hpp" +GVAR(showRangeCardSetup) = _this; + {ctrlShow [_x, _this]} forEach [10000, 10001, 10002, 10003, 10004, 10005, 10006, 10007, 10008, 10009]; + +if (_this) then { + ctrlSetFocus (_dsp displayCtrl 10006); + + ctrlSetText [10003, Str(Round(GVAR(rangeCardStartRange)))]; + ctrlSetText [10004, Str(Round(GVAR(rangeCardEndRange)))]; + ctrlSetText [10005, Str(Round(GVAR(rangeCardIncrement)))]; +}; diff --git a/addons/atragmx/functions/fnc_show_target_range_assist.sqf b/addons/atragmx/functions/fnc_show_target_range_assist.sqf index 964e5f93d0..e3ca0a2626 100644 --- a/addons/atragmx/functions/fnc_show_target_range_assist.sqf +++ b/addons/atragmx/functions/fnc_show_target_range_assist.sqf @@ -15,4 +15,21 @@ */ #include "script_component.hpp" +GVAR(showTargetRangeAssist) = _this; + {ctrlShow [_x, _this]} forEach [7000, 7001, 7002, 7003, 7004, 7005, 7006, 7007, 7008, 7009, 7010, 7011, 7012, 7013, 7014, 7015, 7016, 7017, 7018, 7019, 7020]; + +if (_this) then { + ctrlSetFocus (_dsp displayCtrl 7018); + + ctrlSetText [7012, Str(parseNumber(ctrlText 320))]; + ctrlSetText [7013, Str(parseNumber(ctrlText 340))]; + + if (GVAR(currentUnit) != 2) then + { + ctrlSetText [7016, "Yards"]; + } else + { + ctrlSetText [7016, "Meters"]; + }; +}; \ No newline at end of file diff --git a/addons/atragmx/functions/fnc_show_target_speed_assist.sqf b/addons/atragmx/functions/fnc_show_target_speed_assist.sqf index ce1e8588b9..90425e26db 100644 --- a/addons/atragmx/functions/fnc_show_target_speed_assist.sqf +++ b/addons/atragmx/functions/fnc_show_target_speed_assist.sqf @@ -15,4 +15,28 @@ */ #include "script_component.hpp" +GVAR(showTargetSpeedAssist) = _this; + {ctrlShow [_x, _this]} forEach [8000, 8001, 8002, 8003, 8004, 8005, 8006, 8007, 8008, 8009, 8010, 8011, 8012, 8013, 8014, 8015]; + +if (_this) then { + ctrlSetFocus (_dsp displayCtrl 8012); + + ctrlSetText [8004, Str(Round((GVAR(targetRange) select GVAR(currentTarget))))]; + + if (GVAR(currentUnit) != 2) then + { + ctrlSetText [8008, "Yards"]; + } else + { + ctrlSetText [8008, "Meters"]; + }; + + if (GVAR(currentUnit) != 1) then + { + ctrlSetText [8011, "m/s"]; + } else + { + ctrlSetText [8011, "mph"]; + }; +}; diff --git a/addons/atragmx/functions/fnc_show_target_speed_assist_timer.sqf b/addons/atragmx/functions/fnc_show_target_speed_assist_timer.sqf index 5b809b7ca9..8f2ff0c83e 100644 --- a/addons/atragmx/functions/fnc_show_target_speed_assist_timer.sqf +++ b/addons/atragmx/functions/fnc_show_target_speed_assist_timer.sqf @@ -15,4 +15,6 @@ */ #include "script_component.hpp" +GVAR(showTargetSpeedAssistTimer) = _this; + {ctrlShow [_x, _this]} forEach [9000, 9001, 9002]; diff --git a/addons/atragmx/functions/fnc_target_speed_assist_timer.sqf b/addons/atragmx/functions/fnc_target_speed_assist_timer.sqf index 90acd1a84f..d8414ba692 100644 --- a/addons/atragmx/functions/fnc_target_speed_assist_timer.sqf +++ b/addons/atragmx/functions/fnc_target_speed_assist_timer.sqf @@ -15,8 +15,6 @@ */ #include "script_component.hpp" -#define _dsp (uiNamespace getVariable "ATragMX_Display") - if !(ctrlVisible 9000) then { false call FUNC(show_target_speed_assist); diff --git a/addons/atragmx/functions/fnc_toggle_gun_list.sqf b/addons/atragmx/functions/fnc_toggle_gun_list.sqf index 4e24e4cb77..cd4acb1f76 100644 --- a/addons/atragmx/functions/fnc_toggle_gun_list.sqf +++ b/addons/atragmx/functions/fnc_toggle_gun_list.sqf @@ -15,8 +15,6 @@ */ #include "script_component.hpp" -#define _dsp (uiNamespace getVariable "ATragMX_Display") - if (ctrlVisible 6000) then { false call FUNC(show_gun_list); @@ -29,8 +27,4 @@ if (ctrlVisible 6000) then { false call FUNC(show_main_page); true call FUNC(show_gun_list); - - ctrlSetFocus (_dsp displayCtrl 6002); - - lbSetCurSel [6000, (GVAR(currentGun) select GVAR(currentTarget))]; }; diff --git a/addons/atragmx/functions/fnc_toggle_range_card.sqf b/addons/atragmx/functions/fnc_toggle_range_card.sqf index 6a5c386de7..6a75ea5445 100644 --- a/addons/atragmx/functions/fnc_toggle_range_card.sqf +++ b/addons/atragmx/functions/fnc_toggle_range_card.sqf @@ -15,8 +15,6 @@ */ #include "script_component.hpp" -#define _dsp (uiNamespace getVariable "ATragMX_Display") - if (ctrlVisible 5006) then { false call FUNC(show_range_card); diff --git a/addons/atragmx/functions/fnc_toggle_range_card_setup.sqf b/addons/atragmx/functions/fnc_toggle_range_card_setup.sqf index 28534c9dd9..71da18349b 100644 --- a/addons/atragmx/functions/fnc_toggle_range_card_setup.sqf +++ b/addons/atragmx/functions/fnc_toggle_range_card_setup.sqf @@ -3,7 +3,7 @@ * Toggles the range card setup screen on/off * * Arguments: - * Nothing + * Apply new range card settings * * Return Value: * Nothing @@ -15,8 +15,6 @@ */ #include "script_component.hpp" -#define _dsp (uiNamespace getVariable "ATragMX_Display") - if (ctrlVisible 10000) then { false call FUNC(show_range_card_setup); @@ -35,10 +33,4 @@ if (ctrlVisible 10000) then { false call FUNC(show_range_card); true call FUNC(show_range_card_setup); - - ctrlSetFocus (_dsp displayCtrl 10006); - - ctrlSetText [10003, Str(Round(GVAR(rangeCardStartRange)))]; - ctrlSetText [10004, Str(Round(GVAR(rangeCardEndRange)))]; - ctrlSetText [10005, Str(Round(GVAR(rangeCardIncrement)))]; }; diff --git a/addons/atragmx/functions/fnc_toggle_target_range_assist.sqf b/addons/atragmx/functions/fnc_toggle_target_range_assist.sqf index 352a6d0e1f..04e9307ded 100644 --- a/addons/atragmx/functions/fnc_toggle_target_range_assist.sqf +++ b/addons/atragmx/functions/fnc_toggle_target_range_assist.sqf @@ -15,8 +15,6 @@ */ #include "script_component.hpp" -#define _dsp (uiNamespace getVariable "ATragMX_Display") - if (ctrlVisible 7000) then { false call FUNC(show_target_range_assist); @@ -31,17 +29,4 @@ if (ctrlVisible 7000) then { false call FUNC(show_main_page); true call FUNC(show_target_range_assist); - - ctrlSetFocus (_dsp displayCtrl 7018); - - ctrlSetText [7012, Str(parseNumber(ctrlText 320))]; - ctrlSetText [7013, Str(parseNumber(ctrlText 340))]; - - if (GVAR(currentUnit) != 2) then - { - ctrlSetText [7016, "Yards"]; - } else - { - ctrlSetText [7016, "Meters"]; - }; }; diff --git a/addons/atragmx/functions/fnc_toggle_target_speed_assist.sqf b/addons/atragmx/functions/fnc_toggle_target_speed_assist.sqf index 0bda7ad019..66ffaa5d07 100644 --- a/addons/atragmx/functions/fnc_toggle_target_speed_assist.sqf +++ b/addons/atragmx/functions/fnc_toggle_target_speed_assist.sqf @@ -15,8 +15,6 @@ */ #include "script_component.hpp" -#define _dsp (uiNamespace getVariable "ATragMX_Display") - if (ctrlVisible 8000) then { false call FUNC(show_target_speed_assist); @@ -31,24 +29,4 @@ if (ctrlVisible 8000) then { false call FUNC(show_main_page); true call FUNC(show_target_speed_assist); - - ctrlSetFocus (_dsp displayCtrl 8012); - - ctrlSetText [8004, Str(Round((GVAR(targetRange) select GVAR(currentTarget))))]; - - if (GVAR(currentUnit) != 2) then - { - ctrlSetText [8008, "Yards"]; - } else - { - ctrlSetText [8008, "Meters"]; - }; - - if (GVAR(currentUnit) != 1) then - { - ctrlSetText [8011, "m/s"]; - } else - { - ctrlSetText [8011, "mph"]; - }; }; diff --git a/addons/atragmx/functions/fnc_update_target_selection.sqf b/addons/atragmx/functions/fnc_update_target_selection.sqf index d48412def0..476c22d658 100644 --- a/addons/atragmx/functions/fnc_update_target_selection.sqf +++ b/addons/atragmx/functions/fnc_update_target_selection.sqf @@ -15,8 +15,6 @@ */ #include "script_component.hpp" -#define _dsp (uiNamespace getVariable "ATragMX_Display") - (_dsp displayCtrl 500) ctrlEnable true; (_dsp displayCtrl 501) ctrlEnable true; (_dsp displayCtrl 502) ctrlEnable true; diff --git a/addons/atragmx/functions/fnc_update_unit_selection.sqf b/addons/atragmx/functions/fnc_update_unit_selection.sqf index dacc228032..f6a51c5cfc 100644 --- a/addons/atragmx/functions/fnc_update_unit_selection.sqf +++ b/addons/atragmx/functions/fnc_update_unit_selection.sqf @@ -15,8 +15,6 @@ */ #include "script_component.hpp" -#define _dsp (uiNamespace getVariable "ATragMX_Display") - (_dsp displayCtrl 600) ctrlEnable true; (_dsp displayCtrl 601) ctrlEnable true; (_dsp displayCtrl 602) ctrlEnable true; diff --git a/addons/atragmx/script_component.hpp b/addons/atragmx/script_component.hpp index 062df59d19..014524c6dd 100644 --- a/addons/atragmx/script_component.hpp +++ b/addons/atragmx/script_component.hpp @@ -9,4 +9,6 @@ #define DEBUG_SETTINGS DEBUG_SETTINGS_ATRAGMX #endif -#include "\z\ace\addons\main\script_macros.hpp" \ No newline at end of file +#include "\z\ace\addons\main\script_macros.hpp" + +#define _dsp (uiNamespace getVariable "ATragMX_Display")