DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
CAContinuousTimeCooking.c
См. документацию.
2{
3 const float TIME_DAMAGE_THRESHOLD = 5.0;
4
5 protected float m_LocalTimeElpased;
6 protected float m_TimeElapsed;
7 protected float m_TimeElapsedRepeat;
8 protected float m_TimeElapsedDamage;
9 protected ref Param1<float> m_SpentUnits;
10
11 protected float m_TimeToCook;
12 protected float m_AdjustedTimeToCook;
13 protected Cooking m_CookingProcess;
15 protected float m_CookingUpdateTime;
17
18 protected float m_MinTempToCook;
19
20 void CAContinuousTimeCooking(float cooking_update_time)
21 {
22 m_CookingUpdateTime = cooking_update_time;
23 }
24
25 override void Setup(ActionData action_data)
26 {
29
30 if (!m_SpentUnits)
31 {
32 m_SpentUnits = new Param1<float>(0);
33 }
34 else
35 {
36 m_SpentUnits.param1 = 0;
37 }
38
39 //fireplace & cooking process
40 FireplaceBase fireplace = FireplaceBase.Cast(action_data.m_Target.GetObject());
41 m_CookingProcess = fireplace.GetCookingProcess();
42 m_ItemToCook = m_CookingProcess.GetFoodOnStick(action_data.m_MainItem);
45
46 //update elapsed time
47 m_TimeElapsed = m_ItemToCook.GetFoodStage().GetCookingTime();
48
51 }
52
53 override int Execute(ActionData action_data)
54 {
55 if ( !action_data.m_Player )
56 {
57 return UA_ERROR;
58 }
59
60 int cooking_state_update = 0;
61 float cooking_time = m_ItemToCook.GetFoodStage().GetCookingTime();
62 if (m_AdjustedTimeToCook > cooking_time)
63 {
64 m_TimeElapsed += action_data.m_Player.GetDeltaT();
65 m_TimeElapsedRepeat += action_data.m_Player.GetDeltaT();
66
67 if (m_ItemToCook.GetTemperature() < m_MinTempToCook)
68 m_AdjustedTimeToCook += action_data.m_Player.GetDeltaT();
69
71 {
72 cooking_state_update = m_CookingProcess.CookOnStick(m_ItemToCook, m_CookingUpdateTime);
73
74 if (GetGame().IsServer() && m_ItemToCook.GetTemperature() >= m_MinTempToCook)
75 {
77
79 {
81 action_data.m_MainItem.DecreaseHealth(GameConstants.FIRE_ATTACHMENT_DAMAGE_PER_SECOND * TIME_DAMAGE_THRESHOLD, false);
82 }
83 }
84
85 if (cooking_state_update == 1)
86 {
87 Setup(action_data);
88
89 if (!GetGame().IsServer())
90 {
91 if (m_ItemToCook.IsMeat() && m_ItemToCook.GetFoodStage().GetFoodStageType() == FoodStageType.BAKED)
92 {
94 }
95 }
96 }
97
99 }
100
101 return UA_PROCESSING;
102 }
103 else
104 {
105 if (m_SpentUnits)
106 {
109 }
110 OnCompletePogress(action_data);
111 return UA_FINISHED;
112 }
113 }
114
115 override float GetProgress()
116 {
117 if (m_AdjustedTimeToCook != 0)
118 {
120 }
121
122 return 1;
123 }
124};
ActionBase ActionData
Определения ActionBase.c:30
CookingMethodType
Определения Cooking.c:2
FoodStageType
Определения FoodStage.c:2
void OnActionCookedSteak()
Определения AnalyticsManagerClient.c:37
void SetACData(Param units)
Определения CABase.c:40
void OnCompletePogress(ActionData action_data)
Определения CAContinuousBase.c:8
float m_AdjustedTimeToCook
Определения CAContinuousTimeCooking.c:12
override float GetProgress()
Определения CAContinuousTimeCooking.c:115
float m_TimeElapsedRepeat
Определения CAContinuousTimeCooking.c:7
float m_LocalTimeElpased
Определения CAContinuousTimeCooking.c:5
override int Execute(ActionData action_data)
Определения CAContinuousTimeCooking.c:53
Edible_Base m_ItemToCook
Определения CAContinuousTimeCooking.c:14
void CAContinuousTimeCooking(float cooking_update_time)
Определения CAContinuousTimeCooking.c:20
float m_AdjustedCookingUpdateTime
Определения CAContinuousTimeCooking.c:16
float m_TimeElapsedDamage
Определения CAContinuousTimeCooking.c:8
Cooking m_CookingProcess
Определения CAContinuousTimeCooking.c:13
float m_CookingUpdateTime
Определения CAContinuousTimeCooking.c:15
const float TIME_DAMAGE_THRESHOLD
Определения CAContinuousTimeCooking.c:3
override void Setup(ActionData action_data)
Определения CAContinuousTimeCooking.c:25
ref Param1< float > m_SpentUnits
Определения CAContinuousTimeCooking.c:9
AnalyticsManagerClient GetAnalyticsClient()
Определения Game.c:1513
Определения Edible_Base.c:2
Определения constants.c:659
proto native CGame GetGame()
const float FIRE_ATTACHMENT_DAMAGE_PER_SECOND
various damage per second constants
Определения constants.c:799
class Test Setup
Stage definition used in conjunction with Step attribute.
const int UA_FINISHED
Определения constants.c:464
const int UA_ERROR
Определения constants.c:483
const int UA_PROCESSING
Определения constants.c:462