diff --git a/SQF/dayz_code/Configs/CfgVehicles/Buildings/Land_Fire.hpp b/SQF/dayz_code/Configs/CfgVehicles/Buildings/Land_Fire.hpp index 0597f8717..d8d1de2bd 100644 --- a/SQF/dayz_code/Configs/CfgVehicles/Buildings/Land_Fire.hpp +++ b/SQF/dayz_code/Configs/CfgVehicles/Buildings/Land_Fire.hpp @@ -51,8 +51,8 @@ class Land_Fire: House class UserActions { class lightup { - displayNameDefault = "Light fire"; - displayName = "Light fire"; + displayNameDefault = $STR_ACTIONS_LIGHTFIRE; + displayName = $STR_ACTIONS_LIGHTFIRE; position = "ohniste"; radius = 3; onlyForPlayer = 0; @@ -60,8 +60,8 @@ class Land_Fire: House statement = "[this,true] call dayz_inflame"; }; class putout { - displayNameDefault = "Put out fire"; - displayName = "Put out fire"; + displayNameDefault = $STR_ACTIONS_PUTOUTFIRE; + displayName = $STR_ACTIONS_PUTOUTFIRE; position = "ohniste"; radius = 3; onlyForPlayer = 0; @@ -80,8 +80,8 @@ class Land_Fire_barrel : Land_Fire destrType=DestructEngine; class UserActions { class lightup { - displayNameDefault = "Light fire"; - displayName = "Light fire"; + displayNameDefault = $STR_ACTIONS_LIGHTFIRE; + displayName = $STR_ACTIONS_LIGHTFIRE; position = "ohniste"; radius = 3; onlyForPlayer = 0; @@ -89,8 +89,8 @@ class Land_Fire_barrel : Land_Fire statement = "[this,true] call dayz_inflame_other"; }; class putout { - displayNameDefault = "Put out fire"; - displayName = "Put out fire"; + displayNameDefault = $STR_ACTIONS_PUTOUTFIRE; + displayName = $STR_ACTIONS_PUTOUTFIRE; position = "ohniste"; radius = 3; onlyForPlayer = 0; @@ -117,8 +117,8 @@ class Land_Fire_DZ : Land_Fire { }; */ class lightup { - displayNameDefault = "Light fire"; - displayName = "Light fire"; + displayNameDefault = $STR_ACTIONS_LIGHTFIRE; + displayName = $STR_ACTIONS_LIGHTFIRE; position = "ohniste"; radius = 3; onlyForPlayer = 0; @@ -126,8 +126,8 @@ class Land_Fire_DZ : Land_Fire { statement = "[this,true] call dayz_inflame"; }; class putout { - displayNameDefault = "Put out fire"; - displayName = "Put out fire"; + displayNameDefault = $STR_ACTIONS_PUTOUTFIRE; + displayName = $STR_ACTIONS_PUTOUTFIRE; position = "ohniste"; radius = 3; onlyForPlayer = 0; @@ -169,8 +169,8 @@ class Misc_TyreHeap: Land_Fire displayName=$STR_DN_TYREHEAP; class UserActions { class lightup { - displayNameDefault = "Light fire"; - displayName = "Light fire"; + displayNameDefault = $STR_ACTIONS_LIGHTFIRE; + displayName = $STR_ACTIONS_LIGHTFIRE; position = "ohniste"; radius = 3; onlyForPlayer = 0; @@ -178,8 +178,8 @@ class Misc_TyreHeap: Land_Fire statement = "[this,true] call dayz_inflame_other"; }; class putout { - displayNameDefault = "Put out fire"; - displayName = "Put out fire"; + displayNameDefault = $STR_ACTIONS_PUTOUTFIRE; + displayName = $STR_ACTIONS_PUTOUTFIRE; position = "ohniste"; radius = 3; onlyForPlayer = 0; diff --git a/SQF/dayz_code/actions/player_useMeds.sqf b/SQF/dayz_code/actions/player_useMeds.sqf index 4295f04ec..5fa9c5e2f 100644 --- a/SQF/dayz_code/actions/player_useMeds.sqf +++ b/SQF/dayz_code/actions/player_useMeds.sqf @@ -53,7 +53,8 @@ switch (_item) do { }; case "ItemHeatPack": { player removeMagazine "ItemHeatPack"; - dayz_temperatur = (dayz_temperatur + 5) min dayz_temperaturmax; + //dayz_temperatur = (dayz_temperatur + 5) min dayz_temperaturmax; + r_player_warming_heatpack = [true, diag_tickTime]; localize "str_player_27" call dayz_rollingMessages; }; case "bloodTester": { diff --git a/SQF/dayz_code/compile/fn_temperatur.sqf b/SQF/dayz_code/compile/fn_temperatur.sqf index 190bd80dd..393fcfbd1 100644 --- a/SQF/dayz_code/compile/fn_temperatur.sqf +++ b/SQF/dayz_code/compile/fn_temperatur.sqf @@ -29,13 +29,14 @@ _looptime = _this; _building_factor = DZE_TempVars select 2; _moving_factor = DZE_TempVars select 3; _sun_factor = DZE_TempVars select 4; + _heatpack_factor = DZE_TempVars select 5; //Negative effects - _water_factor = DZE_TempVars select 5; - _stand_factor = DZE_TempVars select 6; - _rain_factor = DZE_TempVars select 7; - _wind_factor = DZE_TempVars select 8; - _night_factor = DZE_TempVars select 9; + _water_factor = DZE_TempVars select 6; + _stand_factor = DZE_TempVars select 7; + _rain_factor = DZE_TempVars select 8; + _wind_factor = DZE_TempVars select 9; + _night_factor = DZE_TempVars select 10; _difference = 0; //_hasfireffect = false; @@ -114,6 +115,13 @@ if(daytime > _sunrise && daytime < (24 - _sunrise) && !_raining && overcast <= 0 //diag_log format["sun - %1",_difference]; }; +//heatpack +if(r_player_warming_heatpack select 0) then { + _difference = _difference + _heatpack_factor; + if ((diag_tickTime - (r_player_warming_heatpack select 1)) >= r_player_warming_heatpack_time) then { + r_player_warming_heatpack = [false,0]; + }; +}; //NEGATIVE EFFECTS //water @@ -171,4 +179,5 @@ _difference = _difference * SleepTemperatur / (60 / _looptime) * ((dayz_temperat if (dayz_temperature_override) then { _difference = 0; if (dayz_temperatur < 37) then { dayz_temperatur = 37; } }; //Change Temperatur Should be moved in a own Function to allow adding of Items which increase the Temp like "hot tea" +r_player_temp_factor = _difference; dayz_temperatur = (((dayz_temperatur + _difference) max dayz_temperaturmin) min dayz_temperaturmax); \ No newline at end of file diff --git a/SQF/dayz_code/compile/player_updateGui.sqf b/SQF/dayz_code/compile/player_updateGui.sqf index d81693e1f..b0c5dca0b 100644 --- a/SQF/dayz_code/compile/player_updateGui.sqf +++ b/SQF/dayz_code/compile/player_updateGui.sqf @@ -1,6 +1,6 @@ //private ["_display","_ctrlBloodOuter","_ctrlBlood","_ctrlBleed","_bloodVal","_ctrlFood","_ctrlThirst","_thirstVal","_foodVal","_ctrlTemp","_ctrlFoodBorder","_ctrlThirstBorder","_ctrlTempBorder","_tempVal","_array","_ctrlEar","_ctrlEye","_ctrlFracture","_visual","_audible","_uiNumber","_bloodText","_blood","_thirstLvl","_foodLvl","_tempImg","_bloodLvl","_tempLvl","_thirst","_food","_temp"]; -private ["_flash","_array","_bloodText","_tempImg","_uiNumber","_blood","_foodLvl","_thirstLvl","_audible","_visual","_bloodType","_rhFactor","_ctrlBloodType", "_bloodTestdone", +private ["_flash","_array","_bloodText","_tempText","_tempImg","_uiNumber","_blood","_foodLvl","_thirstLvl","_audible","_visual","_bloodType","_rhFactor","_ctrlBloodType", "_bloodTestdone", "_string","_humanityTarget","_distance","_size","_friendlies","_id","_rID","_rfriendlies","_rfriendlyTo","_color","_targetControl"]; _flash = { @@ -143,9 +143,20 @@ switch true do { case (_tempLvl > 28 and _tempLvl < 30): { _tempImg = 1 }; default { _tempImg = 0 }; }; - _temp = "\z\addons\dayz_code\gui\status\status_temp_" + str(_tempImg) + "_ca.paa"; +_tempText = "\z\addons\dayz_code\gui\status\status_temp_border"; +switch true do { + case (r_player_temp_factor <= r_player_temp_min_factor): { _tempText = _tempText + "_down3_ca.paa" }; + case ((r_player_temp_factor <= r_player_temp_min_factor*0.50) and (r_player_temp_factor > r_player_temp_min_factor)): { _tempText = _tempText + "_down2_ca.paa" }; + case ((r_player_temp_factor < r_player_temp_min_factor*0.2) and (r_player_temp_factor > r_player_temp_min_factor*0.50)): { _tempText = _tempText + "_down1_ca.paa" }; + case ((r_player_temp_factor > r_player_temp_max_factor*0.2) and (r_player_temp_factor < r_player_temp_max_factor*0.50)): { _tempText = _tempText + "_up1_ca.paa" }; + case ((r_player_temp_factor >= r_player_temp_max_factor*0.50) and (r_player_temp_factor < r_player_temp_max_factor)): { _tempText = _tempText + "_up2_ca.paa" }; + case (r_player_temp_factor >= r_player_temp_max_factor): { _tempText = _tempText + "_up3_ca.paa" }; + default { _tempText = "\z\addons\dayz_code\gui\status\status_temp_outside_ca.paa" }; +}; +_ctrlTempBorder ctrlSetText _tempText; + _ctrlBlood ctrlSetText _blood; _ctrlThirst ctrlSetText _thirst; _ctrlFood ctrlSetText _food; diff --git a/SQF/dayz_code/configVariables.sqf b/SQF/dayz_code/configVariables.sqf index 4a73565dc..a6ae8536f 100644 --- a/SQF/dayz_code/configVariables.sqf +++ b/SQF/dayz_code/configVariables.sqf @@ -21,7 +21,7 @@ DynamicVehicleFuelLow = 0; // Min fuel random vehicles can spawn with DynamicVehicleFuelHigh = 100; // Max fuel random vehicles can spawn with DZE_NoVehicleExplosions = false; //Disable vehicle explosions to prevent damage to objects by ramming - doesn't work with amphibious pook which you should not use due to other issues -DZE_TempVars = [7, 15, 4, 4, 2, 3, 2, 0.25, 0.75, 0.5]; //[vehicle, fire, building, moving, sun, water, standing, rain, wind, night] water, standing, rain, wind and night factors have a negative impact on temperature, the greater they are the quicker the player gets cold +DZE_TempVars = [7, 15, 4, 4, 2, 6, 3, 2, 0.25, 0.75, 0.5]; //[vehicle, fire, building, moving, sun, heatpack, water, standing, rain, wind, night] water, standing, rain, wind and night factors have a negative impact on temperature, the greater they are the quicker the player gets cold DZE_WeatherVariables = [10, 20, 5, 10, 0, 0.2, 0, 1, 0, 0.8, 0, 8, 25, 50, 0, false]; //See DynamicWeatherEffects.sqf for info on these values DZE_TwoPrimaries = 2; // 0 do not allow primary weapon on back. 1 allow primary weapon on back, but not when holding a primary weapon in hand. 2 allow player to hold two primary weapons, one on back and one in their hands. DZE_AntiWallLimit = 3; // Number of activations before player_antiWall kills player for glitching attempt. Lower is stricter, but may result in false positives. diff --git a/SQF/dayz_code/gui/status/status_temp_border_down1_ca.paa b/SQF/dayz_code/gui/status/status_temp_border_down1_ca.paa new file mode 100644 index 000000000..39bf27022 Binary files /dev/null and b/SQF/dayz_code/gui/status/status_temp_border_down1_ca.paa differ diff --git a/SQF/dayz_code/gui/status/status_temp_border_down2_ca.paa b/SQF/dayz_code/gui/status/status_temp_border_down2_ca.paa new file mode 100644 index 000000000..ef1461766 Binary files /dev/null and b/SQF/dayz_code/gui/status/status_temp_border_down2_ca.paa differ diff --git a/SQF/dayz_code/gui/status/status_temp_border_down3_ca.paa b/SQF/dayz_code/gui/status/status_temp_border_down3_ca.paa new file mode 100644 index 000000000..f5a3603b4 Binary files /dev/null and b/SQF/dayz_code/gui/status/status_temp_border_down3_ca.paa differ diff --git a/SQF/dayz_code/gui/status/status_temp_border_up1_ca.paa b/SQF/dayz_code/gui/status/status_temp_border_up1_ca.paa new file mode 100644 index 000000000..f5959ea5c Binary files /dev/null and b/SQF/dayz_code/gui/status/status_temp_border_up1_ca.paa differ diff --git a/SQF/dayz_code/gui/status/status_temp_border_up2_ca.paa b/SQF/dayz_code/gui/status/status_temp_border_up2_ca.paa new file mode 100644 index 000000000..bd17415c4 Binary files /dev/null and b/SQF/dayz_code/gui/status/status_temp_border_up2_ca.paa differ diff --git a/SQF/dayz_code/gui/status/status_temp_border_up3_ca.paa b/SQF/dayz_code/gui/status/status_temp_border_up3_ca.paa new file mode 100644 index 000000000..3e83daf59 Binary files /dev/null and b/SQF/dayz_code/gui/status/status_temp_border_up3_ca.paa differ diff --git a/SQF/dayz_code/init/variables.sqf b/SQF/dayz_code/init/variables.sqf index 531fd04de..2981db674 100644 --- a/SQF/dayz_code/init/variables.sqf +++ b/SQF/dayz_code/init/variables.sqf @@ -328,6 +328,16 @@ r_antiD_done = false; carryClick = false; dayz_workingInprogress = false; +//player warming up vars +//heatpack +r_player_warming_heatpack = [false, 0]; +r_player_warming_heatpack_time = 600; + +//displays temp progress +r_player_temp_factor = 0; //to be used for temp(up/down) indicators +r_player_temp_min_factor = -0.04; //(lvl3 down arrow) +r_player_temp_max_factor = 0.04; //(lvl3 up arrow) + //INT Nutrition Info r_player_Nutrition = 0; // Calories r_player_nutritionMuilpty = 2; diff --git a/SQF/dayz_code/stringtable.xml b/SQF/dayz_code/stringtable.xml index 1f69ba792..78e5e3941 100644 --- a/SQF/dayz_code/stringtable.xml +++ b/SQF/dayz_code/stringtable.xml @@ -26,6 +26,15 @@ Posbírat %1 %1 aufsammeln + + Light fire + Зажечь огонь + + + Put out fire + Погасить огонь + + Drop Выбросить @@ -2831,7 +2840,7 @@ Blueprint to create a Herbal Drink. Required - 1 Water bottle boiled and one herb box. - Рецепт приготовления травяного напитка. Требуется: бутылка кипяченой воды и коробка трав. + Рецепт приготовления травяного напитка. Требуется: бутылка чистой воды и коробка трав. Blueprint para crear una bebida a base de plantas. Requerido - 1 Botella de agua hervida y una caja de hierbas. Blueprint pour créer une boisson à base de plantes. Required - 1 bouteille d'eau bouillie et une boîte d'herbe. Blueprint vytvořit Herbal drink. Povinné - 1 láhev vody vařené a jedna bylina box. @@ -5706,7 +5715,7 @@ MRE EPa - Cухпай + Сухой паёк MRE MRE Repas instantané Vojenská dávka @@ -10347,6 +10356,7 @@ SVD Camo + СВД(кам) @@ -10723,7 +10733,7 @@ A Rail Integration System kit designed for the SA-58 assault rifle. - Комплект рельсовай системы интеграции разработанной для SA-58 + Комплект рельсовой системы интеграции разработанной для SA-58