DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
CAContinuousWaterPlant.c
См. документацию.
2{
3 protected float m_PlantThirstyness;
4 protected float m_TimeToComplete;
5
6 void CAContinuousWaterPlant( float quantity_used_per_second )
7 {
8 m_QuantityUsedPerSecond = quantity_used_per_second;
9 }
10
11 override void Setup( ActionData action_data )
12 {
13 PlantBase target_PB;
14 if (Class.CastTo(target_PB, action_data.m_Target.GetObject()))
15 {
17 if ( !m_SpentUnits )
18 {
19 m_SpentUnits = new Param1<float>(0);
20 }
21 else
22 {
23 m_SpentUnits.param1 = 0;
24 }
25 if ( action_data.m_MainItem )
26 {
27 m_ItemQuantity = action_data.m_MainItem.GetQuantity();
28 }
29 if ( target_PB )
30 {
31 m_PlantThirstyness = target_PB.GetWaterMax() - target_PB.GetWater();
32 }
33
35 }
36 }
37
38 override int Execute( ActionData action_data )
39 {
40 if ( !action_data.m_Player )
41 {
42 return UA_ERROR;
43 }
44
45 if ( m_ItemQuantity <= 0 )
46 {
47 return UA_FINISHED;
48 }
49 else
50 {
52 {
54 m_SpentQuantity += m_QuantityUsedPerSecond * action_data.m_Player.GetDeltaT();
55
56 if ( m_Action )
57 {
58 PlantBase plant;
59 Class.CastTo(plant, action_data.m_Target.GetObject() );
60 Slot slot = plant.GetSlot();
61 slot.GiveWater( m_SpentQuantity );
62 }
63 return UA_PROCESSING;
64 }
65 else
66 {
67 CalcAndSetQuantity( action_data );
68 OnCompletePogress(action_data);
69 return UA_FINISHED;
70 }
71 }
72 }
73
74 override float GetProgress()
75 {
76 //float progress = (m_SpentQuantity*m_QuantityUsedPerSecond)/m_TimeToComplete;
78 }
79};
ActionBase ActionData
Определения ActionBase.c:30
void CalcAndSetQuantity()
Определения FireplaceBase.c:2640
void PlantBase()
Определения PlantBase.c:54
ActionBase m_Action
Определения CABase.c:3
void OnCompletePogress(ActionData action_data)
Определения CAContinuousBase.c:8
float m_ItemQuantity
Определения CAContinuousQuantity.c:3
ref Param1< float > m_SpentUnits
Определения CAContinuousQuantity.c:8
float m_AdjustedQuantityUsedPerSecond
Определения CAContinuousQuantity.c:7
float m_SpentQuantity
Определения CAContinuousQuantity.c:4
float m_QuantityUsedPerSecond
Определения CAContinuousQuantity.c:6
void CAContinuousQuantity(float quantity_used_per_second)
Определения CAContinuousQuantity.c:10
float m_TimeToComplete
Определения CAContinuousWaterPlant.c:4
override float GetProgress()
Определения CAContinuousWaterPlant.c:74
void CAContinuousWaterPlant(float quantity_used_per_second)
Определения CAContinuousWaterPlant.c:6
override int Execute(ActionData action_data)
Определения CAContinuousWaterPlant.c:38
override void Setup(ActionData action_data)
Определения CAContinuousWaterPlant.c:11
float m_PlantThirstyness
Определения CAContinuousWaterPlant.c:3
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения EnMath.c:7
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
static proto float Min(float x, float y)
Returns smaller of two given values.
const int UA_FINISHED
Определения constants.c:464
const int UA_ERROR
Определения constants.c:483
const int UA_PROCESSING
Определения constants.c:462