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

◆ StaminaProcessor_Swimming()

void StaminaHandler::StaminaProcessor_Swimming ( HumanMovementState pHumanMovementState)
inlineprotected

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

647 {
648 switch (pHumanMovementState.m_iMovement)
649 {
650 case 3: //swim fast
651 m_StaminaDelta = -GameConstants.STAMINA_DRAIN_SWIM_FAST_PER_SEC * CfgGameplayHandler.GetSprintSwimmingStaminaModifier();
652 SetCooldown(GameConstants.STAMINA_REGEN_COOLDOWN_DEPLETION);
653 break;
654
655
656 case 2: //swim slow
657 if (!m_IsInCooldown)
658 {
659 m_StaminaDelta = (GameConstants.STAMINA_GAIN_SWIM_PER_SEC + CalcStaminaGainBonus());
660 }
661 break;
662
663 default:
664 if (!m_IsInCooldown)
665 {
666 m_StaminaDelta = GameConstants.STAMINA_GAIN_IDLE_PER_SEC + CalcStaminaGainBonus();
667 }
668 break;
669 }
670 }
int m_iMovement
current stance (DayZPlayerConstants.STANCEIDX_ERECT, ...), only if the command has a stance
Определения human.c:1155
float CalcStaminaGainBonus()
Calulates stamina regain bonus coef based on current stamina cap and level.
Определения StaminaHandler.c:797
float m_StaminaDelta
Определения StaminaHandler.c:263
void SetCooldown(float time, int modifier=-1)
set cooldown timer between each consume of stamina
Определения StaminaHandler.c:854
bool m_IsInCooldown
Определения StaminaHandler.c:286

Перекрестные ссылки CalcStaminaGainBonus(), CfgGameplayHandler::GetSprintSwimmingStaminaModifier(), HumanMovementState::m_iMovement, m_IsInCooldown, m_StaminaDelta, SetCooldown(), GameConstants::STAMINA_DRAIN_SWIM_FAST_PER_SEC, GameConstants::STAMINA_GAIN_IDLE_PER_SEC, GameConstants::STAMINA_GAIN_SWIM_PER_SEC и GameConstants::STAMINA_REGEN_COOLDOWN_DEPLETION.

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