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

◆ StaminaProcessor_Swimming()

void StaminaHandler::StaminaProcessor_Swimming ( HumanMovementState pHumanMovementState)
inlineprotected

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

766 {
767 switch (pHumanMovementState.m_iMovement)
768 {
769 case 3: //swim fast
770 m_StaminaDelta = -GameConstants.STAMINA_DRAIN_SWIM_FAST_PER_SEC * CfgGameplayHandler.GetSprintSwimmingStaminaModifier();
771 SetCooldown(GameConstants.STAMINA_REGEN_COOLDOWN_DEPLETION);
772 break;
773
774 case 2: //swim slow
775 if (!m_IsInCooldown)
776 {
777 m_StaminaDelta = (GameConstants.STAMINA_GAIN_SWIM_PER_SEC + CalcStaminaGainBonus());
778 }
779 break;
780
781 default:
782 if (!m_IsInCooldown)
783 {
784 m_StaminaDelta = GameConstants.STAMINA_GAIN_IDLE_PER_SEC + CalcStaminaGainBonus();
785 }
786 break;
787 }
788 }
int m_iMovement
current stance (DayZPlayerConstants.STANCEIDX_ERECT, ...), only if the command has a stance
Определения human.c:1157
float CalcStaminaGainBonus()
Calulates stamina regain bonus coef based on current stamina cap and level and caches it during one U...
Определения StaminaHandler.c:932
float m_StaminaDelta
Определения StaminaHandler.c:268
void SetCooldown(float time, int modifier=-1)
set cooldown timer between each consume of stamina
Определения StaminaHandler.c:1000
bool m_IsInCooldown
Определения StaminaHandler.c:292

Перекрестные ссылки 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.

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