From 2d0090422cb974d182eca94f8f2cd74c51f8861c Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Sun, 24 Mar 2019 00:37:39 -0500 Subject: [PATCH] move settings to sqf --- addons/medical/ACE_Settings.hpp | 7 +- addons/medical/XEH_preInit.sqf | 42 +--- addons/medical/initSettings.sqf | 14 ++ addons/medical/stringtable.xml | 14 -- addons/medical_blood/ACE_Settings.hpp | 7 +- addons/medical_blood/XEH_preInit.sqf | 2 + addons/medical_blood/initSettings.sqf | 13 ++ addons/medical_blood/stringtable.xml | 3 + addons/medical_damage/ACE_Settings.hpp | 14 +- addons/medical_damage/XEH_preInit.sqf | 2 + addons/medical_damage/initSettings.sqf | 23 ++ addons/medical_damage/stringtable.xml | 3 + addons/medical_feedback/XEH_preInit.sqf | 18 -- addons/medical_feedback/config.cpp | 2 +- addons/medical_feedback/initSettings.sqf | 21 ++ addons/medical_feedback/stringtable.xml | 3 + addons/medical_gui/ACE_Settings.hpp | 47 +--- addons/medical_gui/XEH_preInit.sqf | 2 + addons/medical_gui/initSettings.sqf | 73 +++++++ addons/medical_gui/stringtable.xml | 3 + addons/medical_statemachine/ACE_Settings.hpp | 22 +- addons/medical_statemachine/XEH_preInit.sqf | 2 + addons/medical_statemachine/initSettings.sqf | 43 ++++ addons/medical_statemachine/stringtable.xml | 3 + addons/medical_status/ACE_settings.hpp | 19 +- addons/medical_status/XEH_preInit.sqf | 2 + addons/medical_status/initSettings.sqf | 33 +++ addons/medical_status/stringtable.xml | 3 + addons/medical_treatment/ACE_Settings.hpp | 130 ++--------- addons/medical_treatment/XEH_preInit.sqf | 2 + .../functions/fnc_checkItems.sqf | 4 +- addons/medical_treatment/initSettings.sqf | 206 ++++++++++++++++++ addons/medical_treatment/stringtable.xml | 49 ++--- 33 files changed, 512 insertions(+), 319 deletions(-) create mode 100644 addons/medical/initSettings.sqf create mode 100644 addons/medical_blood/initSettings.sqf create mode 100644 addons/medical_damage/initSettings.sqf create mode 100644 addons/medical_feedback/initSettings.sqf create mode 100644 addons/medical_gui/initSettings.sqf create mode 100644 addons/medical_statemachine/initSettings.sqf create mode 100644 addons/medical_status/initSettings.sqf create mode 100644 addons/medical_treatment/initSettings.sqf diff --git a/addons/medical/ACE_Settings.hpp b/addons/medical/ACE_Settings.hpp index 9379b981eb..eb84ee7f10 100644 --- a/addons/medical/ACE_Settings.hpp +++ b/addons/medical/ACE_Settings.hpp @@ -19,11 +19,6 @@ class ACE_Settings { }; */ class GVAR(spontaneousWakeUpChance) { - category = CSTRING(Category_Medical); - displayName = CSTRING(MedicalSettings_spontaneousWakeUpChance_DisplayName); - description = CSTRING(MedicalSettings_spontaneousWakeUpChance_Description); - typeName = "SCALAR"; - value = 0.05; - sliderSettings[] = {0, 1, 0.05, 2}; + movedToSQF = 1; }; }; diff --git a/addons/medical/XEH_preInit.sqf b/addons/medical/XEH_preInit.sqf index 7b96b93c8c..9361d05015 100644 --- a/addons/medical/XEH_preInit.sqf +++ b/addons/medical/XEH_preInit.sqf @@ -6,46 +6,6 @@ PREP_RECOMPILE_START; #include "XEH_PREP.hpp" PREP_RECOMPILE_END; -/* -[ - QGVAR(advancedBandages), - "CHECKBOX", - ["Advanced Bandages", "All bandages have different wound effectivenesses and reopening chances."], //@todo - "ACE Medical", // @todo - false, - true -] call CBA_Settings_fnc_init; - -[ - QGVAR(advancedMedication), - "CHECKBOX", - ["Advanced Medication", "Enables advanced simulation of Morphine, Epinephrine etc."], //@todo - "ACE Medical", // @todo - false, - true -] call CBA_Settings_fnc_init; - -[ - QGVAR(fatalInjuryCondition), - "LIST", - ["Allow Fatal Injury", "Governs when a fatal injury can occur."], //@todo - "ACE Medical", // @todo - [ - [0, 1, 2], - ["Always", "In Cardiac Arrest", "Never"], - 0 - ], - true -] call CBA_Settings_fnc_init; - -[ - QGVAR(cardiacArrestTime), - "SLIDER", - ["Cardiac Arrest Time", "Sets how long cardiac arrest will last for on average (in seconds)."], //@todo - "ACE Medical", // @todo - [0, 300, 30, 0], - true -] call CBA_Settings_fnc_init; -*/ +#include "initSettings.sqf" ADDON = true; diff --git a/addons/medical/initSettings.sqf b/addons/medical/initSettings.sqf new file mode 100644 index 0000000000..0ae2c0e9f1 --- /dev/null +++ b/addons/medical/initSettings.sqf @@ -0,0 +1,14 @@ +// CBA Settings [ADDON: ace_medical]: + +private _categoryArray = [LELSTRING(medical,Category_DisplayName), "?"]; + +// todo: Check the description is still accurate +[ + QGVAR(spontaneousWakeUpChance), "SLIDER", + [LSTRING(MedicalSettings_spontaneousWakeUpChance_DisplayName), LSTRING(MedicalSettings_spontaneousWakeUpChance_Description)], + _categoryArray, + [0,1,0.05,2], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QGVAR(spontaneousWakeUpChance), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; diff --git a/addons/medical/stringtable.xml b/addons/medical/stringtable.xml index a1130655f8..53d5b9c765 100644 --- a/addons/medical/stringtable.xml +++ b/addons/medical/stringtable.xml @@ -662,20 +662,6 @@ 这部位没有止血带! 這部位沒有止血帶! - - Whether or not the object will be a medical vehicle. - Czy pojazd ma być pojazdem medycznym? - L'oggetto in questione sarà un veicolo medico o meno. - Legt fest, ob das Objekt ein Sanitätsfahrzeug ist. - Es un vehículo médico? - Détermine si c'est un véhicule sanitaire. - Se o objeto será ou não um veículo médico - Будет ли объект считаться медицинским транспортом. - どれでも、またはオブジェクトを医療車両として割り当てます。 - 무엇이 되었던간에 이 목록에 있는 물체는 의료 차량이 됩니다. - 是否使该载具为医疗载具? - 是否使該載具為醫療載具? - Unconscious Wake Up Chance diff --git a/addons/medical_blood/ACE_Settings.hpp b/addons/medical_blood/ACE_Settings.hpp index b5e1f0db21..e970265467 100644 --- a/addons/medical_blood/ACE_Settings.hpp +++ b/addons/medical_blood/ACE_Settings.hpp @@ -1,10 +1,5 @@ class ACE_Settings { class GVAR(enabledFor) { - category = ECSTRING(medical,Category_Medical); - displayName = CSTRING(MedicalBloodSettings_enabledFor_DisplayName); - description = CSTRING(MedicalBloodSettings_enabledFor_Description); - value = 2; - typeName = "SCALAR"; - values[] = {ECSTRING(Common,Disabled), CSTRING(enabledFor_OnlyPlayers), ECSTRING(Common,Enabled)}; + movedToSQF = 1; }; }; diff --git a/addons/medical_blood/XEH_preInit.sqf b/addons/medical_blood/XEH_preInit.sqf index 9cf50a1b60..ae4de9d026 100644 --- a/addons/medical_blood/XEH_preInit.sqf +++ b/addons/medical_blood/XEH_preInit.sqf @@ -6,6 +6,8 @@ PREP_RECOMPILE_START; #include "XEH_PREP.hpp" PREP_RECOMPILE_END; +#include "initSettings.sqf" + // blood object model namespace GVAR(models) = [] call CBA_fnc_createNamespace; diff --git a/addons/medical_blood/initSettings.sqf b/addons/medical_blood/initSettings.sqf new file mode 100644 index 0000000000..e743002ffa --- /dev/null +++ b/addons/medical_blood/initSettings.sqf @@ -0,0 +1,13 @@ +// CBA Settings [ADDON: ace_medical_blood]: + +private _categoryArray = [LELSTRING(medical,Category_DisplayName), LLSTRING(subCategory)]; + +[ + QGVAR(enabledFor), "LIST", + [LSTRING(MedicalBloodSettings_enabledFor_DisplayName), LSTRING(MedicalBloodSettings_enabledFor_Description)], + _categoryArray, + [[0,1,2],[LELSTRING(Common,Disabled),LLSTRING(enabledFor_OnlyPlayers),LELSTRING(Common,Enabled)],2], // [values, titles, defaultIndex] + true, // isGlobal + {[QGVAR(enabledFor), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; diff --git a/addons/medical_blood/stringtable.xml b/addons/medical_blood/stringtable.xml index d58f41bfc4..6b6df06cd4 100644 --- a/addons/medical_blood/stringtable.xml +++ b/addons/medical_blood/stringtable.xml @@ -1,6 +1,9 @@ + + Bleeding Effect + Only Players プレイヤーのみ diff --git a/addons/medical_damage/ACE_Settings.hpp b/addons/medical_damage/ACE_Settings.hpp index 078fcf8f60..d9356d8244 100644 --- a/addons/medical_damage/ACE_Settings.hpp +++ b/addons/medical_damage/ACE_Settings.hpp @@ -1,18 +1,8 @@ class ACE_Settings { class EGVAR(medical,playerDamageThreshold) { - category = CSTRING(Category_Medical); - displayName = CSTRING(playerDamageThreshold_DisplayName); - description = CSTRING(playerDamageThreshold_Description); - typeName = "SCALAR"; - value = 1.0; - sliderSettings[] = {0, 25, 1, 2}; + movedToSQF = 1; }; class EGVAR(medical,AIDamageThreshold) { - category = CSTRING(Category_Medical); - displayName = CSTRING(AIDamageThreshold_DisplayName); - description = CSTRING(AIDamageThreshold_Description); - typeName = "SCALAR"; - value = 1.0; - sliderSettings[] = {0, 25, 1, 2}; + movedToSQF = 1; }; }; diff --git a/addons/medical_damage/XEH_preInit.sqf b/addons/medical_damage/XEH_preInit.sqf index 63005c6562..203f11109d 100644 --- a/addons/medical_damage/XEH_preInit.sqf +++ b/addons/medical_damage/XEH_preInit.sqf @@ -6,6 +6,8 @@ PREP_RECOMPILE_START; #include "XEH_PREP.hpp" PREP_RECOMPILE_END; +#include "initSettings.sqf" + call FUNC(parseConfigForInjuries); addMissionEventHandler ["Loaded",{ diff --git a/addons/medical_damage/initSettings.sqf b/addons/medical_damage/initSettings.sqf new file mode 100644 index 0000000000..88a1283cf7 --- /dev/null +++ b/addons/medical_damage/initSettings.sqf @@ -0,0 +1,23 @@ +// CBA Settings [ADDON: ace_medical_damage]: + +private _categoryArray = [LELSTRING(medical,Category_DisplayName), LLSTRING(subCategory)]; + +[ + QEGVAR(medical,playerDamageThreshold), "SLIDER", + [LSTRING(playerDamageThreshold_DisplayName), LSTRING(playerDamageThreshold_Description)], + _categoryArray, + [0,25,1,2], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QEGVAR(medical,playerDamageThreshold), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,AIDamageThreshold), "SLIDER", + [LSTRING(AIDamageThreshold_DisplayName), LSTRING(AIDamageThreshold_Description)], + _categoryArray, + [0,25,1,2], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QEGVAR(medical,AIDamageThreshold), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; diff --git a/addons/medical_damage/stringtable.xml b/addons/medical_damage/stringtable.xml index aa7eeb4efd..d1d20c0032 100644 --- a/addons/medical_damage/stringtable.xml +++ b/addons/medical_damage/stringtable.xml @@ -2,6 +2,9 @@ + + Damage Threshold + Player Damage Урон игроку diff --git a/addons/medical_feedback/XEH_preInit.sqf b/addons/medical_feedback/XEH_preInit.sqf index 9a095bc58c..0c8f24da1b 100644 --- a/addons/medical_feedback/XEH_preInit.sqf +++ b/addons/medical_feedback/XEH_preInit.sqf @@ -6,24 +6,6 @@ PREP_RECOMPILE_START; #include "XEH_PREP.hpp" PREP_RECOMPILE_END; -[ - QGVAR(painEffectType), - "LIST", - [localize LSTRING(painEffectType), "Selects the used pain effect type"], //@todo - "ACE Medical", // @todo - [ - [0, 1], - [localize LSTRING(painEffectType_whiteFlashing), localize LSTRING(painEffectType_pulsingBlur)], - 0 - ], - false, - { - if (isNil QGVAR(ppPain)) exitWith {TRACE_1("Before Post-Init",_this)}; - TRACE_1("reseting ppEffect type",_this); - [true] call FUNC(initEffects); - } -] call CBA_Settings_fnc_init; - GVAR(lastHeartBeatSound) = 0; // HitScream diff --git a/addons/medical_feedback/config.cpp b/addons/medical_feedback/config.cpp index 77de56d714..f56bf8e99f 100644 --- a/addons/medical_feedback/config.cpp +++ b/addons/medical_feedback/config.cpp @@ -14,7 +14,7 @@ class CfgPatches { }; }; -#include "ACE_Settings.hpp" +// #include "ACE_Settings.hpp" // ToDo: setting not used #include "CfgEventHandlers.hpp" #include "CfgInGameUI.hpp" #include "CfgSounds.hpp" diff --git a/addons/medical_feedback/initSettings.sqf b/addons/medical_feedback/initSettings.sqf new file mode 100644 index 0000000000..9dd0e957c4 --- /dev/null +++ b/addons/medical_feedback/initSettings.sqf @@ -0,0 +1,21 @@ +// CBA Settings [ADDON: ace_medical_feedback]: + +private _categoryArray = [LELSTRING(medical,Category_DisplayName), LLSTRING(subCategory)]; + +[ + QGVAR(painEffectType), + "LIST", + [localize LSTRING(painEffectType), "Selects the used pain effect type"], //@todo + _categoryArray, + [ + [0, 1], + [LLSTRING(painEffectType_whiteFlashing), LLSTRING(painEffectType_pulsingBlur)], + 0 + ], + false, + { + if (isNil QGVAR(ppPain)) exitWith {TRACE_1("Before Post-Init",_this)}; + TRACE_1("reseting ppEffect type",_this); + [true] call FUNC(initEffects); + } +] call CBA_Settings_fnc_init; diff --git a/addons/medical_feedback/stringtable.xml b/addons/medical_feedback/stringtable.xml index f90b340f3f..9e2e45efaa 100644 --- a/addons/medical_feedback/stringtable.xml +++ b/addons/medical_feedback/stringtable.xml @@ -2,6 +2,9 @@ + + Feedback + Enable Screams Включить крики diff --git a/addons/medical_gui/ACE_Settings.hpp b/addons/medical_gui/ACE_Settings.hpp index 17bb2a2b1b..4daa932cd3 100644 --- a/addons/medical_gui/ACE_Settings.hpp +++ b/addons/medical_gui/ACE_Settings.hpp @@ -1,56 +1,23 @@ class ACE_Settings { class GVAR(allow) { - displayName = CSTRING(allow); - description = CSTRING(allow_Descr); - value = 1; - typeName = "SCALAR"; - values[] = {ECSTRING(common,Disabled), ECSTRING(common,Enabled), ECSTRING(common,VehiclesOnly)}; - category = ECSTRING(medical,Category_Medical); + movedToSQF = 1; }; class GVAR(useMenu) { - displayName = CSTRING(useMenu); - description = CSTRING(useMenu_Descr); - value = 1; - typeName = "SCALAR"; - values[] = {ECSTRING(common,Disabled), ECSTRING(common,Enabled), ECSTRING(common,VehiclesOnly)}; - isClientSettable = 1; - category = ECSTRING(medical,Category_Medical); + movedToSQF = 1; }; class GVAR(openAfterTreatment) { - displayName = CSTRING(openAfterTreatment); - description = CSTRING(openAfterTreatment_Descr); - typeName = "BOOL"; - value = 1; - isClientSettable = 1; - category = ECSTRING(medical,Category_Medical); + movedToSQF = 1; }; class GVAR(maxRange) { - //for ref: 3d interaction (MEDICAL_ACTION_DISTANCE) is 1.75 - value = 3; - typeName = "SCALAR"; - category = ECSTRING(medical,Category_Medical); - sliderSettings[] = {0, 10, 3, 1}; + movedToSQF = 1; }; class EGVAR(medical,menuTypeStyle) { - category = CSTRING(Category_Medical); - displayName = CSTRING(menuTypeDisplay); - description = CSTRING(menuTypeDescription); - typeName = "SCALAR"; - value = 0; - values[] = {CSTRING(useSelection), CSTRING(useRadial), "Disabled"}; - isClientSettable = 1; + movedToSQF = 1; }; class GVAR(painVisualization) { - displayName = CSTRING(painVisualization_DisplayName); - description = CSTRING(painVisualization_Description); - typeName = "SCALAR"; - value = 0; - values[] = {"Anyone", "Medics only", "Doctors only"}; + movedToSQF = 1; }; class GVAR(showPainInMenu) { - displayName = CSTRING(showPainInMenu_DisplayName); - description = CSTRING(showPainInMenu_Description); - typeName = "BOOL"; - value = 0; + movedToSQF = 1; }; }; diff --git a/addons/medical_gui/XEH_preInit.sqf b/addons/medical_gui/XEH_preInit.sqf index 16e448fc38..4968ad3a31 100644 --- a/addons/medical_gui/XEH_preInit.sqf +++ b/addons/medical_gui/XEH_preInit.sqf @@ -6,6 +6,8 @@ PREP_RECOMPILE_START; #include "XEH_PREP.hpp" PREP_RECOMPILE_END; +#include "initSettings.sqf" + GVAR(INTERACTION_TARGET) = objNull; GVAR(actionsOther) = []; GVAR(actionsSelf) = []; diff --git a/addons/medical_gui/initSettings.sqf b/addons/medical_gui/initSettings.sqf new file mode 100644 index 0000000000..9b8f93d263 --- /dev/null +++ b/addons/medical_gui/initSettings.sqf @@ -0,0 +1,73 @@ +// CBA Settings [ADDON: ace_medical_gui]: + +private _categoryArray = [LELSTRING(medical,Category_DisplayName), LLSTRING(subCategory)]; + +[ + QGVAR(allow), "LIST", + [LSTRING(allow), LSTRING(allow_Descr)], + _categoryArray, + [[0,1,2],[LELSTRING(common,Disabled), LELSTRING(common,Enabled), LELSTRING(common,VehiclesOnly)],1], // [values, titles, defaultIndex] + true, // isGlobal + {[QGVAR(allow), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(useMenu), "LIST", + [LSTRING(useMenu), LSTRING(useMenu_Descr)], + _categoryArray, + [[0,1,2],[LELSTRING(common,Disabled), LELSTRING(common,Enabled), LELSTRING(common,VehiclesOnly)],1], // [values, titles, defaultIndex] + false, // isGlobal + {[QGVAR(useMenu), _this] call EFUNC(common,cbaSettings_settingChanged)}, + false // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(openAfterTreatment), "CHECKBOX", + [LSTRING(openAfterTreatment), LSTRING(openAfterTreatment_Descr)], + _categoryArray, + true, // default value + false, // isGlobal + {[QGVAR(openAfterTreatment), _this] call EFUNC(common,cbaSettings_settingChanged)}, + false // Needs mission restart +] call CBA_settings_fnc_init; + +[ // for ref: 3d interaction (MEDICAL_ACTION_DISTANCE) is 1.75 + QGVAR(maxRange), "SLIDER", + QGVAR(maxRange-localizeMe), + _categoryArray, + [0,10,3,1], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QGVAR(maxRange), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,menuTypeStyle), "LIST", + [LSTRING(menuTypeDisplay), LSTRING(menuTypeDescription)], + _categoryArray, + [[0,1,2],[LLSTRING(useSelection), LLSTRING(useRadial),"Disabled"],0], // [values, titles, defaultIndex] + false, // isGlobal + {[QEGVAR(medical,menuTypeStyle), _this] call EFUNC(common,cbaSettings_settingChanged)}, + false // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(painVisualization), "LIST", + [LSTRING(menuTypeDisplay), LSTRING(menuTypeDescription)], + _categoryArray, + [[0,1,2],["Anyone","Medics only","Doctors only"],0], // [values, titles, defaultIndex] // ToDo: Localize + true, // isGlobal + {[QGVAR(painVisualization), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(showPainInMenu), "CHECKBOX", + [LSTRING(showPainInMenu_DisplayName), LSTRING(showPainInMenu_Description)], + _categoryArray, + false, // default value + true, // isGlobal + {[QGVAR(showPainInMenu), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; diff --git a/addons/medical_gui/stringtable.xml b/addons/medical_gui/stringtable.xml index 76bc4cd720..37f41c170c 100644 --- a/addons/medical_gui/stringtable.xml +++ b/addons/medical_gui/stringtable.xml @@ -2,6 +2,9 @@ + + User Interface + INJURIES VERLETZUNGEN diff --git a/addons/medical_statemachine/ACE_Settings.hpp b/addons/medical_statemachine/ACE_Settings.hpp index 0659607543..8b47bd106d 100644 --- a/addons/medical_statemachine/ACE_Settings.hpp +++ b/addons/medical_statemachine/ACE_Settings.hpp @@ -1,28 +1,14 @@ class ACE_Settings { class GVAR(fatalInjuryCondition) { - displayName = CSTRING(fatalInjuryCondition_DisplayName); - description = CSTRING(fatalInjuryCondition_Description); - value = 0; - typeName = "SCALAR"; - values[] = {"Always", "In Cardiac Arrest", "Never"}; + movedToSQF = 1; }; class GVAR(fatalInjuryConditionAI) { - displayName = CSTRING(fatalInjuryConditionAI_DisplayName); - description = CSTRING(fatalInjuryConditionAI_Description); - value = 1; - typeName = "BOOL"; + movedToSQF = 1; }; class GVAR(unconsciousConditionAI) { - displayName = CSTRING(unconsciousConditionAI_DisplayName); - description = CSTRING(unconsciousConditionAI_Description); - value = 1; - typeName = "BOOL"; + movedToSQF = 1; }; class GVAR(cardiacArrestTime) { - displayName = CSTRING(cardiacArrestTime_DisplayName); - description = CSTRING(cardiacArrestTime_Description); - value = 30; - typeName = "SCALAR"; - sliderSettings[] = {1, 3600, 30, 0}; + movedToSQF = 1; }; }; diff --git a/addons/medical_statemachine/XEH_preInit.sqf b/addons/medical_statemachine/XEH_preInit.sqf index 279b11a23f..2d8754ad32 100644 --- a/addons/medical_statemachine/XEH_preInit.sqf +++ b/addons/medical_statemachine/XEH_preInit.sqf @@ -4,6 +4,8 @@ ADDON = false; #include "XEH_PREP.hpp" +#include "initSettings.sqf" + EGVAR(medical,STATE_MACHINE) = (configFile >> "ACE_Medical_StateMachine") call CBA_statemachine_fnc_createFromConfig; ADDON = true; diff --git a/addons/medical_statemachine/initSettings.sqf b/addons/medical_statemachine/initSettings.sqf new file mode 100644 index 0000000000..268902a0f1 --- /dev/null +++ b/addons/medical_statemachine/initSettings.sqf @@ -0,0 +1,43 @@ +// CBA Settings [ADDON: ace_medical_statemachine]: + +private _categoryArray = [LELSTRING(medical,Category_DisplayName), LLSTRING(subCategory)]; + +[ + QGVAR(fatalInjuryCondition), "LIST", + [LSTRING(fatalInjuryCondition_DisplayName), LSTRING(fatalInjuryCondition_Description)], + _categoryArray, + [[0,1,2],["Always","In Cardiac Arrest","Never"],0], // [values, titles, defaultIndex] //ToDo: Localize + true, // isGlobal + {[QGVAR(fatalInjuryCondition), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(fatalInjuryConditionAI), "CHECKBOX", + [LSTRING(fatalInjuryConditionAI_DisplayName), LSTRING(fatalInjuryConditionAI_Description)], + _categoryArray, + true, // default value + true, // isGlobal + {[QGVAR(fatalInjuryConditionAI), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(unconsciousConditionAI), "CHECKBOX", + [LSTRING(unconsciousConditionAI_DisplayName), LSTRING(unconsciousConditionAI_Description)], + _categoryArray, + true, // default value + true, // isGlobal + {[QGVAR(unconsciousConditionAI), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(cardiacArrestTime), "SLIDER", + [LSTRING(cardiacArrestTime_DisplayName), LSTRING(cardiacArrestTime_Description)], + _categoryArray, + [1,3600,30,0], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QGVAR(cardiacArrestTime), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; diff --git a/addons/medical_statemachine/stringtable.xml b/addons/medical_statemachine/stringtable.xml index ed9b99464f..96f9ac93ad 100644 --- a/addons/medical_statemachine/stringtable.xml +++ b/addons/medical_statemachine/stringtable.xml @@ -2,6 +2,9 @@ + + States + Fatal Injury Player diff --git a/addons/medical_status/ACE_settings.hpp b/addons/medical_status/ACE_settings.hpp index 46728a8711..11783ac42f 100644 --- a/addons/medical_status/ACE_settings.hpp +++ b/addons/medical_status/ACE_settings.hpp @@ -1,24 +1,11 @@ class ACE_Settings { class EGVAR(medical,bleedingCoefficient) { - category = CSTRING(Category_Medical); - displayName = CSTRING(bleedingCoefficient_DisplayName); - description = CSTRING(bleedingCoefficient_Description); - typeName = "SCALAR"; - value = 1; - sliderSettings[] = {0, 25, 1, 1}; + movedToSQF = 1; }; class EGVAR(medical,painCoefficient) { - category = CSTRING(Category_Medical); - displayName = CSTRING(painCoefficient_DisplayName); - description = CSTRING(painCoefficient_Description); - typeName = "SCALAR"; - value = 1; - sliderSettings[] = {0, 25, 1, 1}; + movedToSQF = 1; }; class GVAR(ivFlowRate) { - displayName = CSTRING(ivFlowRate_DisplayName); - description = CSTRING(ivFlowRate_Description); - typeName = "SCALAR"; - value = 1; + movedToSQF = 1; }; }; diff --git a/addons/medical_status/XEH_preInit.sqf b/addons/medical_status/XEH_preInit.sqf index b47cf6628d..9361d05015 100644 --- a/addons/medical_status/XEH_preInit.sqf +++ b/addons/medical_status/XEH_preInit.sqf @@ -6,4 +6,6 @@ PREP_RECOMPILE_START; #include "XEH_PREP.hpp" PREP_RECOMPILE_END; +#include "initSettings.sqf" + ADDON = true; diff --git a/addons/medical_status/initSettings.sqf b/addons/medical_status/initSettings.sqf new file mode 100644 index 0000000000..1118973f37 --- /dev/null +++ b/addons/medical_status/initSettings.sqf @@ -0,0 +1,33 @@ +// CBA Settings [ADDON: ace_medical_status]: + +private _categoryArray = [LELSTRING(medical,Category_DisplayName), LLSTRING(subCategory)]; + +[ + QEGVAR(medical,bleedingCoefficient), "SLIDER", + [LSTRING(bleedingCoefficient_DisplayName), LSTRING(bleedingCoefficient_Description)], + _categoryArray, + [0,25,1,1], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QEGVAR(medical,bleedingCoefficient), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,painCoefficient), "SLIDER", + [LSTRING(painCoefficient_DisplayName), LSTRING(painCoefficient_Description)], + _categoryArray, + [0,25,1,1], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QEGVAR(medical,painCoefficient), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(ivFlowRate), "SLIDER", + [LSTRING(ivFlowRate_DisplayName), LSTRING(ivFlowRate_Description)], + _categoryArray, + [0,25,1,1], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QGVAR(ivFlowRate), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; diff --git a/addons/medical_status/stringtable.xml b/addons/medical_status/stringtable.xml index 0fe68b7ba4..485793a361 100644 --- a/addons/medical_status/stringtable.xml +++ b/addons/medical_status/stringtable.xml @@ -2,6 +2,9 @@ + + Status + Bleeding coefficient Коэффициент кровопотери diff --git a/addons/medical_treatment/ACE_Settings.hpp b/addons/medical_treatment/ACE_Settings.hpp index 9ca37bab09..309c923299 100644 --- a/addons/medical_treatment/ACE_Settings.hpp +++ b/addons/medical_treatment/ACE_Settings.hpp @@ -1,146 +1,48 @@ class ACE_Settings { - // Settings without EGVAR are new and don't need backwards compat - class GVAR(advancedBandages) { - displayName = CSTRING(advancedBandages_DisplayName); - description = CSTRING(advancedBandages_Description); - typeName = "BOOL"; - value = 1; - // todo: I don't like that wound reopening requires this setting to be enabled, they should be independent - }; - class GVAR(advancedDiagnose) { - displayName = CSTRING(advancedDiagnose_DisplayName); - description = CSTRING(advancedDiagnose_Description); - typeName = "BOOL"; - value = 1; - // todo: this setting just disables some treatment options, remove? - }; - class GVAR(advancedMedication) { - displayName = CSTRING(advancedMedication_DisplayName); - description = CSTRING(advancedMedication_Description); - typeName = "BOOL"; - value = 1; - }; - // todo: the strings for all three advanced bandages/medication/diagnose settings are terribly ambigious class EGVAR(medical,allowLitterCreation) { - category = ECSTRING(medical,Category_Medical); - displayName = CSTRING(allowLitterCreation); - description = CSTRING(allowLitterCreation_Description); - typeName = "BOOL"; - value = 1; + movedToSqf = 1; }; class EGVAR(medical,CPRcreatesPulse) { - category = ECSTRING(medical,Category_Medical); - displayName = CSTRING(CPRcreatesPulse); - description = CSTRING(CPRcreatesPulse_Description); - typeName = "BOOL"; - value = 1; + movedToSqf = 1; }; class EGVAR(medical,litterCleanUpDelay) { - category = ECSTRING(medical,Category_Medical); - displayName = CSTRING(litterCleanUpDelay); - description = CSTRING(litterCleanUpDelay_Description); - typeName = "SCALAR"; - value = 0; + movedToSqf = 1; }; class EGVAR(medical,litterSimulationDetail) { - category = ECSTRING(medical,Category_Medical); - displayName = CSTRING(litterSimulationDetail); - description = CSTRING(litterSimulationDetail_Description); - typeName = "SCALAR"; - - value = 3; - values[] = {"Off", "Low", "Medium", "High", "Ultra"}; + movedToSqf = 1; _values[] = { 0, 50, 100, 1000, 5000 }; }; class EGVAR(medical,increaseTrainingInLocations) { - category = CSTRING(Category_Medical); - displayName = CSTRING(increaseTrainingInLocations_DisplayName); - description = CSTRING(increaseTrainingInLocations_Description); - value = 0; - typeName = "BOOL"; + movedToSqf = 1; }; class EGVAR(medical,PAKTime) { - category = ECSTRING(medical,Category_Medical); - displayName = CSTRING(PAKTime); - description = CSTRING(PAKTime_Description); - typeName = "SCALAR"; - value = 0; - }; - class GVAR(woundReopening) { - displayName = CSTRING(woundReopening_DisplayName); - description = CSTRING(woundReopening_Description); - typeName = "BOOL"; - value = 1; + movedToSqf = 1; }; class EGVAR(medical,medicSetting_Epi) { - displayName = CSTRING(medicSetting_Epi_DisplayName); - description = CSTRING(medicSetting_Epi_Description); - typeName = "SCALAR"; - value = 0; - values[] = {CSTRING(anyone), CSTRING(medicsOnly), CSTRING(doctorsOnly)}; + movedToSqf = 1; }; class EGVAR(medical,medicSetting_PAK) { - displayName = CSTRING(medicSetting_PAK_DisplayName); - description = CSTRING(medicSetting_PAK_Description); - typeName = "SCALAR"; - value = 0; - values[] = {CSTRING(anyone), CSTRING(medicsOnly), CSTRING(doctorsOnly)}; + movedToSqf = 1; }; class EGVAR(medical,medicSetting_SurgicalKit) { - displayName = CSTRING(medicSetting_SurgicalKit_DisplayName); - description = CSTRING(medicSetting_SurgicalKit_Description); - typeName = "SCALAR"; - value = 0; - values[] = {CSTRING(anyone), CSTRING(medicsOnly), CSTRING(doctorsOnly)}; + movedToSqf = 1; }; class EGVAR(medical,consumeItem_PAK) { - displayName = CSTRING(consumeItem_PAK_DisplayName); - description = CSTRING(consumeItem_PAK_Description); - typeName = "SCALAR"; - value = 1; - values[] = {"No", "Yes"}; + movedToSqf = 1; }; class EGVAR(medical,consumeItem_SurgicalKit) { - displayName = CSTRING(consumeItem_SurgicalKit_DisplayName); - description = CSTRING(consumeItem_SurgicalKit_Description); - typeName = "SCALAR"; - value = 1; - values[] = {"No", "Yes"}; + movedToSqf = 1; }; class EGVAR(medical,useLocation_Epi) { - displayName = CSTRING(useLocation_Epi_DisplayName); - description = CSTRING(useLocation_Epi_Description); - typeName = "SCALAR"; - value = 0; - values[] = {ECSTRING(common,Anywhere), ECSTRING(common,Vehicle), CSTRING(medicalFacility), CSTRING(vehicleAndFacility), ECSTRING(common,Disabled)}; + movedToSqf = 1; }; class EGVAR(medical,useLocation_PAK) { - displayName = CSTRING(useLocation_PAK_DisplayName); - description = CSTRING(useLocation_PAK_Description); - typeName = "SCALAR"; - value = 0; - values[] = {ECSTRING(common,Anywhere), ECSTRING(common,Vehicle), CSTRING(medicalFacility), CSTRING(vehicleAndFacility), ECSTRING(common,Disabled)}; + movedToSqf = 1; }; class EGVAR(medical,useLocation_SurgicalKit) { - displayName = CSTRING(useLocation_SurgicalKit_DisplayName); - description = CSTRING(useLocation_SurgicalKit_Description); - typeName = "SCALAR"; - value = 0; - values[] = {ECSTRING(common,Anywhere), ECSTRING(common,Vehicle), CSTRING(medicalFacility), CSTRING(vehicleAndFacility), ECSTRING(common,Disabled)}; + movedToSqf = 1; }; - class GVAR(allowSelfIV) { - displayName = CSTRING(allowSelfIV_DisplayName); - description = CSTRING(allowSelfIV_Description); - typeName = "SCALAR"; - value = 0; - values[] = {"No", "Yes"}; - }; - class GVAR(convertItems) { - category = CSTRING(Category_Medical); - displayName = CSTRING(convertItems_DisplayName); - description = CSTRING(convertItems_Description); - typeName = "SCALAR"; - value = 0; - values[] = {ECSTRING(common,Enabled), CSTRING(convertItems_remove), ECSTRING(common,Disabled)}; + class EGVAR(medical,convertItems) { + movedToSqf = 1; }; }; diff --git a/addons/medical_treatment/XEH_preInit.sqf b/addons/medical_treatment/XEH_preInit.sqf index 5970208062..a4ddb9f082 100644 --- a/addons/medical_treatment/XEH_preInit.sqf +++ b/addons/medical_treatment/XEH_preInit.sqf @@ -6,6 +6,8 @@ PREP_RECOMPILE_START; #include "XEH_PREP.hpp" PREP_RECOMPILE_END; +#include "initSettings.sqf" + // config to determine animation acceleration coefficient // adjusting these is trail and error // if the animation is cut of ingame, increase these values diff --git a/addons/medical_treatment/functions/fnc_checkItems.sqf b/addons/medical_treatment/functions/fnc_checkItems.sqf index 1db2783041..4c2278a408 100644 --- a/addons/medical_treatment/functions/fnc_checkItems.sqf +++ b/addons/medical_treatment/functions/fnc_checkItems.sqf @@ -12,6 +12,8 @@ * Public: No */ +if (EGVAR(medical,convertItems) == 2) exitWith {}; + params ["_unit"]; private _countFirstAidKit = [_unit, "FirstAidKit"] call EFUNC(common,getCountOfItem); @@ -20,7 +22,7 @@ _unit removeItems "FirstAidKit"; private _countMedikit = [_unit, "Medikit"] call EFUNC(common,getCountOfItem); _unit removeItems "Medikit"; -if (GVAR(convertItems) != 0) exitWith {}; +if (EGVAR(medical,convertItems) != 0) exitWith {}; for "_i" from 1 to _countFirstAidKit do { _unit addItem "ACE_fieldDressing"; diff --git a/addons/medical_treatment/initSettings.sqf b/addons/medical_treatment/initSettings.sqf new file mode 100644 index 0000000000..1f9697301c --- /dev/null +++ b/addons/medical_treatment/initSettings.sqf @@ -0,0 +1,206 @@ +// CBA Settings [ADDON: ace_medical_treatment]: + +private _categoryArray = [LELSTRING(medical,Category_DisplayName), LLSTRING(subCategory)]; + +// todo: the strings for all three advanced bandages/medication/diagnose settings are terribly ambigious + +[// todo: I don't like that wound reopening requires this setting to be enabled, they should be independent + QGVAR(advancedBandages), "CHECKBOX", + [LSTRING(advancedBandages_DisplayName), LSTRING(advancedBandages_Description)], + _categoryArray, + true, // default value + true, // isGlobal + {[QGVAR(advancedBandages), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[// todo: this setting just disables some treatment options, remove? + QGVAR(advancedDiagnose), "CHECKBOX", + [LSTRING(advancedDiagnose_DisplayName), LSTRING(advancedDiagnose_Description)], + _categoryArray, + true, // default value + true, // isGlobal + {[QGVAR(advancedDiagnose), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(advancedMedication), "CHECKBOX", + [LSTRING(advancedMedication_DisplayName), LSTRING(advancedMedication_Description)], + _categoryArray, + true, // default value + true, // isGlobal + {[QGVAR(advancedMedication), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(woundReopening), "CHECKBOX", + [LSTRING(woundReopening_DisplayName), LSTRING(woundReopening_Description)], + _categoryArray, + true, // default value + true, // isGlobal + {[QGVAR(woundReopening), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QGVAR(allowSelfIV), "LIST", // This setting is list because we want number for treatment config + [LSTRING(allowSelfIV_DisplayName), LSTRING(allowSelfIV_Description)], + _categoryArray, + [[0,1],["No","Yes"],0], // [values, titles, defaultIndex] + true, // isGlobal + {[QGVAR(allowSelfIV), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +// Ported Settings: +[ + QEGVAR(medical,convertItems), "LIST", + [LSTRING(convertItems_DisplayName), LSTRING(convertItems_Description)], + _categoryArray, + [[0,1,2],[LELSTRING(common,Enabled),LLSTRING(convertItems_remove),LELSTRING(common,Disabled)],0], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,convertItems), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,allowLitterCreation), "CHECKBOX", + [LSTRING(allowLitterCreation), LSTRING(allowLitterCreation_Description)], + _categoryArray, + true, // default value + true, // isGlobal + {[QEGVAR(medical,allowLitterCreation), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,CPRcreatesPulse), "CHECKBOX", + [LSTRING(CPRcreatesPulse), LSTRING(CPRcreatesPulse_Description)], + _categoryArray, + true, // default value + true, // isGlobal + {[QEGVAR(medical,CPRcreatesPulse), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,litterCleanUpDelay), "SLIDER", + [LSTRING(litterCleanUpDelay), LSTRING(litterCleanUpDelay_Description)], + _categoryArray, + [-1,5000,0,1], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QEGVAR(medical,litterCleanUpDelay), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,litterSimulationDetail), "LIST", + [LSTRING(litterSimulationDetail), LSTRING(litterSimulationDetail_Description)], + _categoryArray, + [[0,1,2,3,4],["Off","Low","Medium","High","Ultra"],3], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,litterSimulationDetail), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,increaseTrainingInLocations), "CHECKBOX", + [LSTRING(increaseTrainingInLocations_DisplayName), LSTRING(increaseTrainingInLocations_Description)], + _categoryArray, + false, // default value + true, // isGlobal + {[QEGVAR(medical,increaseTrainingInLocations), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,PAKTime), "SLIDER", + [LSTRING(PAKTime), LSTRING(PAKTime_Description)], + _categoryArray, + [-1,5000,0,1], // [min, max, default value, trailing decimals (-1 for whole numbers only)] + true, // isGlobal + {[QEGVAR(medical,PAKTime), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,medicSetting_Epi), "LIST", + [LSTRING(medicSetting_Epi_DisplayName), LSTRING(medicSetting_Epi_Description)], + _categoryArray, + [[0,1,2],["Anyone","Medics only","Doctors only"],0], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,medicSetting_Epi), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,medicSetting_PAK), "LIST", + [LSTRING(medicSetting_PAK_DisplayName), LSTRING(medicSetting_PAK_Description)], + _categoryArray, + [[0,1,2],["Anyone","Medics only","Doctors only"],0], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,medicSetting_PAK), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,medicSetting_SurgicalKit), "LIST", + [LSTRING(medicSetting_SurgicalKit_DisplayName), LSTRING(medicSetting_SurgicalKit_Description)], + _categoryArray, + [[0,1,2],["Anyone","Medics only","Doctors only"],0], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,medicSetting_SurgicalKit), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,consumeItem_PAK), "LIST", + [LSTRING(consumeItem_PAK_DisplayName), LSTRING(consumeItem_PAK_Description)], + _categoryArray, + [[0,1],["No","Yes"],1], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,consumeItem_PAK), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,consumeItem_SurgicalKit), "LIST", + [LSTRING(consumeItem_SurgicalKit_DisplayName), LSTRING(consumeItem_SurgicalKit_Description)], + _categoryArray, + [[0,1],["No","Yes"],1], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,consumeItem_SurgicalKit), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,useLocation_Epi), "LIST", + [LSTRING(useLocation_Epi_DisplayName), LSTRING(useLocation_Epi_Description)], + _categoryArray, + [[0,1,2,3,4],[LELSTRING(common,Anywhere), LELSTRING(common,Vehicle), LLSTRING(medicalFacility), LLSTRING(vehicleAndFacility), LELSTRING(common,Disabled)],0], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,useLocation_Epi), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,useLocation_PAK), "LIST", + [LSTRING(useLocation_PAK_DisplayName), LSTRING(useLocation_PAK_Description)], + _categoryArray, + [[0,1,2,3,4],[LELSTRING(common,Anywhere), LELSTRING(common,Vehicle), LLSTRING(medicalFacility), LLSTRING(vehicleAndFacility), LELSTRING(common,Disabled)],0], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,useLocation_PAK), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; + +[ + QEGVAR(medical,useLocation_SurgicalKit), "LIST", + [LSTRING(useLocation_SurgicalKit_DisplayName), LSTRING(useLocation_SurgicalKit_Description)], + _categoryArray, + [[0,1,2,3,4],[LELSTRING(common,Anywhere), LELSTRING(common,Vehicle), LLSTRING(medicalFacility), LLSTRING(vehicleAndFacility), LELSTRING(common,Disabled)],0], // [values, titles, defaultIndex] + true, // isGlobal + {[QEGVAR(medical,useLocation_SurgicalKit), _this] call EFUNC(common,cbaSettings_settingChanged)}, + true // Needs mission restart +] call CBA_settings_fnc_init; diff --git a/addons/medical_treatment/stringtable.xml b/addons/medical_treatment/stringtable.xml index 851d58e75c..35ab4930ec 100644 --- a/addons/medical_treatment/stringtable.xml +++ b/addons/medical_treatment/stringtable.xml @@ -2,6 +2,9 @@ + + Treatment + Advanced Bandages @@ -397,6 +400,20 @@ [ACE] 医疗补给箱(进阶) [ACE] 醫療補給箱(進階) + + Whether or not the object will be a medical vehicle. + Czy pojazd ma być pojazdem medycznym? + L'oggetto in questione sarà un veicolo medico o meno. + Legt fest, ob das Objekt ein Sanitätsfahrzeug ist. + Es un vehículo médico? + Détermine si c'est un véhicule sanitaire. + Se o objeto será ou não um veículo médico + Будет ли объект считаться медицинским транспортом. + どれでも、またはオブジェクトを医療車両として割り当てます。 + 무엇이 되었던간에 이 목록에 있는 물체는 의료 차량이 됩니다. + 是否使该载具为医疗载具? + 是否使該載具為醫療載具? + Medical training Wyszkolenie medyczne @@ -1417,38 +1434,6 @@ 此身体部位没有受伤 此身體部位沒有受傷 - - Litter Simulation Detail - Detale zużytych medykamentów - Detalle de simulación de basura - Количество мусора от медицины - Dettagli Simulazione Rifiuti - Niveau de simulation des détritus - Abfall-Detaillevel - Hulladékszimuláció részletessége - Detalhe da simulação de sujeira - Počet zobrazených předmětů po použití zdravotnického materiálu - 医療廃棄物シミュレーション詳細度 - 의료폐기물 재현 상세도 - 医疗废弃物模拟细节 - 醫療廢棄物模擬細節 - - - Litter simulation detail level sets the number of litter items which will be locally spawned in the client. Excessive amounts in local areas could cause FPS lag, so this is a client only setting. - Opcja ta ustawia liczbę zużytych medykamentów, jakie pojawiają się lokalnie wokół gracza. Ich zbyt duża ilość może spowodować spadki FPS, dlatego jest to ustawienie tylko po stronie klienta. - Detalle simulación de basura establece el número de artículos de basura que se generan a nivel local en el cliente. Las cantidades excesivas en áreas locales podrían causar caída de rendimiento, así que esto es un ajuste de cliente únicamente. - Устанавливает количество мусора, который появляется после использования мед. препаратов. Большое количество мусора может уменьшить производительность, поэтому данная настройка локальна для клиента. - Il numero di rifiuti che verranno creati localmente. La creazione di troppi rifiuti in aree locali potrebbe causare lag e calo di FPS. Questo è un settaggio lato client. - Le niveau de simulation des détritus règle la quantité de déchets qui vont être créés localement chez le client. Des quantitées excessive chez certains clients peuvent causer des chutes de FPS, c'est donc une option client uniquement. - Die Einstellung für das Abfall-Detaillevel stellt die Menge des lokal angezeigten medizinischen Abfalls ein. Zuviel Abfall kann FPS-Einbrüche erzeugen, weswegen diese Einstellung nur clientseitig ist. - A hulladékszimuláció részletessége megszabja a kliens által megjelenített hulladékobjektumok mennyiségét. Súlyos mennyiségek izolált területeken alacsony FPS-t okozhatnak, így ez egy kliensoldali beállítás. - O nível de detalhe de sujeira determina o número de itens que irão aparecer no cliente. Quantidades excessivas em áreas locais podem aumentar o lag do FPS, então esta é uma opção somente para o cliente. - Počet zobrazených předmětů po použití zdravotnického materiálu ovlivňuje počet objektů, které budou zobrazeny klientovi v místě použití zdravotnického materiálu. Vyšší množství objektů může způsobovat poklesy FPS a proto je toto nastavení čistě na klientovi. - 医療廃棄物シミュレーションは各クライアントでローカルに作成される、医療廃棄物の詳細度を決定できます。ローカルで多くのアイテムがあると FPS の低下を引き起こすため、クライアント側のみの設定です。 - 의료폐기물 재현 상세도의 경우 얼마나 많은 수의 폐기물이 클라이언트 주변에 생성되는지를 정합니다. 매우 많은 수의 지역은 프레임드랍을 유발할 수 있습니다, 고로 이는 클라이언트 전용 설정입니다. - 设定医疗废弃物的最大产生数量,过多的数量会导致画面更新率延迟,因此这由用户端来设定。 - 設定醫療廢棄物的最大產生數量,過多的數量會導致畫面更新率延遲,因此這由用戶端來設定。 - Inject Adenosine Adenosin injizieren