Dayz Explorer 1.28.160049
Loading...
Searching...
No Matches
casingleusequantityedible.c
Go to the documentation of this file.
2{
3 void CASingleUseQuantityEdible(float quantity_used_per_action)
4 {
5 m_QuantityUsedPerAction = quantity_used_per_action;
6 }
7
8 override void CalcAndSetQuantity(ActionData action_data)
9 {
10 super.CalcAndSetQuantity(action_data);
11
12 PlayerConsumeData consumeData = new PlayerConsumeData();
13 consumeData.m_Type = EConsumeType.ITEM_CONTINUOUS;
14 consumeData.m_Amount = m_QuantityUsedPerAction;
15 consumeData.m_Source = action_data.m_MainItem;
16
17 consumeData.m_Agents = 0;
18 Edible_Base edibleItem;
19 if (Edible_Base.CastTo(edibleItem, action_data.m_MainItem))
20 {
22 consumeData.m_Agents = action_data.m_Player.GetBloodyHandsPenaltyAgents();
23 }
24
25 if (GetGame().IsServer())
26 {
27 PlayerBase ntarget = PlayerBase.Cast(action_data.m_Target.GetObject());
28 if (ntarget)
29 ntarget.Consume(consumeData);
30 else
31 action_data.m_Player.Consume(consumeData);
32 }
33 }
34}
int GetConsumptionPenaltyContext()
EConsumeType
Definition econsumetype.c:2
void CalcAndSetQuantity()
proto native CGame GetGame()