Dayz Explorer
1.28.160049
Loading...
Searching...
No Matches
actionforceconsumesingle.c
Go to the documentation of this file.
1
class
ActionForceConsumeSingleCB
:
ActionSingleUseBaseCB
2
{
3
override
void
CreateActionComponent()
4
{
5
m_ActionData
.m_ActionComponent =
new
CASingleUseQuantityEdible
(
UAQuantityConsumed
.DEFAULT);
6
}
7
}
8
9
class
ActionForceConsumeSingle :
ActionSingleUseBase
10
{
11
const
int
DEFAULT_CONSUMED_QUANTITY
= 1;
12
13
void
ActionForceConsumeSingle
()
14
{
15
m_CallbackClass =
ActionForceConsumeSingleCB
;
16
m_CommandUID
=
DayZPlayerConstants
.CMD_ACTIONFB_INJECTIONTARGET;
17
m_StanceMask
=
DayZPlayerConstants
.STANCEMASK_ERECT |
DayZPlayerConstants
.STANCEMASK_CROUCH |
DayZPlayerConstants
.STANCEMASK_PRONE;
18
19
m_FullBody =
true
;
20
m_Text =
"#feed"
;
21
}
22
23
override
void
CreateConditionComponents
()
24
{
25
m_ConditionItem =
new
CCINonRuined
();
26
m_ConditionTarget =
new
CCTMan
(
UAMaxDistances
.DEFAULT);
27
}
28
29
int
GetConsumedQuantity
()
30
{
31
return
DEFAULT_CONSUMED_QUANTITY
;
32
}
33
34
override
bool
ActionCondition
(
PlayerBase
player, ActionTarget target,
ItemBase
item)
35
{
36
if
(!super.ActionCondition(player, target, item))
37
return
false
;
38
39
if
(item.GetQuantity() <= item.GetQuantityMin())
40
return
false
;
41
42
PlayerBase
targetPlayer =
PlayerBase
.Cast(target.GetObject());
43
ConsumeConditionData
dta =
new
ConsumeConditionData
(targetPlayer,item);
44
return
targetPlayer && targetPlayer.CanEatAndDrink() && targetPlayer.CanConsumeFood(dta) && item.CanBeConsumed(dta);
45
}
46
47
override
void
OnEndServer
(ActionData action_data)
48
{
49
super.OnEndServer(action_data);
50
51
if
(action_data.m_MainItem && action_data.m_MainItem.GetQuantity() <= 0)
52
action_data.m_MainItem.SetQuantity(0);
53
}
54
55
override
void
OnExecuteServer
(ActionData action_data)
56
{
57
PlayerBase
target =
PlayerBase
.Cast(action_data.m_Target.GetObject());
58
59
if
(target && action_data.m_MainItem)
60
{
61
PlayerConsumeData
consumeData =
new
PlayerConsumeData
();
62
consumeData.m_Type =
EConsumeType
.ITEM_SINGLE_TIME;
63
consumeData.m_Amount =
GetConsumedQuantity
();
64
consumeData.m_Source = action_data.m_MainItem;
65
consumeData.m_Agents = action_data.m_Player.GetBloodyHandsPenaltyAgents();
66
67
target.Consume(consumeData);
68
}
69
}
70
}
CreateConditionComponents
override void CreateConditionComponents()
Definition
actionactivatetrap.c:30
ActionCondition
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition
actionactivatetrap.c:46
OnEndServer
override void OnEndServer(ActionData action_data)
Definition
actionarmexplosive.c:67
m_CommandUID
int m_CommandUID
Definition
actionbase.c:31
m_StanceMask
int m_StanceMask
Definition
actionbase.c:33
DEFAULT_CONSUMED_QUANTITY
const int DEFAULT_CONSUMED_QUANTITY
Definition
actionconsumesingle.c:69
GetConsumedQuantity
int GetConsumedQuantity()
Definition
actionconsumesingle.c:79
OnExecuteServer
override void OnExecuteServer(ActionData action_data)
Definition
actiondigoutstash.c:57
ActionForceConsumeSingle
void ActionForceConsumeSingle()
Definition
actionforceconsumesingle.c:13
ActionBaseCB::m_ActionData
ActionData m_ActionData
Definition
animatedactionbase.c:3
ActionForceConsumeSingleCB
Definition
actionforceconsumesingle.c:2
ActionSingleUseBaseCB
Definition
actionsingleusebase.c:2
ActionSingleUseBase
Definition
actionsingleusebase.c:30
CASingleUseQuantityEdible
Definition
casingleusequantityedible.c:2
CCINonRuined
Definition
ccinonruined.c:2
CCTMan
Definition
cctman.c:2
ConsumeConditionData
Definition
consumeconditiondata.c:2
ItemBase
Definition
inventoryitem.c:731
PlayerBase
Definition
playerbaseclient.c:2
PlayerConsumeData
Definition
playerconsumedata.c:2
UAMaxDistances
Definition
actionconstants.c:110
UAQuantityConsumed
Definition
actionconstants.c:4
DayZPlayerConstants
DayZPlayerConstants
defined in C++
Definition
dayzplayer.c:602
EConsumeType
EConsumeType
Definition
econsumetype.c:2
Daten
4_world
classes
useractionscomponent
actions
singleuse
actionforceconsumesingle.c
Generated by
1.12.0