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

◆ StaminaProcessor_Swimming()

void StaminaHandler::StaminaProcessor_Swimming ( HumanMovementState pHumanMovementState)
inlineprotected

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

800 {
801 switch (pHumanMovementState.m_iMovement)
802 {
803 case 3: //swim fast
804 m_StaminaDelta = -GameConstants.STAMINA_DRAIN_SWIM_FAST_PER_SEC * CfgGameplayHandler.GetSprintSwimmingStaminaModifier();
805 SetCooldown(GameConstants.STAMINA_REGEN_COOLDOWN_DEPLETION);
806 break;
807
808 case 2: //swim slow
809 if (!m_IsInCooldown)
810 {
811 m_StaminaDelta = (GameConstants.STAMINA_GAIN_SWIM_PER_SEC + CalcStaminaGainBonus());
812 }
813 break;
814
815 default:
816 if (!m_IsInCooldown)
817 {
818 m_StaminaDelta = GameConstants.STAMINA_GAIN_IDLE_PER_SEC + CalcStaminaGainBonus();
819 }
820 break;
821 }
822 }
int m_iMovement
current stance (DayZPlayerConstants.STANCEIDX_ERECT, ...), only if the command has a stance
Определения human.c:1184
float CalcStaminaGainBonus()
Calulates stamina regain bonus coef based on current stamina cap and level and caches it during one U...
Определения StaminaHandler.c:966
float m_StaminaDelta
Определения StaminaHandler.c:271
void SetCooldown(float time, int modifier=-1)
set cooldown timer between each consume of stamina
Определения StaminaHandler.c:1034
bool m_IsInCooldown
Определения StaminaHandler.c:295

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