Dayz 1.25
Dayz Code Explorer by KGB
Загрузка...
Поиск...
Не найдено
Класс ActionWorldLiquidActionSwitch
+ Граф наследования:ActionWorldLiquidActionSwitch:

Закрытые члены

void ActionWorldLiquidActionSwitch ()
 
override void CreateConditionComponents ()
 
override bool ActionCondition (PlayerBase player, ActionTarget target, ItemBase item)
 
override void Start (ActionData action_data)
 
override bool IsLocal ()
 
override bool IsInstant ()
 
override bool RemoveForceTargetAfterUse ()
 

Закрытые данные

bool m_switch_to
 

Подробное описание

Конструктор(ы)

◆ ActionWorldLiquidActionSwitch()

6 {
7 m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT | DayZPlayerConstants.STANCEMASK_CROUCH | DayZPlayerConstants.STANCEMASK_PRONE;
8 }
int m_StanceMask
Definition ActionBase.c:53
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:602

Перекрестные ссылки m_StanceMask.

Методы

◆ ActionCondition()

override bool ActionCondition ( PlayerBase player,
ActionTarget target,
ItemBase item )
inlineprivate
25 {
26 ItemBase target_item = ItemBase.Cast(target.GetObject());
27 if (Barrel_ColorBase.Cast(target_item) && !target_item.IsOpen())
28 return false;
29
30 if ( target_item && item && Liquid.CanFillContainer( item, target_item.GetLiquidType(),true ) && Liquid.CanFillContainer( target_item, item.GetLiquidType(), true ) && !GetGame().IsInventoryOpen() ) //TODO find better condition than IsKindOf
31 {
32 if ( target_item.GetQuantity() > target_item.GetQuantityMin() && item.GetQuantity() < item.GetQuantityMax() && !player.GetLiquidTendencyDrain() && Liquid.CanFillContainer( item, target_item.GetLiquidType() ) )
33 {
34 if ( Liquid.CanFillContainer( target_item, item.GetLiquidType() ) )
35 {
36 m_switch_to = 0;//"#liquid_drain";
37 return true;
38 }
39 else
40 {
41 player.SetLiquidTendencyDrain(true);
42 return false;
43 }
44 }
45 if ( item.GetQuantity() > item.GetQuantityMin() && target_item.GetQuantity() < target_item.GetQuantityMax() && player.GetLiquidTendencyDrain() && Liquid.CanFillContainer( target_item, item.GetLiquidType() ) )
46 {
47 if ( Liquid.CanFillContainer( item, target_item.GetLiquidType() ) )
48 {
49 m_switch_to = 1;//"#liquid_pour";
50 return true;
51 }
52 else
53 {
54 player.SetLiquidTendencyDrain(false);
55 return false;
56 }
57 }
58 }
59 return false;
60 }
bool m_switch_to
Definition ActionWorldLiquidActionSwitch.c:4
Definition Barrel_ColorBase.c:2
Definition InventoryItem.c:731
Definition Liquid.c:2
static bool CanFillContainer(ItemBase container, int liquid_type, bool ignore_fullness_check=false)
Definition Liquid.c:149
Definition EntityAI.c:95
proto native CGame GetGame()

Перекрестные ссылки Liquid::CanFillContainer(), GetGame() и m_switch_to.

◆ CreateConditionComponents()

override void CreateConditionComponents ( )
inlineprivate
11 {
14 }
ref CCIBase m_ConditionItem
Definition ActionBase.c:55
ref CCTBase m_ConditionTarget
Definition ActionBase.c:56
Definition CCINonRuined.c:2
Definition CCTNonRuined.c:2
Definition ActionConstants.c:105
const float DEFAULT
Definition ActionConstants.c:107

Перекрестные ссылки UAMaxDistances::DEFAULT, m_ConditionItem и m_ConditionTarget.

◆ IsInstant()

override bool IsInstant ( )
inlineprivate
78 {
79 return true;
80 }

◆ IsLocal()

override bool IsLocal ( )
inlineprivate
73 {
74 return true;
75 }

◆ RemoveForceTargetAfterUse()

override bool RemoveForceTargetAfterUse ( )
inlineprivate
83 {
84 return false;
85 }

◆ Start()

override void Start ( ActionData action_data)
inlineprivate
63 {
64 super.Start( action_data );
65 bool state;
66 state = action_data.m_Player.GetLiquidTendencyDrain();
67 action_data.m_Player.SetLiquidTendencyDrain(!state);
68
69 //Print(action_data.m_Player.GetLiquidTendencyDrain());
70 }

Поля

◆ m_switch_to

bool m_switch_to
private

Используется в ActionCondition().


Объявления и описания членов класса находятся в файле: