Dayz 1.25
Dayz Code Explorer by KGB
Загрузка...
Поиск...
Не найдено
Класс PPERequesterBase

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

void PPERequesterBase (int requester_IDX)
 
void SetRequesterUpdating (bool state)
 Has to be set for the requester to be handled.
 
void Start (Param par=null)
 
void Stop (Param par=null)
 
bool IsRequesterRunning ()
 
void SetRequesterIDX (int idx)
 automatically assigned by PPERequesterBank
 
int GetRequesterIDX ()
 Returns requester index.
 
int GetCategoryMask ()
 mask for mass-handling methods like 'StopAllEffects'
 
void SetTargetValueBool (int mat_id, int param_idx, bool val, int priority_layer, int operator=PPOperators.SET)
 
void SetTargetValueBoolDefault (int mat_id, int param_idx)
 
void SetTargetValueInt (int mat_id, int param_idx, bool relative, int val, int priority_layer, int operator=PPOperators.SET)
 
void SetTargetValueIntDefault (int mat_id, int param_idx)
 
void SetTargetValueFloat (int mat_id, int param_idx, bool relative, float val, int priority_layer, int operator=PPOperators.ADD_RELATIVE)
 
void SetTargetValueFloatDefault (int mat_id, int param_idx)
 
void SetTargetValueColor (int mat_id, int param_idx, ref array< float > val, int priority_layer, int operator=PPOperators.ADD_RELATIVE)
 
void SetTargetValueColorDefault (int mat_id, int param_idx)
 
void QueueValuesSend ()
 Sets this requester to update in the manager.
 
PPERequestParamDataBase GetRequestData (int mat_id, int param_idx, int type)
 returns request data for specific parameter, or creates one if one does not exist in this request yet (singletons)
 
PPERequestParamDataBase PrepareData (int mat_id, int param_idx, int type)
 
map< int, ref map< int, ref PPERequestParamDataBase > > GetActiveRequestStructure ()
 
void ClearRequesterData ()
 
void SendCurrentValueData (PPERequestParamDataBase data)
 
void OnUpdate (float delta)
 
void OnStart (Param par=null)
 
void OnStop (Param par=null)
 automatically resets all material parameters of this requester to defaults
 
float RelativizeValue (float value, int var_type, int mat_id, int param_id, bool relative)
 converts all values used to relative values (if not relative already)
 
void SetDefaultValuesAll ()
 Sets all requested values to default, ignoring them in further calculations.
 
void DbgPrnt (string text)
 

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

bool m_IsRunning
 
bool m_ValuesSent
 
int m_IDX
 
bool m_Valid = false
 
ref map< int, ref map< int, ref PPERequestParamDataBase > > m_RequestDataStructure
 

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

override int GetCategoryMask ()
 

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

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

◆ PPERequesterBase()

void PPERequesterBase ( int requester_IDX)
inlineprotected
13 {
14 m_Valid = PPERequesterBank.VerifyRequester(this);
15
17 m_ValuesSent = true;
18 m_IsRunning = false;
20 }
bool m_IsRunning
Definition PPERequestPlatformsBase.c:4
ref map< int, ref map< int, ref PPERequestParamDataBase > > m_RequestDataStructure
Definition PPERequestPlatformsBase.c:10
int m_IDX
Definition PPERequestPlatformsBase.c:6
bool m_Valid
Definition PPERequestPlatformsBase.c:8
bool m_ValuesSent
Definition PPERequestPlatformsBase.c:5
Definition EntityAI.c:95

Перекрестные ссылки m_IDX, m_IsRunning, m_RequestDataStructure, m_Valid и m_ValuesSent.

Методы

◆ ClearRequesterData()

void ClearRequesterData ( )
inlineprotected
325 {
327 }

Перекрестные ссылки m_RequestDataStructure.

◆ DbgPrnt()

void DbgPrnt ( string text)
inlineprotected
425 {
426 //Debug.Log(""+text);
427 }

◆ GetActiveRequestStructure()

map< int, ref map< int, ref PPERequestParamDataBase > > GetActiveRequestStructure ( )
inlineprotected
320 {
322 }

Перекрестные ссылки m_RequestDataStructure.

◆ GetCategoryMask() [1/2]

int GetCategoryMask ( )
inlineprotected

mask for mass-handling methods like 'StopAllEffects'

