27class UniversalTemperatureSourceResult
37class UniversalTemperatureSourceTimer :
Timer
69 protected bool m_Active
70 protected ref UniversalTemperatureSourceTimer
m_Timer;
81 m_Timer =
new UniversalTemperatureSourceTimer();
92 pParent.SetUniversalTemperatureSource(
this);
107 m_Settings.m_TemperatureCap +=
g_Game.GetMission().GetWorldData().GetUniversalTemperatureSourceCapModifier();
173 if (pActive && !
m_Timer.IsRunning())
197 float parentTemperature =
GetParent().GetTemperature();
253 const string DELIMITER_DATA =
"|";
299 if (
m_Names.Count() - 1 < pIndex)
301 Debug.
Log(
string.Format(
"GetName index: %1 from data of length: %2", pIndex,
m_Names.Count()),
"UniversalTemperatureSourceDebug");
312 Debug.
Log(
string.Format(
"GetValue index: %1 from data of length: %2", pIndex,
m_Values.Count()),
"UniversalTemperatureSourceDebug");
325 m_Data.Split(DELIMITER_DATA, parsed);
338 for (
int i = 0; i <
m_Pairs.Count(); i++)
351 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
override ScriptCallQueue GetCallQueue(int call_category)
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...
proto void CallLaterByName(Class obj, string fnName, int delay=0, bool repeat=false, Param params=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
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_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
maximum range where the receiver can get some temperature
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.
proto native CGame GetGame()
proto volatile int CallFunctionParams(Class inst, string function, out void returnVal, Class parms)
proto volatile int CallFunction(Class inst, string function, out void returnVal, void parm)
const float TEMP_COEF_UTS
static const float ITEM_TEMPERATURE_NEUTRAL_ZONE_MIDDLE