DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ActionConsume.c
См. документацию.
8
10{
12 {
14 m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_EAT;
15 m_CommandUIDProne = DayZPlayerConstants.CMD_ACTIONFB_EAT;
16
17 m_Text = "#eat";
18 }
19
20 override bool ActionCondition( PlayerBase player, ActionTarget target, ItemBase item )
21 {
22 if (!super.ActionCondition(player, target, item))
23 return false;
24
25 ConsumeConditionData dta = new ConsumeConditionData(player,item);
26 return player.CanEatAndDrink() && player.CanConsumeFood(dta) && item.CanBeConsumed(dta);
27 }
28
29 override bool HasProneException()
30 {
31 return true;
32 }
33
34 override bool HasTarget()
35 {
36 return false;
37 }
38
44
45 override void OnEndServer(ActionData action_data)
46 {
47 super.OnEndServer(action_data);
48
49 ItemBase item = action_data.m_MainItem;
50
51 if (item && item.GetQuantity() <= 0.01)
52 {
53 item.SetQuantity(0);
54 }
55 else if (item && GetProgress(action_data) > 0)
56 {
57 // we don't want to inject an agent into an empty container
58 PlayerBase player = action_data.m_Player;
59 PluginTransmissionAgents plugin = PluginTransmissionAgents.Cast(GetPlugin(PluginTransmissionAgents));
60 plugin.TransmitAgents(player, item, AGT_UACTION_TO_ITEM);
61 }
62 }
63};
ActionBase ActionData
Определения ActionBase.c:30
class ActionTargets ActionTarget
PluginBase GetPlugin(typename plugin_type)
Определения PluginManager.c:316
string m_Text
Определения ActionBase.c:58
ref CCIBase m_ConditionItem
Определения ActionBase.c:64
ref CCTBase m_ConditionTarget
Определения ActionBase.c:65
ActionData m_ActionData
Определения AnimatedActionBase.c:3
void ActionConsume()
Определения ActionConsume.c:11
override void OnEndServer(ActionData action_data)
Определения ActionConsume.c:45
override bool HasTarget()
Определения ActionConsume.c:34
override bool HasProneException()
Определения ActionConsume.c:29
override void CreateConditionComponents()
Определения ActionConsume.c:39
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionConsume.c:20
override void CreateActionComponent()
Определения ActionConsume.c:3
Определения ActionConsume.c:2
void ActionContinuousBase()
Определения ActionContinuousBase.c:124
int m_CommandUID
Определения AnimatedActionBase.c:143
override float GetProgress(ActionData action_data)
Определения AnimatedActionBase.c:503
int m_CommandUIDProne
Определения AnimatedActionBase.c:144
Определения CCTSelf.c:2
override bool SetQuantity(float value, bool destroy_config=true, bool destroy_forced=false, bool allow_client=false, bool clamp_to_stack_max=true)
Определения PileOfWoodenPlanks.c:88
Определения InventoryItem.c:731
Определения PlayerBaseClient.c:2
const float DEFAULT
Определения ActionConstants.c:5
const float DEFAULT
Определения ActionConstants.c:29
Определения ActionConstants.c:28
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
const int AGT_UACTION_TO_ITEM
Определения constants.c:503