DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ Execute()

override int CAContinuousWaterSlot::Execute ( ActionData action_data)
inlineprotected

См. определение в файле CAContinuousWaterSlot.c строка 59

60 {
61 GardenBase target_GB;
62 Class.CastTo(target_GB, action_data.m_Target.GetObject() );
63 m_ItemQuantity = action_data.m_MainItem.GetQuantity();
64 m_ItemMaxQuantity = action_data.m_MainItem.GetQuantityMax();
65
66 if ( !action_data.m_Player )
67 {
68 return UA_ERROR;
69 }
70
71 if ( m_ItemQuantity <= 0 )
72 {
73 return UA_FINISHED;
74 }
75 else
76 {
78 {
79 m_SpentQuantity += m_QuantityUsedPerSecond * action_data.m_Player.GetDeltaT();
80 if (m_SpentQuantity > m_ItemQuantity) // dont transfer more water than the source's quantity
82
83 m_Slot.GiveWater( m_SpentQuantity );
84
86 CalcAndSetQuantity( action_data );
87
89
90 return UA_PROCESSING;
91 }
92 else
93 {
94 CalcAndSetQuantity( action_data );
95 OnCompletePogress( action_data );
96
97 return UA_FINISHED;
98 }
99 }
100 }
void CalcAndSetQuantity()
Определения FireplaceBase.c:2640
void OnCompletePogress(ActionData action_data)
Определения CAContinuousBase.c:8
float m_ItemQuantity
Определения CAContinuousQuantity.c:3
float m_ItemMaxQuantity
Определения CAContinuousQuantity.c:5
float m_SpentQuantity
Определения CAContinuousQuantity.c:4
float m_QuantityUsedPerSecond
Определения CAContinuousQuantity.c:6
float m_SpentQuantityTotal
Определения CAContinuousWaterSlot.c:5
const int UA_FINISHED
Определения constants.c:464
const int UA_ERROR
Определения constants.c:483
const int UA_PROCESSING
Определения constants.c:462

Перекрестные ссылки ActionData, CalcAndSetQuantity(), Class::CastTo(), CAContinuousQuantity::m_ItemMaxQuantity, CAContinuousQuantity::m_ItemQuantity, CAContinuousQuantity::m_QuantityUsedPerSecond, m_Slot, CAContinuousQuantity::m_SpentQuantity, m_SpentQuantityTotal, CAContinuousBase::OnCompletePogress(), UA_ERROR, UA_FINISHED и UA_PROCESSING.