Handle boiled waterbottles < 10oz

should fix #1838 Translation fixes are probably necessary
This commit is contained in:
icomrade
2016-12-29 15:50:53 -05:00
parent 3176e1619d
commit c64c181f95
6 changed files with 399 additions and 30 deletions

View File

@@ -39,5 +39,6 @@
[FIXED] Error in server_playerSetup that resulted in a <null> value for dayz_onBack in character_data inventory if player had no weapon on back. @ebayShopper
[FIXED] Doors and plots not getting cleaned up properly. see new MaintenanceObjects variable and explenation in HiveExt.ini. Fix present in server package 1.0.6C @icomrade
[FIXED] Generator inventory not saving #1831 @icomrade @schwanzkopfhegel
[FIXED] Handling of boiled water bottles < 10 oz #1838 (Also removed the requirment to have an empty tin can to boil water) @icomrade @schwanzkopfhegel
[INFO] See Documents\CHANGE LOG 1.0.6.txt for the full list of 1.0.5.1 --> 1.0.6 changes.

View File

@@ -264,4 +264,266 @@ class ItemWaterbottle9oz : ItemWaterbottle {
script = "spawn player_fillWater;";
};
};
};
};
//inherit from ItemWaterbottle because that's how the crafting script checks required input
class ItemWaterbottle1ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE1OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE1OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_1oz_ca.paa";
wateroz = 1;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,100,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};
class ItemWaterbottle2ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE2OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE2OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_2oz_ca.paa";
wateroz = 2;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,200,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};
class ItemWaterbottle3ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE3OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE3OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_3oz_ca.paa";
wateroz = 3;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,300,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};
class ItemWaterbottle4ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE4OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE4OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_4oz_ca.paa";
wateroz = 4;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,400,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};
class ItemWaterbottle5ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE5OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE5OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_5oz_ca.paa";
wateroz = 5;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,500,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};
class ItemWaterbottle6ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE6OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE6OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_6oz_ca.paa";
wateroz = 6;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,600,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};
class ItemWaterbottle7ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE7OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE7OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_7oz_ca.paa";
wateroz = 7;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,700,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};
class ItemWaterbottle8ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE8OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE8OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_8oz_ca.paa";
wateroz = 8;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,800,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};
class ItemWaterbottle9ozBoiled : ItemWaterbottle {
displayName = $STR_EPOCH_WATERBOTTLE9OZBOILED;
descriptionShort = $STR_EPOCH_WATERBOTTLE9OZBOILED_DESC;
infectionChance = 0;
picture = "\z\addons\dayz_epoch\pictures\equip_waterbottle_9oz_ca.paa";
wateroz = 9;
containerWater = "ItemWaterBottle";
containerWaterSafe = "ItemWaterBottleSafe";
containerWaterInfected = "ItemWaterBottleInfected";
Nutrition[] = {0,0,900,0};
consumeOutput = "ItemWaterBottleUnfilled";
containerEmpty = "ItemWaterBottleUnfilled";
class ItemActions {
class Consume
{
text = $STR_ACTIONS_DRINK2;
script = "spawn player_consume";
};
class Empty
{
text = $STR_EQUIP_NAME_13_EMPTY;
script = "spawn player_emptyContainer";
};
class Fill {
text = "$STR_ACTIONS_FILL_W";
script = "spawn player_fillWater;";
};
};
};

View File

