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);
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();
181 if (pActive && !
m_Timer.IsRunning())
210 float parentTemperature =
GetParent().GetTemperature();
312 if (
m_Names.Count() - 1 < pIndex)
314 Debug.Log(
string.Format(
"GetName index: %1 from data of length: %2", pIndex,
m_Names.Count()),
"UniversalTemperatureSourceDebug");
325 Debug.Log(
string.Format(
"GetValue index: %1 from data of length: %2", pIndex,
m_Values.Count()),
"UniversalTemperatureSourceDebug");
351 for (
int i = 0; i <
m_Pairs.Count(); i++)
364 for (
int i = 0; i <
m_Names.Count(); i++)
366 Debug.Log(
string.Format(
"%1: %2",
m_Names.Get(i),
m_Values.Get(i)),
"UniversalTemperatureSourceDebug");
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
float m_Temperature
Player HC target(?) value.
class UniversalTemperatureSourceSettings m_TemperatureItem
float m_TemperatureHeatcomfort
Item target temperature.
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
void SetParams(Param params)
float GetTemperatureMax()
float GetTemperatureItemCap()
void Init(EntityAI pParent)
string GetValue(int pIndex)
void UniversalTemperatureSource(EntityAI pParent, UniversalTemperatureSourceSettings pSettings, UniversalTemperatureSourceLambdaBase pLambda)
void Add(string name, string value)
float m_ParentTemperaturePrevious
float GetTemperatureCap()
void ~UniversalTemperatureSource()
UniversalTemperatureSourceLambdaBase GetLambda()
void SetDefferedActive(bool pActive, float pSeconds)
ref array< string > m_Values
names parsed from m_Pairs
ref UniversalTemperatureSourceTimer m_Timer
UniversalTemperatureSourceSettings m_Settings
void AddHeader(string header)
ref array< string > m_Names
float GetTemperatureItemCoef()
float GetTemperatureRaw()
array< string > ParseData()
ref array< string > m_Pairs
values parsed from m_Pairs
void ChangeSettings(UniversalTemperatureSourceSettings pSettings)
void UniversalTemperatureSourceDebug()
keeps first iteration of parsed data from the m_Data
void SetActive(bool pActive)
string GetName(int pIndex)
ref UniversalTemperatureSourceLambdaBase m_Lambda
void Update(UniversalTemperatureSourceSettings settings, UniversalTemperatureSourceLambdaBase lambda)
const string DELIMITER_DATA
float GetTemperatureMin()
const string DELIMITER_KEYPAIR
ref UniversalTemperatureSourceResult m_ResultValues
original Timer deletes m_params which is unwanted
void Execute(UniversalTemperatureSourceSettings pSettings, UniversalTemperatureSourceResult resultValues)
vector m_Position
if the stats can be overriden by coefficient/variables from WorldData (currently TemperatureCap only)
bool m_Updateable
UTS will be inactive on temperature < to this value.
float m_RangeFull
temperature cap that will limit the return value from GetTemperature method
float m_TemperatureCap
used to determine speed of temperature change, and some temperature subsystems
float m_ItemDryModifier
maximum range where the receiver can get some temperature
float m_TemperatureItemCoef
max temperature 'non-IsSelfAdjustingTemperature' entity in vicinity will get per update (cap);
float m_RangeMax
range where the full temperature is given to receiver
float m_TemperatureItemCap
how often the Update is ticking
bool m_IsWorldOverriden
update is called manually (ex. own tick of parent entity)
bool m_EnableOnTemperatureControl
bool m_ManualUpdate
if the Update is running periodically
float m_ActiveTemperatureThreshold
enable or disable activation/deactivation on set temperature
bool m_AffectStat
parent Entity of the UTS
float m_InactiveTemperatureThreshold
UTS will be active on temperature >= to this value.
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
const float TEMP_COEF_UTS
static const float ITEM_TEMPERATURE_NEUTRAL_ZONE_MIDDLE