DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ CheckUnderRoof()

void Environment::CheckUnderRoof ( )
inlineprotected

Checks whether Player is sheltered.

См. определение в файле Environment.c строка 337

338 {
339 // if inside vehicle return immediatelly
340 if (IsChildOfType({Car}))
341 {
342 m_IsUnderRoof = false;
343 m_IsUnderRoofBuilding = false;
344 return;
345 }
346
347 float hitFraction;
348 vector hitPosition, hitNormal;
349 vector from = m_Player.GetPosition();
350 vector to = from + "0 25 0";
351 Object hitObject;
352 PhxInteractionLayers collisionLayerMask = PhxInteractionLayers.ITEM_LARGE|PhxInteractionLayers.BUILDING|PhxInteractionLayers.VEHICLE;
353
354 m_IsUnderRoof = DayZPhysics.RayCastBullet(from, to, collisionLayerMask, null, hitObject, hitPosition, hitNormal, hitFraction);
355
356 m_IsUnderRoofBuilding = hitObject && hitObject.IsInherited(House);
357 }
PhxInteractionLayers
Определения DayZPhysics.c:2
bool IsChildOfType(array< typename > typenames)
Определения Environment.c:295
PlayerBase m_Player
Определения Environment.c:30
bool m_IsUnderRoofBuilding
Определения Environment.c:56
bool m_IsUnderRoof
Определения Environment.c:55
class LOD Object

Перекрестные ссылки IsChildOfType(), m_IsUnderRoof, m_IsUnderRoofBuilding, m_Player и DayZPhysics::RayCastBullet().

Используется в Update().