72 {
73 return PPERequesterCategory.NONE;
74 }
PPERequesterCategory
Definition PPEConstants.c:28

◆ GetCategoryMask() [2/2]

override int GetCategoryMask ( )
inlineprivate
445 {
446 return PPERequesterCategory.MENU_EFFECTS;
447 }

◆ GetRequestData()

PPERequestParamDataBase GetRequestData ( int mat_id,
int param_idx,
int type )
inlineprotected

returns request data for specific parameter, or creates one if one does not exist in this request yet (singletons)

262 {
265 {
267 {
269 }
270 else
271 {
274 }
275 }
276 else
277 {
282 }
283
284 if (!data)
285 {
286 Error("GetRequestData | no data found in the structure");
287 }
288
289 data.m_Requester = this;
290
291 return data;
292 }
Data for one material parameter, requester side.
Definition PPERequestData.c:3
PPERequestParamDataBase PrepareData(int mat_id, int param_idx, int type)
Definition PPERequestPlatformsBase.c:294
void Error(string err)
Messagebox with error message.
Definition EnDebug.c:90

Перекрестные ссылки Error(), m_RequestDataStructure и PrepareData().

Используется в SetTargetValueBool(), SetTargetValueBoolDefault(), SetTargetValueColor(), SetTargetValueColorDefault(), SetTargetValueFloat(), SetTargetValueFloatDefault(), SetTargetValueInt() и SetTargetValueIntDefault().

◆ GetRequesterIDX()

int GetRequesterIDX ( )
inlineprotected

Returns requester index.

66 {
67 return m_IDX;
68 }

Перекрестные ссылки m_IDX.

◆ IsRequesterRunning()

bool IsRequesterRunning ( )
inlineprotected
54 {
55 return m_IsRunning;
56 }

Перекрестные ссылки m_IsRunning.

◆ OnStart()

void OnStart ( Param par = null)
inlineprotected
355 {
357 }
void SetRequesterUpdating(bool state)
Has to be set for the requester to be handled.
Definition PPERequestPlatformsBase.c:23

Перекрестные ссылки SetRequesterUpdating().

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

◆ OnStop()

void OnStop ( Param par = null)
inlineprotected

automatically resets all material parameters of this requester to defaults

361 {
362 //DbgPrnt("PPEDebug | " + this + " | OnStop");
365 }
void SetDefaultValuesAll()
Sets all requested values to default, ignoring them in further calculations.
Definition PPERequestPlatformsBase.c:388

Перекрестные ссылки SetDefaultValuesAll() и SetRequesterUpdating().

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

◆ OnUpdate()

void OnUpdate ( float delta)
inlineprotected
337 {
338 //DbgPrnt("PPEDebug | PPERequesterBase | OnUpdate");
339
340 if ( !m_ValuesSent )
341 {
342 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
343 {
344 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
345 {
346 SendCurrentValueData(m_RequestDataStructure.GetElement(i).GetElement(j)); //map<int,ref map<int,PPERequestParamDataBase>> //<material<param,data>>
347 }
348 }
349 m_ValuesSent = true;
350 }
352 }
@ Count
Definition RandomGeneratorSyncManager.c:7
void SendCurrentValueData(PPERequestParamDataBase data)
Definition PPERequestPlatformsBase.c:329

Перекрестные ссылки Count, m_RequestDataStructure, m_ValuesSent, SendCurrentValueData() и SetRequesterUpdating().

◆ PrepareData()

PPERequestParamDataBase PrepareData ( int mat_id,
int param_idx,
int type )
inlineprotected
295 {
297 switch (type)
298 {
299 case PPEConstants.VAR_TYPE_BOOL:
301 break;
302
303 case PPEConstants.VAR_TYPE_INT:
304 data = new PPERequestParamDataInt(m_IDX, mat_id, param_idx);
305 break;
306
307 case PPEConstants.VAR_TYPE_FLOAT:
309 break;
310
311 case PPEConstants.VAR_TYPE_COLOR:
312 data = new PPERequestParamDataColor(m_IDX, mat_id, param_idx);
313 break;
314 }
315 return data;
316 }
void PPERequestParamDataBool(int requester_idx, int mat_id, int param_id, int data_type=0, int priority=0, int mask=PPOperators.SET, bool relative=false)
Definition PPERequestData.c:111
void PPERequestParamDataFloat(int requester_idx, int mat_id, int param_id, int data_type=0, int priority=0, int mask=PPOperators.SET, bool relative=false)
Definition PPERequestData.c:142

