gets the actual players load
StaminaCap calculation starts when PlayerLoad exceeds STAMINA_WEIGHT_LIMIT_THRESHOLD
processed on event
processed on event
processed on event
См. определение в файле StaminaHandler.c строка 423
424 {
425 #ifdef DIAG_DEVELOPER
426 if (m_StaminaDisabled)
427 return;
428 #endif
429
431 {
433
434 if (isServerOrSingleplayer)
435 {
438
440 if (
m_PlayerLoad >= CfgGameplayHandler.GetStaminaWeightLimitThreshold())
441 {
442 m_StaminaCap = Math.Max((CfgGameplayHandler.GetStaminaMax() - (((
m_PlayerLoad - CfgGameplayHandler.GetStaminaWeightLimitThreshold())/GameConstants.STAMINA_KG_TO_GRAMS) * CfgGameplayHandler.GetStaminaKgToStaminaPercentPenalty())),CfgGameplayHandler.GetStaminaMinCap());
443 }
444 else
445 {
447 }
448 }
449
450
452
453 switch (
m_State.m_CommandTypeId)
454 {
457 break;
460 break;
463 break;
467 break;
468 default:
470 {
472 }
473 break;
474 }
475
476
478 if (temp < 0)
479 {
481 }
482 else
483 {
485 }
486
489
490 if (isServerOrSingleplayer)
491 {
494
495 if (
m_Time >= GameConstants.STAMINA_SYNC_RATE)
496 {
499 }
500 }
501
502 #ifndef SERVER
504 #endif
505
508
511
512 }
513 }
proto native bool IsMultiplayer()
proto native bool IsServer()
float m_StaminaDepletionMultiplier
void StaminaProcessor_Ladder(HumanMovementState pHumanMovementState)
ref HumanMovementState m_State
void StaminaProcessor_Swimming(HumanMovementState pHumanMovementState)
float m_StaminaRecoveryMultiplier
void CheckStaminaState()
check if the stamina is completely depleted
void StaminaProcessor_Move(HumanMovementState pHumanMovementState)
void SetStamina(float stamina_value)
DayZPlayerConstants
defined in C++
proto native CGame GetGame()
Перекрестные ссылки ApplyExhaustion(), CheckStaminaState(), GetGame(), CfgGameplayHandler::GetStaminaKgToStaminaPercentPenalty(), CfgGameplayHandler::GetStaminaMax(), CfgGameplayHandler::GetStaminaMinCap(), CfgGameplayHandler::GetStaminaWeightLimitThreshold(), CGame::IsMultiplayer(), CGame::IsServer(), m_IsInCooldown, m_Player, m_PlayerLoad, m_Stamina, m_StaminaCap, m_StaminaDelta, m_StaminaDepletion, m_StaminaDepletionMultiplier, m_StaminaRecoveryMultiplier, m_StaminaSynced, m_State, m_Time, Math::Max(), Math::Min(), SetStamina(), GameConstants::STAMINA_GAIN_IDLE_PER_SEC, GameConstants::STAMINA_KG_TO_GRAMS, GameConstants::STAMINA_SYNC_RATE, StaminaProcessor_Ladder(), StaminaProcessor_Move() и StaminaProcessor_Swimming().