Dayz Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Loading...
Searching...
No Matches
cacontinuousquantityedible.c
Go to the documentation of this file.
2{
3 protected float m_InitItemQuantity;
4 protected float m_SpentQuantityTotal;
6
7 void CAContinuousQuantityEdible(float quantity_used_per_second, float time_to_repeat)
8 {
9 m_QuantityUsedPerSecondStart = quantity_used_per_second;
10
11 m_DefaultTimeToRepeat = time_to_repeat;
14 }
15
16 override void Setup(ActionData action_data)
17 {
18 super.Setup(action_data);
19
20 if (m_InitItemQuantity < 0)
21 m_InitItemQuantity = action_data.m_MainItem.GetQuantity();
22
24 //qty adjustments based on item properties:
25 if (action_data.m_MainItem.GetTemperature() > PlayerConstants.CONSUMPTION_DAMAGE_TEMP_THRESHOLD)
27 }
28
29 override void CalcAndSetQuantity(ActionData action_data)
30 {
31 if (m_SpentUnits)
32 {
35
37 }
38
39 PlayerConsumeData consumeData = new PlayerConsumeData();
40 consumeData.m_Type = EConsumeType.ITEM_CONTINUOUS;
41 consumeData.m_Amount = m_SpentQuantity;
42 consumeData.m_Source = action_data.m_MainItem;
43
44 consumeData.m_Agents = 0;
45 Edible_Base edibleItem;
46 if (Edible_Base.CastTo(edibleItem, action_data.m_MainItem))
47 {
49 consumeData.m_Agents = action_data.m_Player.GetBloodyHandsPenaltyAgents();
50 }
51
52 if (g_Game.IsServer())
53 {
54 PlayerBase ntarget = PlayerBase.Cast(action_data.m_Target.GetObject());
55 if (ntarget)
56 ntarget.Consume(consumeData);
57 else
58 action_data.m_Player.Consume(consumeData);
59 }
60 }
61
62 override float GetProgress()
63 {
64 if (m_SpentQuantity > 0)
66 else
68 }
69}
ActionBase ActionData
Definition actionbase.c:30
void SetACData(Param units)
Definition cabase.c:40
void CAContinuousQuantityEdible(float quantity_used_per_second, float time_to_repeat)
override void CalcAndSetQuantity(ActionData action_data)
override void Setup(ActionData action_data)
void CAContinuousQuantityRepeat(float quantity_used_per_second, float time_to_repeat)
int GetConsumptionPenaltyContext()
Definition enmath.c:7
static const float CONSUMPTION_DAMAGE_TEMP_THRESHOLD
const float CONSUMPTION_SLOWDOWN_COEF_HOT
DayZGame g_Game
Definition dayzgame.c:3942
EConsumeType
Definition econsumetype.c:2
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.