check if player is under roof (only if the Building check is false)
Updates data
Process temperatures
heat comfort calculation
Process item wetness/dryness
setting of wetness/dryiness of player
reset item wetness counter;
См. определение в файле Environment.c строка 190
191 {
193 {
197 {
200
202 }
203
205 if (
m_Time >= GameConstants.ENVIRO_TICK_RATE)
206 {
209
215
217
223
227 else
229
231 if (
m_WetDryTick >= GameConstants.ENVIRO_TICKS_TO_WETNESS_CALCULATION)
232 {
234 {
236 }
238 {
240 }
241 else
242 {
244 }
245
248 {
250 }
252 {
254 }
255
258 }
259 }
260 }
261 }
void ProcessItemsWetness(array< int > pSlotIds)
void CollectAndSetEnvironmentData()
float m_RoofCheckTimer
keeps wetness of most wet item in player's possesion
void ProcessItemsInHandsTemperature()
ref array< int > m_SlotIdsComplete
void CollectAndSetPlayerData()
bool IsChildOfType(array< typename > typenames)
void CheckWaterContact(out float pWaterLevel)
void ProcessWetnessByWaterLevel(float pWaterLevel)
process attachments by water depth
ref array< int > m_BodyParts
void ProcessTemperatureSources()
const float SNOWFALL_WIND_COMBINED_THRESHOLD
void CheckUnderRoof()
Checks whether Player is sheltered.
void SetHeatcomfortDirectly()
void ProcessItemsTemperature(array< int > pBodyPartIds)
go through all items in player's possession cool/warm them to neutral temperature
ref array< int > m_FeetParts
bool DetermineHeatcomfortBehavior()
void GatherTemperatureSources()
void ProcessItemsDryness()
void ProcessHeatComfort()
Calculates and process player's heatcomfort related to body parts.
ref array< int > m_HeadParts
Перекрестные ссылки CheckUnderRoof(), CheckWaterContact(), CollectAndSetEnvironmentData(), CollectAndSetPlayerData(), DetermineHeatcomfortBehavior(), GameConstants::ENVIRO_TICK_RATE, GameConstants::ENVIRO_TICK_ROOF_RC_CHECK, GameConstants::ENVIRO_TICKS_TO_WETNESS_CALCULATION, GatherTemperatureSources(), IsChildOfType(), IsInsideBuilding(), IsRaining(), IsSnowing(), IsUnderRoof(), IsWaterContact(), m_BodyParts, m_FeetParts, m_HeadParts, m_Initialized, m_ItemsWetnessMax, m_Player, m_RoofCheckTimer, m_SlotIdsComplete, m_Time, m_WaterLevel, m_WetDryTick, ProcessHeatComfort(), ProcessItemsDryness(), ProcessItemsInHandsTemperature(), ProcessItemsTemperature(), ProcessItemsWetness(), ProcessTemperatureSources(), ProcessWetnessByWaterLevel(), SetHeatcomfortDirectly(), SNOWFALL_WIND_COMBINED_THRESHOLD и GameConstants::STATE_WET.