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

Защищенные члены

void CAContinuousFertilizeGardenSlot (float quantity_used_per_second)
 
override void Setup (ActionData action_data)
 
override int Execute (ActionData action_data)
 
override float GetProgress ()
 

Защищенные данные

float m_SlotFertilizerNeed
 
float m_TimeToComplete
 
float m_SpentQuantityTotal
 
float m_StartQuantity
 
Slot m_Slot
 
string m_Selection
 

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

- Закрытые члены унаследованные от CAContinuousQuantity
void CAContinuousQuantity (float quantity_used_per_second)
 
override void Setup (ActionData action_data)
 
override int Execute (ActionData action_data)
 
override int Cancel (ActionData action_data)
 
override float GetProgress ()
 
void CalcAndSetQuantity (ActionData action_data)
 
- Закрытые данные унаследованные от CAContinuousQuantity
float m_ItemQuantity
 
float m_SpentQuantity
 
float m_ItemMaxQuantity
 
float m_QuantityUsedPerSecond
 
float m_AdjustedQuantityUsedPerSecond
 
ref Param1< floatm_SpentUnits
 

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

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

◆ CAContinuousFertilizeGardenSlot()

void CAContinuousFertilizeGardenSlot ( float quantity_used_per_second)
inlineprotected
11 {
14 }
float m_TimeToComplete
Definition CAContinuousFertilizeGardenSlot.c:4
float m_QuantityUsedPerSecond
Definition CAContinuousQuantity.c:6
Definition EntityAI.c:95

Перекрестные ссылки CAContinuousQuantity::m_QuantityUsedPerSecond и m_TimeToComplete.

Методы

◆ Execute()

override int Execute ( ActionData action_data)
inlineprotected
68 {
69 if ( !action_data.m_Player )
70 {
71 return UA_ERROR;
72 }
73
75 {
76 return UA_FINISHED;
77 }
78 else
79 {
81 {
82 m_SpentQuantity += m_QuantityUsedPerSecond * action_data.m_Player.GetDeltaT();
83 float val = action_data.m_Player.GetSoftSkillsManager().AddSpecialtyBonus( m_SpentQuantity, m_Action.GetSpecialtyWeight(), true );
85 Class.CastTo(garden_base, action_data.m_Target.GetObject() );
86 //string selection = garden_base.GetActionComponentName(action_data.m_Target.GetComponentIndex());
87
89
90 if (GetGame().IsServer())
91 {
92 action_data.m_MainItem.AddQuantity( -m_SpentQuantity );
93 }
94
95 garden_base.Fertilize( action_data.m_Player, action_data.m_MainItem, val, m_Selection );
96
97 return UA_PROCESSING;
98 }
99 else
100 {
103 return UA_FINISHED;
104 }
105 }
106 }
void CalcAndSetQuantity()
Definition FireplaceBase.c:2622
ActionBase m_Action
Definition CABase.c:3
void OnCompletePogress(ActionData action_data)
Definition CAContinuousBase.c:8
string m_Selection
Definition CAContinuousFertilizeGardenSlot.c:8
float m_SpentQuantityTotal
Definition CAContinuousFertilizeGardenSlot.c:5
float m_SpentQuantity
Definition CAContinuousQuantity.c:4
float m_ItemQuantity
Definition CAContinuousQuantity.c:3
Super root of all classes in Enforce script.
Definition EnScript.c:11
Definition GardenPlot.c:2
proto native CGame GetGame()
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
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(), Class::CastTo(), GetGame(), CABase::m_Action, CAContinuousQuantity::m_ItemQuantity, CAContinuousQuantity::m_QuantityUsedPerSecond, m_Selection, CAContinuousQuantity::m_SpentQuantity, m_SpentQuantityTotal, CAContinuousBase::OnCompletePogress(), UA_ERROR, UA_FINISHED и UA_PROCESSING.

◆ GetProgress()

override float GetProgress ( )
inlineprotected
109 {
110 /*if ( m_TimeToComplete == 0) //Prevent division by 0 case
111 {
112 return -1;
113 }*/
115 //return (m_SpentQuantity)/m_ItemQuantity;///(m_TimeToComplete * m_QuantityUsedPerSecond)/m_ItemQuantity;
116 }
float m_StartQuantity
Definition CAContinuousFertilizeGardenSlot.c:6

Перекрестные ссылки m_SpentQuantityTotal и m_StartQuantity.

◆ Setup()

override void Setup ( ActionData action_data)
inlineprotected
17 {
19 if ( Class.CastTo(target_GB, action_data.m_Target.GetObject() ) )
20 {
22 m_StartQuantity = action_data.m_MainItem.GetQuantity();
23
24 if ( !m_SpentUnits )
25 {
27 }
28 else
29 {
30 m_SpentUnits.param1 = 0;
31 }
32
33 if ( action_data.m_MainItem )
34 m_ItemQuantity = action_data.m_MainItem.GetQuantity();
35
36 if ( target_GB )
37 {
38 /*string selection = target_GB.GetActionComponentName(action_data.m_Target.GetComponentIndex());
39
40 Slot slot = target_GB.GetSlotBySelection( selection );*/
41
43 target_GB.GetActionComponentNameList(action_data.m_Target.GetComponentIndex(), selections);
44
45 for (int s = 0; s < selections.Count(); s++)
46 {
47 //string selection = selections[s];
49 m_Slot = target_GB.GetSlotBySelection( m_Selection );
50 if (m_Slot)
51 break;
52 }
53
54
55 string item_type = action_data.m_MainItem.GetType();
56 float consumed_quantity = GetGame().ConfigGetFloat( "cfgVehicles " + item_type + " Horticulture ConsumedQuantity" );
57
58 float max = m_Slot.GetFertilizerQuantityMax();
59
61 }
63 }
64 }
Slot m_Slot
Definition CAContinuousFertilizeGardenSlot.c:7
float m_SlotFertilizerNeed
Definition CAContinuousFertilizeGardenSlot.c:3
ref Param1< float > m_SpentUnits
Definition CAContinuousQuantity.c:8
Definition EnMath.c:7
static proto float Min(float x, float y)
Returns smaller of two given values.

Перекрестные ссылки Class::CastTo(), GetGame(), CAContinuousQuantity::m_ItemQuantity, CAContinuousQuantity::m_QuantityUsedPerSecond, m_Selection, m_Slot, m_SlotFertilizerNeed, CAContinuousQuantity::m_SpentQuantity, CAContinuousQuantity::m_SpentUnits, m_StartQuantity, m_TimeToComplete и Math::Min().

Поля

◆ m_Selection

string m_Selection
protected

Используется в Execute() и Setup().

◆ m_Slot

Slot m_Slot
protected

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

◆ m_SlotFertilizerNeed

float m_SlotFertilizerNeed
protected

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

◆ m_SpentQuantityTotal

float m_SpentQuantityTotal
protected

Используется в Execute() и GetProgress().

◆ m_StartQuantity

float m_StartQuantity
protected

Используется в GetProgress() и Setup().

◆ m_TimeToComplete

float m_TimeToComplete
protected

Используется в CAContinuousFertilizeGardenSlot() и Setup().


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