Перекрестные ссылки m_IDX, PPERequestParamDataBool() и PPERequestParamDataFloat().

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

◆ QueueValuesSend()

void QueueValuesSend ( )
inlineprotected

Sets this requester to update in the manager.

254 {
255 m_ValuesSent = false;
256 //m_IsRunning = true;
258 }

Перекрестные ссылки m_ValuesSent и SetRequesterUpdating().

Используется в SetTargetValueBool(), SetTargetValueBoolDefault(), SetTargetValueColor(), SetTargetValueColorDefault(), SetTargetValueFloat(), SetTargetValueFloatDefault(), SetTargetValueInt() и SetTargetValueIntDefault().

◆ RelativizeValue()

float RelativizeValue ( float value,
int var_type,
int mat_id,
int param_id,
bool relative )
inlineprotected

converts all values used to relative values (if not relative already)

369 {
370 float ret = value;
371 if (!relative) //if not already relative...
372 {
373 switch (var_type)
374 {
375 case PPEConstants.VAR_TYPE_FLOAT:
377 ret = Math.InverseLerp(p_float.param3, p_float.param4, ret);
378 ret = Math.Clamp(ret,0.0,1.0);
379 break;
380 }
381 }
382 //Print("RelativizeValue: " + ret);
383
384 return ret;
385 }
Definition EnMath.c:7
Static component of PPE manager, used to hold the instance.
Definition PPEManager.c:3
static PPEManager GetPPEManager()
Returns the manager instance singleton.
Definition PPEManager.c:27
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...

Перекрестные ссылки Math::Clamp(), PPEManagerStatic::GetPPEManager() и Math::InverseLerp().

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

◆ SendCurrentValueData()

void SendCurrentValueData ( PPERequestParamDataBase data)
inlineprotected
330 {
331 PPEManagerStatic.GetPPEManager().SendMaterialValueData(data);
332 }

Перекрестные ссылки PPEManagerStatic::GetPPEManager().

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

◆ SetDefaultValuesAll()

void SetDefaultValuesAll ( )
inlineprotected

Sets all requested values to default, ignoring them in further calculations.

389 {
390 //<material<param_id,data>>
392
393 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
394 {
395 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
396 {
397 req_data = m_RequestDataStructure.GetElement(i).GetElement(j);
398
399 if (!req_data.IsDataActive())
400 continue;
401
402 switch (req_data.GetVarType())
403 {
404 case PPEConstants.VAR_TYPE_BOOL:
405 SetTargetValueBoolDefault(req_data.GetMaterialID(),req_data.GetParameterID());
406 break;
407
408 case PPEConstants.VAR_TYPE_INT:
409 SetTargetValueIntDefault(req_data.GetMaterialID(),req_data.GetParameterID());
410 break;
411
412 case PPEConstants.VAR_TYPE_FLOAT:
413 SetTargetValueFloatDefault(req_data.GetMaterialID(),req_data.GetParameterID());
414 break;
415
416 case PPEConstants.VAR_TYPE_COLOR:
417 SetTargetValueColorDefault(req_data.GetMaterialID(),req_data.GetParameterID());
418 break;
419 }
420 }
421 }
422 }
void SetTargetValueIntDefault(int mat_id, int param_idx)
Definition PPERequestPlatformsBase.c:138
void SetTargetValueBoolDefault(int mat_id, int param_idx)
Definition PPERequestPlatformsBase.c:100
void SetTargetValueColorDefault(int mat_id, int param_idx)
Definition PPERequestPlatformsBase.c:221
void SetTargetValueFloatDefault(int mat_id, int param_idx)
Definition PPERequestPlatformsBase.c:178

Перекрестные ссылки Count, m_RequestDataStructure, SetTargetValueBoolDefault(), SetTargetValueColorDefault(), SetTargetValueFloatDefault() и SetTargetValueIntDefault().

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

◆ SetRequesterIDX()

void SetRequesterIDX ( int idx)
inlineprotected

automatically assigned by PPERequesterBank

60 {
61 m_IDX = idx;
62 }

Перекрестные ссылки m_IDX.

◆ SetRequesterUpdating()

void SetRequesterUpdating ( bool state)
inlineprotected