@@ -1,4 +1,4 @@
private ["_bottletext","_tin1text","_tin2text","_tintext","_hasbottleitem","_hastinitem","_qty","_dis","_sfx","_bottleInfected"];
private ["_bottletext","_tin1text","_tin2text","_tintext","_hastinitem","_qty","_dis","_sfx","_WB2Add"];
if (dayz_actionInProgress) exitWith {localize "str_epoch_player_22" call dayz_rollingMessages;};
dayz_actionInProgress = true;
@@ -7,27 +7,27 @@ _bottletext = getText (configFile >> "CfgMagazines" >> "ItemWaterBottle" >> "dis
_tin1text = getText (configFile >> "CfgMagazines" >> "TrashTinCan" >> "displayName");
_tin2text = getText (configFile >> "CfgMagazines" >> "ItemSodaEmpty" >> "displayName");
_tintext = format["%1 / %2",_tin1text,_tin2text];
_hasbottleitem = (("ItemWaterBottle" in magazines player) || {"ItemWaterBottleInfected" in magazines player} || {"ItemWaterBottleSafe" in magazines player});
_hastinitem = false;
//_hasbottleitem = (("ItemWaterBottle" in magazines player) || {"ItemWaterBottleInfected" in magazines player} || {"ItemWaterBottleSafe" in magazines player});
_qty = 0;
_qty = _qty + ({
_x in ["ItemWaterBottleInfected","ItemWaterBottle","ItemWaterBottleSafe","ItemWaterbottle1oz","ItemWaterbottle2oz","ItemWaterbottle3oz","ItemWaterbottle4oz","ItemWaterbottle5oz","ItemWaterbottle6oz","ItemWaterbottle7oz","ItemWaterbottle8oz","ItemWaterbottle9oz"];
} count magazines player);
a_player_boil = true;
player removeAction s_player_boil;
//s_player_boil = -1;
_bottleInfected = if ("ItemWaterBottleInfected" in magazines player) then {true} else {false};
//_bottleInfected = if ("ItemWaterBottleInfected" in magazines player) then {true} else {false};
/* //canteens are metal, we only use canteens in Epoch
_hastinitem = false;
{
if (_x in magazines player) exitWith {_hastinitem = true;};
} count boil_tin_cans;
if (!_hasbottleitem) exitWith {format[localize "str_player_31",_bottletext,localize "str_player_31_fill"] call dayz_rollingMessages; a_player_boil = false;};
if (!_hastinitem) exitWith {format[localize "str_player_31",_tintext,localize "str_player_31_fill"] call dayz_rollingMessages; a_player_boil = false;};
if (_hasbottleitem and _hastinitem) then {
_qty = 0;
_qty = _qty + ({_x == "ItemWaterBottleInfected"} count magazines player);
_qty = _qty + ({_x == "ItemWaterBottle"} count magazines player);
_qty = _qty + ({_x == "ItemWaterBottleSafe"} count magazines player);
*/
if (_qty > 0) then {
player playActionNow "Medic";
uiSleep 1;
_dis=10;
@@ -35,29 +35,35 @@ if (_hasbottleitem and _hastinitem) then {
[player,_sfx,0,false,_dis] call dayz_zombieSpeak;
[player,_dis,true,(getPosATL player)] call player_alertZombies;
uiSleep 5;
for "_x" from 1 to _qty do {
if ("ItemWaterBottleInfected" in magazines player) then {
player removeMagazine "ItemWaterBottleInfected";
} else {
if ("ItemWaterBottleSafe" in magazines player) then {
player removeMagazine "ItemWaterBottleSafe";
} else {
player removeMagazine "ItemWaterBottle";
};
_WB2Add = "ItemWaterBottleBoiled";
switch (true) do {
case ("ItemWaterBottleInfected" in magazines player): { player removeMagazine "ItemWaterBottleInfected"; };
case ("ItemWaterBottleSafe" in magazines player): { player removeMagazine "ItemWaterBottleSafe"; };
case ("ItemWaterBottle" in magazines player): { player removeMagazine "ItemWaterBottle"; };
case ("ItemWaterbottle1oz" in magazines player): { player removeMagazine "ItemWaterbottle1oz"; _WB2Add = "ItemWaterbottle1ozBoiled"; };
case ("ItemWaterbottle2oz" in magazines player): { player removeMagazine "ItemWaterbottle2oz"; _WB2Add = "ItemWaterbottle2ozBoiled"; };
case ("ItemWaterbottle3oz" in magazines player): { player removeMagazine "ItemWaterbottle3oz"; _WB2Add = "ItemWaterbottle3ozBoiled"; };
case ("ItemWaterbottle4oz" in magazines player): { player removeMagazine "ItemWaterbottle4oz"; _WB2Add = "ItemWaterbottle4ozBoiled"; };
case ("ItemWaterbottle5oz" in magazines player): { player removeMagazine "ItemWaterbottle5oz"; _WB2Add = "ItemWaterbottle5ozBoiled"; };
case ("ItemWaterbottle6oz" in magazines player): { player removeMagazine "ItemWaterbottle6oz"; _WB2Add = "ItemWaterbottle6ozBoiled"; };
case ("ItemWaterbottle7oz" in magazines player): { player removeMagazine "ItemWaterbottle7oz"; _WB2Add = "ItemWaterbottle7ozBoiled"; };
case ("ItemWaterbottle8oz" in magazines player): { player removeMagazine "ItemWaterbottle8oz"; _WB2Add = "ItemWaterbottle8ozBoiled"; };
case ("ItemWaterbottle9oz" in magazines player): { player removeMagazine "ItemWaterbottle9oz"; _WB2Add = "ItemWaterbottle9ozBoiled"; };
};
if (dayz_waterBottleBreaking && {[0.1] call fn_chance}) then {
player addMagazine "ItemWaterBottleDmg";
//systemChat (localize ("str_waterbottle_broke"));
localize "str_waterbottle_broke" call dayz_rollingMessages;
} else {
player addMagazine "ItemWaterBottleBoiled";
player addMagazine _WB2Add;
};
};
format [localize "str_player_boiledwater",_qty] call dayz_rollingMessages;
} else {
localize "str_player_02" call dayz_rollingMessages;
//localize "str_player_02" call dayz_rollingMessages;
format[localize "str_player_31",_bottletext,localize "str_player_31_fill"] call dayz_rollingMessages;
};
a_player_boil = false;

View File

@@ -23,7 +23,7 @@ class ItemActions
};
};
*/
private ["_tradeComplete","_onLadder","_canDo","_selectedRecipeOutput","_proceed","_itemIn","_countIn","_missing","_missingQty","_qty","_itemOut","_countOut","_started","_finished","_animState","_isMedic","_removed","_tobe_removed_total","_textCreate","_textMissing","_selectedRecipeInput","_selectedRecipeInputStrict","_num_removed","_removed_total","_temp_removed_array","_abort","_waterLevel","_waterLevel_lowest","_reason","_isNear","_missingTools","_hastoolweapon","_selectedRecipeTools","_distance","_crafting","_needNear","_item","_baseClass","_num_removed_weapons","_outputWeapons","_inputWeapons","_randomOutput","_craft_doLoop","_selectedWeapon","_selectedMag","_sfx"];
private ["_tradeComplete","_onLadder","_canDo","_selectedRecipeOutput","_boiled","_proceed","_itemIn","_countIn","_missing","_missingQty","_qty","_itemOut","_countOut","_started","_finished","_animState","_isMedic","_removed","_tobe_removed_total","_textCreate","_textMissing","_selectedRecipeInput","_selectedRecipeInputStrict","_num_removed","_removed_total","_temp_removed_array","_abort","_waterLevel","_waterLevel_lowest","_reason","_isNear","_missingTools","_hastoolweapon","_selectedRecipeTools","_distance","_crafting","_needNear","_item","_baseClass","_num_removed_weapons","_outputWeapons","_inputWeapons","_randomOutput","_craft_doLoop","_selectedWeapon","_selectedMag","_sfx"];
if (dayz_actionInProgress) exitWith {localize "str_epoch_player_63" call dayz_rollingMessages;};
dayz_actionInProgress = true;
@@ -44,6 +44,7 @@ _outputWeapons = [];
_selectedRecipeOutput = [];
_onLadder = (getNumber (configFile >> "CfgMovesMaleSdr" >> "States" >> (animationState player) >> "onLadder")) == 1;
_canDo = (!r_drag_sqf && !r_player_unconscious && !_onLadder);
_boiled = false;
// Need Near Requirements
_needNear = getArray (configFile >> _baseClass >> _item >> "ItemActions" >> _crafting >> "neednearby");
@@ -195,6 +196,9 @@ if (_canDo) then {
//diag_log format["debug remove: %1 of: %2", _configParent, _x];
if (_x == "ItemWaterbottle" || _configParent == "ItemWaterbottle") then {
_waterLevel = floor((getNumber(configFile >> "CfgMagazines" >> _x >> "wateroz")) - 1);
if (_x in ["ItemWaterbottle9ozBoiled","ItemWaterbottle8ozBoiled","ItemWaterbottle7ozBoiled","ItemWaterbottle6ozBoiled","ItemWaterbottle5ozBoiled","ItemWaterbottle4ozBoiled","ItemWaterbottle3ozBoiled","ItemWaterbottle2ozBoiled","ItemWaterBottleBoiled"]) then {
_boiled = true;
};
};
_temp_removed_array set [count _temp_removed_array,_x];
};
@@ -236,7 +240,11 @@ if (_canDo) then {
_countOut = _x select 1;
if (_itemOut == "ItemWaterbottleUnfilled") then {
if (_waterLevel > 0) then {
_itemOut = format["ItemWaterbottle%1oz",_waterLevel];
if (_boiled) then {
_itemOut = format["ItemWaterbottle%1ozBoiled",_waterLevel];
} else {
_itemOut = format["ItemWaterbottle%1oz",_waterLevel];
};
};
};
// diag_log format["Checking for water level: %1", _waterLevel];

View File

@@ -238,7 +238,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
_weaponsPlayer = weapons player;
_hasCrowbar = "ItemCrowbar" in _itemsPlayer or "MeleeCrowbar" in _weaponsPlayer or dayz_onBack == "MeleeCrowbar";
_hasToolbox = "ItemToolbox" in _itemsPlayer;
_hasbottleitem = (("ItemWaterBottle" in _magazinesPlayer) || ("ItemWaterBottleInfected" in _magazinesPlayer) || ("ItemWaterBottleSafe" in _magazinesPlayer));
_hasbottleitem = (("ItemWaterBottle" in _magazinesPlayer) || {"ItemWaterBottleInfected" in _magazinesPlayer} || {"ItemWaterBottleSafe" in _magazinesPlayer} || {"ItemWaterBottleBoiled" in _magazinesPlayer});
_isAlive = alive _cursorTarget;
_text = getText (configFile >> "CfgVehicles" >> _typeOfCursorTarget >> "displayName");
_isPlant = _typeOfCursorTarget in Dayz_plants;
@@ -351,7 +351,9 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
//Fireplace Actions check
if ((_cursorTarget call isInflamed) or (inflamed _cursorTarget)) then {
_hasRawMeat = {_x in Dayz_meatraw} count _magazinesPlayer > 0;
_hastinitem = {_x in boil_tin_cans} count _magazinesPlayer > 0;
//_hastinitem = {_x in boil_tin_cans} count _magazinesPlayer > 0;
_hasunboiledwater = {_x in ["ItemWaterBottleInfected","ItemWaterBottle","ItemWaterBottleSafe","ItemWaterbottle1oz","ItemWaterbottle2oz","ItemWaterbottle3oz","ItemWaterbottle4oz","ItemWaterbottle5oz","ItemWaterbottle6oz","ItemWaterbottle7oz","ItemWaterbottle8oz","ItemWaterbottle9oz"]} count _magazinesPlayer > 0;
//Cook Meat
if (_hasRawMeat && !a_player_cooking) then {
@@ -360,7 +362,7 @@ if (!isNull _cursorTarget && !_inVehicle && !_isPZombie && (player distance _cur
};
};
//Boil Water
if (_hastinitem && _hasbottleitem && !a_player_boil) then {
if (_hasunboiledwater && !a_player_boil) then {
if (s_player_boil < 0) then {
s_player_boil = player addAction [localize "str_actions_boilwater", "\z\addons\dayz_code\actions\boil.sqf",_cursorTarget, 3, true, true];
};

View File

@@ -14766,6 +14766,96 @@
<German>Wasserflasche mit 900ml Wasser.</German>
<Russian>Бутылка с 9 унциями воды.</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE1OZBOILED">
<English>Water Bottle (Boiled 1oz)</English>
<German>Wasserflasche (abgekocht 100ml)</German>
<Russian>Бутылка (чистая вода 1 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE1OZBOILED_DESC">
<English>Water Bottle with 1oz of water (Boiled).</English>
<German>Wasserflasche mit 100ml Wasser (abgekocht).</German>
<Russian>Бутылка с 1 унцией воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE2OZBOILED">
<English>Water Bottle (Boiled 2oz)</English>
<German>Wasserflasche (abgekocht 200ml)</German>
<Russian>Бутылка (чистая вода 2 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE2OZBOILED_DESC">
<English>Water Bottle with 2oz of water (Boiled).</English>
<German>Wasserflasche mit 200ml Wasser (abgekocht).</German>
<Russian>Бутылка с 2 унциями воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE3OZBOILED">
<English>Water Bottle (Boiled 3oz)</English>
<German>Wasserflasche (abgekocht 300ml)</German>
<Russian>Бутылка (чистая вода 3 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE3OZBOILED_DESC">
<English>Water Bottle with 3oz of water (Boiled).</English>
<German>Wasserflasche mit 300ml Wasser (abgekocht).</German>
<Russian>Бутылка с 3 унциями воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE4OZBOILED">
<English>Water Bottle (Boiled 4oz)</English>
<German>Wasserflasche (abgekocht 400ml)</German>
<Russian>Бутылка (чистая вода 4 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE4OZBOILED_DESC">
<English>Water Bottle with 4oz of water (Boiled).</English>
<German>Wasserflasche mit 400ml Wasser (abgekocht).</German>
<Russian>Бутылка с 4 унциями воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE5OZBOILED">
<English>Water Bottle (Boiled 5oz)</English>
<German>Wasserflasche (abgekocht 500ml)</German>
<Russian>Бутылка (чистая вода 5 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE5OZBOILED_DESC">
<English>Water Bottle with 5oz of water (Boiled).</English>
<German>Wasserflasche mit 500ml Wasser (abgekocht).</German>
<Russian>Бутылка с 5 унциями воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE6OZBOILED">
<English>Water Bottle (Boiled 6oz)</English>
<German>Wasserflasche (abgekocht 600ml)</German>
<Russian>Бутылка (чистая вода 6 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE6OZBOILED_DESC">
<English>Water Bottle with 6oz of water (Boiled).</English>
<German>Wasserflasche mit 600ml Wasser (abgekocht).</German>
<Russian>Бутылка с 6 унциями воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE7OZBOILED">
<English>Water Bottle (Boiled 7oz)</English>
<German>Wasserflasche (abgekocht 700ml)</German>
<Russian>Бутылка (чистая вода 7 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE7OZBOILED_DESC">
<English>Water Bottle with 7oz of water (Boiled).</English>
<German>Wasserflasche mit 700ml Wasser (abgekocht).</German>
<Russian>Бутылка с 7 унциями воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE8OZBOILED">
<English>Water Bottle (Boiled 8oz)</English>
<German>Wasserflasche (abgekocht 800ml)</German>
<Russian>Бутылка (чистая вода 8 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE8OZBOILED_DESC">
<English>Water Bottle with 8oz of water (Boiled).</English>
<German>Wasserflasche mit 800ml Wasser (abgekocht).</German>
<Russian>Бутылка с 8 унциями воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE9OZBOILED">
<English>Water Bottle (Boiled 9oz)</English>
<German>Wasserflasche (abgekocht 900ml)</German>
<Russian>Бутылка (чистая вода 9 унций)</Russian>
</Key>
<Key ID="STR_EPOCH_WATERBOTTLE9OZBOILED_DESC">
<English>Water Bottle with 9oz of water (Boiled).</English>
<German>Wasserflasche mit 900ml Wasser (abgekocht).</German>
<Russian>Бутылка с 9 унциями воды (чистая вода).</Russian>
</Key>
<Key ID="STR_EPOCH_BRIEFCASE">
<English>Briefcase</English>
<German>Koffer</German>