DayZ Scripts
v1.21.156300 ยท Jun 20, 2023
 
Loading...
Searching...
No Matches
CAContinuousQuantityEdible.c
Go to the documentation of this file.
2{
3 protected float m_InitItemQuantity;
4 protected float m_SpentQuantityTotal;
5
6 void CAContinuousQuantityEdible( float quantity_used_per_second, float time_to_repeat )
7 {
8 m_QuantityUsedPerSecond = quantity_used_per_second;
9 m_DefaultTimeToRepeat = time_to_repeat;
12 }
13
14 override void Setup( ActionData action_data )
15 {
16 super.Setup( action_data );
17
18 if (m_InitItemQuantity < 0)
19 {
20 m_InitItemQuantity = action_data.m_MainItem.GetQuantity();
21 }
22 }
23
24 override void CalcAndSetQuantity( ActionData action_data )
25 {
26 //Print("Munch!");
27 if ( m_SpentUnits )
28 {
31
33 }
34 //m_SpentQuantity = Math.Floor(m_SpentQuantity);
35
36 PlayerBase ntarget = PlayerBase.Cast( action_data.m_Target.GetObject() );
37 if ( ntarget )
38 {
39 if ( GetGame().IsServer() )
40 {
41 //action_data.m_MainItem.Consume(targetObject, m_SpentQuantity);
42 ntarget.Consume(action_data.m_MainItem, m_SpentQuantity, EConsumeType.ITEM_CONTINUOUS);
43
44 }
45 }
46 else
47 {
48 if ( GetGame().IsServer() )
49 {
50 //action_data.m_MainItem.Consume(action_data.m_Player, m_SpentQuantity);
51 action_data.m_Player.Consume(action_data.m_MainItem, m_SpentQuantity, EConsumeType.ITEM_CONTINUOUS);
52 }
53 }
54 }
55
56 override float GetProgress()
57 {
58 //return super.GetProgress();
59 if (m_SpentQuantity > 0)
60 {
62 }
63 else
64 {
66 }
67 }
68};
EConsumeType
Definition EConsumeType.c:2
ItemBase m_MainItem
Definition ActionBase.c:28
PlayerBase m_Player
Definition ActionBase.c:33
ref ActionTarget m_Target
Definition ActionBase.c:32
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)
protected ref Param1< float > m_SpentUnits
Definition EnMath.c:7
proto native CGame GetGame()
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'.