Has to be set for the requester to be handled.

24 {
25 if (!m_Valid)
26 {
27 Debug.Log("" + this + " not valid!");
28 return;
29 }
30
31 PPEManagerStatic.GetPPEManager().SetRequestUpdating(this,state);
32
33 //TODO - separate into its own function?
34 if (state)
35 PPEManagerStatic.GetPPEManager().SetRequestActive(this,true);
36 }
Definition Debug.c:14
static void Log(string message=LOG_DEFAULT, string plugin=LOG_DEFAULT, string author=LOG_DEFAULT, string label=LOG_DEFAULT, string entity=LOG_DEFAULT)
Prints debug message with normal prio.
Definition Debug.c:136

Перекрестные ссылки PPEManagerStatic::GetPPEManager(), Debug::Log() и m_Valid.

Используется в OnStart(), OnStop(), OnUpdate() и QueueValuesSend().

◆ SetTargetValueBool()

void SetTargetValueBool ( int mat_id,
int param_idx,
bool val,
int priority_layer,
int operator = PPOperators.SET )
inlineprotected
79 {
81 return;
82
84 data.SetPriorityLayer(priority_layer);
85 data.SetInteractionMask(operator);
86
87 data.m_BoolTarget = val;
88 data.m_BoolLast = data.m_BoolCurrent;
89
90 if (data.m_BoolTarget != data.m_BoolCurrent || data.IsSettingDefaultValues())
91 {
92 data.SetSettingDefaultValues(false);
93 data.SetDataActive(true);
94
96 }
97 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBool | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
98 }
void QueueValuesSend()
Sets this requester to update in the manager.
Definition PPERequestPlatformsBase.c:253
PPERequestParamDataBase GetRequestData(int mat_id, int param_idx, int type)
returns request data for specific parameter, or creates one if one does not exist in this request yet...
Definition PPERequestPlatformsBase.c:261

Перекрестные ссылки GetRequestData(), m_RequestDataStructure, PPERequestParamDataBool() и QueueValuesSend().

◆ SetTargetValueBoolDefault()

void SetTargetValueBoolDefault ( int mat_id,
int param_idx )
inlineprotected
101 {
102 //TODO - running check and cleanup rework (elsewhere!)
104 return;
105
107 data.m_BoolLast = data.m_BoolCurrent;
108 if (!data.IsSettingDefaultValues())
109 {
110 data.SetSettingDefaultValues(true);
111
113 }
114 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBoolDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
115 }

Перекрестные ссылки GetRequestData(), m_RequestDataStructure, PPERequestParamDataBool() и QueueValuesSend().

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

◆ SetTargetValueColor()

void SetTargetValueColor ( int mat_id,
int param_idx,
ref array< float > val,
int priority_layer,
int operator = PPOperators.ADD_RELATIVE )
inlineprotected
198 {
200 return;
201
202 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
203 data.SetPriorityLayer(priority_layer);
204 data.SetInteractionMask(operator);
205 data.m_ColorFormerTarget = data.m_ColorTarget;
206
207 data.m_ColorTarget.Copy(val);
208
209 data.m_ColorLast = data.m_ColorCurrent;
210 data.m_ColorStart = data.m_ColorCurrent;
211 //if (data.m_ColorTarget != data.m_ColorCurrent)
212 {
213 data.SetSettingDefaultValues(false);
214 data.SetDataActive(true);
215
217 }
218 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColor | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
219 }

Перекрестные ссылки GetRequestData(), m_RequestDataStructure и QueueValuesSend().

◆ SetTargetValueColorDefault()

void SetTargetValueColorDefault ( int mat_id,
int param_idx )
inlineprotected
222 {
223 //TODO - running check and cleanup rework (elsewhere!)
225 return;
226
227 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
228 data.m_ColorFormerTarget = data.m_ColorTarget;
229 data.m_ColorLast = data.m_ColorCurrent;
230 data.m_ColorStart = data.m_ColorCurrent;
231 if (!data.IsSettingDefaultValues())
232 {
233 data.SetSettingDefaultValues(true);
234
236 }
237 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColorDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
238 }

Перекрестные ссылки GetRequestData(), m_RequestDataStructure и QueueValuesSend().

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

◆ SetTargetValueFloat()

