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

◆ CheckWaterLevel()

static EWaterLevels CheckWaterLevel ( DayZPlayer pPlayer,
out vector waterLevel )
static

if total water depth >= 1.5m && character is 1.5m in water

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

426 {
427 SHumanCommandSwimSettings swimData = pPlayer.GetDayZPlayerType().CommandSwimSettingsW();
428 vector pp = pPlayer.PhysicsGetPositionWS();
429 waterLevel = HumanCommandSwim.WaterLevelCheck(pPlayer, pp);
430
431 if (waterLevel[1] < swimData.m_fToCrouchLevel)
432 {
433 return EWaterLevels.LEVEL_LOW;
434 }
435 else if (waterLevel[1] >= swimData.m_fToCrouchLevel && waterLevel[1] < swimData.m_fToErectLevel)
436 {
437 return EWaterLevels.LEVEL_CROUCH;
438 }
439 else// if (waterLevel[1] >= swimData.m_fToErectLevel)
440 {
441 float waterLevelToSwim = swimData.m_fWaterLevelIn;
442 if (PlayerBase.Cast(pPlayer).IsClimbingLadder())
443 waterLevelToSwim += 0.2;
444
446 if (waterLevel[0] >= swimData.m_fWaterLevelIn && waterLevel[1] >= waterLevelToSwim)
447 {
448 return EWaterLevels.LEVEL_SWIM_START;
449 }
450 else
451 {
452 return EWaterLevels.LEVEL_ERECT;
453 }
454 }
455 }
EWaterLevels
Определения EWaterLevels.c:2
Определения PlayerBaseClient.c:2
float m_fToCrouchLevel
when to crouch
Определения humansettings.c:66
float m_fWaterLevelIn
when entering water - what level cases swimming (1.5m)
Определения humansettings.c:62
float m_fToErectLevel
when to stand
Определения humansettings.c:67
Определения EnConvert.c:106
class HumanCommandLadder HumanCommandSwim()
Определения human.c:673

Перекрестные ссылки HumanCommandSwim(), SHumanCommandSwimSettings::m_fToCrouchLevel, SHumanCommandSwimSettings::m_fToErectLevel и SHumanCommandSwimSettings::m_fWaterLevelIn.