3 float m_UpdateInterval = 1.0;
4 float m_TemperatureItemCap =
GameConstants.ITEM_TEMPERATURE_NEUTRAL_ZONE_MIDDLE;
6 float m_TemperatureCap =
float.MAX;
9 float m_ItemDryModifier = 1.5;
11 bool m_EnableOnTemperatureControl =
false;
12 float m_ActiveTemperatureThreshold = 0.0;
13 float m_InactiveTemperatureThreshold = 0.0;
15 bool m_Updateable =
false;
16 bool m_ManualUpdate =
false;
17 bool m_IsWorldOverriden =
true;
23 bool m_AffectStat =
false;
24 float m_TemperatureMin = 0;
25 float m_TemperatureMax = 100;
28class UniversalTemperatureSourceResult
38class UniversalTemperatureSourceTimer :
Timer
44 g_Game.GameScript.CallFunctionParams(m_target, m_function, null, m_params);
48 g_Game.GameScript.CallFunction(m_target, m_function, null, 0);
58 void SetParams(
Param params)
68 private float m_ParentTemperaturePrevious;
70 protected bool m_Active
71 protected ref UniversalTemperatureSourceTimer
m_Timer;
82 m_Timer =
new UniversalTemperatureSourceTimer();
97 pParent.SetUniversalTemperatureSource(
this);
100 m_Settings.m_Position = pParent.GetPosition();
112 m_Settings.m_TemperatureCap +=
g_Game.GetMission().GetWorldData().GetUniversalTemperatureSourceCapModifier();
178 if (pActive && !
m_Timer.IsRunning())
205 if (settings.m_EnableOnTemperatureControl)
207 float parentTemperature =
GetParent().GetTemperature();
208 float temperatureDifference = parentTemperature - m_ParentTemperaturePrevious;
210 if (parentTemperature >= settings.m_ActiveTemperatureThreshold && temperatureDifference > 0)
213 if (parentTemperature < settings.m_InactiveTemperatureThreshold && temperatureDifference < 0)
216 m_ParentTemperaturePrevious = parentTemperature;
224 settings.m_Position = settings.m_Parent.GetUniversalTemperatureSourcePosition();
263 const string DELIMITER_DATA =
"|";
309 if (
m_Names.Count() - 1 < pIndex)
311 Debug.Log(
string.Format(
"GetName index: %1 from data of length: %2", pIndex,
m_Names.Count()),
"UniversalTemperatureSourceDebug");
322 Debug.Log(
string.Format(
"GetValue index: %1 from data of length: %2", pIndex,
m_Values.Count()),
"UniversalTemperatureSourceDebug");
335 m_Data.Split(DELIMITER_DATA, parsed);
348 for (
int i = 0; i <
m_Pairs.Count(); i++)
361 for (
int i = 0; i <
m_Names.Count(); i++)
363 Debug.Log(
string.Format(
"%1: %2",
m_Names.Get(i),
m_Values.Get(i)),
"UniversalTemperatureSourceDebug");
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
float GetTemperatureMax()
float GetTemperatureItemCap()
void Init(EntityAI pParent)
void UniversalTemperatureSource(EntityAI pParent, UniversalTemperatureSourceSettings pSettings, UniversalTemperatureSourceLambdaBase pLambda)
float GetTemperatureCap()
void ~UniversalTemperatureSource()
UniversalTemperatureSourceLambdaBase GetLambda()
void SetDefferedActive(bool pActive, float pSeconds)
ref UniversalTemperatureSourceTimer m_Timer
UniversalTemperatureSourceSettings m_Settings
float GetTemperatureItemCoef()
float GetTemperatureRaw()
void ChangeSettings(UniversalTemperatureSourceSettings pSettings)
void SetActive(bool pActive)
ref UniversalTemperatureSourceLambdaBase m_Lambda
void Update(UniversalTemperatureSourceSettings settings, UniversalTemperatureSourceLambdaBase lambda)
float GetTemperatureMin()
ref UniversalTemperatureSourceResult m_ResultValues
original Timer deletes m_params which is unwanted
void Execute(UniversalTemperatureSourceSettings pSettings, UniversalTemperatureSourceResult resultValues)
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
class ErrorHandlerModule m_Header
This is where to input logic and extend functionality of ErrorHandlerModule.
proto string GetName()
Suite class name getter. Strictly for UI porposes!
void Stop()
Stops all elements this effect consists of.
float m_Temperature
Player HC target(?) value.
class UniversalTemperatureSourceSettings m_TemperatureItem
ref array< string > m_Pairs
values parsed from m_Pairs
ref array< string > m_Names
float m_TemperatureHeatcomfort
Item target temperature.
array< string > ParseData()
void AddHeader(string header)
void Add(string name, string value)
const string DELIMITER_KEYPAIR
ref array< string > m_Values
names parsed from m_Pairs
void UniversalTemperatureSourceDebug()
keeps first iteration of parsed data from the m_Data