void SetTargetValueFloat ( int mat_id,
int param_idx,
bool relative,
float val,
int priority_layer,
int operator = PPOperators.ADD_RELATIVE )
inlineprotected
156 {
158 return;
159
161 data.SetPriorityLayer(priority_layer);
162 data.SetInteractionMask(operator);
163
164 data.m_FloatFormerTarget = data.m_FloatTarget;
165 data.m_FloatTarget = RelativizeValue(val,PPEConstants.VAR_TYPE_FLOAT,mat_id,param_idx,relative);
166 data.m_FloatLast = data.m_FloatCurrent;
167 data.m_FloatStart = data.m_FloatCurrent;
168 if (data.m_FloatTarget != data.m_FloatCurrent || data.IsSettingDefaultValues())
169 {
170 data.SetSettingDefaultValues(false);
171 data.SetDataActive(true);
172
174 }
175 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloat | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
176 }
float RelativizeValue(float value, int var_type, int mat_id, int param_id, bool relative)
converts all values used to relative values (if not relative already)
Definition PPERequestPlatformsBase.c:368

Перекрестные ссылки GetRequestData(), m_RequestDataStructure, PPERequestParamDataFloat(), QueueValuesSend() и RelativizeValue().

◆ SetTargetValueFloatDefault()

void SetTargetValueFloatDefault ( int mat_id,
int param_idx )
inlineprotected
179 {
180 //TODO - running check and cleanup rework (elsewhere!)
182 return;
183
185 data.m_FloatFormerTarget = data.m_FloatTarget;
186 data.m_FloatLast = data.m_FloatCurrent;
187 data.m_FloatStart = data.m_FloatCurrent;
188 if (!data.IsSettingDefaultValues())
189 {
190 data.SetSettingDefaultValues(true);
191
193 }
194 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloatDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
195 }

Перекрестные ссылки GetRequestData(), m_RequestDataStructure, PPERequestParamDataFloat() и QueueValuesSend().

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

◆ SetTargetValueInt()

void SetTargetValueInt ( int mat_id,
int param_idx,
bool relative,
int val,
int priority_layer,
int operator = PPOperators.SET )
inlineprotected
118 {
120 return;
121
122 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
123 data.SetPriorityLayer(priority_layer);
124 data.SetInteractionMask(operator);
125
126 data.m_IntTarget = val;
127 data.m_IntLast = data.m_IntCurrent;
128 if (data.m_IntTarget != data.m_IntCurrent || data.IsSettingDefaultValues())
129 {
130 data.SetSettingDefaultValues(false);
131 data.SetDataActive(true);
132
134 }
135 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueInt | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
136 }

Перекрестные ссылки GetRequestData(), m_RequestDataStructure и QueueValuesSend().

◆ SetTargetValueIntDefault()

void SetTargetValueIntDefault ( int mat_id,
int param_idx )
inlineprotected
139 {
140 //TODO - running check and cleanup rework (elsewhere!)
142 return;
143
144 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
145 data.m_IntLast = data.m_IntCurrent;
146 if (!data.IsSettingDefaultValues())
147 {
148 data.SetSettingDefaultValues(true);
149
151 }
152 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueIntDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
153 }

Перекрестные ссылки GetRequestData(), m_RequestDataStructure и QueueValuesSend().

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

◆ Start()

void Start ( Param par = null)
inlineprotected
39 {
40 OnStart(par);
41 m_IsRunning = true;
42 }
void OnStart(Param par=null)
Definition PPERequestPlatformsBase.c:354

Перекрестные ссылки m_IsRunning и OnStart().

◆ Stop()

void Stop ( Param par = null)
inlineprotected
45 {
47 return;
48
49 OnStop(par);
50 m_IsRunning = false;
51 }
void OnStop(Param par=null)
automatically resets all material parameters of this requester to defaults
Definition PPERequestPlatformsBase.c:360

Перекрестные ссылки m_IsRunning, m_RequestDataStructure и OnStop().

Поля

◆ m_IDX

int m_IDX
protected

◆ m_IsRunning

bool m_IsRunning
protected

Используется в IsRequesterRunning(), PPERequesterBase(), Start() и Stop().

◆ m_RequestDataStructure

◆ m_Valid

bool m_Valid = false
protected

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

◆ m_ValuesSent

bool m_ValuesSent
protected

Используется в OnUpdate(), PPERequesterBase() и QueueValuesSend().


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