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

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

void ActionFillBottleBase ()
 
override void CreateConditionComponents ()
 
override bool ActionCondition (PlayerBase player, ActionTarget target, ItemBase item)
 
override bool ActionConditionContinue (ActionData action_data)
 
override bool SetupAction (PlayerBase player, ActionTarget target, ItemBase item, out ActionData action_data, Param extra_data=NULL)
 
int GetLiquidType (PlayerBase player, ActionTarget target, ItemBase item)
 
void SetupStance (PlayerBase player)
 
- Закрытые члены унаследованные от ActionContinuousBase
void OnStartAnimationLoopServer (ActionData action_data)
 
void OnStartAnimationLoopClient (ActionData action_data)
 
void OnEndAnimationLoopServer (ActionData action_data)
 
void OnEndAnimationLoopClient (ActionData action_data)
 
void OnFinishProgressServer (ActionData action_data)
 
void OnFinishProgressClient (ActionData action_data)
 

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

const float WATER_DEPTH = 0.5
 
const string ALLOWED_WATER_SURFACES = string.Format("%1|%2", UAWaterType.FRESH, UAWaterType.STILL)
 

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

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

◆ ActionFillBottleBase()

void ActionFillBottleBase ( )
inlineprivate
28 {
30 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_FILLBOTTLEPOND;
31 m_FullBody = true;
32 m_StanceMask = DayZPlayerConstants.STANCEMASK_CROUCH | DayZPlayerConstants.STANCEMASK_ERECT;
34 m_Text = "#fill";
35 }
bool m_FullBody
Definition ActionBase.c:52
string m_Text
Definition ActionBase.c:49
float m_SpecialtyWeight
Definition ActionBase.c:68
int m_StanceMask
Definition ActionBase.c:53
Definition ActionFillBottleBase.c:2
int m_CommandUID
Definition AnimatedActionBase.c:135
m_CallbackClass
Definition AnimatedActionBase.c:137
Definition ActionConstants.c:119
const float PRECISE_LOW
Definition ActionConstants.c:123
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:602

Перекрестные ссылки AnimatedActionBase::m_CallbackClass, AnimatedActionBase::m_CommandUID, m_FullBody, m_SpecialtyWeight, m_StanceMask, m_Text и UASoftSkillsWeight::PRECISE_LOW.

Методы

◆ ActionCondition()

override bool ActionCondition ( PlayerBase player,
ActionTarget target,
ItemBase item )
inlineprivate
44 {
45 if (item.IsFullQuantity())
46 return false;
47
48 Object targetObject = target.GetObject();
49 if (targetObject)
50 {
52 if (fuelstation)
53 {
54 if (!fuelstation.HasFuelToGive())
55 return false;
56 }
58 return false;
59
60 if (targetObject.GetWaterSourceObjectType() != EWaterSourceObjectType.NONE || targetObject.GetWaterSourceObjectType() == EWaterSourceObjectType.THROUGH || targetObject.IsFuelStation())
61 {
62 return GetLiquidType(player, target, item) != -1;
63 }
64 }
65
67 if (waterCheck.Can(player, target))
68 return GetLiquidType(player, target, item) != -1;
69
70 return false;
71 }
EWaterSourceObjectType
Definition EWaterSourceObjectType.c:2
int GetLiquidType()
Definition ItemBase.c:8489
const string ALLOWED_WATER_SURFACES
Definition ActionFillBottleBase.c:25
Definition CCTWaterSurface.c:2
Definition ObjectTyped.c:2
Definition EntityAI.c:95
Definition ActionConstants.c:105
const float DEFAULT
Definition ActionConstants.c:107
Definition EnConvert.c:106
static proto native float DistanceSq(vector v1, vector v2)
Returns the square distance between tips of two 3D vectors.

Перекрестные ссылки ALLOWED_WATER_SURFACES, UAMaxDistances::DEFAULT, vector::DistanceSq() и GetLiquidType().

◆ ActionConditionContinue()

override bool ActionConditionContinue ( ActionData action_data)
inlineprivate
74 {
75 return action_data.m_MainItem.GetQuantity() < action_data.m_MainItem.GetQuantityMax();
76 }

◆ CreateConditionComponents()

override void CreateConditionComponents ( )
inlineprivate
38 {
41 }
ref CCIBase m_ConditionItem
Definition ActionBase.c:55
ref CCTBase m_ConditionTarget
Definition ActionBase.c:56
Definition CCINonRuined.c:2
Definition CCTNone.c:2

Перекрестные ссылки m_ConditionItem и m_ConditionTarget.

◆ GetLiquidType()

int GetLiquidType ( PlayerBase player,
ActionTarget target,
ItemBase item )
inlineprivate
94 {
95 if (target.GetObject() && target.GetObject().IsFuelStation())
96 {
98 return LIQUID_GASOLINE;
99 }
100 else if ((!target.GetObject() || target.GetObject().IsWell() || target.GetObject().GetWaterSourceObjectType() == EWaterSourceObjectType.WELL || target.GetObject().GetWaterSourceObjectType() == EWaterSourceObjectType.THROUGH) && Liquid.CanFillContainer(item, LIQUID_WATER))
101 {
102 return LIQUID_WATER;
103 }
104
105 return -1;
106 }
Definition Liquid.c:2
static bool CanFillContainer(ItemBase container, int liquid_type, bool ignore_fullness_check=false)
Definition Liquid.c:149
const int LIQUID_GASOLINE
Definition constants.c:509
const int LIQUID_WATER
Definition constants.c:505

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

Используется в ActionFillBottleBaseCB::CreateActionComponent().

◆ SetupAction()

override bool SetupAction ( PlayerBase player,
ActionTarget target,
ItemBase item,
out ActionData action_data,
Param extra_data = NULL )
inlineprivate
79 {
81
82 if (super.SetupAction(player, target, item, action_data, extra_data))
83 {
84 if (action_data.m_Target.GetObject())
85 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_FILLBOTTLEWELL;
86
87 return true;
88 }
89
90 return false;
91 }
void SetupStance(PlayerBase player)
Definition ActionFillBottleBase.c:108

Перекрестные ссылки AnimatedActionBase::m_CommandUID и SetupStance().

◆ SetupStance()

void SetupStance ( PlayerBase player)
inlineprivate
109 {
110 //returns in format (totalWaterDepth, characterDepht, 0)
111 vector water_info = HumanCommandSwim.WaterLevelCheck(player, player.GetPosition());
112 if (water_info[1] > WATER_DEPTH)
113 {
114 m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT;
115 }
116 else
117 {
118 m_StanceMask = DayZPlayerConstants.STANCEMASK_CROUCH;
119 }
120 }
const float WATER_DEPTH
Definition ActionFillBottleBase.c:24
class HumanCommandLadder HumanCommandSwim()
Definition human.c:673

Перекрестные ссылки HumanCommandSwim(), m_StanceMask и WATER_DEPTH.

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

Поля

◆ ALLOWED_WATER_SURFACES

const string ALLOWED_WATER_SURFACES = string.Format("%1|%2", UAWaterType.FRESH, UAWaterType.STILL)
private

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

◆ WATER_DEPTH

const float WATER_DEPTH = 0.5
private

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


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