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

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

void CAContinuousFillPowerGenerator (float quantity_filled_per_second, int liquid_type)
 
override void Setup (ActionData action_data)
 
override int Execute (ActionData action_data)
 
override void CalcAndSetQuantity (ActionData action_data)
 
- Закрытые члены унаследованные от CAContinuousFill
void CAContinuousFill (float quantity_filled_per_second, int liquid_type)
 
override void Setup (ActionData action_data)
 
override int Execute (ActionData action_data)
 
override int Cancel (ActionData action_data)
 
override int Interrupt (ActionData action_data)
 
override float GetProgress ()
 
void CalcAndSetQuantity (ActionData action_data)
 

Дополнительные унаследованные члены

- Закрытые данные унаследованные от CAContinuousFill
float m_TargetUnits
 
float m_SpentQuantity
 
float m_SpentQuantity_total
 
float m_ItemQuantity
 
float m_AdjustedQuantityFilledPerSecond
 
float m_QuantityFilledPerSecond
 
ref Param1< floatm_SpentUnits
 
float m_TimeElpased
 
float m_DefaultTimeStep = 0.25
 
int m_liquid_type
 

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

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

◆ CAContinuousFillPowerGenerator()

void CAContinuousFillPowerGenerator ( float quantity_filled_per_second,
int liquid_type )
inlineprivate
4 {
7 }
int m_liquid_type
Definition CAContinuousFill.c:12
float m_QuantityFilledPerSecond
Definition CAContinuousFill.c:8
Definition EntityAI.c:95

Перекрестные ссылки CAContinuousFill::m_liquid_type и CAContinuousFill::m_QuantityFilledPerSecond.

Методы

◆ CalcAndSetQuantity()

override void CalcAndSetQuantity ( ActionData action_data)
inlineprivate
68 {
70
71 if ( m_SpentUnits )
72 {
75 }
76
77
78 if ( GetGame().IsServer() )
79 {
80 PowerGeneratorBase pg = PowerGeneratorBase.Cast(action_data.m_Target.GetObject()); // get power generator
81 int consumed_fuel = pg.AddFuel( m_SpentQuantity );
82 action_data.m_MainItem.AddQuantity( -consumed_fuel );
83 }
84
86 }
void SetACData(Param units)
Definition CABase.c:40
float m_SpentQuantity_total
Definition CAContinuousFill.c:5
float m_SpentQuantity
Definition CAContinuousFill.c:4
ref Param1< float > m_SpentUnits
Definition CAContinuousFill.c:9
proto native CGame GetGame()

Перекрестные ссылки GetGame(), CAContinuousFill::m_SpentQuantity, CAContinuousFill::m_SpentQuantity_total, CAContinuousFill::m_SpentUnits и CABase::SetACData().

◆ Execute()

override int Execute ( ActionData action_data)
inlineprivate
31 {
32 if ( !action_data.m_Player )
33 {
34 return UA_ERROR;
35 }
36
37 PowerGeneratorBase pg = PowerGeneratorBase.Cast(action_data.m_Target.GetObject()); // get power generator
38
39 if ( pg.GetFuel() >= pg.GetMaxFuel() )
40 {
41 return UA_FINISHED;
42 }
43 else
44 {
46 {
48 m_TimeElpased += action_data.m_Player.GetDeltaT();
49
51 {
53 m_TimeElpased = 0;
54 //Setup(action_data); //reset data after repeat
55 }
56 return UA_PROCESSING;
57 }
58 else
59 {
62 return UA_FINISHED;
63 }
64 }
65 }
void CalcAndSetQuantity()
Definition FireplaceBase.c:2622
void OnCompletePogress(ActionData action_data)
Definition CAContinuousBase.c:8
float m_AdjustedQuantityFilledPerSecond
Definition CAContinuousFill.c:7
float m_DefaultTimeStep
Definition CAContinuousFill.c:11
float m_TargetUnits
Definition CAContinuousFill.c:3
float m_TimeElpased
Definition CAContinuousFill.c:10
const int UA_FINISHED
Definition constants.c:436
const int UA_ERROR
Definition constants.c:455
const int UA_PROCESSING
Definition constants.c:434

Перекрестные ссылки CalcAndSetQuantity(), CAContinuousFill::m_AdjustedQuantityFilledPerSecond, CAContinuousFill::m_DefaultTimeStep, CAContinuousFill::m_SpentQuantity, CAContinuousFill::m_SpentQuantity_total, CAContinuousFill::m_TargetUnits, CAContinuousFill::m_TimeElpased, CAContinuousBase::OnCompletePogress(), UA_ERROR, UA_FINISHED и UA_PROCESSING.

◆ Setup()

override void Setup ( ActionData action_data)
inlineprivate
10 {
11 m_TimeElpased = 0;
12
13 if ( !m_SpentUnits )
14 {
16 }
17 else
18 {
19 m_SpentUnits.param1 = 0;
20 }
21
22 EntityAI pg = EntityAI.Cast(action_data.m_Target.GetObject()); // get power generator
23 m_QuantityFilledPerSecond *= Math.Min(action_data.m_MainItem.GetLiquidThroughputCoef(),pg.GetLiquidThroughputCoef());
24
25 m_ItemQuantity = action_data.m_MainItem.GetQuantity();
26 m_TargetUnits = pg.GetCompEM().GetEnergyMax() - pg.GetCompEM().GetEnergy();
27 m_AdjustedQuantityFilledPerSecond = action_data.m_Player.GetSoftSkillsManager().AddSpecialtyBonus( m_QuantityFilledPerSecond, m_Action.GetSpecialtyWeight(), true );
28 }
ActionBase m_Action
Definition CABase.c:3
float m_ItemQuantity
Definition CAContinuousFill.c:6
Definition Building.c:6
Definition EnMath.c:7
static proto float Min(float x, float y)
Returns smaller of two given values.

Перекрестные ссылки CABase::m_Action, CAContinuousFill::m_AdjustedQuantityFilledPerSecond, CAContinuousFill::m_ItemQuantity, CAContinuousFill::m_QuantityFilledPerSecond, CAContinuousFill::m_SpentUnits, CAContinuousFill::m_TargetUnits, CAContinuousFill::m_TimeElpased и Math::Min().


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