DayZ 1.24
Loading...
Searching...
No Matches
PourLiquid.c
Go to the documentation of this file.
1class PourLiquid extends RecipeBase
2{
3 override void Init()
4 {
5 m_Name = "#STR_PourLiquid0";
6 m_IsInstaRecipe = false;//should this recipe be performed instantly without animation
7 m_AnimationLength = 1.5;//animation length in relative time units
8 m_Specialty = -0.01;// value > 0 for roughness, value < 0 for precision
9
10
11 //conditions
12 m_MinDamageIngredient[0] = -1;//-1 = disable check
13 m_MaxDamageIngredient[0] = 3;//-1 = disable check
14
15 m_MinQuantityIngredient[0] = 0;//-1 = disable check
16 m_MaxQuantityIngredient[0] = -1;//-1 = disable check
17
18 m_MinDamageIngredient[1] = -1;//-1 = disable check
19 m_MaxDamageIngredient[1] = 3;//-1 = disable check
20
21 m_MinQuantityIngredient[1] = 0;//-1 = disable check
22 m_MaxQuantityIngredient[1] = -1;//-1 = disable check
23 //----------------------------------------------------------------------------------------------------------------------
24
25 //INGREDIENTS
26 //ingredient 1
27 InsertIngredient(0, "Pot"); //you can insert multiple ingredients this way
28 InsertIngredient(0, "CanisterGasoline"); //you can insert multiple ingredients this way
29 InsertIngredient(0, "Canteen"); //you can insert multiple ingredients this way
30 InsertIngredient(0, "WaterBottle"); //you can insert multiple ingredients this way
31 InsertIngredient(0, "Vodka"); //you can insert multiple ingredients this way
32 InsertIngredient(0, "WaterPouch_ColorBase"); //you can insert multiple ingredients this way
33 InsertIngredient(0, "Barrel_ColorBase"); //you can insert multiple ingredients this way
34
35 m_IngredientAddHealth[0] = 0;// 0 = do nothing
36 m_IngredientSetHealth[0] = -1; // -1 = do nothing
37 m_IngredientAddQuantity[0] = 0;// 0 = do nothing
38 m_IngredientDestroy[0] = false;//true = destroy, false = do nothing
39 m_IngredientUseSoftSkills[0] = false;// set 'true' to allow modification of the values by softskills on this ingredient
40
41 //ingredient 2
42 InsertIngredient(1, "Pot"); //you can insert multiple ingredients this way
43 InsertIngredient(1, "CanisterGasoline"); //you can insert multiple ingredients this way
44 InsertIngredient(1, "Canteen"); //you can insert multiple ingredients this way
45 InsertIngredient(1, "WaterBottle"); //you can insert multiple ingredients this way
46 InsertIngredient(1, "Vodka"); //you can insert multiple ingredients this way
47 InsertIngredient(1, "WaterPouch_ColorBase"); //you can insert multiple ingredients this way
48 InsertIngredient(1, "Barrel_ColorBase"); //you can insert multiple ingredients this way
49
50 m_IngredientAddHealth[1] = 0;// 0 = do nothing
51 m_IngredientSetHealth[1] = -1; // -1 = do nothing
52 m_IngredientAddQuantity[1] = 0;// 0 = do nothing
53 m_IngredientDestroy[1] = false;// false = do nothing
54 m_IngredientUseSoftSkills[1] = false;// set 'true' to allow modification of the values by softskills on this ingredient
55 //----------------------------------------------------------------------------------------------------------------------
56
57 //result1
58 //AddResult("");//add results here
59
60 m_ResultSetFullQuantity[0] = false;//true = set full quantity, false = do nothing
61 m_ResultSetQuantity[0] = -1;//-1 = do nothing
62 m_ResultSetHealth[0] = -1;//-1 = do nothing
63 m_ResultInheritsHealth[0] = -1;// (value) == -1 means do nothing; a (value) >= 0 means this result will inherit health from ingredient number (value);(value) == -2 means this result will inherit health from all ingredients averaged(result_health = combined_health_of_ingredients / number_of_ingredients)
64 m_ResultInheritsColor[0] = -1;// (value) == -1 means do nothing; a (value) >= 0 means this result classname will be a composite of the name provided in AddResult method and config value "color" of ingredient (value)
65 m_ResultToInventory[0] = -2;//(value) == -2 spawn result on the ground;(value) == -1 place anywhere in the players inventory, (value) >= 0 means switch position with ingredient number(value)
66 m_ResultUseSoftSkills[0] = false;// set 'true' to allow modification of the values by softskills on this result
67 m_ResultReplacesIngredient[0] = -1;// value == -1 means do nothing; a value >= 0 means this result will transfer item propertiesvariables, attachments etc.. from an ingredient value
68 }
69
70 override bool CanDo(ItemBase ingredients[], PlayerBase player)//final check for recipe's validity
71 {
76
79
80 ItemBase entity_in_hands = ItemBase.Cast(player.GetHumanInventory().GetEntityInHands());
81
82 //condition always true for any bottle, another recipe needed for pouring TO handheld bottle
85 else
87 }
88
89 override void Do(ItemBase ingredients[], PlayerBase player, array<ItemBase> results, float specialty_weight) //gets called upon recipe's completion
90 {
93
94 ItemBase entity_in_hands = ItemBase.Cast(player.GetHumanInventory().GetEntityInHands());
95
98 else
100 }
101};
string m_Name
Super root of all classes in Enforce script.
Definition EnScript.c:11
Definition Liquid.c:2
static void Transfer(ItemBase source_ent, ItemBase target_ent, float quantity=-1)
Definition Liquid.c:37
static bool CanTransfer(ItemBase source_ent, ItemBase target_ent)
Definition Liquid.c:79
override bool CanDo(ItemBase ingredients[], PlayerBase player)
Definition PourLiquid.c:70
override void Do(ItemBase ingredients[], PlayerBase player, array< ItemBase > results, float specialty_weight)
Definition PourLiquid.c:89
override void Init()
Definition PourLiquid.c:3
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.