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();
178 if (pActive && !
m_Timer.IsRunning())
207 float parentTemperature =
GetParent().GetTemperature();
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++)
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
class ErrorHandlerModule m_Header
This is where to input logic and extend functionality of ErrorHandlerModule.
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
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.
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)
void UniversalTemperatureSource(EntityAI pParent, UniversalTemperatureSourceSettings pSettings, UniversalTemperatureSourceLambdaBase pLambda)
float m_ParentTemperaturePrevious
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)
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