sets temperature, handles base overheating and freezing state progression logics
CanFreeze
См. определение в файле EntityAI.c строка 2296
2297 {
2298 #ifdef DEVELOPER
2299 m_LastFTChangeTime = -1;
2300 m_PresumedTimeRemaining = -1;
2301 #endif
2302
2304 {
2305 Debug.Log(
"SetTemperatureEx | entity " +
this +
" does not have temperature range defined!");
2306 return;
2307 }
2308
2309 if (!
m_TAC.TryAccessSource(data))
2310 return;
2311
2313 return;
2314
2317 float delta;
2318
2320 {
2323 else
2325
2327 }
2328
2329
2331 {
2333 {
2336 {
2337
2339 {
2341 }
2342 else
2343 {
2345 }
2347 }
2348 else
2349 {
2353 }
2354 }
2355 else
2356 {
2359 {
2360
2362 {
2364 }
2365 else
2366 {
2368 }
2370 }
2371 else
2372 {
2376 }
2377 }
2378 }
2379 else
2380 {
2382 }
2383 }
void InterpolateTempData(TemperatureDataInterpolated data)
ref TemperatureAccessComponent m_TAC
float GetTemperatureFreezeThreshold()
float GetItemOverheatThreshold()
if undefined, max temperature used as default
float GetTemperatureMin()
void HandleFreezingProgression(float deltaHeat, TemperatureData data)
bool CanHaveTemperature()
returns true used on selected items that have a temperature effect and can processes temperature chan...
bool CanItemOverheat()
Overheat time CAN be 0, GameConstants.TEMPERATURE_TIME_OVERHEAT_MIN is ignored if so.
void SetTemperatureDirect(float value, bool allow_client=false)
float GetTemperatureThawThreshold()
bool IsServerCheck(bool allow_client)
void HandleItemOverheating(float deltaHeat, TemperatureData data)
float GetTemperatureMax()
Перекрестные ссылки CanFreeze(), CanHaveTemperature(), CanItemOverheat(), Math::Clamp(), GetItemOverheatThreshold(), GetTemperature(), GetTemperatureFreezeThreshold(), GetTemperatureMax(), GetTemperatureMin(), GetTemperatureThawThreshold(), HandleFreezingProgression(), HandleItemOverheating(), InterpolateTempData(), IsServerCheck(), Debug::Log(), TemperatureData::m_AdjustedTarget, m_IsFrozen, m_TAC, m_VarTemperature и SetTemperatureDirect().
Используется в ProcessVariables() и SetTemperature().