DayZ 1.24
Loading...
Searching...
No Matches
ManBase Class Reference
Collaboration diagram for ManBase:
[legend]

Protected Member Functions

void PlayerBase ()
 
void Init ()
 
void IncreaseAntibioticsCount ()
 
void DecreaseAntibioticsCount ()
 
bool IsAntibioticsActive ()
 
void SetSoundCategoryHash (int hash)
 
void RequestTriggerEffect (EffectTrigger trigger, int ppeIdx=-1, int aroundId=ParticleList.CONTAMINATED_AREA_GAS_AROUND, int tinyId=ParticleList.CONTAMINATED_AREA_GAS_TINY, string soundset="", bool partDynaUpdate=false, int newBirthRate=0, bool forceUpdate=false)
 
void RemoveCurrentEffectTrigger ()
 
void IncreaseContaminatedAreaCount ()
 
void DecreaseContaminatedAreaCount ()
 
void IncreaseEffectAreaCount ()
 
void DecreaseEffectAreaCount ()
 
void OnContaminatedAreaEnterServer ()
 
void OnContaminatedAreaExitServer ()
 
void OnPlayerIsNowInsideEffectAreaBeginServer ()
 
void OnPlayerIsNowInsideEffectAreaEndServer ()
 
void OnPlayerIsNowInsideEffectAreaBeginClient ()
 
void OnPlayerIsNowInsideEffectAreaEndClient ()
 
ItemBase GetItemOnSlot (string slot_type)
 Returns item that's on this player's attachment slot. Parameter slot_type should be a string from config parameter 'itemInfo[]' like "Legs", "Headgear" and so on.
 
ItemBase GetItemOnHead ()
 Returns item on player's head. For an example, a headtorch.
 
override int GetQuickBarBonus ()
 
override bool CanDropEntity (notnull EntityAI item)
 
int GetBreathVapourLevel ()
 
void UnsetMixedSoundState (eMixedSoundStates state)
 
void SetMixedSoundState (eMixedSoundStates state)
 
override bool IsPlayer ()
 
bool IsBleeding ()
 
void SetBleedingBits (int bits)
 
int GetBleedingBits ()
 
void IncreaseDiseaseCount ()
 
void DecreaseDiseaseCount ()
 
void IncreaseHealingsCount ()
 
void DecreaseHealingsCount ()
 
bool HasHealings ()
 
bool HasDisease ()
 
EPulseType GetPulseType ()
 
void SetPulseType (EPulseType pulse_type)
 
void QueueAddEffectWidget (array< int > effects)
 
void QueueRemoveEffectWidget (array< int > effects)
 
void QueueAddGlassesEffect (int id)
 
void QueueRemoveGlassesEffect (int id)
 
DamageDealtEffect GetDamageDealtEffect ()
 
override void SpawnDamageDealtEffect ()
 
void SpawnDamageDealtEffect2 (Param param1=null, Param param2=null)
 
FlashbangEffect GetFlashbangEffect ()
 
void SpawnFlashbangEffect (PlayerBase player, bool visual)
 
ShockDealtEffect GetShockEffect ()
 
void SpawnShockEffect (float intensity_max)
 
override void EEKilled (Object killer)
 
override void EEHitBy (TotalDamageResult damageResult, int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos, float speedCoef)
 
override void EEHitByRemote (int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos)
 
override void EEDelete (EntityAI parent)
 
float ConvertNonlethalDamage (float damage, DamageType damageType)
 
override void OnReceivedHit (ImpactEffectsData hitData)
 
override void OnPlayerRecievedHit ()
 
void OnPlayerReceiveFlashbangHitStart (bool visual)
 
void OnPlayerReceiveFlashbangHitEnd ()
 
override string GetHitComponentForAI ()
 Melee helpers.
 
override string GetDefaultHitComponent ()
 returns default hit component (fallback)
 
override vector GetDefaultHitPosition ()
 
override array< stringGetSuitableFinisherHitComponents ()
 returns list of suitable finisher hit components (defined on base entity/entity type)
 
vector SetDefaultHitPosition (string pSelection)
 
void AddPossibleCoverFaceForShave ()
 DEPRECATED!
 
void RemovePossibleCoverFaceForShave ()
 DEPRECATED!
 
override void EEItemAttached (EntityAI item, string slot_name)
 
override void EEItemDetached (EntityAI item, string slot_name)
 
void SwitchItemTypeAttach (EntityAI item, string slot)
 
void SwitchItemTypeDetach (EntityAI item, string slot)
 
void UpdateShoulderProxyVisibility (EntityAI item, string slot_name)
 
override void SwitchItemSelectionTexture (EntityAI item, string slot_name)
 
void RemoveAllItems ()
 
bool GetHitPPEEnabled ()
 
void SetHitPPEEnabled (bool enabled)
 
bool IsMale ()
 
int GetVoiceType ()
 
PlayerSoundManagerServer GetPlayerSoundManagerServer ()
 
UndergroundHandlerClient GetUndergroundHandler ()
 
void KillUndergroundHandler ()
 
void SetActions (out TInputActionMap InputActionMap)
 
void SetActions ()
 
void SetActionsRemoteTarget (out TInputActionMap InputActionMap)
 
void SetActionsRemoteTarget ()
 
void InitializeActions ()
 
override void GetActions (typename action_input_type, out array< ActionBase_Basic > actions)
 
void AddAction (typename actionName, out TInputActionMap InputActionMap)
 
void AddAction (typename actionName)
 
void RemoveAction (typename actionName, out TInputActionMap InputActionMap)
 
void RemoveAction (typename actionName)
 
int GetCurrentRecipe ()
 
void SetNextRecipe ()
 
void SetFirstRecipe ()
 
ActionManagerBase GetActionManager ()
 
EmoteManager GetEmoteManager ()
 
RandomGeneratorSyncManager GetRandomGeneratorSyncManager ()
 
override void OnLadder (float delta_time, HumanMovementState pState)
 called every command handler tick when player is on ladder
 
void ProcessHandDamage (float delta_time, HumanMovementState pState)
 
override void ProcessFeetDamageServer (int pUserInt)
 
float GetFeetDamageMoveModifier ()
 
void SetStamina (int value, int range)
 
void SetQuickRestrain (bool enable)
 
void SetQuickFishing (bool enable)
 
bool IsQuickRestrain ()
 
bool IsQuickFishing ()
 
PlayerStats GetPlayerStats ()
 
CraftingManager GetCraftingManager ()
 
StaminaHandler GetStaminaHandler ()
 
override WeaponManager GetWeaponManager ()
 
override ArrowManagerBase GetArrowManager ()
 
bool CanBeRestrained ()
 
void SetRestrainStarted (bool restrain_started)
 
bool IsRestrainStarted ()
 
void SetRestrainPrelocked (bool restrain_prelock)
 
bool IsRestrainPrelocked ()
 
void SetRestrained (bool is_restrained)
 
override bool IsRestrained ()
 
override bool IsInventoryVisible ()
 
bool CanManipulateInventory ()
 
override bool CanReleaseAttachment (EntityAI attachment)
 
override bool CanReleaseCargo (EntityAI cargo)
 
override bool CanReceiveItemIntoCargo (EntityAI item)
 
override bool CanSwapItemInCargo (EntityAI child_entity, EntityAI new_entity)
 
override bool CanReceiveItemIntoHands (EntityAI item_to_hands)
 
override bool CanSaveItemInHands (EntityAI item_in_hands)
 
override bool CanReleaseFromHands (EntityAI handheld)
 
int GetCraftingRecipeID ()
 
void SetCraftingRecipeID (int recipeID)
 
ConstructionActionData GetConstructionActionData ()
 
void ResetConstructionActionData ()
 
vector GetLastFirePoint ()
 
float GetLastFirePointRot ()
 
int GetLastFirePointIndex ()
 
void SetLastFirePoint (vector last_fire_point)
 
void SetLastFirePointRot (float last_fire_point_rot)
 
void SetLastFirePointIndex (int last_fire_point_index)
 
void RemoveQuickBarEntityShortcut (EntityAI entity)
 
void SetEnableQuickBarEntityShortcut (EntityAI entity, bool value)
 
int FindQuickBarEntityIndex (EntityAI entity)
 
int GetQuickBarSize ()
 
EntityAI GetQuickBarEntity (int index)
 
void UpdateQuickBarEntityVisibility (EntityAI entity)
 
void SetQuickBarEntityShortcut (EntityAI entity, int index, bool force=false)
 
void OnQuickbarSetEntityRequest (ParamsReadContext ctx)
 
void ApplySplint ()
 
void ProcessDrowning (float dT)
 
void SpawnDrowningBubbles ()
 
void ProcessHoldBreath (float dT)
 
void OnHoldBreathStart ()
 
void OnHoldBreathExhausted ()
 
void OnHoldBreathEnd ()
 
override bool IsHoldingBreath ()
 
override bool IsRefresherSignalingViable ()
 
eMixedSoundStates GetMixedSoundStates ()
 
AbstractWave SaySoundSet (string name)
 
EntityAI FindCargoByBaseType (string searched_item)
 
void InitEditor ()
 
void OnPlayerLoaded ()
 
void SetPlayerDisconnected (bool state)
 
bool IsPlayerDisconnected ()
 
Hologram GetHologramServer ()
 
Hologram GetHologramLocal ()
 
void PlacingStartServer (ItemBase item)
 
void PlacingStartLocal (ItemBase item)
 
void PlacingCancelServer ()
 
void LockHandsUntilItemHeld ()
 
void PlacingCancelLocal ()
 
void PlacingCompleteServer ()
 
void PlacingCompleteLocal ()
 
bool IsPlacingServer ()
 
bool IsPlacingLocal ()
 
void SetDrowning (bool enable)
 
void OnDrowningStart ()
 
void OnDrowningEnd ()
 
bool TogglePlacingServer (int userDataType, ParamsReadContext ctx)
 
void RequestResetADSSync ()
 
bool ResetADSPlayerSync (int userDataType, ParamsReadContext ctx)
 server only
 
override bool CanPlaceItem (EntityAI item)
 
void SetUnderground (EUndergroundPresence presence)
 
void TogglePlacingLocal (ItemBase item=null)
 
void SetLocalProjectionPosition (vector local_position)
 
void SetLocalProjectionOrientation (vector local_orientation)
 
vector GetLocalProjectionPosition ()
 
vector GetLocalProjectionOrientation ()
 
void AddToEnvironmentTemperature (float pTemperature)
 DEPRECATED.
 
void SetInWater (bool pState)
 water contact (driven by Environment)
 
bool IsInWater ()
 
void ~PlayerBase ()
 
void OnCameraChanged (DayZPlayerCameraBase new_camera)
 
DayZPlayerCamera GetCurrentPlayerCamera ()
 
bool IsCurrentCameraAimedAtGround ()
 
BleedingSourcesManagerServer GetBleedingManagerServer ()
 
BleedingSourcesManagerRemote GetBleedingManagerRemote ()
 
SymptomManager GetSymptomManager ()
 
VirtualHud GetVirtualHud ()
 
TransferValues GetTransferValues ()
 
DebugMonitorValues GetDebugMonitorValues ()
 
void OnScheduledTick (float deltaTime)
 
void OnCommandHandlerTick (float delta_time, int pCurrentCommandID)
 
void UpdateMovementInertia ()
 Update movement inertia based on stamina available.
 
NotifiersManager GetNotifiersManager ()
 
void OnTick ()
 
override void EEItemIntoHands (EntityAI item)
 
override void EEItemOutOfHands (EntityAI item)
 
PlayerStomach GetStomach ()
 
override void CommandHandler (float pDt, int pCurrentCommandID, bool pCurrentCommandFinished)
 
void CloseMap ()
 DEPRECATED; terminates map animation callback and re-enables controls.
 
void CloseMapEx (bool cancelled)
 
void SetMapOpen (bool state)
 
bool IsMapOpen ()
 
void SetMapClosingSyncSet (bool state)
 
bool GetMapClosingSyncSent ()
 
bool IsMapCallbackCancelInput ()
 
bool IsMapCallbackEndInput ()
 
MapNavigationBehaviour GetMapNavigationBehaviour ()
 
void MapNavigationItemInPossession (EntityAI item)
 
void MapNavigationItemNotInPossession (EntityAI item)
 
void SetCheckMeleeItem (ItemBase item=null)
 
void SetShakesForced (int value)
 
void FreezeCheck ()
 
override bool IsLanded (int pCurrentCommandID)
 
override bool OnLand (int pCurrentCommandID, FallDamageData fallDamageData)
 
override bool IsAlreadyInFallingCommand (int pCurrentCommandID)
 
void OnUnconsciousStart ()
 
void OnUnconsciousStop (int pCurrentCommandID)
 
void OnUnconsciousUpdate (float pDt, int last_command)
 
int SimplifyShock ()
 
float GetSimplifiedShockNormalized ()
 
override bool IsUnconscious ()
 
override bool CanBeTargetedByAI (EntityAI ai)
 
void GiveShock (float shock)
 
void OnRestrainStart ()
 
void ShockRefill (float pDt)
 functionality moved to ShockMdfr::OnTick
 
eBrokenLegs GetBrokenLegs ()
 
void SetBrokenLegs (int stateId)
 
void UpdateBrokenLegs (int stateId)
 
void BreakLegSound ()
 
void BrokenLegForceProne (bool forceOverride=false)
 
void BrokenLegWalkShock ()
 
void MovingShock (float legHealth, float highShock, float midShock, float lowShock)
 
void DealShock (float dmg)
 
override bool CanPickupHeavyItem (notnull EntityAI item)
 
void SetLegHealth ()
 
void DropHeavyItem ()
 
bool IsWearingSplint ()
 
override void OnCommandSwimStart ()
 
override void OnCommandSwimFinish ()
 
override void OnCommandLadderStart ()
 
override void OnCommandLadderFinish ()
 
override void OnCommandFallStart ()
 
override void OnCommandFallFinish ()
 
override void OnCommandClimbStart ()
 
override void OnCommandClimbFinish ()
 
override void OnCommandVehicleStart ()
 
override void OnCommandVehicleFinish ()
 
override void OnCommandMelee2Start ()
 
override void OnCommandMelee2Finish ()
 
override void OnCommandDeathStart ()
 
override void OnJumpStart ()
 
override void OnJumpEnd (int pLandType=0)
 
bool IsStance (int stance, int stanceMask)
 
override void OnStanceChange (int previousStance, int newStance)
 
override bool CanChangeStance (int previousStance, int newStance)
 
override void OnCommandMoveStart ()
 
override bool CanRoll ()
 
override void OnRollStart (bool isToTheRight)
 
override void OnRollFinish ()
 
void OnJumpOutVehicleFinish (float carSpeed)
 
void OnVehicleSwitchSeat (int seatIndex)
 
void OnVehicleSeatDriverEnter ()
 
void OnVehicleSeatDriverLeft ()
 
override void OnThrowingModeChange (bool change_to_enabled)
 
override void EOnFrame (IEntity other, float timeSlice)
 
override void EOnPostFrame (IEntity other, int extra)
 
void StaminaHUDNotifier (bool show)
 
override void DepleteStamina (EStaminaModifiers modifier, float dT=-1)
 
override bool CanConsumeStamina (EStaminaConsumers consumer)
 
override bool CanStartConsumingStamina (EStaminaConsumers consumer)
 
bool HasStaminaRemaining ()
 DEPRECATED.
 
override bool CanClimb (int climbType, SHumanCommandClimbResult climbRes)
 
override bool CanJump ()
 
bool IsJumpInProgress ()
 
bool IsTargetInActiveRefresherRange (EntityAI target)
 
void RequestHandAnimationStateRefresh ()
 
void RefreshHandAnimationState (int delay=0)
 
bool IsFacingTarget (Object target)
 
void OnQuickBarSingleUse (int slotClicked)
 
void OnQuickBarContinuousUseStart (int slotClicked)
 
void OnQuickBarContinuousUseEnd (int slotClicked)
 
void SetActionEndInput (ActionBase action)
 
bool IsQBControl ()
 
void ResetActionEndInput ()
 
void RadialQuickBarSingleUse (int slotClicked)
 
void RadialQuickBarCombine (int slotClicked)
 
void QuickReloadWeapon (EntityAI weapon)
 
void ReloadWeapon (EntityAI weapon, EntityAI magazine)
 
EntityAI GetMagazineToReload (EntityAI weapon)
 
void OnSpawnedFromConsole ()
 
bool GetLiquidTendencyDrain ()
 
void SetLiquidTendencyDrain (bool state)
 
bool GetFlagTendencyRaise ()
 DEPRECATED.
 
void SetFlagTendencyRaise (bool state)
 DEPRECATED.
 
override SoundOnVehicle PlaySound (string sound_name, float range, bool create_local=false)
 
float GetPlayerLoad ()
 
bool IsOverloaded ()
 
void SetPlayerLoad (float load)
 
void AddPlayerLoad (float addedload)
 
bool IsItemInInventory (EntityAI entity)
 
override bool NeedInventoryJunctureFromServer (notnull EntityAI item, EntityAI currParent, EntityAI newParent)
 
float GetWeightSpecialized (bool forceRecalc=false)
 
void CalculateVisibilityForAI ()
 
void SetVisibilityCoef (float pVisibility)
 
float GetVisibilityCoef ()
 
int GetShakeLevel ()
 
EStatLevels GetStatLevelHealth ()
 
EStatLevels GetStatLevelToxicity ()
 
EStatLevels GetStatLevelBlood ()
 
EStatLevels GetStatLevelEnergy ()
 
EStatLevels GetStatLevelWater ()
 
EStatLevels GetImmunityLevel ()
 returns player's immunity level
 
float GetBordersImmunity ()
 
float GetStatBordersHealth ()
 
float GetStatBordersToxicity ()
 
float GetStatBordersBlood ()
 
float GetStatBordersEnergy ()
 
float GetStatBordersWater ()
 
float GetStatLevelBorders (float stat_value, float critical, float low, float normal, float high, float max)
 
EStatLevels GetStatLevel (float stat_value, float critical, float low, float normal, float high)
 
void SetImmunityBoosted (bool boosted)
 
float GetImmunity ()
 returns player's immunity strength between 0..1
 
bool IsSprinting ()
 
bool CanSprint ()
 
bool IsInProne ()
 
bool IsInRasedProne ()
 
bool IsLeaning ()
 
bool IsRolling ()
 
bool IsClimbing ()
 
bool IsFalling ()
 
override bool IsFighting ()
 
bool IsEmotePlaying ()
 
override bool IsIgnoredByConstruction ()
 
bool AnimCommandCheck (HumanMoveCommandID mask)
 
void RunFightBlendTimer ()
 
void EndFighting ()
 
bool CheckMeleeItemDamage (ItemBase item)
 
void PlayAttachmentDropSound ()
 
override void RPC (int rpc_type, array< ref Param > params, bool guaranteed, PlayerIdentity recipient=NULL)
 
override void OnRPC (PlayerIdentity sender, int rpc_type, ParamsReadContext ctx)
 
override void OnGameplayDataHandlerSync ()
 
void UpdateLighting ()
 
void SetContaminatedEffectEx (bool enable, int ppeIdx=-1, int aroundId=ParticleList.CONTAMINATED_AREA_GAS_AROUND, int tinyId=ParticleList.CONTAMINATED_AREA_GAS_TINY, string soundset="", bool partDynaUpdate=false, int newBirthRate=0)
 
void SetContaminatedEffect (bool enable, int ppeIdx=-1, int aroundId=ParticleList.CONTAMINATED_AREA_GAS_AROUND, int tinyId=ParticleList.CONTAMINATED_AREA_GAS_TINY, bool partDynaUpdate=false, int newBirthRate=0)
 
void UpdateCorpseState ()
 
override void EEHealthLevelChanged (int oldLevel, int newLevel, string zone)
 
override void OnVariablesSynchronized ()
 
bool IsSyncedModifierActive (eModifierSyncIDs modifier)
 Checks whether modifier (which has syncing enabled) is currently active, works on both Client and Server.
 
void HandleBrokenLegsSync ()
 
void FixAllInventoryItems ()
 
void OnInventoryMenuOpen ()
 
void OnInventoryMenuClose ()
 
void OnSelectPlayer ()
 
override void SimulateDeath (bool state)
 
void SetNewCharName ()
 
void CheckForBurlap ()
 
void CheckForGag ()
 
void UpdateMaskBreathWidget (notnull MaskBase mask, bool is_start=false)
 
void OnVoiceEvent (PlayerSoundEventBase voice_event)
 
void OnVoiceEventPlayback (PlayerSoundEventBase voice_event, AbstractWave callback, float playback_time)
 called every cmd handler tick during a playback of PlayerSoundEvent, m_ProcessPlaybackEvent needs to be enabled on the PlayerSoundEvent
 
override bool OnInputUserDataProcess (int userDataType, ParamsReadContext ctx)
 
float GetHealthRegenSpeed ()
 
bool HandleRemoteItemManipulation (int userDataType, ParamsReadContext ctx)
 
ItemBase GetItemInHands ()
 
override EntityAI SpawnEntityOnGroundPos (string object_name, vector pos)
 
EntityAI SpawnEntityOnGroundOnCursorDir (string object_name, float distance)
 
EntityAI SpawnAI (string object_name, vector pos)
 
bool DropItem (ItemBase item)
 Spawn item on server side.
 
EntityAI CreateInInventory (string item_name, string cargo_type="", bool full_quantity=false)
 
ItemBase CreateCopyOfItemInInventory (ItemBase src)
 
ItemBase CreateCopyOfItemInInventoryOrGround (ItemBase src)
 
ItemBase CreateCopyOfItemInInventoryOrGroundEx (ItemBase src, bool markItemAsSplitResult=false)
 
void Message (string text, string style)
 
void MessageStatus (string text)
 
void MessageAction (string text)
 
void MessageFriendly (string text)
 
void MessageImportant (string text)
 
void CloseInventoryMenu ()
 
override void ClearInventory ()
 
void DropAllItems ()
 Drops all clothes/wearables this character is carrying on themselves.
 
string GetPlayerClass ()
 
void ShavePlayer ()
 
bool CanShave ()
 
override void OnParticleEvent (string pEventType, string pUserString, int pUserInt)
 
bool CanSpawnBreathVaporEffect ()
 
void ProcessADDModifier ()
 
void SpawnBreathVaporEffect ()
 
bool GetDrowningWaterLevelCheck ()
 
void SetLifeSpanStateVisible (int show_state)
 
int GetLifeSpanState ()
 
int GetLastShavedSeconds ()
 
void SetLastShavedSeconds (int last_shaved_seconds)
 
bool HasCoveredFaceForShave ()
 
eBloodyHandsTypes HasBloodyHandsEx ()
 
bool HasBloodyHands ()
 
void SetBloodyHands (bool show)
 
void SetBloodyHandsEx (eBloodyHandsTypes type)
 
void SendSoundEvent (EPlayerSoundEventID id)
 
void SendSoundEventEx (EPlayerSoundEventID id, int param=0)
 
void CheckZeroSoundEvent ()
 
void CheckSendSoundEvent ()
 
override bool PlaySoundEvent (EPlayerSoundEventID id, bool from_anim_system=false, bool is_from_server=false)
 
override bool PlaySoundEventEx (EPlayerSoundEventID id, bool from_anim_system=false, bool is_from_server=false, int param=0)
 
PlayerSoundEventHandler GetPlayerSoundEventHandler ()
 
void OnBleedingBegin ()
 
void OnBleedingEnd ()
 
void OnBleedingSourceAdded ()
 
void OnBleedingSourceRemoved ()
 
void OnBleedingSourceRemovedEx (ItemBase item)
 
int GetBleedingSourceCount ()
 
void ResetPlayer (bool set_max)
 
void CheckSoundEvent ()
 
void TestSend ()
 
void SetStaminaState (eStaminaState state)
 
int GetStaminaState ()
 
void UpdateQuickBarExtraSlots ()
 
bool Save ()
 
void SpreadAgentsEx (float distance=3, float chance=0.25)
 chance between [0..1] , distance in meters
 
void SpreadAgents ()
 
override int GetAgents ()
 
override void RemoveAgent (int agent_id)
 
override void RemoveAllAgents ()
 
override void InsertAgent (int agent, float count=1)
 
int GetSingleAgentCount (int agent_id)
 
float GetSingleAgentCountNormalized (int agent_id)
 
float GetTotalAgentCount ()
 
void PrintAgents ()
 
void ImmuneSystemTick (float value, float deltaT)
 
void AntibioticsAttack (float value)
 
vector GetAimPosition ()
 
bool CanEatAndDrink ()
 
ModifiersManager GetModifiersManager ()
 
PlayerStat< floatGetStatWater ()
 
PlayerStat< floatGetStatToxicity ()
 
PlayerStat< floatGetStatEnergy ()
 
PlayerStat< floatGetStatHeatComfort ()
 
PlayerStat< floatGetStatTremor ()
 
PlayerStat< intGetStatWet ()
 
PlayerStat< floatGetStatDiet ()
 
PlayerStat< floatGetStatStamina ()
 
PlayerStat< floatGetStatSpecialty ()
 
PlayerStat< intGetStatBloodType ()
 
PlayerStat< floatGetStatHeatBuffer ()
 
void ToggleHeatBufferVisibility (bool show)
 
string GetLastUAMessage ()
 UA Last Message.
 
void SetLastUAMessage (string pMsg)
 
void ClearLastUAMessage ()
 
void ForceUpdateInjuredState ()
 update injured state immediately
 
override void GetDebugActions (out TSelectableActionInfoArrayEx outputList)
 
override void OnSyncJuncture (int pJunctureID, ParamsReadContext pCtx)
 
bool IsItemsToDelete ()
 
void SetToDelete (ParamsReadContext pCtx)
 
override void AddItemToDelete (EntityAI item)
 
bool CanDeleteItems ()
 
override void JunctureDeleteItem (EntityAI item)
 
void UpdateDelete ()
 
override bool HeadingModel (float pDt, SDayZPlayerHeadingModel pModel)
 
override bool IsInventorySoftLocked ()
 
override void SetInventorySoftLock (bool status)
 'soft lock' meaning inventory screen cannot be displayed, but mechanically, inventory operations are still possible
 
void SetLoadedQuickBarItemBind (EntityAI entity, int index)
 
override bool IsLiftWeapon ()
 
bool ReadLiftWeaponRequest (int userDataType, ParamsReadContext ctx)
 
void SetLiftWeapon (int pJunctureID, ParamsReadContext ctx)
 
void SendLiftWeaponSync (bool state)
 Client-side only.
 
override void CheckLiftWeapon ()
 
override void ProcessLiftWeapon ()
 
override void HideClothing (ItemOptics optic, bool state)
 state 'true' == hide
 
void RequestUnconsciousness (bool enable)
 
override void SetDeathDarknessLevel (float duration, float tick_time)
 
override bool IsInFBEmoteState ()
 
void EndSurrenderRequest (SurrenderData data=null)
 ends surrender, originally intended for surrender->restrained transitioning
 
bool IsSurrendered ()
 
bool IsPlayerLoaded ()
 
override void CheckAnimationOverrides ()
 
bool CanRedirectToWeaponManager (notnull EntityAI item, out bool isActionPossible)
 
override bool PredictiveTakeEntityToTargetInventory (notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
 
override bool PredictiveTakeEntityToInventory (FindInventoryLocationType flags, notnull EntityAI item)
 
override bool PredictiveTakeEntityToTargetAttachment (notnull EntityAI target, notnull EntityAI item)
 
override bool PredictiveTakeEntityToTargetAttachmentEx (notnull EntityAI target, notnull EntityAI item, int slot)
 
override bool PredictiveTakeEntityToTargetCargo (notnull EntityAI target, notnull EntityAI item)
 
override bool PredictiveTakeEntityToTargetCargoEx (notnull CargoBase cargo, notnull EntityAI item, int row, int col)
 
override bool PredictiveDropEntity (notnull EntityAI item)
 
override bool PredictiveSwapEntities (notnull EntityAI item1, notnull EntityAI item2)
 
override bool PredictiveForceSwapEntities (notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
 
override void PredictiveTakeEntityToHands (EntityAI item)
 
override bool PredictiveTakeToDst (notnull InventoryLocation src, notnull InventoryLocation dst)
 
bool IsSwapBetweenHandsAndGroundLargeItem (notnull EntityAI item1, notnull EntityAI item2, out EntityAI item_hands, out EntityAI item_ground)
 
void SetHairLevelToHide (int level, bool state, bool was_debug=false)
 Dynamic hair hiding.
 
void HideHairSelections (ItemBase item, bool state)
 
void UpdateHairSelectionVisibility (bool was_debug=false)
 
void UpdateTranslatedSelections (SelectionTranslation stt)
 
void CheckHairClippingOnCharacterLoad ()
 helper method for re-checking hairhiding on character load
 
bool IsNVGWorking ()
 
bool IsNVGLowered ()
 
int GetNVType ()
 
array< intGetNVTypesArray ()
 
void SetNVGWorking (bool state)
 Deprecated.
 
void SetNVGLowered (bool state)
 
void AddActiveNV (int type)
 
void RemoveActiveNV (int type)
 
void ResetActiveNV ()
 
void AdjustBandana (EntityAI item, string slot_name)
 
void UpdateCorpseStateVisual ()
 
void SetDecayEffects (int effect=-1)
 
void PreloadDecayTexture ()
 
void SetLastMapInfo (float scale, vector pos)
 
bool GetLastMapInfo (out float scale, out vector pos)
 
override bool PhysicalPredictiveDropItem (EntityAI entity, bool heavy_item_only=true)
 
override void SetProcessUIWarning (bool state)
 
void dmgDebugPrint (TotalDamageResult damageResult, int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos, float speedCoef)
 
void DamageAllLegs (float inputDmg)
 
void TryHideItemInHands (bool hide, bool force=false)
 tries to hide item in player's hands, some exceptions for various movement states
 
bool CheckAndExecuteStackSplit (FindInventoryLocationType flags, notnull EntityAI item, notnull EntityAI target)
 
bool CheckAndExecuteStackSplitToInventoryLocation (InventoryLocation il, notnull EntityAI item)
 
bool TakeEntityToInventoryImpl (InventoryMode mode, FindInventoryLocationType flags, notnull EntityAI item)
 
bool TakeEntityToCargoImpl (InventoryMode mode, notnull EntityAI item)
 
bool TakeEntityAsAttachmentImpl (InventoryMode mode, notnull EntityAI item)
 
override void TakeEntityToHandsImpl (InventoryMode mode, EntityAI item)
 
bool TakeEntityToTargetInventoryImpl (InventoryMode mode, notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
 
bool TakeEntityToTargetCargoImpl (InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
 
bool TakeEntityToTargetAttachmentImpl (InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
 
bool TakeToDstImpl (InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)
 
override vector GetCenter ()
 
void ContaminatedParticleAdjustment ()
 
void HandleGlassesEffect ()
 
override void AddArrow (Object arrow, int componentIndex, vector closeBonePosWS, vector closeBoneRotWS)
 
override bool IsManagingArrows ()
 
string GetCachedName ()
 
string GetCachedID ()
 

Static Protected Member Functions

static set< intGetFaceCoverageShaveValues ()
 returns a set of face covering values
 

Protected Attributes

bool m_HasHeatBuffer
 
bool m_PlayerLoaded
 
bool m_PlayerDisconnectProcessed
 
bool m_ProcessUIWarning
 
int m_LocalRefreshAnimStateIdx
 
int m_RefreshAnimStateIdx
 
int m_LifespanLevelLocal
 
int m_AnimCommandStarting
 
EUndergroundPresence m_UndergroundPresence
 
PluginPresenceNotifier m_PresenceNotifier
 
ref UndergroundHandlerClient m_UndergroundHandler
 
ref PlayerStats m_PlayerStats
 
PluginRecipesManager m_ModuleRecipesManager
 
ref BleedingSourcesManagerServer m_BleedingManagerServer
 
ref BleedingSourcesManagerRemote m_BleedingManagerRemote
 
ref ModifiersManager m_ModifiersManager
 
ref NotifiersManager m_NotifiersManager
 
ActionManagerBase m_ActionManager
 
ref PlayerAgentPool m_AgentPool
 
int m_Agents
 
ref Environment m_Environment
 
ref EmoteManager m_EmoteManager
 
ref SymptomManager m_SymptomManager
 
ref VirtualHud m_VirtualHud
 
ref StaminaHandler m_StaminaHandler
 
ref InjuryAnimationHandler m_InjuryHandler
 
ref ShockHandler m_ShockHandler
 
ref SoftSkillsManager m_SoftSkillsManager
 
ref StanceIndicator m_StanceIndicator
 
ref TransferValues m_TrasferValues
 
ref DebugMonitorValues m_DebugMonitorValues
 
const int OVERLOAD_LIMIT = 30000
 
float m_CargoLoad
 
float m_VisibilityCoef
 
float m_OriginalSlidePoseAngle
 
int m_SoundEvent
 
int m_SoundEventParam
 
int m_FliesIndex
 
bool m_SoundEventSent
 
ref Param2< float, floatm_UAProgressParam
 
ref Param2< int, intm_UAParam
 
ref Param3< float, float, boolm_StaminaParam
 
ref Param1< stringm_UAParamMessage
 
ref Param1< floatm_UnconParam
 
ref Param1< floatm_DeathDarkeningParam
 
ref DamageDealtEffect m_DamageDealtEffect
 
ref EffectRadial m_EffectRadial
 
ref FlashbangEffect m_FlashbangEffect
 
ref ShockDealtEffect m_ShockDealtEffect
 
ref EffectParticle m_FliesEff
 
ref TInputActionMap m_InputActionMap
 
ref TInputActionMap m_InputActionMapControled
 
ref TInputActionMap m_InputActionMapAsTarget
 
bool m_ActionsInitialize
 
ref HiddenSelectionsData m_EmptyGloves
 
ref WeaponManager m_WeaponManager
 
ref CraftingManager m_CraftingManager
 
ref ArrowManagerPlayer m_ArrowManager
 
ref InventoryActionHandler m_InventoryActionHandler
 
QuickBarBase m_QuickBarBase
 
ref PlayerSoundManagerServer m_PlayerSoundManagerServer
 
ref PlayerSoundManagerClient m_PlayerSoundManagerClient
 
ref HeatComfortAnimHandler m_HCAnimHandler
 
ref EffectSound m_SoundFliesEffect
 
bool m_QuickBarHold
 
bool m_QuickBarFT = false
 
Hud m_Hud
 
int m_RecipePick
 
bool m_IsHoldingBreath
 
bool m_IsInWater
 
float m_LastPostFrameTickTime
 
ref Timer m_DeathCheckTimer
 
bool m_CorpseProcessing
 
int m_CorpseState
 
int m_CorpseStateLocal
 
int m_PersistentFlags
 
int m_StaminaState
 
float m_UnconsciousTime
 
int m_ShockSimplified
 
float m_CurrentShock
 
bool m_IsRestrained
 
bool m_IsRestrainStarted
 
bool m_IsRestrainPrelocked
 
bool m_ImmunityBoosted
 
bool m_AreHandsLocked
 
float m_UnconsciousVignetteTarget = 2
 
float m_CameraSwayModifier = 0.2
 
float m_LastShockHitTime
 
DayZPlayerCameraBase m_CurrentCamera
 
int m_BleedingBits
 
vector m_DirectionToCursor
 
vector m_DefaultHitPosition
 
int m_DiseaseCount
 
int m_HealingsCount
 
bool m_AllowQuickRestrain
 
bool m_AllowQuickFishing
 
int m_Shakes
 
int m_ShakesForced
 
int m_BreathVapour
 
int m_HealthLevel
 
int m_MixedSoundStates
 
int m_QuickBarBonus = 0
 
bool m_IsVehicleSeatDriver
 
float m_UnconsciousEndTime = 0
 
int m_BleedingSourceCount
 
Head_Default m_CharactersHead
 
EPulseType m_PulseType
 
PlayerBase m_CheckPulseLastTarget
 
int m_ForceInjuryAnimMask
 
bool m_HideHairAnimated
 
string m_DecayedTexture
 
ref array< EntityAIm_ItemsToDelete
 
int m_BrokenLegState = eBrokenLegs.NO_BROKEN_LEGS
 
int m_LocalBrokenState = eBrokenLegs.NO_BROKEN_LEGS
 
bool m_BrokenLegsJunctureReceived
 
ref EffectSound m_BrokenLegSound
 
const string SOUND_BREAK_LEG = "broken_leg_SoundSet"
 
bool m_CanPlayBrokenLegSound
 
float m_UnconRefillModifier = 1
 
RandomGeneratorSyncManager m_RGSManager
 
int m_AntibioticsActive
 
bool m_ContaminatedAreaEffectEnabled
 
const string CONTAMINATED_AREA_AMBIENT = "ContaminatedArea_SoundSet"
 
EffectSound m_AmbientContamination
 
int m_ContaminatedAreaCount
 
int m_EffectAreaCount
 
bool m_InsideEffectArea
 
bool m_InsideEffectAreaPrev
 
EffectTrigger m_CurrentEffectTrigger
 
bool m_CanDisplayHitEffectPPE
 
string m_CachedPlayerName
 
string m_CachedPlayerID
 
ref array< ref Param2< EntityAI, int > > m_aQuickBarLoad
 
ref Hologram m_HologramServer
 
ref Hologram m_HologramLocal
 
vector m_LocalProjectionPosition = "0 0 0 "
 
vector m_LocalProjectionOrientation = "0 0 0 "
 
float m_LastTick = -1
 
int m_AddModifier = -1
 
int m_RecipeID = -1
 
EntityAI m_Item1
 
EntityAI m_Item2
 
bool m_IsCraftingReady
 
float m_RecipeAnimLength
 
vector m_CraftingInitialPos
 
ref array< intm_Recipes
 
ref SoundParams m_SaySoundParams
 
ref SoundObjectBuilder m_SaySoundBuilder
 
ref SoundObject m_SaySoundObject
 
string m_SaySoundLastSetName
 
bool m_ActionQBControl
 
ref ConstructionActionData m_ConstructionActionData
 
vector m_LastFirePoint
 
float m_LastFirePointRot
 
int m_LastFirePointIndex
 
bool ItemToInventory
 
bool m_IsFighting = false
 
bool m_IsDrowning
 
int m_DebugMonitorEnabled
 
ActionUnfoldMapCB m_hac
 
bool m_MapOpen
 
bool m_MapCloseRequestProcessed
 
bool m_MapClosingSyncSent
 
float m_LastMapScale = -1.0
 
vector m_LastMapPos
 
ref MapNavigationBehaviour m_MapNavigationBehaviour
 
bool m_InventorySoftLocked
 
int m_InventorySoftLockCount = 0
 
string m_DatabaseID
 
ref Timer m_AnalyticsTimer
 
bool m_MeleeDebug
 melee stats
 
ItemBase m_CheckMeleeItem
 
string m_UALastMessage
 user actions last message
 
ref Timer m_UALastMessageTimer
 
bool m_WorkingNVGHeadset
 
bool m_LoweredNVGHeadset
 
ref array< intm_ActiveNVTypes
 
int m_SyncedModifiers
 
int m_SyncedModifiersPrev
 
PluginAdminLog m_AdminLog
 
ref PlayerStomach m_PlayerStomach
 
PlayerStat< floatm_StatWater
 
PlayerStat< floatm_StatToxicity
 
PlayerStat< floatm_StatEnergy
 
PlayerStat< floatm_StatHeatComfort
 
PlayerStat< floatm_StatTremor
 
GameplayEffectWidgets_base m_EffectWidgets
 effect widgets
 
ref array< intm_ProcessAddEffectWidgets
 
ref array< intm_ProcessRemoveEffectWidgets
 
ref array< intm_ProcessAddGlassesEffects
 
ref array< intm_ProcessRemoveGlassesEffects
 
bool m_ShowDbgUI = true
 
int m_DbgListSelection = 0
 
float m_DbgSliderValue = 0.0
 
ref array< stringm_DbgOptions = {"jedna", "dva", "tri"}
 

Static Protected Attributes

static bool DEBUG_INVENTORY_ACCESS = false
 
static ref array< stringm_BleedingSourcesLow
 
static ref array< stringm_BleedingSourcesUp
 
static ref array< Man > m_ServerPlayers = new array<Man>
 
static ref TStringArray m_QBarItems
 
static Particle m_ContaminatedAroundPlayer
 
static Particle m_ContaminatedAroundPlayerTiny
 
static ref array< ObjectSPREAD_AGENTS_OBJECTS = new array<Object>
 
static ref array< CargoBaseSPREAD_AGENTS_PROXY_CARGOS = new array<CargoBase>
 

Private Member Functions

void SetBloodyHandsBase (int type)
 
void SetBloodyHandsPenalty ()
 
bool HasBloodTypeVisible ()
 
void SetBloodTypeVisible (bool show)
 
int GetBloodType ()
 
void SetBloodType (int blood_type)
 
SoftSkillsManager GetSoftSkillsManager ()
 
void CheckDeath ()
 
int GetNoisePresenceInAI ()
 Return actual noise presence of player.
 
bool IsPersistentFlag (PersistentFlag bit)
 
void SetPersistentFlag (PersistentFlag bit, bool enable)
 
int GetStoreLoadVersion ()
 
override void OnStoreSave (ParamsWriteContext ctx)
 
void SaveAreaPersistenceFlag (ParamsWriteContext ctx)
 
override bool OnStoreLoad (ParamsReadContext ctx, int version)
 
override void AfterStoreLoad ()
 
void OnStoreSaveLifespan (ParamsWriteContext ctx)
 
bool OnStoreLoadLifespan (ParamsReadContext ctx, int version)
 
void UpdatePlayerMeasures ()
 
void OnConnect ()
 
void OnReconnect ()
 
void OnDisconnect ()
 
void SetModifiers (bool enable)
 
bool Consume (ItemBase source, float amount, EConsumeType consume_type)
 
void ShowUnconsciousScreen (bool show)
 
override void RequestSoundEventEx (EPlayerSoundEventID id, bool from_server_and_client=false, int param=0)
 
override void RequestSoundEvent (EPlayerSoundEventID id, bool from_server_and_client=false)
 

Private Attributes

const int SIMPLIFIED_SHOCK_CAP = 63
 
const int SHAKE_LEVEL_MAX = 7
 
int m_LifeSpanState
 
int m_LastShavedSeconds
 
int m_BloodType
 
bool m_HasBloodTypeVisible
 
bool m_LiquidTendencyDrain
 
bool m_FlagRaisingTendency
 
int m_HasBloodyHandsVisible
 
int m_FaceCoveredForShaveLayers = 0
 
int m_StoreLoadVersion
 
const int ACT_STORE_SAVE_VERSION = 4
 
PluginPlayerStatus m_ModulePlayerStatus
 
PluginConfigEmotesProfile m_ConfigEmotesProfile
 
PluginLifespan m_ModuleLifespan
 
vector m_PlayerOldPos
 

Detailed Description

Definition at line 1 of file PlayerBase.c.

Constructor & Destructor Documentation

◆ ~PlayerBase()

void ManBase::~PlayerBase ( )
inlineprotected

Definition at line 2358 of file PlayerBase.c.

2359 {
2360 if (GetGame() && (!GetGame().IsDedicatedServer()))
2361 {
2364 }
2365
2367 StopSoundSet(m_SoundFliesEffect);
2368 }
static void RemovePlayerBase(Man player)
Definition ClientData.c:29
ref EffectParticle m_FliesEff
Definition PlayerBase.c:70
ref EffectSound m_SoundFliesEffect
Definition PlayerBase.c:85
void SetContaminatedEffectEx(bool enable, int ppeIdx=-1, int aroundId=ParticleList.CONTAMINATED_AREA_GAS_AROUND, int tinyId=ParticleList.CONTAMINATED_AREA_GAS_TINY, string soundset="", bool partDynaUpdate=false, int newBirthRate=0)
Manager class for managing Effect (EffectParticle, EffectSound)
static void DestroyEffect(Effect effect)
Unregisters, stops and frees the Effect.
proto native CGame GetGame()

References SEffectManager::DestroyEffect(), GetGame(), and ClientData::RemovePlayerBase().

Member Function Documentation

◆ AddAction() [1/2]

void ManBase::AddAction ( typename actionName )
inlineprotected

Definition at line 1467 of file PlayerBase.c.

1468 {
1470 }
ref TInputActionMap m_InputActionMap
Definition PlayerBase.c:71
void AddAction(typename actionName, out TInputActionMap InputActionMap)

References AddAction(), and m_InputActionMap.

◆ AddAction() [2/2]

void ManBase::AddAction ( typename actionName ,
out TInputActionMap InputActionMap )
inlineprotected

Definition at line 1446 of file PlayerBase.c.

1447 {
1448 ActionBase action = GetActionManager().GetAction(actionName);
1449
1450 typename ai = action.GetInputType();
1451 if (!ai)
1452 {
1453 m_ActionsInitialize = false;
1454 return;
1455 }
1456
1458
1459 if (!action_array)
1460 {
1463 }
1464 action_array.Insert(action);
1465 }
bool m_ActionsInitialize
Definition PlayerBase.c:74
ActionManagerBase GetActionManager()

References GetActionManager(), and m_ActionsInitialize.

◆ AddActiveNV()

void ManBase::AddActiveNV ( int type)
inlineprotected

Definition at line 8257 of file PlayerBase.c.

8258 {
8259 if (!m_ActiveNVTypes || (GetGame().IsMultiplayer() && GetGame().IsServer()))
8260 {
8261#ifdef DEVELOPER
8262 Error("AddActiveNV | illegal server-side call!");
8263#endif
8264
8265 return;
8266 }
8267
8268 if (m_ActiveNVTypes.Find(type) == -1) //TODO - set instead?
8269 m_ActiveNVTypes.Insert(type);
8270 }
ref array< int > m_ActiveNVTypes
Definition PlayerBase.c:254
void Error(string err)
Messagebox with error message.
Definition EnDebug.c:90

References Error(), and GetGame().

◆ AddArrow()

override void ManBase::AddArrow ( Object arrow,
int componentIndex,
vector closeBonePosWS,
vector closeBoneRotWS )
inlineprotected

Definition at line 8733 of file PlayerBase.c.

8734 {
8736 GetActionComponentNameList(componentIndex, CachedObjectsArrays.ARRAY_STRING, LOD.NAME_FIRE);
8737
8738 int pivot = componentIndex;
8739 int newPivot = -1;
8740 string compName;
8741 for (int i = 0; i < CachedObjectsArrays.ARRAY_STRING.Count() && newPivot == -1; i++)
8742 {
8745
8746 }
8747
8748 if (newPivot != -1)
8749 pivot = newPivot;
8750
8751
8754
8755 arrow.GetTransform(arrowTransMat);
8756
8757 if (pivot == -1)
8759 else
8760 {
8761 vector rotMatrix[3];
8763
8764 parentTransMat[0] = rotMatrix[0];
8765 parentTransMat[1] = rotMatrix[1];
8766 parentTransMat[2] = rotMatrix[2];
8768 }
8769
8772 arrow.SetTransform(arrowTransMat);
8773
8775
8776#ifdef SERVER
8777 // creating bleeding source
8779 if (bleedingManager)
8780 {
8781 if (!bleedingManager.AttemptAddBleedingSourceBySelection(compName))
8782 bleedingManager.AttemptAddBleedingSourceBySelection("Pelvis");//fallback, if we can't attach bleeding source to the fallback location because there already is another one, it's fine, we are just trying make sure there is at least one
8783 }
8784#endif
8785 }
proto native int GetBoneIndexByName(string pBoneName)
returns bone index for a name (-1 if pBoneName doesn't exist)
static ref TStringArray ARRAY_STRING
LOD class.
Definition gameplay.c:203
static const string NAME_FIRE
Definition gameplay.c:207
BleedingSourcesManagerServer GetBleedingManagerServer()
Definition EnMath.c:7
static proto void YawPitchRollMatrix(vector ang, out vector mat[3])
Creates rotation matrix from angles.
static proto void MatrixInvMultiply4(vector mat0[4], vector mat1[4], out vector res[4])
Invert-transforms matrix.
static proto void MatrixOrthogonalize4(vector mat[4])
Orthogonalizes matrix.
static const float RAD2DEG
Definition EnMath.c:16
proto native void AddChild(Widget child, bool immedUpdate=true)
enum HumanMoveCommandID GetTransformWS(out vector pTm[4])
gets human transform in World Space

References AddChild(), CachedObjectsArrays::ARRAY_STRING, GetBoneIndexByName(), GetTransformWS(), Math3D::MatrixInvMultiply4(), Math3D::MatrixOrthogonalize4(), LOD::NAME_FIRE, Math::RAD2DEG, and Math3D::YawPitchRollMatrix().

◆ AddItemToDelete()

override void ManBase::AddItemToDelete ( EntityAI item)
inlineprotected

Definition at line 7477 of file PlayerBase.c.

7478 {
7479 if (item)
7480 {
7481 item.SetPrepareToDelete();
7482 m_ItemsToDelete.Insert(item);
7483 }
7484 }
ref array< EntityAI > m_ItemsToDelete
Definition PlayerBase.c:136

◆ AddPlayerLoad()

void ManBase::AddPlayerLoad ( float addedload)
inlineprotected

Definition at line 4586 of file PlayerBase.c.

4587 {
4588 float newload = GetPlayerLoad() + addedload;
4590
4591 // Do not need -> Log is in SetPlayerLoad
4592 //PrintString(ToString(this) + "'s load weight is " + ToString(m_CargoLoad) + " g.");
4593 }
void SetPlayerLoad(float load)
float GetPlayerLoad()

◆ AddPossibleCoverFaceForShave()

void ManBase::AddPossibleCoverFaceForShave ( )
inlineprotected

DEPRECATED!

Definition at line 1143 of file PlayerBase.c.

1144 {
1146 }
int m_FaceCoveredForShaveLayers
Definition PlayerBase.c:12

◆ AddToEnvironmentTemperature()

void ManBase::AddToEnvironmentTemperature ( float pTemperature)
inlineprotected

DEPRECATED.

Definition at line 2341 of file PlayerBase.c.

2341{};

◆ AdjustBandana()

void ManBase::AdjustBandana ( EntityAI item,
string slot_name )
inlineprotected

Definition at line 8325 of file PlayerBase.c.

8326 {
8327 if (Bandana_ColorBase.Cast(item))
8328 {
8329 if (slot_name == "Headgear")
8330 {
8331 item.SetSimpleHiddenSelectionState(0, 1);
8332 item.SetSimpleHiddenSelectionState(1, 0);
8333 }
8334 else if (slot_name == "Mask")
8335 {
8336 item.SetSimpleHiddenSelectionState(0, 0);
8337 item.SetSimpleHiddenSelectionState(1, 1);
8338 }
8339 }
8340 }

◆ AfterStoreLoad()

override void ManBase::AfterStoreLoad ( )
inlineprivate

Definition at line 6649 of file PlayerBase.c.

6650 {
6651 GetHumanInventory().OnAfterStoreLoad();
6652 if (m_EmoteManager)
6653 m_EmoteManager.AfterStoreLoad();
6654 }
ref EmoteManager m_EmoteManager
Definition PlayerBase.c:42

◆ AnimCommandCheck()

bool ManBase::AnimCommandCheck ( HumanMoveCommandID mask)
inlineprotected

Returns whether the specified movement command(s) are starting the next frame. Use caution when using this for anything player animation-related, some commands may require the movement state to be truly active (wait until next update)

Definition at line 4957 of file PlayerBase.c.

4958 {
4959 return m_AnimCommandStarting & mask;
4960 }
int m_AnimCommandStarting
Definition PlayerBase.c:22

◆ AntibioticsAttack()

void ManBase::AntibioticsAttack ( float value)
inlineprotected

Definition at line 7205 of file PlayerBase.c.

7206 {
7207 m_AgentPool.AntibioticsAttack(value);
7208 }
ref PlayerAgentPool m_AgentPool
Definition PlayerBase.c:39

◆ ApplySplint()

void ManBase::ApplySplint ( )
inlineprotected

Definition at line 1894 of file PlayerBase.c.

1895 {
1896 float add_health_coef = 0.33;
1897 // The idea is to slightly increase health of broken limb so the player is still limping. Using more splints will help but each time less. 100% recovery can be achieved only through long term healing.
1898 if (GetBrokenLegs() == eBrokenLegs.BROKEN_LEGS)
1899 {
1900 AddHealth("LeftLeg", "Health", (GetMaxHealth("LeftLeg", "Health") - GetHealth("LeftLeg", "Health")) * add_health_coef);
1901 AddHealth("RightLeg", "Health", (GetMaxHealth("RightLeg", "Health") - GetHealth("RightLeg", "Health")) * add_health_coef);
1902 AddHealth("RightFoot", "Health", (GetMaxHealth("RightFoot", "Health") - GetHealth("RightFoot", "Health")) * add_health_coef);
1903 AddHealth("LeftFoot", "Health", (GetMaxHealth("LeftFoot", "Health") - GetHealth("LeftFoot", "Health")) * add_health_coef);
1904 }
1905 }
eBrokenLegs
Definition EBrokenLegs.c:2
eBrokenLegs GetBrokenLegs()

◆ BreakLegSound()

void ManBase::BreakLegSound ( )
inlineprotected

Definition at line 3415 of file PlayerBase.c.

3416 {
3417 PlaySoundSet(m_BrokenLegSound, SOUND_BREAK_LEG, 0.1, 0.1);
3418 }
ref EffectSound m_BrokenLegSound
Definition PlayerBase.c:140
const string SOUND_BREAK_LEG
Definition PlayerBase.c:141

◆ BrokenLegForceProne()

void ManBase::BrokenLegForceProne ( bool forceOverride = false)
inlineprotected

Definition at line 3419 of file PlayerBase.c.

3420 {
3421 if (!IsInWater() && !IsSwimming() && !IsClimbingLadder() && !IsInVehicle() && !IsClimbing() && DayZPlayerUtils.PlayerCanChangeStance(this, DayZPlayerConstants.STANCEIDX_PRONE))
3422 {
3423 if (m_MovementState.m_iStanceIdx != DayZPlayerConstants.STANCEIDX_PRONE && m_MovementState.m_iStanceIdx != DayZPlayerConstants.STANCEIDX_RAISEDPRONE)
3424 {
3426 Class.CastTo(attachment, GetItemOnSlot("Splint_Right"));
3427 if (attachment && attachment.GetType() == "Splint_Applied")
3428 attachment.Delete();
3429
3431 m_ShockHandler.CheckValue(true);
3432
3433
3434 if (m_ShockHandler.GetCurrentShock() >= 25) //Prevent conflict with unconsciousness by not forcing prone when going uncon (25 shock or less left)
3435 {
3436
3437 //calcels user action
3439 if (cmd)
3440 cmd.Cancel();
3441
3442 StopHandEvent();
3443 //Get command move and verify not null
3444 HumanCommandMove hcm = StartCommand_Move();//not sure why this is here
3445 hcm = GetCommand_Move();
3446 if (hcm)
3447 hcm.ForceStance(DayZPlayerConstants.STANCEIDX_PRONE);
3448 }
3449 }
3450 }
3451
3452 m_JumpClimb.CheckAndFinishJump();
3453 }
ref HumanMovementState m_MovementState
movement state
void DayZPlayerUtils()
cannot be instantiated
Super root of all classes in Enforce script.
Definition EnScript.c:11
ItemBase GetItemOnSlot(string slot_type)
Returns item that's on this player's attachment slot. Parameter slot_type should be a string from con...
Definition PlayerBase.c:668
bool IsClimbing()
bool IsInWater()
ref ShockHandler m_ShockHandler
Definition PlayerBase.c:47
static const float BROKEN_LEGS_INITIAL_SHOCK
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:597
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
proto native HumanCommandMove GetCommand_Move()
proto native HumanCommandActionCallback GetCommand_Action()
is human is in command action - returns its callback, if current command is action
proto native HumanCommandMove StartCommand_Move()
--— MOVE --—

References PlayerConstants::BROKEN_LEGS_INITIAL_SHOCK, Class::CastTo(), DayZPlayerUtils(), GetCommand_Action(), GetCommand_Move(), IsInWater(), m_MovementState, and StartCommand_Move().

◆ BrokenLegWalkShock()

void ManBase::BrokenLegWalkShock ( )
inlineprotected

Definition at line 3456 of file PlayerBase.c.

3457 {
3458 //No need to pursue here if player is prone as the following logic is not applied
3459 if (m_MovementState.m_iStanceIdx != DayZPlayerConstants.STANCEIDX_PRONE && m_MovementState.m_iStanceIdx != DayZPlayerConstants.STANCEIDX_RAISEDPRONE)
3460 {
3461 float avgLegHealth = GetHealth("RightLeg", "") + GetHealth("LeftLeg", "") + GetHealth("RightFoot", "") + GetHealth("LeftFoot", "");
3462 avgLegHealth *= 0.25; //divide by 4 to make the average leg health;
3463
3464 if (IsSwimming())
3465 {
3466 //swimming other than forward is not detectable in script other than through velocity check
3467 vector v;
3469
3470 if (v.LengthSq() > 0)
3472 }
3473 else if (m_MovementState.m_iMovement != 0)
3474 {
3475 if (IsClimbingLadder())
3477 else if (m_MovementState.m_iStanceIdx == DayZPlayerConstants.STANCEIDX_ERECT || m_MovementState.m_iStanceIdx == DayZPlayerConstants.STANCEIDX_RAISEDERECT)
3478 {
3479 if (m_MovementState.m_iMovement > 1)//only jog and faster
3481 }
3482 else if (m_MovementState.m_iStanceIdx == DayZPlayerConstants.STANCEIDX_CROUCH || m_MovementState.m_iStanceIdx == DayZPlayerConstants.STANCEIDX_RAISEDCROUCH)
3483 {
3484 //any speed other than idle
3486 }
3487 }
3488 else
3489 {
3490 //Here apply shock if player is standing or crouched and STANDING STILL
3492 }
3493
3494 m_ShockHandler.CheckValue(true);
3495 }
3496 }
void MovingShock(float legHealth, float highShock, float midShock, float lowShock)
static const float BROKEN_LEGS_SHOCK_SWIM
static const float BROKEN_LEGS_LOW_SHOCK_WALK
static const float BROKEN_LEGS_STAND_SHOCK
static const float BROKEN_LEGS_MID_SHOCK_WALK
static const float BROKEN_CROUCH_MODIFIER
static const float BROKEN_LEGS_HIGH_SHOCK_WALK
proto native void PhysicsGetVelocity(out vector pVelocity)
outs pVelocity - linear velocity of PHYSICS CONTROLLER

References PlayerConstants::BROKEN_CROUCH_MODIFIER, PlayerConstants::BROKEN_LEGS_HIGH_SHOCK_WALK, PlayerConstants::BROKEN_LEGS_LOW_SHOCK_WALK, PlayerConstants::BROKEN_LEGS_MID_SHOCK_WALK, PlayerConstants::BROKEN_LEGS_SHOCK_SWIM, PlayerConstants::BROKEN_LEGS_STAND_SHOCK, m_MovementState, and PhysicsGetVelocity().

◆ CalculateVisibilityForAI()

void ManBase::CalculateVisibilityForAI ( )
inlineprotected

Definition at line 4659 of file PlayerBase.c.

4660 {
4661 const int VISIBILITY_SLOTS_COUNT = 10;
4662
4663 int attcount = GetInventory().AttachmentCount();
4664 float sumVisibility = 0;
4665 float countVisibility = 0;
4666 float visibilityMean = 0;
4667
4668 if (attcount > 0)
4669 {
4670 for (int att = 0; att < attcount; att++)
4671 {
4672 EntityAI attachment = GetInventory().GetAttachmentFromIndex(att);
4673 if (attachment.IsClothing())
4674 {
4677 sumVisibility += clothing.GetItemVisibility();
4679 }
4680 }
4681
4684 }
4685 else
4686 {
4687 visibilityMean = 1;
4689 }
4690 }
void SetVisibilityCoef(float pVisibility)

References Class::CastTo().

◆ CanBeRestrained()

bool ManBase::CanBeRestrained ( )
inlineprotected

Definition at line 1680 of file PlayerBase.c.

1681 {
1682 if (IsInVehicle() || IsRaised() || IsSwimming() || IsClimbing() || IsClimbingLadder() || IsRestrained() || !GetWeaponManager() || GetWeaponManager().IsRunning() || !GetActionManager() || GetActionManager().GetRunningAction() != null || IsMapOpen())
1683 return false;
1684 if (GetThrowing() && GetThrowing().IsThrowingModeEnabled())
1685 return false;
1686 return true;
1687 }
override bool IsRestrained()
override WeaponManager GetWeaponManager()
bool IsMapOpen()
bool IsRunning()
Definition tools.c:252
bool IsRaised()
Definition human.c:1176
proto native int GetRunningAction()
returns -1 when no action is running or RELOAD,MECHANISM, ....

References GetActionManager(), GetRunningAction(), IsRaised(), and IsRunning().

◆ CanBeTargetedByAI()

override bool ManBase::CanBeTargetedByAI ( EntityAI ai)
inlineprotected

Definition at line 3317 of file PlayerBase.c.

3318 {
3319#ifdef DIAG_DEVELOPER
3321 return false;
3322#endif
3323
3324 return super.CanBeTargetedByAI(ai) && !IsUnconscious() && !IsInVehicle();
3325 }
override bool IsUnconscious()

◆ CanChangeStance()

override bool ManBase::CanChangeStance ( int previousStance,
int newStance )
inlineprotected

Definition at line 3792 of file PlayerBase.c.

3793 {
3794 // Check if the player is playing a throwing animation
3795 if (GetThrowing().IsThrowingAnimationPlaying())
3796 return false;
3797
3798 // don't allow base stance change, only raised hands change
3799 if (IsRolling())
3800 {
3801 if (Math.AbsInt(previousStance - newStance) == 3)
3802 return true;
3803
3804 return false;
3805 }
3806
3807 // Check if the player is going to crouch or raised crouch
3808 if (newStance == DayZPlayerConstants.STANCEIDX_CROUCH || newStance == DayZPlayerConstants.STANCEIDX_RAISEDCROUCH)
3809 return GetCurrentWaterLevel() <= GetDayZPlayerType().CommandSwimSettingsW().m_fToErectLevel;
3810
3811 // Check if the player is going to prone
3812 if (newStance == DayZPlayerConstants.STANCEIDX_PRONE || newStance == DayZPlayerConstants.STANCEIDX_RAISEDPRONE)
3813 return GetCurrentWaterLevel() <= GetDayZPlayerType().CommandSwimSettingsW().m_fToCrouchLevel;
3814
3815 // The player can change stance if none of the conditions above are met
3816 return true;
3817 }
bool IsRolling()
proto native DayZPlayerType GetDayZPlayerType()
returns appropriate DayZPlayerType
float GetCurrentWaterLevel()
static proto int AbsInt(int i)
Returns absolute value.

References Math::AbsInt(), GetCurrentWaterLevel(), and GetDayZPlayerType().

◆ CanClimb()

override bool ManBase::CanClimb ( int climbType,
SHumanCommandClimbResult climbRes )
inlineprotected

Definition at line 4099 of file PlayerBase.c.

4100 {
4101 if (GetBrokenLegs() == eBrokenLegs.BROKEN_LEGS)
4102 return false;
4103
4104 if (climbType == 1 && !CanConsumeStamina(EStaminaConsumers.VAULT))
4105 return false;
4106
4107 if (climbType == 2 && (!CanConsumeStamina(EStaminaConsumers.CLIMB) || GetBrokenLegs() != eBrokenLegs.NO_BROKEN_LEGS))
4108 return false;
4109
4110 if (climbType > 0 && m_InjuryHandler && m_InjuryHandler.GetInjuryAnimValue() >= InjuryAnimValues.LVL3)
4111 return false;
4112
4113 return super.CanClimb(climbType, climbRes);
4114 }
EStaminaConsumers
const float LVL3
override bool CanConsumeStamina(EStaminaConsumers consumer)
ref InjuryAnimationHandler m_InjuryHandler
Definition PlayerBase.c:46

References InjuryAnimValues::LVL3.

◆ CanConsumeStamina()

override bool ManBase::CanConsumeStamina ( EStaminaConsumers consumer)
inlineprotected

Definition at line 4066 of file PlayerBase.c.

4067 {
4068 if (!GetStaminaHandler()) return false;
4069
4070 bool val = (GetStaminaHandler().HasEnoughStaminaFor(consumer) /*&& !IsOverloaded()*/ && !IsRestrained() && !IsInFBEmoteState());
4071
4072 if (!val)
4073 StaminaHUDNotifier(false);
4074
4075 return val;
4076 }
StaminaHandler GetStaminaHandler()
override bool IsInFBEmoteState()
void StaminaHUDNotifier(bool show)
bool HasEnoughStaminaFor(EStaminaConsumers consumer)

◆ CanDeleteItems()

bool ManBase::CanDeleteItems ( )
inlineprotected

Definition at line 7486 of file PlayerBase.c.

7487 {
7488 return !(GetThrowing().IsThrowingAnimationPlaying() || GetDayZPlayerInventory().IsProcessing() || (GetActionManager() && GetActionManager().GetRunningAction()));
7489 }

References GetActionManager().

◆ CanDropEntity()

override bool ManBase::CanDropEntity ( notnull EntityAI item)
inlineprotected

Definition at line 698 of file PlayerBase.c.

699 {
700 if (GetInventory().HasInventoryReservation(item, null))
701 return false;
702
703 if (IsRestrained())
704 {
705 if (GetHumanInventory().GetEntityInHands() == item)
706 return false;
707 }
708
709 return true;
710 }

◆ CanEatAndDrink()

bool ManBase::CanEatAndDrink ( )
inlineprotected

Definition at line 7227 of file PlayerBase.c.

7228 {
7229 ItemBase mask = ItemBase.Cast(GetInventory().FindAttachment(InventorySlots.MASK));
7230 return (!mask || (mask && mask.AllowFoodConsumption()));
7231 }
provides access to slot configuration

◆ CanJump()

override bool ManBase::CanJump ( )
inlineprotected

disables jump when player is significantly injured

Definition at line 4116 of file PlayerBase.c.

4117 {
4118 if (GetBrokenLegs() != eBrokenLegs.NO_BROKEN_LEGS)
4119 return false;
4120
4122 return false;
4123
4125 if (m_InjuryHandler && m_InjuryHandler.GetInjuryAnimValue() >= InjuryAnimValues.LVL3)
4126 return false;
4127
4128 if (IsInFBEmoteState() || m_EmoteManager.m_MenuEmote)
4129 return false;
4130
4131 return super.CanJump();
4132 }

References InjuryAnimValues::LVL3.

◆ CanManipulateInventory()

bool ManBase::CanManipulateInventory ( )
inlineprotected

Definition at line 1727 of file PlayerBase.c.

1728 {
1729 if (IsControlledPlayer())
1730 return !IsRestrained() && !IsRestrainPrelocked();
1731 return true;
1732 }
bool IsRestrainPrelocked()

◆ CanPickupHeavyItem()

override bool ManBase::CanPickupHeavyItem ( notnull EntityAI item)
inlineprotected

Definition at line 3526 of file PlayerBase.c.

3527 {
3528 if (item.IsHeavyBehaviour() && (GetBrokenLegs() == eBrokenLegs.BROKEN_LEGS || GetBrokenLegs() == eBrokenLegs.BROKEN_LEGS_SPLINT))
3529 return false;
3530
3531 return super.CanPickupHeavyItem(item);
3532 }

◆ CanPlaceItem()

override bool ManBase::CanPlaceItem ( EntityAI item)
inlineprotected

Definition at line 2280 of file PlayerBase.c.

2281 {
2283 {
2285 foreach (string t: disallowedUndergroundTypes)
2286 {
2287 if (item.IsKindOf(t))
2288 return false;
2289 }
2290 }
2291 return true;
2292 }
static TStringSet GetDisallowedTypesInUnderground()
EUndergroundPresence m_UndergroundPresence
Definition PlayerBase.c:23

References CfgGameplayHandler::GetDisallowedTypesInUnderground().

◆ CanReceiveItemIntoCargo()

override bool ManBase::CanReceiveItemIntoCargo ( EntityAI item)
inlineprotected

Definition at line 1744 of file PlayerBase.c.

1745 {
1746 return super.CanReceiveItemIntoCargo(item);
1747 }

◆ CanReceiveItemIntoHands()

override bool ManBase::CanReceiveItemIntoHands ( EntityAI item_to_hands)
inlineprotected

Definition at line 1754 of file PlayerBase.c.

1755 {
1756 if (IsInVehicle())
1757 return false;
1758
1760 return false;
1761
1762 return super.CanReceiveItemIntoHands(item_to_hands);
1763 }
override bool CanPickupHeavyItem(notnull EntityAI item)

◆ CanRedirectToWeaponManager()

bool ManBase::CanRedirectToWeaponManager ( notnull EntityAI item,
out bool isActionPossible )
inlineprotected

Definition at line 7797 of file PlayerBase.c.

7798 {
7799 isActionPossible = false;
7800 Magazine mag = Magazine.Cast(item);
7801 Weapon_Base wpn = Weapon_Base.Cast(item.GetHierarchyParent());
7802 if (mag && wpn)
7803 {
7804 if (GetWeaponManager().CanDetachMagazine(wpn, mag))
7805 {
7806 //Print("[inv] PlayerBase.CanRedirectToWeaponManager OK, can detach mag=" + mag + " from wpn=" + wpn);
7807 isActionPossible = true;
7808 }
7809 else
7810 {
7811 //Print("[inv] PlayerBase.CanRedirectToWeaponManager cannot detach mag=" + mag + " from wpn=" + wpn);
7812 }
7813 return true;
7814 }
7815 return false;
7816 }

◆ CanReleaseAttachment()

override bool ManBase::CanReleaseAttachment ( EntityAI attachment)
inlineprotected

Definition at line 1734 of file PlayerBase.c.

1735 {
1736 return super.CanReleaseAttachment(attachment);
1737 }

◆ CanReleaseCargo()

override bool ManBase::CanReleaseCargo ( EntityAI cargo)
inlineprotected

Definition at line 1739 of file PlayerBase.c.

1740 {
1741 return super.CanReleaseCargo(cargo);
1742 }

◆ CanReleaseFromHands()

override bool ManBase::CanReleaseFromHands ( EntityAI handheld)
inlineprotected

Definition at line 1770 of file PlayerBase.c.

1771 {
1772 return super.CanReleaseFromHands(handheld);
1773 }

◆ CanRoll()

override bool ManBase::CanRoll ( )
inlineprotected

Definition at line 3834 of file PlayerBase.c.

3835 {
3837 return false;
3838
3839 if (IsInFBEmoteState() || m_EmoteManager.m_MenuEmote)
3840 return false;
3841
3842 return IsPlayerInStance(DayZPlayerConstants.STANCEMASK_PRONE | DayZPlayerConstants.STANCEMASK_RAISEDPRONE) && GetCommand_Move() && !GetCommand_Move().IsOnBack();
3843 }
bool IsPlayerInStance(int pStanceMask)
-------------— camera additiona functions ----------------------—

References GetCommand_Move(), and IsPlayerInStance().

◆ CanSaveItemInHands()

override bool ManBase::CanSaveItemInHands ( EntityAI item_in_hands)
inlineprotected

Definition at line 1765 of file PlayerBase.c.

1766 {
1767 return super.CanSaveItemInHands(item_in_hands);
1768 }

◆ CanShave()

bool ManBase::CanShave ( )
inlineprotected

Definition at line 6183 of file PlayerBase.c.

6184 {
6186 return true;
6187 else
6188 return false;
6189 }
int GetLifeSpanState()
bool HasCoveredFaceForShave()

◆ CanSpawnBreathVaporEffect()

bool ManBase::CanSpawnBreathVaporEffect ( )
inlineprotected

Definition at line 6223 of file PlayerBase.c.

6224 {
6225 if (!ToDelete() && IsAlive() && !IsSwimming() && !m_IsDrowning)
6226 return true;
6227 return false;
6228 }
bool m_IsDrowning
Definition PlayerBase.c:220

◆ CanSprint()

bool ManBase::CanSprint ( )
inlineprotected

Definition at line 4885 of file PlayerBase.c.

4886 {
4888 if (IsRaised() || (item && item.IsHeavyBehaviour()))
4889 return false;
4890
4891 if (item && GetThrowing() && GetThrowing().IsThrowingModeEnabled())
4892 return false;
4893
4894 if (GetBrokenLegs() != eBrokenLegs.NO_BROKEN_LEGS)
4895 return false;
4896
4897 return true;
4898 }
ItemBase GetItemInHands()

References IsRaised().

◆ CanStartConsumingStamina()

override bool ManBase::CanStartConsumingStamina ( EStaminaConsumers consumer)
inlineprotected

Definition at line 4078 of file PlayerBase.c.

4079 {
4080 if (!GetStaminaHandler()) return false;
4081
4083
4084 if (!val)
4085 StaminaHUDNotifier(false);
4086
4087 return val;
4088 }
bool HasEnoughStaminaToStart(EStaminaConsumers consumer)

◆ CanSwapItemInCargo()

override bool ManBase::CanSwapItemInCargo ( EntityAI child_entity,
EntityAI new_entity )
inlineprotected

Definition at line 1749 of file PlayerBase.c.

1750 {
1751 return super.CanSwapItemInCargo(child_entity, new_entity);
1752 }

◆ CheckAndExecuteStackSplit()

bool ManBase::CheckAndExecuteStackSplit ( FindInventoryLocationType flags,
notnull EntityAI item,
notnull EntityAI target )
inlineprotected

Definition at line 8543 of file PlayerBase.c.

8544 {
8545 float stackable = item.GetTargetQuantityMax();
8546 if (!(stackable == 0 || stackable >= item.GetQuantity()))
8547 {
8549 if (target && target.GetInventory().FindFreeLocationFor(item, flags, il))
8550 {
8552 if (CastTo(itemB, item))
8553 {
8554 itemB.SplitIntoStackMaxToInventoryLocationClient(il);
8555 return true;
8556 }
8557 }
8558 }
8559 return false;
8560 }
InventoryLocation.

◆ CheckAndExecuteStackSplitToInventoryLocation()

bool ManBase::CheckAndExecuteStackSplitToInventoryLocation ( InventoryLocation il,
notnull EntityAI item )
inlineprotected

Definition at line 8562 of file PlayerBase.c.

8563 {
8564 float stackable = item.GetTargetQuantityMax();
8565 if (!(stackable == 0 || stackable >= item.GetQuantity()))
8566 {
8568 if (CastTo(itemB, item))
8569 {
8570 itemB.SplitIntoStackMaxToInventoryLocationClient(il);
8571 return true;
8572 }
8573 }
8574 return false;
8575 }

◆ CheckAnimationOverrides()

override void ManBase::CheckAnimationOverrides ( )
inlineprotected

Definition at line 7782 of file PlayerBase.c.

7783 {
7784 //FB gesture slideposeangle override
7785 if (IsInFBEmoteState() && IsControlledPlayer() && IsPlayerSelected())
7786 OverrideSlidePoseAngle(Math.PI2);
7787 else if (!IsInFBEmoteState() && IsControlledPlayer() && IsPlayerSelected())
7788 OverrideSlidePoseAngle(m_OriginalSlidePoseAngle);
7789
7790 //+add more, if needed
7791 }
float m_OriginalSlidePoseAngle
Definition PlayerBase.c:55
static const float PI2
Definition EnMath.c:13

References Math::PI2.

◆ CheckDeath()

void ManBase::CheckDeath ( )
inlineprivate

Definition at line 6403 of file PlayerBase.c.

6404 {
6405 if (IsPlayerSelected() && !IsAlive())
6406 {
6407 SimulateDeath(true);
6408 m_DeathCheckTimer.Stop();
6409 }
6410 }
ref Timer m_DeathCheckTimer
Definition PlayerBase.c:94
override void SimulateDeath(bool state)

◆ CheckForBurlap()

void ManBase::CheckForBurlap ( )
inlineprotected

Definition at line 5630 of file PlayerBase.c.

5631 {
5632 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
5633 {
5635 Class.CastTo(attachment, GetInventory().FindAttachment(InventorySlots.HEADGEAR));
5636
5638 if (Class.CastTo(req, PPERequesterBank.GetRequester(PPERequesterBank.REQ_BURLAPSACK)))
5639 {
5640 if (attachment)
5641 req.Start();
5642 else if (req.IsRequesterRunning())
5644 }
5645 }
5646 }
DayZPlayerInstanceType
defined in C++
proto native DayZPlayerInstanceType GetInstanceType()

References Class::CastTo(), and GetInstanceType().

◆ CheckForGag()

void ManBase::CheckForGag ( )
inlineprotected

Definition at line 5648 of file PlayerBase.c.

5649 {
5650#ifdef SERVER
5651 Clothing item;
5652 Class.CastTo(item, GetInventory().FindAttachment(InventorySlots.MASK));
5653 if (!item)
5654 Class.CastTo(item, GetInventory().FindAttachment(InventorySlots.HEADGEAR));
5655
5656 if (item && item.IsObstructingVoice())
5657 item.MutePlayer(this, true);
5658 else //should probably check for relevant types before removing mumbling and obstruction specifically..
5659 {
5660 GetGame().SetVoiceEffect(this, VoiceEffectMumbling, false);
5661 GetGame().SetVoiceEffect(this, VoiceEffectObstruction, false);
5662 }
5663#endif
5664 }

References Class::CastTo(), and GetGame().

◆ CheckHairClippingOnCharacterLoad()

void ManBase::CheckHairClippingOnCharacterLoad ( )
inlineprotected

helper method for re-checking hairhiding on character load

Definition at line 8213 of file PlayerBase.c.

8214 {
8215 ItemBase headgear = ItemBase.Cast(GetInventory().FindAttachment(InventorySlots.HEADGEAR));
8216 ItemBase mask = ItemBase.Cast(GetInventory().FindAttachment(InventorySlots.MASK));
8217
8219 HideHairSelections(mask, true);
8220 }
void HideHairSelections(ItemBase item, bool state)

◆ CheckLiftWeapon()

override void ManBase::CheckLiftWeapon ( )
inlineprotected

Definition at line 7644 of file PlayerBase.c.

7645 {
7646 // lift weapon check
7647 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
7648 {
7650 if (Weapon_Base.CastTo(weap, GetItemInHands()))
7651 {
7652 bool limited = weap.LiftWeaponCheck(this);
7653
7654 if (limited && !m_LiftWeapon_player)
7655 SendLiftWeaponSync(true);
7656 else if (!limited && m_LiftWeapon_player)
7657 SendLiftWeaponSync(false);
7658 }
7659 else if (m_LiftWeapon_player)
7660 SendLiftWeaponSync(false);
7661 }
7662 }
void SendLiftWeaponSync(bool state)
Client-side only.

References GetInstanceType().

◆ CheckMeleeItemDamage()

bool ManBase::CheckMeleeItemDamage ( ItemBase item)
inlineprotected

Definition at line 4975 of file PlayerBase.c.

4976 {
4977 //on-hit drop of melee weapons
4978 //bayonets & buttstocks
4979 if (item && item.GetHierarchyParent() && item.GetHierarchyParent().IsWeapon() && item.IsRuined()/*&& item.FindAttachmentBySlotName()*/)
4980 {
4982 return DropItem(item);
4983 }
4984 //handheld items themselves
4985 if (item && item == GetItemInHands() && item.IsRuined())
4986 return PredictiveDropEntity(item);
4987 return false;
4988 }
override bool PredictiveDropEntity(notnull EntityAI item)
bool DropItem(ItemBase item)
Spawn item on server side.
void PlayAttachmentDropSound()

◆ CheckSendSoundEvent()

void ManBase::CheckSendSoundEvent ( )
inlineprotected

Definition at line 6930 of file PlayerBase.c.

6931 {
6932 if (m_SoundEvent != 0 && !m_SoundEventSent)
6933 m_SoundEventSent = true;
6934 }
bool m_SoundEventSent
Definition PlayerBase.c:59
int m_SoundEvent
Definition PlayerBase.c:56

◆ CheckSoundEvent()

void ManBase::CheckSoundEvent ( )
inlineprotected

Definition at line 7074 of file PlayerBase.c.

7075 {
7076 if (m_SoundEvent != 0)
7077 {
7079 m_SoundEvent = 0;
7081 }
7082 }
int m_SoundEventParam
Definition PlayerBase.c:57
override bool PlaySoundEventEx(EPlayerSoundEventID id, bool from_anim_system=false, bool is_from_server=false, int param=0)

◆ CheckZeroSoundEvent()

void ManBase::CheckZeroSoundEvent ( )
inlineprotected

Definition at line 6919 of file PlayerBase.c.

6920 {
6921 if (m_SoundEvent != 0 && m_SoundEventSent)
6922 {
6923 m_SoundEvent = 0;
6925 m_SoundEventSent = false;
6926 SetSynchDirty();
6927 }
6928 }

◆ ClearInventory()

override void ManBase::ClearInventory ( )
inlineprotected

/brief Delete all items in inventory

Returns
void
PlayerBase player = GetGame().GetPlayer();
player.ClearInventory();

Definition at line 6127 of file PlayerBase.c.

6128 {
6129 if ((GetGame().IsServer() || !GetGame().IsMultiplayer()) && GetInventory())
6130 {
6131 GameInventory inv = PlayerBase.Cast(this).GetInventory();
6133 inv.EnumerateInventory(InventoryTraversalType.INORDER, items);
6134 for (int i = 0; i < items.Count(); i++)
6135 {
6136 ItemBase item = ItemBase.Cast(items.Get(i));
6137 if (item)
6138 GetGame().ObjectDelete(item);
6139 }
6140
6141 ItemBase item_in_hands = ItemBase.Cast(GetHumanInventory().GetEntityInHands());
6142
6143 if (item_in_hands)
6144 LocalDestroyEntityInHands();
6145 }
6146 }
script counterpart to engine's class Inventory
Definition Inventory.c:79
InventoryTraversalType
tree traversal type, for more see http://en.wikipedia.org/wiki/Tree_traversal
Definition gameplay.c:6

References GetGame().

◆ ClearLastUAMessage()

void ManBase::ClearLastUAMessage ( )
inlineprotected

Definition at line 7338 of file PlayerBase.c.

7339 {
7340 if (m_UALastMessageTimer.IsRunning())
7341 m_UALastMessageTimer.Stop();
7342
7343 m_UALastMessage = "";
7344 }
string m_UALastMessage
user actions last message
Definition PlayerBase.c:249
ref Timer m_UALastMessageTimer
Definition PlayerBase.c:250

◆ CloseInventoryMenu()

void ManBase::CloseInventoryMenu ( )
inlineprotected

Definition at line 6102 of file PlayerBase.c.

6103 {
6104 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
6105 {
6106#ifndef NO_GUI
6107 UIScriptedMenu menu = GetGame().GetUIManager().GetMenu();
6108 if (menu && (menu.GetID() == MENU_INVENTORY || menu.GetID() == MENU_INSPECT))
6109 {
6110 GetGame().GetUIManager().CloseAll();
6111 GetGame().GetMission().RemoveActiveInputExcludes({"inventory"}, false);
6112 GetGame().GetMission().RemoveActiveInputRestriction(EInputRestrictors.INVENTORY);
6113 }
6114#endif
6115 }
6116 }
const int MENU_INSPECT
Definition constants.c:169
const int MENU_INVENTORY
Definition constants.c:170

References GetGame(), GetInstanceType(), MENU_INSPECT, and MENU_INVENTORY.

◆ CloseMap()

void ManBase::CloseMap ( )
inlineprotected

DEPRECATED; terminates map animation callback and re-enables controls.

Definition at line 2983 of file PlayerBase.c.

2984 {
2985 CloseMapEx(false);
2986 }
void CloseMapEx(bool cancelled)

◆ CloseMapEx()

void ManBase::CloseMapEx ( bool cancelled)
inlineprotected

Definition at line 2988 of file PlayerBase.c.

2989 {
2990 if (m_hac && !GetMapClosingSyncSent())
2991 {
2993 {
2994 if (GetGame().IsMultiplayer() && GetGame().IsClient())
2995 {
2997 CastTo(mngr_client, GetActionManager());
2998
2999 if (cancelled)
3000 mngr_client.RequestInterruptAction();
3001 else
3002 mngr_client.RequestEndAction();
3003
3004 GetGame().GetMission().RemoveActiveInputExcludes({"map"});
3005 GetGame().GetMission().RemoveActiveInputRestriction(EInputRestrictors.MAP);
3006 }
3007 else if (!GetGame().IsMultiplayer())
3008 {
3009 int command_ID = DayZPlayerConstants.CMD_ACTIONINT_END;
3010 if (cancelled)
3011 command_ID = DayZPlayerConstants.CMD_ACTIONINT_INTERRUPT;
3012 m_hac.InternalCommand(command_ID);
3013 }
3015 }
3016 }
3017
3018 if (!GetGame().IsDedicatedServer())
3019 {
3020 if (GetGame().GetUIManager().IsMenuOpen(MENU_MAP))
3021 {
3022 GetGame().GetUIManager().FindMenu(MENU_MAP).Close();
3023 if (m_Hud)
3024 {
3025 m_Hud.ShowHudPlayer(true);
3027 }
3028
3029 GetGame().GetMission().RemoveActiveInputExcludes({"map"});
3030 GetGame().GetMission().RemoveActiveInputRestriction(EInputRestrictors.MAP);
3031 }
3032 }
3033 }
void ShowQuickbarPlayer(bool show)
void ShowHudPlayer(bool show)
Hud m_Hud
Definition PlayerBase.c:88
void SetMapClosingSyncSet(bool state)
ActionUnfoldMapCB m_hac
Definition PlayerBase.c:226
bool GetMapClosingSyncSent()
proto static native bool CanStoreInputUserData()
const int MENU_MAP
Definition constants.c:181

References ScriptInputUserData::CanStoreInputUserData(), GetActionManager(), GetGame(), m_Hud, MENU_MAP, Hud::ShowHudPlayer(), and Hud::ShowQuickbarPlayer().

◆ CommandHandler()

override void ManBase::CommandHandler ( float pDt,
int pCurrentCommandID,
bool pCurrentCommandFinished )
inlineprotected

When the player should be and is unconscious

Player can start floating while unconscious

When the player will be unconscious, or is being blocked from being unconscious

If the player is getting in/out or switching seats, delay unconsciousness until after animation has finished

Death gate - prevent unlikely occurence of death -> unconsciousness transition Fall gate - prevent unconciousness animation from playing while falling, doesn't look good Transition gate - prevent unconciousness while previous command is transitioning

TODO: rework vehicle command Knockout back to force player prone after they have exited the vehicle

When the player is waking up

Make sure the player is actually unconscious

protection for a player being broken when attempting to wake them up too early into unconsciousness

Don't set the stance if we are swimming or in a vehicle, stance change animation could play

Maybe instead error out or notify of possible desync?

SPRINT: enable/disable - based on stamina; disable also when raised

Definition at line 2725 of file PlayerBase.c.

2726 {
2727 EvaluateDamageHit(pCurrentCommandID);
2728
2729 // lower implement
2731
2733
2736
2738
2739 if (m_BrokenLegsJunctureReceived)//was there a change in broken legs state ?
2740 {
2742 bool initial = m_BrokenLegState < 0;//negative values indicate initial activation
2743
2744 if (GetBrokenLegs() == eBrokenLegs.BROKEN_LEGS)
2745 {
2746 DropHeavyItem();
2747 if (initial)
2748 {
2750 hic.ResetADS();
2751 GetUApi().GetInputByID(UATempRaiseWeapon).Supress();
2752 ExitSights();
2753 }
2754 }
2755 }
2756
2757 GetDayZPlayerInventory().HandleInventory(pDt);
2758
2759 if (IsFireWeaponRaised() || m_IsHoldingBreath)
2761
2762 ActionManagerBase mngr = GetActionManager();
2763
2764 if (m_AreHandsLocked && GetHumanInventory().GetEntityInHands())
2765 m_AreHandsLocked = false;
2766
2767 // freelook camera memory for weapon raycast
2768 if (hic.CameraIsFreeLook() && m_DirectionToCursor == vector.Zero)
2769 m_DirectionToCursor = GetGame().GetCurrentCameraDirection();
2770 else if (!hic.CameraIsFreeLook() && m_DirectionToCursor != vector.Zero)
2772
2773 if (m_WeaponManager)
2774 m_WeaponManager.Update(pDt);
2775 if (m_EmoteManager && IsPlayerSelected())
2776 m_EmoteManager.Update(pDt);
2777 if (m_RGSManager)
2778 m_RGSManager.Update();
2780 m_StanceIndicator.Update();
2781 if (m_StaminaHandler)
2783 if (m_InjuryHandler)
2784 m_InjuryHandler.Update(pDt);
2785 if (m_HCAnimHandler)
2787 if (m_ShockHandler)
2788 m_ShockHandler.Update(pDt);
2789
2790 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER || !GetGame().IsMultiplayer())
2791 {
2792 GetPlayerSoundManagerServer().Update();
2794 FreezeCheck();
2795 }
2796
2797 GetHumanInventory().Update(pDt);
2798 if (m_IsDrowning)
2800 UpdateDelete();
2801
2802 HandleDamageHit(pCurrentCommandID);
2803
2804 if (mngr && hic)
2805 {
2806 mngr.Update(pCurrentCommandID);
2807
2810
2811 if (!m_UnconsciousDebug)
2812 {
2814 if (m_ShouldBeUnconscious && m_IsUnconscious)
2815 {
2816 if (hcu)
2817 {
2819 m_Swimming.m_bWasSwimming |= hcu.IsInWater();
2820 }
2821
2822 if (m_Swimming.m_bWasSwimming)
2823 m_LastCommandBeforeUnconscious = DayZPlayerConstants.COMMANDID_SWIM;
2824
2825 OnUnconsciousUpdate(pDt, m_LastCommandBeforeUnconscious);
2826 }
2828 else if (m_ShouldBeUnconscious)
2829 {
2831 bool isTransitioning = hcv && (hcv.IsGettingIn() || hcv.IsGettingOut() || hcv.IsSwitchSeat());
2832
2833 if (pCurrentCommandID == DayZPlayerConstants.COMMANDID_UNCONSCIOUS)
2834 {
2835 OnUnconsciousUpdate(pDt, m_LastCommandBeforeUnconscious);
2836
2837 m_IsUnconscious = true;
2839 }
2843 else if (pCurrentCommandID != DayZPlayerConstants.COMMANDID_DEATH && pCurrentCommandID != DayZPlayerConstants.COMMANDID_FALL && !isTransitioning)
2844 {
2845 m_LastCommandBeforeUnconscious = pCurrentCommandID;
2846
2847 if (hcv)
2848 m_TransportCache = hcv.GetTransport();
2849
2851 m_JumpClimb.CheckAndFinishJump();
2853 SetFallYDiff(GetPosition()[1]);
2854 }
2855 }
2857 else if (m_IsUnconscious)
2858 {
2860 if (hcu && pCurrentCommandID == DayZPlayerConstants.COMMANDID_UNCONSCIOUS)
2861 {
2862 OnUnconsciousUpdate(pDt, m_LastCommandBeforeUnconscious);
2863
2865 if (m_UnconsciousTime > 2)
2866 {
2867 int wakeUpStance = DayZPlayerConstants.STANCEIDX_PRONE;
2868
2870 if (m_Swimming.m_bWasSwimming || m_LastCommandBeforeUnconscious == DayZPlayerConstants.COMMANDID_VEHICLE)
2871 wakeUpStance = -1;
2872
2873 hcu.WakeUp(wakeUpStance);
2874
2875 m_IsUnconscious = false;
2877 }
2878 }
2879 else
2880 {
2882 if (IsAlive())
2883 {
2884 m_IsUnconscious = false;
2886 }
2887 }
2888 }
2889 }
2890
2891 // quickbar use
2892 int quickBarSlot = hic.IsQuickBarSlot();
2893 if (quickBarSlot && IsAlive())
2894 {
2895 if (hic.IsQuickBarSingleUse())
2896 {
2897 OnQuickBarSingleUse(quickBarSlot);
2898 //Print("PlayerBase.c IsQuickBarSingleUse - slot: " + quickBarSlot.ToString());
2899 }
2900 if (hic.IsQuickBarContinuousUseStart() && ((!GetGame().IsDedicatedServer()) && !GetGame().GetUIManager().GetMenu()))
2901 {
2902 OnQuickBarContinuousUseStart(quickBarSlot);
2903 //Print("PlayerBase.c IsQuickBarContinuousUseStart - slot: " + quickBarSlot.ToString());
2904 }
2905 if (hic.IsQuickBarContinuousUseEnd() && ((!GetGame().IsDedicatedServer())))
2906 {
2907 OnQuickBarContinuousUseEnd(quickBarSlot);
2908 //Print("PlayerBase.c IsQuickBarContinuousUseEnd - slot: " + quickBarSlot.ToString());
2909 }
2910 }
2911
2912 /*if ((pCurrentCommandID == DayZPlayerConstants.COMMANDID_ACTION || pCurrentCommandID == DayZPlayerConstants.COMMANDID_MOVE || pCurrentCommandID == DayZPlayerConstants.COMMANDID_LADDER || pCurrentCommandID == DayZPlayerConstants.COMMANDID_SWIM))
2913 {
2914 mngr.Update(); // checks for suitable action and sets it
2915 }*/
2916 }
2917 if (m_StaminaHandler && hic)
2918 {
2921 hic.LimitsDisableSprint(true);
2922 else
2923 hic.LimitsDisableSprint(false);
2924 }
2925
2926 //map closing - feel free to move to different "update" if it does not belong here
2927 if (IsMapOpen())
2928 {
2929 if (!GetGame().IsDedicatedServer())
2930 {
2931 if (!CfgGameplayHandler.GetUse3DMap() && !GetGame().GetUIManager().IsMenuOpen(MENU_MAP))
2932 CloseMapEx(false);
2934 {
2936 CloseMapEx(true);
2937 else if (IsMapCallbackEndInput())
2938 CloseMapEx(false);
2939 }
2940 }
2941 }
2942
2943
2944#ifdef BOT
2945 if (m_Bot)
2946 m_Bot.OnUpdate(pDt);
2947#endif
2948
2949 if (m_CheckMeleeItem && (!GetGame().IsDedicatedServer()))
2950 {
2953 }
2954
2955#ifdef DEVELOPER
2957#endif
2958
2960 }
proto native UAInputAPI GetUApi()
class JsonUndergroundAreaTriggerData GetPosition
int m_BrokenLegState
Definition PlayerBase.c:137
void OnUnconsciousStart()
PlayerSoundManagerServer GetPlayerSoundManagerServer()
void OnCommandHandlerTick(float delta_time, int pCurrentCommandID)
vector m_DirectionToCursor
Definition PlayerBase.c:114
void DropHeavyItem()
bool IsMapCallbackCancelInput()
float m_UnconsciousTime
Definition PlayerBase.c:101
bool m_AreHandsLocked
Definition PlayerBase.c:108
void OnUnconsciousUpdate(float pDt, int last_command)
bool m_BrokenLegsJunctureReceived
Definition PlayerBase.c:139
ItemBase m_CheckMeleeItem
Definition PlayerBase.c:246
bool m_IsHoldingBreath
Definition PlayerBase.c:90
void CheckSendSoundEvent()
bool CanSprint()
void OnQuickBarContinuousUseStart(int slotClicked)
void CheckZeroSoundEvent()
void UpdateDelete()
bool CheckMeleeItemDamage(ItemBase item)
void ProcessHoldBreath(float dT)
void ProcessADDModifier()
void FreezeCheck()
ref StanceIndicator m_StanceIndicator
Definition PlayerBase.c:49
void OnUnconsciousStop(int pCurrentCommandID)
void SetCheckMeleeItem(ItemBase item=null)
void OnQuickBarContinuousUseEnd(int slotClicked)
ref WeaponManager m_WeaponManager
Definition PlayerBase.c:77
void OnQuickBarSingleUse(int slotClicked)
ref StaminaHandler m_StaminaHandler
Definition PlayerBase.c:45
RandomGeneratorSyncManager m_RGSManager
Definition PlayerBase.c:147
ref HeatComfortAnimHandler m_HCAnimHandler
Definition PlayerBase.c:84
void BrokenLegForceProne(bool forceOverride=false)
void ProcessDrowning(float dT)
void ShockRefill(float pDt)
functionality moved to ShockMdfr::OnTick
bool IsMapCallbackEndInput()
static const vector Zero
Definition EnConvert.c:110
proto native HumanCommandVehicle GetCommand_Vehicle()
proto native HumanCommandUnconscious GetCommand_Unconscious()
proto native HumanCommandUnconscious StartCommand_Unconscious(float pType)
starts command - unconscious
proto native HumanInputController GetInputController()
returns human input controller

References GetActionManager(), GetCommand_Unconscious(), GetCommand_Vehicle(), GetGame(), GetInputController(), GetInstanceType(), GetPosition, GetUApi(), CfgGameplayHandler::GetUse3DMap(), m_MovementState, m_StaminaHandler, MENU_MAP, StartCommand_Unconscious(), StaminaHandler::Update(), and vector::Zero.

◆ Consume()

bool ManBase::Consume ( ItemBase source,
float amount,
EConsumeType consume_type )
inlineprivate

Definition at line 6778 of file PlayerBase.c.

6779 {
6780 PluginTransmissionAgents plugin = PluginTransmissionAgents.Cast(GetPlugin(PluginTransmissionAgents));
6781 int agents;
6782 if (consume_type == EConsumeType.ENVIRO_POND || consume_type == EConsumeType.ENVIRO_WELL)
6783 {
6784 if (consume_type == EConsumeType.ENVIRO_POND)
6785 {
6786 agents = agents | eAgents.CHOLERA;
6787 //plugin.TransmitAgents(NULL, this, AGT_WATER_POND, amount);
6788 }
6789 m_PlayerStomach.AddToStomach(Liquid.GetLiquidClassname(LIQUID_WATER), amount, 0, agents);
6790
6791
6792 return true;
6793 }
6794
6796 if (!edible_item)
6797 return false;
6798 agents = edible_item.GetAgents();
6799 if (consume_type == EConsumeType.ITEM_SINGLE_TIME || consume_type == EConsumeType.ITEM_CONTINUOUS)
6800 {
6801 if (consume_type == EConsumeType.ITEM_SINGLE_TIME)
6802 plugin.TransmitAgents(edible_item, this, AGT_UACTION_CONSUME, amount);
6803 /*
6804 else
6805 {
6806 plugin.TransmitAgents(edible_item, this, AGT_UACTION_TO_PLAYER, amount);
6807 }
6808 */
6809 if (edible_item.IsLiquidContainer())
6810 {
6811 int liquid_type = edible_item.GetLiquidType();
6813 if (liquidClassName.Length() == 0)
6814 Error("Error! Trying to add unknown liquid to stomach with item=" + Object.GetDebugName(edible_item) + " consume_type=" + consume_type + " liquid_type=" + liquid_type);
6815 m_PlayerStomach.AddToStomach(liquidClassName, amount, 0, agents);
6816 }
6817 else
6818 {
6819 int food_stage_type;
6820 if (edible_item.GetFoodStage())
6821 food_stage_type = edible_item.GetFoodStage().GetFoodStageType();
6822 m_PlayerStomach.AddToStomach(source.GetType(), amount, food_stage_type, agents);
6823 }
6824 edible_item.Consume(amount, this);
6825 return true;
6826
6827 }
6828 /*
6829 if (consume_type == EConsumeType.ITEM_CONTINUOUS)
6830 {
6831 if (edible_item)
6832 {
6833 plugin.TransmitAgents(edible_item, this, AGT_UACTION_TO_PLAYER, amount);
6834 edible_item.Consume(amount, this);
6835 //ProcessNutritions(edible_item.GetNutritionalProfile(),amount);
6836 m_PlayerStomach.AddToStomach(source.GetType(), amount, edible_item.GetNutritionalProfile());
6837 return true;
6838 }
6839 }
6840 */
6841 return false;
6842 }
eAgents
Definition EAgents.c:3
EConsumeType
Definition EConsumeType.c:2
PluginBase GetPlugin(typename plugin_type)
Definition Liquid.c:2
static string GetLiquidClassname(int liquid_type)
Definition Liquid.c:8
ref PlayerStomach m_PlayerStomach
Definition PlayerBase.c:259
const int AGT_UACTION_CONSUME
Definition constants.c:468
const int LIQUID_WATER
Definition constants.c:504

References AGT_UACTION_CONSUME, Error(), Liquid::GetLiquidClassname(), GetPlugin(), and LIQUID_WATER.

◆ ContaminatedParticleAdjustment()

void ManBase::ContaminatedParticleAdjustment ( )
inlineprotected

Definition at line 8672 of file PlayerBase.c.

8673 {
8675 {
8676 float playerSpeed = GetCommand_Move().GetCurrentMovementSpeed();
8677 //Print(playerSpeed);
8678
8679 // 1 - prone, crouch
8680 // 2 - jog
8681 // 3 - sprint
8682 float particleLifetime = 5.25;
8683 float particleSpeed = 0.25;
8684 if (playerSpeed >= 1)
8685 {
8686 particleLifetime = 3.5;
8687 particleSpeed = 3.25;
8688 }
8689 if (playerSpeed >= 2)
8690 {
8691 particleLifetime = 2.5;
8692 particleSpeed = 5.25;
8693 }
8694 if (playerSpeed >= 3)
8695 {
8696 particleLifetime = 1.5;
8697 particleSpeed = 8.25;
8698 }
8699 m_ContaminatedAroundPlayer.SetParameter(0, EmitorParam.LIFETIME, particleLifetime);
8700 m_ContaminatedAroundPlayer.SetParameter(1, EmitorParam.LIFETIME, particleLifetime);
8701 m_ContaminatedAroundPlayer.SetParameter(2, EmitorParam.LIFETIME, particleLifetime);
8702 m_ContaminatedAroundPlayer.SetParameter(3, EmitorParam.LIFETIME, particleLifetime);
8703
8704 m_ContaminatedAroundPlayerTiny.SetParameter(0, EmitorParam.VELOCITY, particleSpeed);
8705 vector transform[4];
8706 GetTransform(transform);
8709 }
8710 }
static Particle m_ContaminatedAroundPlayerTiny
Definition PlayerBase.c:262
static Particle m_ContaminatedAroundPlayer
Definition PlayerBase.c:261
EmitorParam
Definition EnVisual.c:114

References GetCommand_Move(), and Particle::SetParameter().

◆ ConvertNonlethalDamage()

float ManBase::ConvertNonlethalDamage ( float damage,
DamageType damageType )
inlineprotected

Definition at line 1059 of file PlayerBase.c.

1060 {
1062 }
const float NL_DAMAGE_FIREARM_CONVERSION_PLAYERS
Definition constants.c:861

References GameConstants::NL_DAMAGE_FIREARM_CONVERSION_PLAYERS.

◆ CreateCopyOfItemInInventory()

ItemBase ManBase::CreateCopyOfItemInInventory ( ItemBase src)
inlineprotected

/brief Creates copy of ItemBase in players inventory. If player dont have enough slots for new item, item will be created on the ground under player.

Parameters
item_namestring Class name of ItemBase in configs
Returns
ItemBase Created item
ItemBase item = g_Game.GetPlayer().CreateInInventory("Consumable_GardenLime", "cargo_weapon");
DayZGame g_Game
Definition DayZGame.c:3528

Definition at line 6017 of file PlayerBase.c.

6018 {
6020 string t = src.GetType();
6021 if (GetInventory().FindFirstFreeLocationForNewEntity(t, FindInventoryLocationType.CARGO, loc))
6022 {
6023 bool locked = GetGame().HasInventoryJunctureDestination(this, loc);
6024 if (locked)
6025 {
6026 Print("Warning: Split: CreateCopyOfItemInInventory - Cannot create entity at locked inventory at loc=" + InventoryLocation.DumpToStringNullSafe(loc));
6027 return null;
6028 }
6029 ItemBase dst = ItemBase.Cast(GetInventory().LocationCreateLocalEntity(loc, t, ECE_IN_INVENTORY, RF_DEFAULT));
6030 if (dst)
6031 {
6032 MiscGameplayFunctions.TransferItemProperties(src, dst);
6033
6034 GetGame().RemoteObjectTreeCreate(dst);
6035
6036 Print("CreateCopyOfItemInInventory - created " + dst.GetName() + " at loc=" + InventoryLocation.DumpToStringNullSafe(loc));
6037 }
6038 return dst;
6039 }
6040 return NULL;
6041 }
const int ECE_IN_INVENTORY
const int RF_DEFAULT
FindInventoryLocationType
flags for searching locations in inventory
static string DumpToStringNullSafe(InventoryLocation loc)
proto void Print(void var)
Prints content of variable to console/log.

References InventoryLocation::DumpToStringNullSafe(), ECE_IN_INVENTORY, GetGame(), Print(), and RF_DEFAULT.

◆ CreateCopyOfItemInInventoryOrGround()

ItemBase ManBase::CreateCopyOfItemInInventoryOrGround ( ItemBase src)
inlineprotected

Definition at line 6043 of file PlayerBase.c.

6044 {
6046 }
ItemBase CreateCopyOfItemInInventoryOrGroundEx(ItemBase src, bool markItemAsSplitResult=false)

◆ CreateCopyOfItemInInventoryOrGroundEx()

ItemBase ManBase::CreateCopyOfItemInInventoryOrGroundEx ( ItemBase src,
bool markItemAsSplitResult = false )
inlineprotected

Definition at line 6048 of file PlayerBase.c.

6049 {
6051 if (!dst)
6052 {
6053 dst = ItemBase.Cast(SpawnEntityOnGroundPos(src.GetType(), this.GetPosition()));
6054 dst.PlaceOnSurface();
6055 dst.SetResultOfSplit(markItemAsSplitResult);
6056 MiscGameplayFunctions.TransferItemProperties(src, dst);
6057 }
6058
6059 return dst;
6060 }
override EntityAI SpawnEntityOnGroundPos(string object_name, vector pos)
ItemBase CreateCopyOfItemInInventory(ItemBase src)

◆ CreateInInventory()

EntityAI ManBase::CreateInInventory ( string item_name,
string cargo_type = "",
bool full_quantity = false )
inlineprotected

/brief Creates ItemBase in players inventory. If player dont have enough slots for new item, item will be created on the ground under player.

Parameters
item_namestring Class name of ItemBase in configs
Returns
ItemBase Created item
ItemBase item = g_Game.GetPlayer().CreateInInventory("Consumable_GardenLime", "cargo_weapon");

Definition at line 5982 of file PlayerBase.c.

5983 {
5985 if (GetInventory().FindFirstFreeLocationForNewEntity(item_name, FindInventoryLocationType.ANY, inv_loc))
5987 return NULL;
5988 }
class ItemBase extends InventoryItem SpawnItemOnLocation(string object_name, notnull InventoryLocation loc, bool full_quantity)
Definition ItemBase.c:4680

References SpawnItemOnLocation().

◆ DamageAllLegs()

void ManBase::DamageAllLegs ( float inputDmg)
inlineprotected

Definition at line 8521 of file PlayerBase.c.

8522 {
8524 legZones.Insert("LeftLeg");
8525 legZones.Insert("RightLeg");
8526 legZones.Insert("RightFoot");
8527 legZones.Insert("LeftFoot");
8528
8529 for (int i = 0; i < legZones.Count(); i++)
8530 DecreaseHealth(legZones[i], "", inputDmg);
8531 }

◆ DealShock()

void ManBase::DealShock ( float dmg)
inlineprotected

Definition at line 3518 of file PlayerBase.c.

3519 {
3521 damage.param1 = dmg;
3522 GetGame().RPCSingleParam(this, ERPCs.RPC_SHOCK, damage, true, GetIdentity());
3523 }
ERPCs
Definition ERPCs.c:2

References GetGame().

◆ DecreaseAntibioticsCount()

void ManBase::DecreaseAntibioticsCount ( )
inlineprotected

Definition at line 525 of file PlayerBase.c.

526 {
528 if (m_AntibioticsActive < 0)
529 {
531 Error("DecreaseAntibioticsCount called more times than IncreaseAntibioticsCount (should be equal) - check your code, forcing clamp to 0");
532 }
533 }
int m_AntibioticsActive
Definition PlayerBase.c:148

References Error().

◆ DecreaseContaminatedAreaCount()

void ManBase::DecreaseContaminatedAreaCount ( )
inlineprotected

Definition at line 601 of file PlayerBase.c.

602 {
605 {
608 }
609 }
int m_ContaminatedAreaCount
Definition PlayerBase.c:154
void OnContaminatedAreaExitServer()
Definition PlayerBase.c:640

◆ DecreaseDiseaseCount()

void ManBase::DecreaseDiseaseCount ( )
inlineprotected

Definition at line 780 of file PlayerBase.c.

781 {
783 }
int m_DiseaseCount
Definition PlayerBase.c:116

◆ DecreaseEffectAreaCount()

void ManBase::DecreaseEffectAreaCount ( )
inlineprotected

Definition at line 621 of file PlayerBase.c.

622 {
624 if (m_EffectAreaCount <= 0)
625 {
627 m_InsideEffectArea = false;
628 SetSynchDirty();
630 }
631 }
void OnPlayerIsNowInsideEffectAreaEndServer()
Definition PlayerBase.c:651
bool m_InsideEffectArea
Definition PlayerBase.c:156
int m_EffectAreaCount
Definition PlayerBase.c:155

◆ DecreaseHealingsCount()

void ManBase::DecreaseHealingsCount ( )
inlineprotected

Definition at line 790 of file PlayerBase.c.

791 {
793 }
int m_HealingsCount
Definition PlayerBase.c:117

◆ DepleteStamina()

override void ManBase::DepleteStamina ( EStaminaModifiers modifier,
float dT = -1 )
inlineprotected

Definition at line 4060 of file PlayerBase.c.

4061 {
4062 if (GetStaminaHandler())
4064 }
void DepleteStamina(EStaminaModifiers modifier, float dT=-1)

◆ dmgDebugPrint()

void ManBase::dmgDebugPrint ( TotalDamageResult damageResult,
int damageType,
EntityAI source,
int component,
string dmgZone,
string ammo,
vector modelPos,
float speedCoef )
inlineprotected

Definition at line 8511 of file PlayerBase.c.

8512 {
8513 /*Print("ProjectileDebugging | Damage Health: " + damageResult.GetDamage(dmgZone,"Health") + " | Component: " + component + " | Zone: " + dmgZone + "| Timestamp: " + GetSimulationTimeStamp());
8514 Print("ProjectileDebugging | speedCoef: " + speedCoef);
8515 Print("ProjectileDebugging | GetWorldTime(): " + GetWorldTime());
8516 Print("-----------------------------------------------");*/
8517 }

◆ DropAllItems()

void ManBase::DropAllItems ( )
inlineprotected

Drops all clothes/wearables this character is carrying on themselves.

Definition at line 6149 of file PlayerBase.c.

6150 {
6152 ItemBase item;
6153 GetInventory().EnumerateInventory(InventoryTraversalType.LEVELORDER, itemsArray);
6154 int count = itemsArray.Count();
6155
6156 for (int i = 0; i < itemsArray.Count(); i++)
6157 {
6158 Class.CastTo(item, itemsArray.Get(i));
6159
6160 if (item && !item.IsInherited(SurvivorBase))
6161 ServerDropEntity(item);
6162 }
6163 }

References Class::CastTo().

◆ DropHeavyItem()

void ManBase::DropHeavyItem ( )
inlineprotected

Definition at line 3543 of file PlayerBase.c.

3544 {
3546 if (itemInHands && itemInHands.IsHeavyBehaviour())
3548 }

◆ DropItem()

bool ManBase::DropItem ( ItemBase item)
inlineprotected

Spawn item on server side.

Parameters
object_namestring Name of item class
spawn_type\int(const) Type of spawning const: SPAWNTYPE_GROUND, SPAWNTYPE_HANDS, SPAWNTYPE_INVENTORY
full_quantity\bool Spawn with full quantity of item
distance\float Distance of spawn position from player (Only if spawn_type = SPAWNTYPE_GROUND)
Returns
ItemBase Spawned item
PlayerBase player = GetGame().GetPlayer();
player.SpawnItem("Fruit_Apple", SPAWNTYPE_GROUND, true, 5);

Definition at line 5956 of file PlayerBase.c.

5957 {
5959 if (can_be_dropped)
5961
5962 vector pos_spawn = GetPosition() + GetDirection();
5963 pos_spawn[0] = pos_spawn[0] + Math.RandomFloat(-0.2, 0.2);
5964 pos_spawn[2] = pos_spawn[2] + Math.RandomFloat(-0.2, 0.2);
5965
5966 item.SetPosition(pos_spawn);
5967 item.PlaceOnSurface();
5968 return can_be_dropped;
5969 }
override bool CanDropEntity(notnull EntityAI item)
Definition PlayerBase.c:698
static proto float RandomFloat(float min, float max)
Returns a random float number between and min[inclusive] and max[exclusive].

References GetPosition, and Math::RandomFloat().

◆ EEDelete()

override void ManBase::EEDelete ( EntityAI parent)
inlineprotected

Definition at line 1050 of file PlayerBase.c.

1051 {
1053 StopSoundSet(m_SoundFliesEffect);
1054
1055 if (GetArrowManager())
1056 GetArrowManager().ClearArrows();
1057 }
override ArrowManagerBase GetArrowManager()

References SEffectManager::DestroyEffect(), and GetArrowManager().

◆ EEHealthLevelChanged()

override void ManBase::EEHealthLevelChanged ( int oldLevel,
int newLevel,
string zone )
inlineprotected

Definition at line 5375 of file PlayerBase.c.

5376 {
5377 super.EEHealthLevelChanged(oldLevel, newLevel, zone);
5378 if (!GetGame().IsDedicatedServer())
5379 {
5382 if (m_CorpseState != 0)
5383 GetGame().GetCallQueue(CALL_CATEGORY_GUI).CallLater(UpdateCorpseState, 0, false);
5384 }
5385 }
void UpdateCorpseState()
void ClearLastUAMessage()
int m_CorpseState
Definition PlayerBase.c:96
const int STATE_RUINED
Definition constants.c:757
const int CALL_CATEGORY_GUI
Definition tools.c:9

References CALL_CATEGORY_GUI, GetGame(), and GameConstants::STATE_RUINED.

◆ EEHitBy()

override void ManBase::EEHitBy ( TotalDamageResult damageResult,
int damageType,
EntityAI source,
int component,
string dmgZone,
string ammo,
vector modelPos,
float speedCoef )
inlineprotected

DT_EXPLOSION & FlashGrenade

Definition at line 926 of file PlayerBase.c.

927 {
929
930 if (m_AdminLog)
932
933 if (damageResult != null && damageResult.GetDamage(dmgZone, "Shock") > 0)
934 {
935 m_LastShockHitTime = GetGame().GetTime();
936
937 if (!IsUnconscious())
938 {
939 if (GetGame().ConfigIsExisting("cfgAmmo " + ammo + " unconRefillModifier"))
940 m_UnconRefillModifier = GetGame().ConfigGetInt("cfgAmmo " + ammo + " unconRefillModifier");
941 else
943 }
944 }
945
947 if (damageType == DT_EXPLOSION && ammo == "FlashGrenade_Ammo")
949
950 //new bleeding computation
951 //---------------------------------------
953 {
954 float dmg = damageResult.GetDamage(dmgZone, "Blood");
956 }
957 //---------------------------------------
958
959#ifdef DIAG_DEVELOPER
960 if (DiagMenu.GetBool(DiagMenuIDs.MELEE_DEBUG))
961 Print("EEHitBy() | " + GetDisplayName() + " hit by " + source.GetDisplayName() + " to " + dmgZone);
962
965 plugin_remote_server.OnDamageEvent(this, damageResult);
966#endif
967
968 if (GetGame().IsDebugMonitor())
969 m_DebugMonitorValues.SetLastDamage(source.GetDisplayName());
970
971 if (m_ActionManager)
972 m_ActionManager.Interrupt();
973
974 int transferShockToDamageCoef = g_Game.ConfigGetInt(string.Format("%1 %2 DamageApplied transferShockToDamage", CFG_AMMO, ammo));
976 {
977 //Print("PlayerBase | EEHitBy | nonlethal hit");
978 AddHealth("", "Health", -ConvertNonlethalDamage(damageResult.GetDamage(dmgZone, "Shock"), damageType));
979 if (dmgZone != "Head")
980 AddHealth(dmgZone, "Health", -damageResult.GetDamage(dmgZone, "Shock")); //Also deal damage to zone health, no dmg reduction
981 }
982
983 if (GetGame().IsServer())
984 {
985 if (GetHealth("RightLeg", "Health") <= 1 || GetHealth("LeftLeg", "Health") <= 1 || GetHealth("RightFoot", "Health") <= 1 || GetHealth("LeftFoot", "Health") <= 1)
986 {
987 if (GetModifiersManager().IsModifierActive(eModifiers.MDF_BROKEN_LEGS))//effectively resets the modifier
988 GetModifiersManager().DeactivateModifier(eModifiers.MDF_BROKEN_LEGS);
989 GetModifiersManager().ActivateModifier(eModifiers.MDF_BROKEN_LEGS);
990 }
991
992 if (ammo == "Bullet_CupidsBolt" && IsAlive())
993 {
994 DamageSystem.ResetAllZones(this);
995 m_ModifiersManager.ResetAll();
996 m_ModifiersManager.ActivateModifier(eModifiers.MDF_IMMUNITYBOOST);
997
998 // bleeding sources
1000 m_BleedingManagerServer.RemoveAllSources();
1001
1002 // Stats
1003 if (GetPlayerStats())
1004 {
1005 int bloodType = GetStatBloodType().Get();
1006 float energyValue = GetStatEnergy().Get();
1007 float waterValue = GetStatWater().Get();
1008 float heatBuffer = GetStatHeatBuffer().Get();
1009 float heatComfort = GetStatHeatComfort().Get();
1010
1012
1014 GetStatWater().Set(waterValue);
1018 }
1019
1020 // Agents
1021 if (m_AgentPool)
1022 m_AgentPool.RemoveAllAgents();
1023
1024 if (m_StaminaHandler)
1026
1027 // uncon
1028 if (IsUnconscious())
1030 }
1031 }
1032
1033 m_ShockHandler.CheckValue(true);
1034
1035 //analytics
1036 GetGame().GetAnalyticsServer().OnEntityHit(source, this);
1037 }
DiagMenuIDs
Definition EDiagMenuIDs.c:2
EStaminaModifiers
class BoxCollidingParams component
ComponentInfo for BoxCollidingResult.
static void SendPlayerUnconsciousness(DayZPlayer pPlayer, bool enable)
float m_LastShockHitTime
Definition PlayerBase.c:111
PlayerStat< float > GetStatEnergy()
ModifiersManager GetModifiersManager()
ref DebugMonitorValues m_DebugMonitorValues
Definition PlayerBase.c:51
ref BleedingSourcesManagerServer m_BleedingManagerServer
Definition PlayerBase.c:33
PlayerStat< float > GetStatHeatComfort()
float m_UnconRefillModifier
Definition PlayerBase.c:146
ref ModifiersManager m_ModifiersManager
Definition PlayerBase.c:35
PlayerStat< float > GetStatWater()
PlayerStat< int > GetStatBloodType()
float ConvertNonlethalDamage(float damage, DamageType damageType)
PluginAdminLog m_AdminLog
Definition PlayerBase.c:258
PlayerStats GetPlayerStats()
ActionManagerBase m_ActionManager
Definition PlayerBase.c:37
PlayerStat< float > GetStatHeatBuffer()
void ResetAllStats()
eModifiers
Definition eModifiers.c:2
static proto bool GetBool(int id, bool reverse=false)
Get value as bool from the given script id.
const string CFG_AMMO
Definition constants.c:212
const float STAMINA_MAX
Definition constants.c:663
proto native bool IsModifierActive()
is modifier active

References CFG_AMMO, component, g_Game, DiagMenu::GetBool(), GetGame(), GetPlugin(), IsModifierActive(), m_AdminLog, m_StaminaHandler, Print(), DayZPlayerSyncJunctures::SendPlayerUnconsciousness(), StaminaHandler::SetStamina(), and GameConstants::STAMINA_MAX.

◆ EEHitByRemote()

override void ManBase::EEHitByRemote ( int damageType,
EntityAI source,
int component,
string dmgZone,
string ammo,
vector modelPos )
inlineprotected

Definition at line 1039 of file PlayerBase.c.

1040 {
1041 super.EEHitByRemote(damageType, source, component, dmgZone, ammo, modelPos);
1042
1043 if (m_MeleeFightLogic.IsInBlock())
1044 {
1045 EffectSound sound = SEffectManager.PlaySoundOnObject("BlockingAttack_SoundSet", this);
1046 sound.SetAutodestroy(true);
1047 }
1048 }
Wrapper class for managing sound through SEffectManager.
Definition EffectSound.c:5
static EffectSound PlaySoundOnObject(string sound_set, Object parent_object, float play_fade_in=0, float stop_fade_out=0, bool loop=false)
Create and play an EffectSound.

References component, and SEffectManager::PlaySoundOnObject().

◆ EEItemAttached()

override void ManBase::EEItemAttached ( EntityAI item,
string slot_name )
inlineprotected

Definition at line 1153 of file PlayerBase.c.

1154 {
1155 super.EEItemAttached(item, slot_name);
1156
1157 ItemBase itemIB = ItemBase.Cast(item);
1160 item.SwitchItemSelectionTextureEx(EItemManipulationContext.ATTACHING, p);
1161 m_QuickBarBase.updateSlotsCount();
1164
1166
1167 GetGame().GetAnalyticsClient().OnItemAttachedAtPlayer(item, slot_name);
1169 if (clothing)
1170 {
1171 if (!GetGame().IsDedicatedServer())
1172 {
1173 if (clothing.GetEffectWidgetTypes())
1174 QueueAddEffectWidget(clothing.GetEffectWidgetTypes());
1175
1176 if (clothing.GetGlassesEffectID() > -1)
1177 QueueAddGlassesEffect(clothing.GetGlassesEffectID());
1178
1179 GetGame().GetCallQueue(CALL_CATEGORY_GUI).CallLater(UpdateCorpseStateVisual, 200, false);//sometimes it takes a while to load in
1180 UpdateCorpseStateVisual();//....but if possible, we don't want a delay
1181 }
1182 else if (GetGame().IsServer())
1183 {
1184 if (clothing.IsGasMask())
1185 GetModifiersManager().ActivateModifier(eModifiers.MDF_MASK);
1186 }
1187
1188 clothing.UpdateNVGStatus(this, true);
1189 }
1190
1192 }
void UpdateShoulderProxyVisibility(EntityAI item, string slot_name)
override void SwitchItemSelectionTexture(EntityAI item, string slot_name)
void AdjustBandana(EntityAI item, string slot_name)
void QueueAddEffectWidget(array< int > effects)
Definition PlayerBase.c:817
void UpdateCorpseStateVisual()
void QueueAddGlassesEffect(int id)
Definition PlayerBase.c:827
void CalculateVisibilityForAI()
QuickBarBase m_QuickBarBase
Definition PlayerBase.c:81

References CALL_CATEGORY_GUI, and GetGame().

◆ EEItemDetached()

override void ManBase::EEItemDetached ( EntityAI item,
string slot_name )
inlineprotected

Definition at line 1194 of file PlayerBase.c.

1195 {
1196 super.EEItemDetached(item, slot_name);
1199 item.SwitchItemSelectionTextureEx(EItemManipulationContext.DETACHING);
1200 m_QuickBarBase.updateSlotsCount();
1202
1204
1206
1207 if (clothing)
1208 {
1209 if (!GetGame().IsDedicatedServer())
1210 {
1211 if (clothing.GetEffectWidgetTypes())
1212 QueueRemoveEffectWidget(clothing.GetEffectWidgetTypes());
1213
1214 if (clothing.GetGlassesEffectID() > -1)
1215 QueueRemoveGlassesEffect(clothing.GetGlassesEffectID());
1216 }
1217
1218 if (GetGame().IsServer())
1219 {
1220 if (clothing.IsGasMask())
1221 GetModifiersManager().DeactivateModifier(eModifiers.MDF_MASK);
1222 }
1223
1224 clothing.UpdateNVGStatus(this);
1225 GetGame().GetCallQueue(CALL_CATEGORY_GUI).CallLater(UpdateCorpseStateVisual, 200, false);//sometimes it takes a while to load in
1226 UpdateCorpseStateVisual();//....but if possible, we don't want a delay
1227 }
1228 }
void QueueRemoveEffectWidget(array< int > effects)
Definition PlayerBase.c:822
void QueueRemoveGlassesEffect(int id)
Definition PlayerBase.c:832

References CALL_CATEGORY_GUI, and GetGame().

◆ EEItemIntoHands()

override void ManBase::EEItemIntoHands ( EntityAI item)
inlineprotected

fixes situation where raise is canceling some manipulation with heavy item(ex. TakeItemToHands), forces normal stance

Definition at line 2677 of file PlayerBase.c.

2678 {
2679 super.EEItemIntoHands(item);
2680
2681 if (item)
2682 {
2683 MiscGameplayFunctions.RemoveAllAttachedChildrenByTypename(item, {Bolt_Base});
2684
2685 Weapon_Base w;
2686 if (Class.CastTo(w, item))
2687 {
2688 w.ResetWeaponAnimState();
2689
2691 if (cm)
2692 {
2693 cm.SetMeleeBlock(false);
2694 GetMeleeFightLogic().SetBlock(false);
2695 }
2696 }
2697
2699 if (item.IsHeavyBehaviour() && IsRaised())
2700 {
2702 if (cm2)
2703 cm2.ForceStance(DayZPlayerConstants.STANCEIDX_ERECT);
2704 }
2705
2707 }
2708 }
class HumanItemBehaviorCfg OnItemInHandsChanged(bool pInstant=false)
signalization from script to engine that item in hands changed

References Class::CastTo(), GetCommand_Move(), IsRaised(), and OnItemInHandsChanged().

◆ EEItemOutOfHands()

override void ManBase::EEItemOutOfHands ( EntityAI item)
inlineprotected

Definition at line 2710 of file PlayerBase.c.

2711 {
2712 super.EEItemOutOfHands(item);
2713
2714 if (IsPlacingLocal())
2715 GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).Call(TogglePlacingLocal);
2716
2718 }
void TogglePlacingLocal(ItemBase item=null)
bool IsPlacingLocal()
const int CALL_CATEGORY_SYSTEM
Definition tools.c:8

References CALL_CATEGORY_SYSTEM, GetGame(), and OnItemInHandsChanged().

◆ EEKilled()

override void ManBase::EEKilled ( Object killer)
inlineprotected

Definition at line 888 of file PlayerBase.c.

889 {
890 //Print(Object.GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " event EEKilled, player has died at STS=" + GetSimulationTimeStamp());
891
892 if (m_AdminLog)
893 m_AdminLog.PlayerKilled(this, killer);
894
897
899 GetModifiersManager().DeactivateAllModifiers();
900
901 // kill character in database
902 if (GetHive())
903 GetHive().CharacterKill(this);
904
905 // disable voice communication
906 GetGame().EnableVoN(this, false);
907 if (!GetGame().IsDedicatedServer())
910
911 if (GetEconomyProfile() && !m_CorpseProcessing && m_CorpseState == 0 && GetGame().GetMission().InsertCorpse(this))
912 {
913 m_CorpseProcessing = true;
914 //Print("EEKilled - processing corpse");
915 }
916
917 if (GetGame().IsMultiplayer() && GetGame().IsServer())
918 {
919 if (GetGame().GetMission())
920 GetGame().GetMission().SyncRespawnModeInfo(GetIdentity());
921 }
922
923 super.EEKilled(killer);
924 }
proto native Hive GetHive()
SymptomManager GetSymptomManager()
bool m_CorpseProcessing
Definition PlayerBase.c:95
void OnPlayerKilled()

References GetGame(), GetHive(), m_AdminLog, and ClientData::RemovePlayerBase().

◆ EndFighting()

void ManBase::EndFighting ( )
inlineprotected

Definition at line 4970 of file PlayerBase.c.

4971 {
4972 m_IsFighting = false;
4973 }
bool m_IsFighting
Definition PlayerBase.c:219

◆ EndSurrenderRequest()

void ManBase::EndSurrenderRequest ( SurrenderData data = null)
inlineprotected

ends surrender, originally intended for surrender->restrained transitioning

Definition at line 7762 of file PlayerBase.c.

7763 {
7764 if (m_EmoteManager)
7765 m_EmoteManager.EndSurrenderRequest(data);
7766 }

◆ EOnFrame()

override void ManBase::EOnFrame ( IEntity other,
float timeSlice )
inlineprotected

Definition at line 3895 of file PlayerBase.c.

3896 {
3897 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
3898 {
3899#ifndef NO_GUI
3902
3903 if (IsControlledPlayer() && m_EffectWidgets && m_EffectWidgets.IsAnyEffectRunning())
3905#endif
3906
3909 }
3910 }
override void Update(float timeSlice)
Generic update, called on frame from the player.
void Update(float timeslice)
Definition gameplay.c:643
void ToggleHeatBufferPlusSign(bool show)
ref UndergroundHandlerClient m_UndergroundHandler
Definition PlayerBase.c:30
GameplayEffectWidgets_base m_EffectWidgets
effect widgets
Definition PlayerBase.c:277
bool m_HasHeatBuffer
Definition PlayerBase.c:13

References GetInstanceType(), GameplayEffectWidgets_base::IsAnyEffectRunning(), m_Hud, Hud::ToggleHeatBufferPlusSign(), Hud::Update(), and GameplayEffectWidgets_base::Update().

◆ EOnPostFrame()

override void ManBase::EOnPostFrame ( IEntity other,
int extra )
inlineprotected

Definition at line 3912 of file PlayerBase.c.

3913 {
3914 float delta_time = (GetGame().GetTime() - m_LastPostFrameTickTime) / 1000;
3915 m_LastPostFrameTickTime = GetGame().GetTime();
3916 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
3917 {
3919 {
3920 if (IsAlive())
3922 else
3923 delete GetDamageDealtEffect();
3924 }
3925
3926 if (m_EffectRadial)
3927 {
3928 if (IsAlive())
3929 m_EffectRadial.Update(delta_time);
3930 else
3932 }
3933
3934
3935 if (GetFlashbangEffect())
3936 {
3937 if (IsAlive())
3939 else
3940 {
3942 delete GetFlashbangEffect();
3943 }
3944 }
3945
3946 if (GetShockEffect())
3947 {
3948 if (IsAlive())
3950 else
3951 delete GetShockEffect();
3952 }
3953
3954 m_InventoryActionHandler.OnUpdate();
3955 }
3956
3957#ifdef DIAG_DEVELOPER
3959#endif
3960 }
void Update(float deltatime)
void Update(float deltatime)
DamageDealtEffect GetDamageDealtEffect()
Definition PlayerBase.c:837
ref EffectRadial m_EffectRadial
Definition PlayerBase.c:67
ref InventoryActionHandler m_InventoryActionHandler
Definition PlayerBase.c:80
float m_LastPostFrameTickTime
Definition PlayerBase.c:92
FlashbangEffect GetFlashbangEffect()
Definition PlayerBase.c:859
ShockDealtEffect GetShockEffect()
Definition PlayerBase.c:875
void Update(float deltatime)

References GetGame(), and GetInstanceType().

◆ FindCargoByBaseType()

EntityAI ManBase::FindCargoByBaseType ( string searched_item)
inlineprotected

Definition at line 1998 of file PlayerBase.c.

1999 {
2001 string item_name;
2002 int attcount = this.GetInventory().AttachmentCount();
2003
2004 for (int att = 0; att < attcount; att++)
2005 {
2006 attachment = GetInventory().GetAttachmentFromIndex(att);
2007 if (attachment.IsItemBase())
2008 {
2009 item_name = attachment.GetType();
2010 if (GetGame().IsKindOf(item_name, searched_item))
2011 return attachment;
2012 }
2013 }
2014 return NULL;
2015 }

References GetGame().

◆ FindQuickBarEntityIndex()

int ManBase::FindQuickBarEntityIndex ( EntityAI entity)
inlineprotected

Definition at line 1853 of file PlayerBase.c.

1854 {
1855 int index;
1856 index = m_QuickBarBase.FindEntityIndex(entity);
1857
1858 if (m_QuickBarBase.GetEntity(index) == NULL)
1859 return -1;
1860
1861 return index;
1862 }

◆ FixAllInventoryItems()

void ManBase::FixAllInventoryItems ( )
inlineprotected

Definition at line 5484 of file PlayerBase.c.

5485 {
5487 GetInventory().EnumerateInventory(InventoryTraversalType.INORDER, items);
5488 foreach (EntityAI item : items)
5489 item.SetHealthMax("", "");
5490 }

◆ ForceUpdateInjuredState()

void ManBase::ForceUpdateInjuredState ( )
inlineprotected

update injured state immediately


Injured stat

Definition at line 7350 of file PlayerBase.c.

7351 {
7352 m_InjuryHandler.CheckValue(true);
7353 }

◆ FreezeCheck()

void ManBase::FreezeCheck ( )
inlineprotected

Definition at line 3123 of file PlayerBase.c.

3124 {
3125 int level;
3126 if (m_ShakesForced > 0)
3128 else
3129 {
3130 float heat_comfort = GetStatHeatComfort().Get();
3132 {
3134 level = Math.Lerp(1, 7, value);
3135 level = Math.Clamp(value, 1, 7);
3136 /*
3137 value = Math.Clamp(value,0,1);
3138 level = Math.Round(value * SHAKE_LEVEL_MAX);//translate from normalized value to levels
3139 */
3140 }
3141 }
3142 if (level != m_Shakes)
3143 {
3144 m_Shakes = level;
3145 SetSynchDirty();
3146 }
3147 }
int m_Shakes
Definition PlayerBase.c:120
int m_ShakesForced
Definition PlayerBase.c:121
static const float THRESHOLD_HEAT_COMFORT_MINUS_WARNING
static const float THRESHOLD_HEAT_COMFORT_MINUS_CRITICAL
static proto float Lerp(float a, float b, float time)
Linearly interpolates between 'a' and 'b' given 'time'.
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...

References Math::Clamp(), Math::InverseLerp(), Math::Lerp(), PlayerConstants::THRESHOLD_HEAT_COMFORT_MINUS_CRITICAL, and PlayerConstants::THRESHOLD_HEAT_COMFORT_MINUS_WARNING.

◆ GetActionManager()

ActionManagerBase ManBase::GetActionManager ( )
inlineprotected

Definition at line 1514 of file PlayerBase.c.

1515 {
1516 return m_ActionManager;
1517 }

◆ GetActions()

override void ManBase::GetActions ( typename action_input_type ,
out array< ActionBase_Basic > actions )
inlineprotected

Definition at line 1415 of file PlayerBase.c.

1416 {
1418 {
1419 m_ActionsInitialize = true;
1421 }
1422
1423 // Backwards compatibility
1425 if (!bcActions)
1426 {
1427 if (IsControlledPlayer())
1429 else
1431 }
1432 else
1433 {
1434 if (!actions)
1436
1437 if (IsControlledPlayer())
1439 else
1441
1442 actions.InsertAll(bcActions);
1443 }
1444 }
ref TInputActionMap m_InputActionMapControled
Definition PlayerBase.c:72
void InitializeActions()
ref TInputActionMap m_InputActionMapAsTarget
Definition PlayerBase.c:73

References InitializeActions(), m_ActionsInitialize, and m_InputActionMap.

◆ GetAgents()

override int ManBase::GetAgents ( )
inlineprotected

Definition at line 7153 of file PlayerBase.c.

7154 {
7155 return m_AgentPool.GetAgents();
7156 }

◆ GetAimPosition()

vector ManBase::GetAimPosition ( )
inlineprotected

Definition at line 7211 of file PlayerBase.c.

7212 {
7213 float min_distance = 0.5; //min distance, default = 5m
7214
7215 vector from = GetGame().GetCurrentCameraPosition();
7216 vector to = from + (GetGame().GetCurrentCameraDirection() * min_distance);
7219 int contactComponent;
7220
7222
7223 return contactPos;
7224 }
static proto bool RaycastRV(vector begPos, vector endPos, out vector contactPos, out vector contactDir, out int contactComponent, set< Object > results=NULL, Object with=NULL, Object ignore=NULL, bool sorted=false, bool ground_only=false, int iType=ObjIntersectView, float radius=0.0, CollisionFlags flags=CollisionFlags.NEARESTCONTACT)
Raycasts world by given parameters.

References GetGame(), and DayZPhysics::RaycastRV().

◆ GetArrowManager()

override ArrowManagerBase ManBase::GetArrowManager ( )
inlineprotected

Definition at line 1675 of file PlayerBase.c.

1676 {
1677 return m_ArrowManager;
1678 }
ref ArrowManagerPlayer m_ArrowManager
Definition PlayerBase.c:79

References m_ArrowManager.

◆ GetBleedingBits()

int ManBase::GetBleedingBits ( )
inlineprotected

Definition at line 770 of file PlayerBase.c.

771 {
772 return m_BleedingBits;
773 }
int m_BleedingBits
Definition PlayerBase.c:113

◆ GetBleedingManagerRemote()

BleedingSourcesManagerRemote ManBase::GetBleedingManagerRemote ( )
inlineprotected

Definition at line 2394 of file PlayerBase.c.

2395 {
2397 }
ref BleedingSourcesManagerRemote m_BleedingManagerRemote
Definition PlayerBase.c:34

◆ GetBleedingManagerServer()

BleedingSourcesManagerServer ManBase::GetBleedingManagerServer ( )
inlineprotected

Definition at line 2389 of file PlayerBase.c.

2390 {
2392 }

◆ GetBleedingSourceCount()

int ManBase::GetBleedingSourceCount ( )
inlineprotected

Definition at line 7005 of file PlayerBase.c.

7006 {
7007 return m_BleedingSourceCount;
7008 }
int m_BleedingSourceCount
Definition PlayerBase.c:128

◆ GetBloodType()

int ManBase::GetBloodType ( )
inlineprivate

Definition at line 6383 of file PlayerBase.c.

6384 {
6385 return m_BloodType;
6386 }
int m_BloodType
Definition PlayerBase.c:7

References m_BloodType.

◆ GetBordersImmunity()

float ManBase::GetBordersImmunity ( )
inlineprotected

Definition at line 4784 of file PlayerBase.c.

4785 {
4786 float immunity = GetImmunity();
4787 float immmunity_max = 1;
4789 }
float GetImmunity()
returns player's immunity strength between 0..1
float GetStatLevelBorders(float stat_value, float critical, float low, float normal, float high, float max)
static const float IMMUNITY_THRESHOLD_LEVEL_CRITICAL
static const float IMMUNITY_THRESHOLD_LEVEL_LOW
static const float IMMUNITY_THRESHOLD_LEVEL_HIGH
static const float IMMUNITY_THRESHOLD_LEVEL_NORMAL

References PlayerConstants::IMMUNITY_THRESHOLD_LEVEL_CRITICAL, PlayerConstants::IMMUNITY_THRESHOLD_LEVEL_HIGH, PlayerConstants::IMMUNITY_THRESHOLD_LEVEL_LOW, and PlayerConstants::IMMUNITY_THRESHOLD_LEVEL_NORMAL.

◆ GetBreathVapourLevel()

int ManBase::GetBreathVapourLevel ( )
inlineprotected

Definition at line 716 of file PlayerBase.c.

717 {
718 return m_BreathVapour;
719 }
int m_BreathVapour
Definition PlayerBase.c:122

◆ GetBrokenLegs()

eBrokenLegs ManBase::GetBrokenLegs ( )
inlineprotected

Definition at line 3346 of file PlayerBase.c.

3347 {
3348 return Math.AbsInt(m_BrokenLegState);//negative value denotes first time activation
3349 }

References Math::AbsInt().

◆ GetCachedID()

string ManBase::GetCachedID ( )
inlineprotected

Definition at line 8797 of file PlayerBase.c.

8798 {
8799 return m_CachedPlayerID;
8800 }
string m_CachedPlayerID
Definition PlayerBase.c:164

◆ GetCachedName()

string ManBase::GetCachedName ( )
inlineprotected

Definition at line 8792 of file PlayerBase.c.

8793 {
8794 return m_CachedPlayerName;
8795 }
string m_CachedPlayerName
Definition PlayerBase.c:163

◆ GetCenter()

override vector ManBase::GetCenter ( )
inlineprotected

Definition at line 8665 of file PlayerBase.c.

8666 {
8667 return GetBonePositionWS(GetBoneIndexByName("spine3"));
8668 }

References GetBoneIndexByName().

◆ GetConstructionActionData()

ConstructionActionData ManBase::GetConstructionActionData ( )
inlineprotected

Definition at line 1794 of file PlayerBase.c.

1795 {
1797 }
ref ConstructionActionData m_ConstructionActionData
Definition PlayerBase.c:212

◆ GetCraftingManager()

CraftingManager ManBase::GetCraftingManager ( )
inlineprotected

Definition at line 1660 of file PlayerBase.c.

1661 {
1662 return m_CraftingManager;
1663 }
ref CraftingManager m_CraftingManager
Definition PlayerBase.c:78

◆ GetCraftingRecipeID()

int ManBase::GetCraftingRecipeID ( )
inlineprotected

Definition at line 1775 of file PlayerBase.c.

1776 {
1777 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
1779 else
1780 return m_RecipeID;
1781 }
int m_RecipeID
Definition PlayerBase.c:196
CraftingManager GetCraftingManager()

References GetInstanceType(), and m_RecipeID.

◆ GetCurrentPlayerCamera()

DayZPlayerCamera ManBase::GetCurrentPlayerCamera ( )
inlineprotected

Definition at line 2376 of file PlayerBase.c.

2377 {
2378 return m_CurrentCamera;
2379 }
DayZPlayerCameraBase m_CurrentCamera
Definition PlayerBase.c:112

◆ GetCurrentRecipe()

int ManBase::GetCurrentRecipe ( )
inlineprotected

Definition at line 1496 of file PlayerBase.c.

1497 {
1498 return m_RecipePick;
1499 }
int m_RecipePick
Definition PlayerBase.c:89

◆ GetDamageDealtEffect()

DamageDealtEffect ManBase::GetDamageDealtEffect ( )
inlineprotected

Definition at line 837 of file PlayerBase.c.

838 {
839 return m_DamageDealtEffect;
840 }
ref DamageDealtEffect m_DamageDealtEffect
Definition PlayerBase.c:66

◆ GetDebugActions()

override void ManBase::GetDebugActions ( out TSelectableActionInfoArrayEx outputList)
inlineprotected

Definition at line 7356 of file PlayerBase.c.

7357 {
7358 PluginTransmissionAgents pluginTransmissionAgents = PluginTransmissionAgents.Cast(GetPlugin(PluginTransmissionAgents));
7359
7360 string name;
7361 int id;
7363
7364 for (int i = 0; i < agentList.Count(); i++)
7365 {
7366 name = agentList.GetElement(i);
7367 id = agentList.GetKey(i);
7368
7369 outputList.Insert(new TSelectableActionInfoWithColor(SAT_DEBUG_ACTION, EActions.DEBUG_AGENTS_RANGE_INJECT_START + id, "Inject " + name, Colors.WHITE));
7370 outputList.Insert(new TSelectableActionInfoWithColor(SAT_DEBUG_ACTION, EActions.DEBUG_AGENTS_RANGE_REMOVE_START + id, "Remove " + name, Colors.WHITE));
7371 }
7372 }
Param4< int, int, string, int > TSelectableActionInfoWithColor
Definition EntityAI.c:97
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
EActions
Definition EActions.c:2
Definition Colors.c:4
const int WHITE
Definition Colors.c:15
const int SAT_DEBUG_ACTION
Definition constants.c:424

References GetPlugin(), name, SAT_DEBUG_ACTION, and Colors::WHITE.

◆ GetDebugMonitorValues()

DebugMonitorValues ManBase::GetDebugMonitorValues ( )
inlineprotected

Definition at line 2415 of file PlayerBase.c.

2416 {
2417 return m_DebugMonitorValues;
2418 }

◆ GetDefaultHitComponent()

override string ManBase::GetDefaultHitComponent ( )
inlineprotected

returns default hit component (fallback)

Definition at line 1120 of file PlayerBase.c.

1121 {
1122 return GetDayZPlayerType().GetDefaultHitComponent();
1123 }

References GetDayZPlayerType().

◆ GetDefaultHitPosition()

override vector ManBase::GetDefaultHitPosition ( )
inlineprotected

Definition at line 1125 of file PlayerBase.c.

1126 {
1127 return m_DefaultHitPosition;
1128 }
vector m_DefaultHitPosition
Definition PlayerBase.c:115

◆ GetDrowningWaterLevelCheck()

bool ManBase::GetDrowningWaterLevelCheck ( )
inlineprotected

Definition at line 6271 of file PlayerBase.c.

6272 {
6273 int index = GetBoneIndexByName("head");
6274 vector pos = GetBonePositionWS(index);
6275 float depth = g_Game.GetWaterDepth(pos);
6276
6277 if (IsSwimming())
6279 else if (IsUnconscious())
6282 }
static const float DROWNING_DEFAULT_THRESHOLD
static const float DROWNING_UNCONSCIOUS_THRESHOLD
static const float DROWNING_SWIMMING_THRESHOLD

References PlayerConstants::DROWNING_DEFAULT_THRESHOLD, PlayerConstants::DROWNING_SWIMMING_THRESHOLD, PlayerConstants::DROWNING_UNCONSCIOUS_THRESHOLD, g_Game, and GetBoneIndexByName().

◆ GetEmoteManager()

EmoteManager ManBase::GetEmoteManager ( )
inlineprotected

Definition at line 1519 of file PlayerBase.c.

1520 {
1521 return m_EmoteManager;
1522 }

◆ GetFaceCoverageShaveValues()

static set< int > ManBase::GetFaceCoverageShaveValues ( )
inlinestaticprotected

returns a set of face covering values

Definition at line 6321 of file PlayerBase.c.

6322 {
6323 set<int> ret = new set<int>;
6324 ret.Insert(EAttExclusions.SHAVING_MASK_ATT_0);
6325 ret.Insert(EAttExclusions.SHAVING_HEADGEAR_ATT_0);
6326 //ret.Insert(EAttExclusions.SHAVING_EYEWEAR_ATT_0);
6327
6328 return ret;
6329 }

◆ GetFeetDamageMoveModifier()

float ManBase::GetFeetDamageMoveModifier ( )
inlineprotected

Definition at line 1603 of file PlayerBase.c.

1604 {
1605 float modifier;
1606 switch (m_MovementState.m_iMovement)
1607 {
1608 case DayZPlayerConstants.MOVEMENTIDX_SPRINT:
1609 modifier = 1;
1610 break
1611 case DayZPlayerConstants.MOVEMENTIDX_RUN:
1612 modifier = 0.5;
1613 break
1614 case DayZPlayerConstants.MOVEMENTIDX_WALK:
1615 modifier = 0;
1616 break
1617 }
1618 return modifier;
1619 }

References m_MovementState.

◆ GetFlagTendencyRaise()

bool ManBase::GetFlagTendencyRaise ( )
inlineprotected

DEPRECATED.

Definition at line 4552 of file PlayerBase.c.

4553 {
4554 return m_FlagRaisingTendency;
4555 }
bool m_FlagRaisingTendency
Definition PlayerBase.c:10

◆ GetFlashbangEffect()

FlashbangEffect ManBase::GetFlashbangEffect ( )
inlineprotected

Definition at line 859 of file PlayerBase.c.

860 {
861 return m_FlashbangEffect;
862 }
ref FlashbangEffect m_FlashbangEffect
Definition PlayerBase.c:68

◆ GetHealthRegenSpeed()

float ManBase::GetHealthRegenSpeed ( )
inlineprotected

◆ GetHitComponentForAI()

override string ManBase::GetHitComponentForAI ( )
inlineprotected

Melee helpers.

select & return hit component for attacking AI

Definition at line 1114 of file PlayerBase.c.

1115 {
1116 return GetDayZPlayerType().GetHitComponentForAI();
1117 }

References GetDayZPlayerType().

◆ GetHitPPEEnabled()

bool ManBase::GetHitPPEEnabled ( )
inlineprotected

Definition at line 1300 of file PlayerBase.c.

1301 {
1303 }
bool m_CanDisplayHitEffectPPE
Definition PlayerBase.c:161

◆ GetHologramLocal()

Hologram ManBase::GetHologramLocal ( )
inlineprotected

Definition at line 2104 of file PlayerBase.c.

2105 {
2106 return m_HologramLocal;
2107 }
ref Hologram m_HologramLocal
Definition PlayerBase.c:188

◆ GetHologramServer()

Hologram ManBase::GetHologramServer ( )
inlineprotected

Definition at line 2099 of file PlayerBase.c.

2100 {
2101 return m_HologramServer;
2102 }
ref Hologram m_HologramServer
Definition PlayerBase.c:187

◆ GetImmunity()

float ManBase::GetImmunity ( )
inlineprotected

returns player's immunity strength between 0..1

Definition at line 4862 of file PlayerBase.c.

4863 {
4864 float immunity;
4865 if (GetPlayerStats())
4866 {
4867 float max_health = GetMaxHealth("GlobalHealth", "Health") + 0.01;//addition to prevent divisioin by zero in case of some messup
4868 float max_blood = GetMaxHealth("GlobalHealth", "Blood") + 0.01;//addition to prevent divisioin by zero in case of some messup
4871 float health_normalized = GetHealth("GlobalHealth", "Health") / max_health;
4872 float blood_normalized = GetHealth("GlobalHealth", "Blood") / max_blood;
4874 immunity = immunity / 4;//avg
4875 immunity = Math.Clamp(immunity, 0, 1);
4876 }
4877 return immunity;
4878 }
static const float SL_ENERGY_MAX
static const float SL_WATER_MAX

References Math::Clamp(), PlayerConstants::SL_ENERGY_MAX, and PlayerConstants::SL_WATER_MAX.

◆ GetImmunityLevel()

EStatLevels ManBase::GetImmunityLevel ( )
inlineprotected

◆ GetItemInHands()

ItemBase ManBase::GetItemInHands ( )
inlineprotected

Definition at line 5832 of file PlayerBase.c.

5833 {
5834 if (GetHumanInventory())
5835 return ItemBase.Cast(GetHumanInventory().GetEntityInHands());
5836 return null;
5837
5838 }

◆ GetItemOnHead()

ItemBase ManBase::GetItemOnHead ( )
inlineprotected

Returns item on player's head. For an example, a headtorch.

Definition at line 685 of file PlayerBase.c.

686 {
687 return GetItemOnSlot("Headgear");
688 }

◆ GetItemOnSlot()

ItemBase ManBase::GetItemOnSlot ( string slot_type)
inlineprotected

Returns item that's on this player's attachment slot. Parameter slot_type should be a string from config parameter 'itemInfo[]' like "Legs", "Headgear" and so on.

Definition at line 668 of file PlayerBase.c.

669 {
671 EntityAI item_EAI = this.GetInventory().FindAttachment(slot_id);
673
674 if (item_EAI && !item_IB)
675 {
676 string str = "Warning! GetItemOnSlot() >> found item on slot " + slot_type + " can't be cast to ItemBase! Found item is " + item_EAI.GetType() + " and the player is " + GetType() + "!";
677 Error(str);
678 return null;
679 }
680
681 return item_IB;
682 }
eBleedingSourceType GetType()
static proto native int GetSlotIdFromString(string slot_name)
converts string to slot_id

References Error(), InventorySlots::GetSlotIdFromString(), and GetType().

◆ GetLastFirePoint()

vector ManBase::GetLastFirePoint ( )
inlineprotected

Definition at line 1808 of file PlayerBase.c.

1809 {
1810 return m_LastFirePoint;
1811 }
vector m_LastFirePoint
Definition PlayerBase.c:214

◆ GetLastFirePointIndex()

int ManBase::GetLastFirePointIndex ( )
inlineprotected

Definition at line 1816 of file PlayerBase.c.

1817 {
1818 return m_LastFirePointIndex;
1819 }
int m_LastFirePointIndex
Definition PlayerBase.c:216

◆ GetLastFirePointRot()

float ManBase::GetLastFirePointRot ( )
inlineprotected

Definition at line 1812 of file PlayerBase.c.

1813 {
1814 return m_LastFirePointRot;
1815 }
float m_LastFirePointRot
Definition PlayerBase.c:215

◆ GetLastMapInfo()

bool ManBase::GetLastMapInfo ( out float scale,
out vector pos )
inlineprotected

Definition at line 8459 of file PlayerBase.c.

8460 {
8461 scale = m_LastMapScale;
8462 pos = m_LastMapPos;
8463
8464 return m_LastMapScale != -1.0;
8465 }
vector m_LastMapPos
Definition PlayerBase.c:231
float m_LastMapScale
Definition PlayerBase.c:230

◆ GetLastShavedSeconds()

int ManBase::GetLastShavedSeconds ( )
inlineprotected

Definition at line 6305 of file PlayerBase.c.

6306 {
6307 return m_LastShavedSeconds;
6308 }
int m_LastShavedSeconds
Definition PlayerBase.c:6

◆ GetLastUAMessage()

string ManBase::GetLastUAMessage ( )
inlineprotected

UA Last Message.

Definition at line 7323 of file PlayerBase.c.

7324 {
7325 return m_UALastMessage;
7326 }

◆ GetLifeSpanState()

int ManBase::GetLifeSpanState ( )
inlineprotected

Definition at line 6300 of file PlayerBase.c.

6301 {
6302 return m_LifeSpanState;
6303 }
int m_LifeSpanState
Definition PlayerBase.c:5

◆ GetLiquidTendencyDrain()

bool ManBase::GetLiquidTendencyDrain ( )
inlineprotected

Definition at line 4539 of file PlayerBase.c.

4540 {
4541 return m_LiquidTendencyDrain;
4542 }
bool m_LiquidTendencyDrain
Definition PlayerBase.c:9

◆ GetLocalProjectionOrientation()

vector ManBase::GetLocalProjectionOrientation ( )
inlineprotected

Definition at line 2335 of file PlayerBase.c.

2336 {
2338 }
vector m_LocalProjectionOrientation
Definition PlayerBase.c:190

◆ GetLocalProjectionPosition()

vector ManBase::GetLocalProjectionPosition ( )
inlineprotected

Definition at line 2330 of file PlayerBase.c.

2331 {
2333 }
vector m_LocalProjectionPosition
Definition PlayerBase.c:189

◆ GetMagazineToReload()

EntityAI ManBase::GetMagazineToReload ( EntityAI weapon)
inlineprotected

Definition at line 4441 of file PlayerBase.c.

4442 {
4446
4447 EntityAI ammo_magazine; //magazine
4450
4451 EntityAI ammo_pile; //ammo pile
4453 int ammo_pile_count;
4454
4455 //Get all magazines in (player) inventory
4456 for (int att_i = 0; att_i < GetInventory().AttachmentCount(); ++att_i)
4457 {
4458 EntityAI attachment = GetInventory().GetAttachmentFromIndex(att_i);
4459 ref CargoBase attachment_cargo = attachment.GetInventory().GetCargo();
4460
4461 if (attachment_cargo)
4462 {
4463 for (int cgo_i = 0; cgo_i < attachment_cargo.GetItemCount(); ++cgo_i)
4464 {
4466
4467 //check for proper magazine
4468 if (cargo_item.IsMagazine())
4469 {
4471 ammo_pile_count = magazine.GetAmmoCount();
4472
4473 //magazines (get magazine with max ammo count)
4474 if (weapon_manager.CanAttachMagazine(weapon_base, magazine) || weapon_manager.CanSwapMagazine(weapon_base, magazine))
4475 {
4476 if (ammo_pile_count > 0)
4477 {
4478 if (last_ammo_magazine_count == 0)
4479 {
4482 }
4483 else
4484 {
4486 {
4489 }
4490 }
4491 }
4492 }
4493 //bullets (get ammo pile with min ammo count)
4494 else if (weapon_manager.CanLoadBullet(weapon_base, magazine))
4495 {
4496 if (ammo_pile_count > 0)
4497 {
4498 if (last_ammo_pile_count == 0)
4499 {
4502 }
4503 else
4504 {
4506 {
4509 }
4510 }
4511 }
4512 }
4513 }
4514 }
4515 }
4516 }
4517
4518 //prioritize magazine
4519 if (ammo_magazine)
4520 return ammo_magazine;
4521
4522 return ammo_pile;
4523 }
represents base for cargo storage for entities
Definition Cargo.c:7

◆ GetMapClosingSyncSent()

bool ManBase::GetMapClosingSyncSent ( )
inlineprotected

Definition at line 3050 of file PlayerBase.c.

3051 {
3052 return m_MapClosingSyncSent;
3053 }
bool m_MapClosingSyncSent
Definition PlayerBase.c:229

◆ GetMapNavigationBehaviour()

MapNavigationBehaviour ManBase::GetMapNavigationBehaviour ( )
inlineprotected

Definition at line 3071 of file PlayerBase.c.

3072 {
3074 }
ref MapNavigationBehaviour m_MapNavigationBehaviour
Definition PlayerBase.c:232

◆ GetMixedSoundStates()

eMixedSoundStates ManBase::GetMixedSoundStates ( )
inlineprotected

Definition at line 1978 of file PlayerBase.c.

1979 {
1980 return m_MixedSoundStates;
1981 }
int m_MixedSoundStates
Definition PlayerBase.c:124

◆ GetModifiersManager()

ModifiersManager ManBase::GetModifiersManager ( )
inlineprotected

Definition at line 7234 of file PlayerBase.c.

7235 {
7236 return m_ModifiersManager;
7237 }

◆ GetNoisePresenceInAI()

int ManBase::GetNoisePresenceInAI ( )
inlineprivate

Return actual noise presence of player.

Definition at line 6419 of file PlayerBase.c.

6420 {
6422 return m_PresenceNotifier.GetNoisePresence();
6423
6424 return 0;
6425 }
PluginPresenceNotifier m_PresenceNotifier
Definition PlayerBase.c:28

◆ GetNotifiersManager()

NotifiersManager ManBase::GetNotifiersManager ( )
inlineprotected

Definition at line 2659 of file PlayerBase.c.

2660 {
2661 return m_NotifiersManager;
2662 }
ref NotifiersManager m_NotifiersManager
Definition PlayerBase.c:36

◆ GetNVType()

int ManBase::GetNVType ( )
inlineprotected

Definition at line 8232 of file PlayerBase.c.

8233 {
8234 if (!m_ActiveNVTypes || m_ActiveNVTypes.Count() == 0)
8235 return NVTypes.NONE;
8236 else
8237 return m_ActiveNVTypes[m_ActiveNVTypes.Count() - 1];
8238 }

◆ GetNVTypesArray()

array< int > ManBase::GetNVTypesArray ( )
inlineprotected

Definition at line 8240 of file PlayerBase.c.

8241 {
8242 return m_ActiveNVTypes;
8243 }

◆ GetPlayerClass()

string ManBase::GetPlayerClass ( )
inlineprotected

Definition at line 6165 of file PlayerBase.c.

6166 {
6167 string type;
6168 GetGame().ObjectGetType(this, type);
6169 return type;
6170 }

References GetGame().

◆ GetPlayerLoad()

float ManBase::GetPlayerLoad ( )
inlineprotected

Definition at line 4568 of file PlayerBase.c.

4569 {
4570 return GetWeightEx();
4571 }

◆ GetPlayerSoundEventHandler()

PlayerSoundEventHandler ManBase::GetPlayerSoundEventHandler ( )
inlineprotected

Definition at line 6949 of file PlayerBase.c.

6950 {
6951 return m_PlayerSoundEventHandler;
6952 }

◆ GetPlayerSoundManagerServer()

PlayerSoundManagerServer ManBase::GetPlayerSoundManagerServer ( )
inlineprotected

Definition at line 1327 of file PlayerBase.c.

1328 {
1330 }
ref PlayerSoundManagerServer m_PlayerSoundManagerServer
Definition PlayerBase.c:82

◆ GetPlayerStats()

PlayerStats ManBase::GetPlayerStats ( )
inlineprotected

Definition at line 1655 of file PlayerBase.c.

1656 {
1657 return m_PlayerStats;
1658 }
ref PlayerStats m_PlayerStats
Definition PlayerBase.c:31

References m_PlayerStats.

◆ GetPulseType()

EPulseType ManBase::GetPulseType ( )
inlineprotected

Definition at line 807 of file PlayerBase.c.

808 {
809 return m_PulseType;
810 }
EPulseType m_PulseType
Definition PlayerBase.c:130

◆ GetQuickBarBonus()

override int ManBase::GetQuickBarBonus ( )
inlineprotected

Definition at line 690 of file PlayerBase.c.

691 {
692 return m_QuickBarBonus;
693 }
int m_QuickBarBonus
Definition PlayerBase.c:125

References m_QuickBarBonus.

◆ GetQuickBarEntity()

EntityAI ManBase::GetQuickBarEntity ( int index)
inlineprotected

Definition at line 1870 of file PlayerBase.c.

1871 {
1872 return m_QuickBarBase.GetEntity(index);
1873 }

◆ GetQuickBarSize()

int ManBase::GetQuickBarSize ( )
inlineprotected

Definition at line 1865 of file PlayerBase.c.

1866 {
1867 return m_QuickBarBase.GetSize();
1868 }

◆ GetRandomGeneratorSyncManager()

RandomGeneratorSyncManager ManBase::GetRandomGeneratorSyncManager ( )
inlineprotected

Definition at line 1524 of file PlayerBase.c.

1525 {
1526 return m_RGSManager;
1527 }

◆ GetShakeLevel()

int ManBase::GetShakeLevel ( )
inlineprotected

Definition at line 4703 of file PlayerBase.c.

4704 {
4705 return m_Shakes;
4706 }

◆ GetShockEffect()

ShockDealtEffect ManBase::GetShockEffect ( )
inlineprotected

Definition at line 875 of file PlayerBase.c.

876 {
877 return m_ShockDealtEffect;
878 }
ref ShockDealtEffect m_ShockDealtEffect
Definition PlayerBase.c:69

◆ GetSimplifiedShockNormalized()

float ManBase::GetSimplifiedShockNormalized ( )
inlineprotected

Definition at line 3307 of file PlayerBase.c.

3308 {
3310 }
int m_ShockSimplified
Definition PlayerBase.c:102
const int SIMPLIFIED_SHOCK_CAP
Definition PlayerBase.c:3

◆ GetSingleAgentCount()

int ManBase::GetSingleAgentCount ( int agent_id)
inlineprotected

Definition at line 7178 of file PlayerBase.c.

7179 {
7180 return m_AgentPool.GetSingleAgentCount(agent_id);
7181 }

◆ GetSingleAgentCountNormalized()

float ManBase::GetSingleAgentCountNormalized ( int agent_id)
inlineprotected

Definition at line 7184 of file PlayerBase.c.

7185 {
7186 int max_count = PluginTransmissionAgents.GetAgentMaxCount(agent_id);
7187 return m_AgentPool.GetSingleAgentCount(agent_id) / max_count;
7188 }

◆ GetSoftSkillsManager()

SoftSkillsManager ManBase::GetSoftSkillsManager ( )
inlineprivate

Definition at line 6398 of file PlayerBase.c.

6399 {
6400 return m_SoftSkillsManager;
6401 }
ref SoftSkillsManager m_SoftSkillsManager
Definition PlayerBase.c:48

◆ GetStaminaHandler()

StaminaHandler ManBase::GetStaminaHandler ( )
inlineprotected

Definition at line 1665 of file PlayerBase.c.

1666 {
1667 return m_StaminaHandler;
1668 }

References m_StaminaHandler.

◆ GetStaminaState()

int ManBase::GetStaminaState ( )
inlineprotected

Definition at line 7101 of file PlayerBase.c.

7102 {
7103 return m_StaminaState;
7104 }
int m_StaminaState
Definition PlayerBase.c:100

◆ GetStatBloodType()

PlayerStat< int > ManBase::GetStatBloodType ( )
inlineprotected

Definition at line 7302 of file PlayerBase.c.

7303 {
7306 return m_StatBloodType;
7307 }
EPlayerStats_current
PlayerStatBase GetStatObject(int id)

References GetStatObject().

◆ GetStatBordersBlood()

float ManBase::GetStatBordersBlood ( )
inlineprotected

Definition at line 4806 of file PlayerBase.c.

4807 {
4808 float blood = GetHealth("", "Blood");
4809 float blood_max = GetMaxHealth("", "Blood");
4811 }
static const float SL_BLOOD_LOW
static const float SL_BLOOD_CRITICAL
static const float SL_BLOOD_NORMAL
static const float SL_BLOOD_HIGH

References PlayerConstants::SL_BLOOD_CRITICAL, PlayerConstants::SL_BLOOD_HIGH, PlayerConstants::SL_BLOOD_LOW, and PlayerConstants::SL_BLOOD_NORMAL.

◆ GetStatBordersEnergy()

float ManBase::GetStatBordersEnergy ( )
inlineprotected

◆ GetStatBordersHealth()

float ManBase::GetStatBordersHealth ( )
inlineprotected

Definition at line 4792 of file PlayerBase.c.

4793 {
4794 float health = GetHealth("", "");
4795 float health_max = GetMaxHealth("", "");
4797 }
static const float SL_HEALTH_CRITICAL
static const float SL_HEALTH_LOW
static const float SL_HEALTH_NORMAL
static const float SL_HEALTH_HIGH

References PlayerConstants::SL_HEALTH_CRITICAL, PlayerConstants::SL_HEALTH_HIGH, PlayerConstants::SL_HEALTH_LOW, and PlayerConstants::SL_HEALTH_NORMAL.

◆ GetStatBordersToxicity()

◆ GetStatBordersWater()

float ManBase::GetStatBordersWater ( )
inlineprotected

◆ GetStatDiet()

PlayerStat< float > ManBase::GetStatDiet ( )
inlineprotected

Definition at line 7281 of file PlayerBase.c.

7282 {
7283 if (!m_StatDiet && GetPlayerStats())
7285 return m_StatDiet;
7286 }

References GetStatObject().

◆ GetStatEnergy()

PlayerStat< float > ManBase::GetStatEnergy ( )
inlineprotected

Definition at line 7253 of file PlayerBase.c.

7254 {
7255 if (!m_StatEnergy && GetPlayerStats())
7257 return m_StatEnergy;
7258 }
PlayerStat< float > m_StatEnergy
Definition PlayerBase.c:266

References GetStatObject().

◆ GetStatHeatBuffer()

PlayerStat< float > ManBase::GetStatHeatBuffer ( )
inlineprotected

Definition at line 7309 of file PlayerBase.c.

References GetStatObject().

◆ GetStatHeatComfort()

PlayerStat< float > ManBase::GetStatHeatComfort ( )
inlineprotected

Definition at line 7260 of file PlayerBase.c.

7261 {
7264 return m_StatHeatComfort;
7265 }
PlayerStat< float > m_StatHeatComfort
Definition PlayerBase.c:267

References GetStatObject().

◆ GetStatLevel()

EStatLevels ManBase::GetStatLevel ( float stat_value,
float critical,
float low,
float normal,
float high )
inlineprotected

Definition at line 4842 of file PlayerBase.c.

4843 {
4844 if (stat_value <= critical)
4845 return EStatLevels.CRITICAL;
4846 if (stat_value <= low)
4847 return EStatLevels.LOW;
4848 if (stat_value <= normal)
4849 return EStatLevels.MEDIUM;
4850 if (stat_value <= high)
4851 return EStatLevels.HIGH;
4852 return EStatLevels.GREAT;
4853 }

◆ GetStatLevelBlood()

◆ GetStatLevelBorders()

float ManBase::GetStatLevelBorders ( float stat_value,
float critical,
float low,
float normal,
float high,
float max )
inlineprotected

Definition at line 4829 of file PlayerBase.c.

4830 {
4831 if (stat_value <= critical)
4832 return Math.InverseLerp(0, critical, stat_value);
4833 if (stat_value <= low)
4835 if (stat_value <= normal)
4837 if (stat_value <= high)
4840 }

References Math::InverseLerp().

◆ GetStatLevelEnergy()

◆ GetStatLevelHealth()

◆ GetStatLevelToxicity()

◆ GetStatLevelWater()

◆ GetStatSpecialty()

PlayerStat< float > ManBase::GetStatSpecialty ( )
inlineprotected

Definition at line 7295 of file PlayerBase.c.

References GetStatObject().

◆ GetStatStamina()

PlayerStat< float > ManBase::GetStatStamina ( )
inlineprotected

Definition at line 7288 of file PlayerBase.c.

References GetStatObject().

◆ GetStatToxicity()

PlayerStat< float > ManBase::GetStatToxicity ( )
inlineprotected

Definition at line 7246 of file PlayerBase.c.

7247 {
7250 return m_StatToxicity;
7251 }
PlayerStat< float > m_StatToxicity
Definition PlayerBase.c:265

References GetStatObject().

◆ GetStatTremor()

PlayerStat< float > ManBase::GetStatTremor ( )
inlineprotected

Definition at line 7267 of file PlayerBase.c.

7268 {
7269 if (!m_StatTremor && GetPlayerStats())
7271 return m_StatTremor;
7272 }
PlayerStat< float > m_StatTremor
Definition PlayerBase.c:268

References GetStatObject().

◆ GetStatWater()

PlayerStat< float > ManBase::GetStatWater ( )
inlineprotected

Definition at line 7239 of file PlayerBase.c.

7240 {
7241 if (!m_StatWater && GetPlayerStats())
7243 return m_StatWater;
7244 }
PlayerStat< float > m_StatWater
Definition PlayerBase.c:264

References GetStatObject().

◆ GetStatWet()

PlayerStat< int > ManBase::GetStatWet ( )
inlineprotected

Definition at line 7274 of file PlayerBase.c.

7275 {
7276 if (!m_StatWet && GetPlayerStats())
7278 return m_StatWet;
7279 }

References GetStatObject().

◆ GetStomach()

PlayerStomach ManBase::GetStomach ( )
inlineprotected

Definition at line 2720 of file PlayerBase.c.

2721 {
2722 return m_PlayerStomach;
2723 }

◆ GetStoreLoadVersion()

int ManBase::GetStoreLoadVersion ( )
inlineprivate

Definition at line 6445 of file PlayerBase.c.

6446 {
6447 return m_StoreLoadVersion;
6448 }
int m_StoreLoadVersion
Definition PlayerBase.c:19

◆ GetSuitableFinisherHitComponents()

override array< string > ManBase::GetSuitableFinisherHitComponents ( )
inlineprotected

returns list of suitable finisher hit components (defined on base entity/entity type)

Definition at line 1131 of file PlayerBase.c.

1132 {
1133 return GetDayZPlayerType().GetSuitableFinisherHitComponents();
1134 }

References GetDayZPlayerType().

◆ GetSymptomManager()

SymptomManager ManBase::GetSymptomManager ( )
inlineprotected

Definition at line 2399 of file PlayerBase.c.

2400 {
2401 return m_SymptomManager;
2402 }
ref SymptomManager m_SymptomManager
Definition PlayerBase.c:43

◆ GetTotalAgentCount()

float ManBase::GetTotalAgentCount ( )
inlineprotected

Definition at line 7190 of file PlayerBase.c.

7191 {
7192 return m_AgentPool.GetTotalAgentCount();
7193 }

◆ GetTransferValues()

TransferValues ManBase::GetTransferValues ( )
inlineprotected

Definition at line 2410 of file PlayerBase.c.

2411 {
2412 return m_TrasferValues;
2413 }
ref TransferValues m_TrasferValues
Definition PlayerBase.c:50

◆ GetUndergroundHandler()

UndergroundHandlerClient ManBase::GetUndergroundHandler ( )
inlineprotected

Definition at line 1333 of file PlayerBase.c.

1334 {
1335 if (!m_UndergroundHandler && IsAlive())
1337
1338 return m_UndergroundHandler;
1339 }
void UndergroundHandlerClient(PlayerBase player)

References UndergroundHandlerClient().

◆ GetVirtualHud()

VirtualHud ManBase::GetVirtualHud ( )
inlineprotected

Definition at line 2403 of file PlayerBase.c.

2404 {
2405 if (!m_VirtualHud)
2406 m_VirtualHud = new VirtualHud(this);
2407 return m_VirtualHud;
2408 }
void VirtualHud(PlayerBase player)
ref VirtualHud m_VirtualHud
Definition PlayerBase.c:44

References m_VirtualHud, and VirtualHud().

◆ GetVisibilityCoef()

float ManBase::GetVisibilityCoef ( )
inlineprotected

Definition at line 4697 of file PlayerBase.c.

4698 {
4699 return m_VisibilityCoef;
4700 }
float m_VisibilityCoef
Definition PlayerBase.c:54

◆ GetVoiceType()

int ManBase::GetVoiceType ( )
inlineprotected

Definition at line 1317 of file PlayerBase.c.

1318 {
1319 int voice_type = ConfigGetInt("voiceType");
1320
1321 if (voice_type == 0)
1322 voice_type = 1;
1323
1324 return voice_type;
1325 }

◆ GetWeaponManager()

override WeaponManager ManBase::GetWeaponManager ( )
inlineprotected

Definition at line 1670 of file PlayerBase.c.

1671 {
1672 return m_WeaponManager;
1673 }

◆ GetWeightSpecialized()

float ManBase::GetWeightSpecialized ( bool forceRecalc = false)
inlineprotected

Definition at line 4641 of file PlayerBase.c.

4642 {
4643 float totalWeight = super.GetWeightSpecialized(forceRecalc);
4644
4646 if (itemHands) // adds weight of item carried in hands
4647 totalWeight += itemHands.GetWeightEx(forceRecalc);
4648#ifdef DEVELOPER
4649 if (WeightDebug.m_VerbosityFlags & WeightDebugType.RECALC_FORCED)
4650 {
4651 float itemInHandsWeight = totalWeight - super.GetWeightSpecialized(forceRecalc);
4652 WeightDebugData dta = WeightDebug.GetWeightDebug(this);
4653 dta.SetCalcDetails("TMan: " + (super.GetWeightSpecialized(forceRecalc) + itemInHandsWeight) + "(contents weight[includes item in hands])");
4654 }
4655#endif
4656 return totalWeight;
4657 }

◆ GiveShock()

void ManBase::GiveShock ( float shock)
inlineprotected

Definition at line 3327 of file PlayerBase.c.

3328 {
3329 AddHealth("", "Shock", shock);
3330 }

◆ HandleBrokenLegsSync()

void ManBase::HandleBrokenLegsSync ( )
inlineprotected

Definition at line 5460 of file PlayerBase.c.

5461 {
5463 {
5465 bool initial = (m_BrokenLegState < 0);
5466 int state = GetBrokenLegs();
5467 if (state == eBrokenLegs.BROKEN_LEGS)
5468 {
5469 //Print(m_BrokenLegState);
5470 if (initial)// <0 values indicate initial activation
5471 {
5472 //Print("synced variables - inital activation of broken legs");
5473 BreakLegSound();
5474 }
5475 else
5476 {
5477 //Print("synced variables - secondary activation of broken legs");
5478 }
5479 }
5480 }
5481 }
int m_LocalBrokenState
Definition PlayerBase.c:138
void BreakLegSound()

◆ HandleGlassesEffect()

void ManBase::HandleGlassesEffect ( )
inlineprotected

Definition at line 8712 of file PlayerBase.c.

8713 {
8714 if (!IsControlledPlayer())
8715 return;
8716 int i;
8717
8719 {
8720 for (i = 0; i < m_ProcessRemoveGlassesEffects.Count(); i++)
8721 PPERequesterBank.GetRequester(m_ProcessRemoveGlassesEffects[i]).Stop();
8723 }
8724
8726 {
8727 for (i = 0; i < m_ProcessAddGlassesEffects.Count(); i++)
8728 PPERequesterBank.GetRequester(m_ProcessAddGlassesEffects[i]).Start();
8730 }
8731 }
ref array< int > m_ProcessAddGlassesEffects
Definition PlayerBase.c:282
ref array< int > m_ProcessRemoveGlassesEffects
Definition PlayerBase.c:283

◆ HandleRemoteItemManipulation()

bool ManBase::HandleRemoteItemManipulation ( int userDataType,
ParamsReadContext ctx )
inlineprotected

Definition at line 5766 of file PlayerBase.c.

5767 {
5769 {
5770 int type = -1;
5773 bool use_stack_max = false;
5774 int slot_id = -1;
5775
5776 if (!ctx.Read(type))
5777 return false;
5778
5779 if (type == 4)
5780 {
5781 if (!ctx.Read(item1))
5782 return false;
5784 if (dst.ReadFromContext(ctx))
5785 {
5786 //Print(InventoryLocation.DumpToStringNullSafe(dst));
5787 bool dummy;
5788 if (ctx.Read(dummy))
5789 item1.SplitItemToInventoryLocation(dst);
5790 else
5791 item1.SplitIntoStackMaxToInventoryLocation(dst);
5792 return true;
5793 }
5794 return false;
5795 }
5796
5797 if (!ctx.Read(item1))
5798 return false;
5799 if (!ctx.Read(item2))
5800 return false;
5801 if (!ctx.Read(use_stack_max))
5802 return false;
5803 if (!ctx.Read(slot_id))
5804 return false;
5805
5806 if (type == -1 && item1 && item2)//combine
5807 item1.CombineItems(item2, use_stack_max);
5808 else if (type == 1 && item1)
5809 {
5810 if (use_stack_max)
5811 item1.SplitIntoStackMax(item2, slot_id, this);
5812 else
5813 item1.SplitItem(this);
5814 }
5815 else if (type == 2 && item1)
5816 {
5817 int row, col;
5818 if (!ctx.Read(row))
5819 return false;
5820 if (!ctx.Read(col))
5821 return false;
5822 item1.SplitIntoStackMaxCargo(item2, slot_id, row, col);
5823 }
5824 else if (type == 3 && item1)
5825 item1.SplitIntoStackMaxHands(this);
5826 return true;
5827 }
5828 return false;
5829 }
const int INPUT_UDT_ITEM_MANIPULATION
Definition _constants.c:8

References INPUT_UDT_ITEM_MANIPULATION.

◆ HasBloodTypeVisible()

bool ManBase::HasBloodTypeVisible ( )
inlineprivate

Definition at line 6372 of file PlayerBase.c.

6373 {
6374 return m_HasBloodTypeVisible;
6375 }
bool m_HasBloodTypeVisible
Definition PlayerBase.c:8

◆ HasBloodyHands()

bool ManBase::HasBloodyHands ( )
inlineprotected

Definition at line 6336 of file PlayerBase.c.

6337 {
6339 }
int m_HasBloodyHandsVisible
Definition PlayerBase.c:11

◆ HasBloodyHandsEx()

eBloodyHandsTypes ManBase::HasBloodyHandsEx ( )
inlineprotected

Definition at line 6331 of file PlayerBase.c.

6332 {
6334 }

◆ HasCoveredFaceForShave()

bool ManBase::HasCoveredFaceForShave ( )
inlineprotected

Definition at line 6315 of file PlayerBase.c.

6316 {
6317 return IsExclusionFlagPresent(GetFaceCoverageShaveValues());
6318 }
static set< int > GetFaceCoverageShaveValues()
returns a set of face covering values

◆ HasDisease()

bool ManBase::HasDisease ( )
inlineprotected

Definition at line 801 of file PlayerBase.c.

802 {
803 return m_DiseaseCount;//0 for no disease, 1+ for disease, gets truncated to 1
804 }

◆ HasHealings()

bool ManBase::HasHealings ( )
inlineprotected

Definition at line 796 of file PlayerBase.c.

797 {
798 return m_HealingsCount;//0 for no healings, 1+ for healings, gets truncated to 1
799 }

◆ HasStaminaRemaining()

bool ManBase::HasStaminaRemaining ( )
inlineprotected

DEPRECATED.

Definition at line 4091 of file PlayerBase.c.

4092 {
4093 if (!GetStaminaHandler())
4094 return false;
4095
4096 return GetStaminaHandler().GetStamina() > 0;
4097 }

◆ HeadingModel()

override bool ManBase::HeadingModel ( float pDt,
SDayZPlayerHeadingModel pModel )
inlineprotected

during fullbody gestures - disables character turning

Definition at line 7536 of file PlayerBase.c.

7537 {
7540 {
7542 HumanItemBehaviorCfg hibcfg = hia.GetItemInHandsBehaviourCfg();
7543 if (hibcfg && hibcfg.m_StanceRotation[m_MovementState.m_iStanceIdx] == DayZPlayerConstants.ROTATION_DISABLE)
7544 return DayZPlayerImplementHeading.NoHeading(pDt, pModel, m_fLastHeadingDiff);
7545 else
7546 {
7547 m_fLastHeadingDiff = 0;
7548 return DayZPlayerImplementHeading.ClampHeading(pDt, pModel, m_fLastHeadingDiff);
7549 }
7550 }
7551
7552 return super.HeadingModel(pDt, pModel);
7553 }
bool IsControllsLocked()
bool IsFullBody()
static bool NoHeading(float pDt, SDayZPlayerHeadingModel pModel, out float pLastHeadingDiff)
static bool ClampHeading(float pDt, SDayZPlayerHeadingModel pModel, out float pLastHeadingDiff)
EmoteManager GetEmoteManager()
proto native HumanItemAccessor GetItemAccessor()
void HumanItemAccessor()
Definition humanitems.c:135

References DayZPlayerImplementHeading::ClampHeading(), GetActionManager(), GetItemAccessor(), GetRunningAction(), HumanItemAccessor(), IsControllsLocked(), IsFullBody(), m_MovementState, and DayZPlayerImplementHeading::NoHeading().

◆ HideClothing()

override void ManBase::HideClothing ( ItemOptics optic,
bool state )
inlineprotected

state 'true' == hide

Definition at line 7681 of file PlayerBase.c.

7682 {
7683 super.HideClothing(optic, state);
7686
7688 {
7689 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
7690 {
7691 clothingArray.Insert(InventorySlots.BACK);
7692 clothingArray.Insert(InventorySlots.SHOULDER);
7693 clothingArray.Insert(InventorySlots.MELEE);
7694 if (optic && optic.GetCurrentStepFOV() < GameConstants.DZPLAYER_CAMERA_FOV_IRONSIGHTS)
7695 {
7696 clothingArray.Insert(InventorySlots.BODY);
7697 clothingArray.Insert(InventorySlots.VEST);
7698 }
7699
7700 SetInvisibleRecursive(true, this, clothingArray);
7701 }
7702 }
7703 //showing should be instant (called directly, not via CallLater)
7704 else
7705 {
7706 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
7707 {
7709
7710 SetInvisibleRecursive(false, this, clothingArray);
7711 }
7712 }
7713 }
void DayZPlayerCameraOptics(DayZPlayer pPlayer, HumanInputController pInput)
const float DZPLAYER_CAMERA_FOV_IRONSIGHTS
Definition constants.c:836

References DayZPlayerCameraOptics(), GameConstants::DZPLAYER_CAMERA_FOV_IRONSIGHTS, and GetInstanceType().

◆ HideHairSelections()

void ManBase::HideHairSelections ( ItemBase item,
bool state )
inlineprotected

Definition at line 8107 of file PlayerBase.c.

8108 {
8109 if (!item || !item.GetHeadHidingSelection() || !m_CharactersHead)
8110 return;
8111
8112 int slot_id; //item currently attached (or detaching from) here
8113 string slot_name; //item currently attached (or detaching from) here
8114 string str
8115 int idx = 0;
8116 int i;
8117 int count;
8118 item.GetInventory().GetCurrentAttachmentSlotInfo(slot_id, slot_name);
8119
8120 if (item.HidesSelectionBySlot())
8121 {
8122 count = item.GetInventory().GetSlotIdCount();
8123 for (i = 0; i < count; i++)
8124 {
8125 if (item.GetInventory().GetSlotId(i) == slot_id)
8126 {
8127 str = item.GetHeadHidingSelection().Get(i);
8128 idx = m_CharactersHead.m_HeadHairSelectionArray.Find(str);
8129 if (idx != -1)
8131#ifdef DEVELOPER
8132 else
8133 Debug.Log("No valid selection '" + str + "' found on head of " + GetType() + ". Verify the p3d, model config, and the 'HAIR_HIDING_SELECTIONS' macro in basicDefines.");
8134#endif
8135 }
8136 }
8137 }
8138 else
8139 {
8140 count = item.GetHeadHidingSelection().Count();
8141 for (i = 0; i < count; i++)
8142 {
8143 str = item.GetHeadHidingSelection().Get(i);
8144 idx = m_CharactersHead.m_HeadHairSelectionArray.Find(str);
8145 if (idx != -1)
8147#ifdef DEVELOPER
8148 else
8149 Debug.Log("No valid selection '" + str + "' found on head of " + GetType() + ". Verify the p3d, model config, and the 'HAIR_HIDING_SELECTIONS' macro in basicDefines.");
8150#endif
8151 }
8152 }
8154 }
Definition Debug.c:14
static void Log(string message=LOG_DEFAULT, string plugin=LOG_DEFAULT, string author=LOG_DEFAULT, string label=LOG_DEFAULT, string entity=LOG_DEFAULT)
Prints debug message with normal prio.
Definition Debug.c:133
void UpdateHairSelectionVisibility(bool was_debug=false)
void SetHairLevelToHide(int level, bool state, bool was_debug=false)
Dynamic hair hiding.
Head_Default m_CharactersHead
Definition PlayerBase.c:129

References GetType(), and Debug::Log().

◆ ImmuneSystemTick()

void ManBase::ImmuneSystemTick ( float value,
float deltaT )
inlineprotected

Definition at line 7200 of file PlayerBase.c.

7201 {
7202 m_AgentPool.ImmuneSystemTick(value, deltaT);
7203 }

◆ IncreaseAntibioticsCount()

void ManBase::IncreaseAntibioticsCount ( )
inlineprotected

Definition at line 520 of file PlayerBase.c.

521 {
523 }

◆ IncreaseContaminatedAreaCount()

void ManBase::IncreaseContaminatedAreaCount ( )
inlineprotected

Definition at line 594 of file PlayerBase.c.

595 {
599 }
void OnContaminatedAreaEnterServer()
Definition PlayerBase.c:634

◆ IncreaseDiseaseCount()

void ManBase::IncreaseDiseaseCount ( )
inlineprotected

Definition at line 775 of file PlayerBase.c.

776 {
778 }

◆ IncreaseEffectAreaCount()

void ManBase::IncreaseEffectAreaCount ( )
inlineprotected

Definition at line 610 of file PlayerBase.c.

611 {
612 if (m_EffectAreaCount == 0)
613 {
614 m_InsideEffectArea = true;
615 SetSynchDirty();
617 }
619 }
void OnPlayerIsNowInsideEffectAreaBeginServer()
Definition PlayerBase.c:646

◆ IncreaseHealingsCount()

void ManBase::IncreaseHealingsCount ( )
inlineprotected

Definition at line 785 of file PlayerBase.c.

786 {
788 }

◆ Init()

void ManBase::Init ( )
inlineprotected

sets default hit position and cache it here (mainly for impact particles)

Definition at line 290 of file PlayerBase.c.

291 {
292 SetEventMask(EntityEvent.INIT | EntityEvent.POSTFRAME | EntityEvent.FRAME);
294 m_IsCraftingReady = false;
295 m_Recipes = new array<int>;
297 m_BloodType = 0;
298 m_HasBloodTypeVisible = false;
299 m_LifeSpanState = 0;
301 m_CorpseState = 0;
304 m_PlayerLoaded = false;
305 m_PlayerSelected = false;
306 m_ProcessUIWarning = false;
308 m_LiquidTendencyDrain = false;
312 m_UAParam = new Param2<int, int>(0, 0);
314 m_QuickBarBase = new QuickBarBase(this);
315 m_QuickBarBonus = Math.Max(ConfigGetInt("quickBarBonus"), 0);
316 m_CargoLoad = 0;
317 m_VisibilityCoef = 1.0;
318 m_Hud = GetGame().GetMission().GetHud();
319 m_RecipePick = 0;
320 m_ActionQBControl = false;
321 m_QuickBarHold = false;
322 m_HideHairAnimated = true;
323 m_WorkingNVGHeadset = false;
324 m_LoweredNVGHeadset = false;
325 m_AreHandsLocked = false;
328 m_EmptyGloves = new HiddenSelectionsData(ConfigGetString("emptyGloves"));
330
331#ifdef DIAG_DEVELOPER
333 //RegisterNetSyncVariableBool("m_CanBeTargetedDebug");
334#endif
335
337
338 m_StaminaHandler = new StaminaHandler(this);//current stamina calculation
340 m_ShockHandler = new ShockHandler(this); //New shock handler
342 m_PlayerStats = new PlayerStats(this);//player stats
344
345 if (GetGame().IsServer())
346 {
347 m_PlayerStomach = new PlayerStomach(this);
348 m_NotifiersManager = new NotifiersManager(this); // player notifiers
349 m_AgentPool = new PlayerAgentPool(this); // agent pool manager
351 m_Environment = new Environment(this);//environment effects on player
352 m_ModifiersManager = new ModifiersManager(this); // player modifiers
354 m_VirtualHud = new VirtualHud(this);
355
356 m_AdminLog = PluginAdminLog.Cast(GetPlugin(PluginAdminLog));
357 }
358
359 m_SymptomManager = new SymptomManager(this); // state manager
360 m_ModuleRecipesManager = PluginRecipesManager.Cast(GetPlugin(PluginRecipesManager));
361
362 m_TrasferValues = new TransferValues(this);
363 m_EmoteManager = new EmoteManager(this);
364 m_SoftSkillsManager = new SoftSkillsManager(this);//Soft Skills calculation
365
366 m_WeaponManager = new WeaponManager(this);
369
370 if (!GetGame().IsDedicatedServer())
371 {
372 m_MeleeDebug = false;
373 m_UALastMessage = "";
379 m_ActionsInitialize = false;
381
387 }
388
390 //m_PlayerLightManager = NULL;
391
392 m_ConfigEmotesProfile = PluginConfigEmotesProfile.Cast(GetPlugin(PluginConfigEmotesProfile));
393
394 if (GetDayZGame().IsDebug())
395 {
396 PluginConfigDebugProfileFixed m_ConfigDebugProfileFixed = PluginConfigDebugProfileFixed.Cast(GetPlugin(PluginConfigDebugProfileFixed));
398 PluginDeveloper m_Developer = PluginDeveloper.Cast(GetPlugin(PluginDeveloper));
399
400 PlayerBase player = this;
401
403 {
404 string default_preset = m_ConfigDebugProfile.GetDefaultPreset();
405 if (player && default_preset != "")
406 {
408 m_ConfigDebugProfileFixed.GetPresetItems(default_preset, preset_array);
409
410 bool is_preset_fixed = true;
411 if (preset_array.Count() == 0)
412 {
414 is_preset_fixed = false;
415 }
416
417 if (preset_array.Count() > 0)
418 {
419 m_Developer.ClearInventory(player);
420
421 for (int i = 0; i < preset_array.Count(); i++)
422 {
423 float health = -1;
424 int quantity = -1;
425 if (is_preset_fixed)
426 {
427 health = m_ConfigDebugProfileFixed.GetItemHealth(default_preset, i);
428 quantity = m_ConfigDebugProfileFixed.GetItemQuantity(default_preset, i);
429 }
430 else
431 {
433 quantity = m_ConfigDebugProfile.GetItemQuantity(default_preset, i);
434 }
435 m_Developer.SpawnEntityInPlayerInventory(player, preset_array.Get(i), health, quantity);
436 }
437 }
438 }
439 }
440 }
441
443
444 m_ModulePlayerStatus = PluginPlayerStatus.Cast(GetPlugin(PluginPlayerStatus));
446
448 m_BleedingSourcesLow.Insert("RightToeBase");
449 m_BleedingSourcesLow.Insert("RightFoot");
450 m_BleedingSourcesLow.Insert("LeftToeBase");
451 m_BleedingSourcesLow.Insert("LeftFoot");
452 m_BleedingSourcesLow.Insert("RightUpLegRoll");
453 m_BleedingSourcesLow.Insert("RightUpLeg");
454 m_BleedingSourcesLow.Insert("RightLegRoll");
455 m_BleedingSourcesLow.Insert("RightLeg");
456 m_BleedingSourcesLow.Insert("LeftUpLegRoll");
457 m_BleedingSourcesLow.Insert("LeftUpLeg");
458 m_BleedingSourcesLow.Insert("LeftLegRoll");
459 m_BleedingSourcesLow.Insert("LeftLeg");
460
462 m_BleedingSourcesUp.Insert("RightForeArmRoll");
463 m_BleedingSourcesUp.Insert("LeftForeArmRoll");
464 m_BleedingSourcesUp.Insert("RightForeArm");
465 m_BleedingSourcesUp.Insert("RightArmRoll");
466 m_BleedingSourcesUp.Insert("RightArm");
467 m_BleedingSourcesUp.Insert("RightShoulder");
468 m_BleedingSourcesUp.Insert("LeftForeArm");
469 m_BleedingSourcesUp.Insert("LeftArmRoll");
470 m_BleedingSourcesUp.Insert("LeftArm");
471 m_BleedingSourcesUp.Insert("LeftShoulder");
472 m_BleedingSourcesUp.Insert("Spine3");
473 m_BleedingSourcesUp.Insert("Spine2");
474 m_BleedingSourcesUp.Insert("Spine1");
475 m_BleedingSourcesUp.Insert("Spine");
476 m_BleedingSourcesUp.Insert("Pelvis");
477 m_BleedingSourcesUp.Insert("Neck");
478
479 RegisterNetSyncVariableInt("m_LifeSpanState", LifeSpanState.BEARD_NONE, LifeSpanState.COUNT);
480 RegisterNetSyncVariableInt("m_BloodType", 0, 128);
481 RegisterNetSyncVariableInt("m_ShockSimplified", 0, SIMPLIFIED_SHOCK_CAP);
482 RegisterNetSyncVariableInt("m_SoundEvent", 0, EPlayerSoundEventID.ENUM_COUNT - 1);
483 RegisterNetSyncVariableInt("m_SoundEventParam", 0, ((EPlayerSoundEventParam.ENUM_COUNT - 1) * 2) - 1);
484 RegisterNetSyncVariableInt("m_StaminaState", 0, eStaminaState.COUNT - 1);
485 RegisterNetSyncVariableInt("m_BleedingBits");
486 RegisterNetSyncVariableInt("m_Shakes", 0, SHAKE_LEVEL_MAX);
487 RegisterNetSyncVariableInt("m_BreathVapour", 0, BREATH_VAPOUR_LEVEL_MAX);
488 RegisterNetSyncVariableInt("m_HealthLevel", eInjuryHandlerLevels.PRISTINE, eInjuryHandlerLevels.RUINED);
489 RegisterNetSyncVariableInt("m_MixedSoundStates", 0, eMixedSoundStates.COUNT - 1);
490 RegisterNetSyncVariableInt("m_CorpseState", -PlayerConstants.CORPSE_STATE_DECAYED, PlayerConstants.CORPSE_STATE_DECAYED); //do note the negative min, negative sign denotes a special meaning
491 RegisterNetSyncVariableInt("m_RefreshAnimStateIdx", 0, 3);
492 RegisterNetSyncVariableInt("m_BrokenLegState", -eBrokenLegs.BROKEN_LEGS_SPLINT, eBrokenLegs.BROKEN_LEGS_SPLINT);
493 RegisterNetSyncVariableInt("m_SyncedModifiers", 0, ((eModifierSyncIDs.LAST_INDEX - 1) * 2) - 1);
494 RegisterNetSyncVariableInt("m_HasBloodyHandsVisible", 0, eBloodyHandsTypes.LAST_INDEX - 1);
495 RegisterNetSyncVariableInt("m_ActionSoundCategoryHash");
496
497 RegisterNetSyncVariableBool("m_IsUnconscious");
498 RegisterNetSyncVariableBool("m_IsRestrained");
499 RegisterNetSyncVariableBool("m_IsInWater");
500 RegisterNetSyncVariableBool("m_InsideEffectArea");
501
502 RegisterNetSyncVariableBool("m_HasBloodTypeVisible");
503 //RegisterNetSyncVariableBool("m_LiquidTendencyDrain");
504 RegisterNetSyncVariableBool("m_IsRestrainStarted");
505 RegisterNetSyncVariableBool("m_IsRestrainPrelocked");
506 RegisterNetSyncVariableBool("m_HasHeatBuffer");
507
508 RegisterNetSyncVariableFloat("m_CurrentShock"); //Register shock synchronized variable
509
510 m_OriginalSlidePoseAngle = GetSlidePoseAngle();
511
514
515 m_DecayedTexture = ConfigGetString("decayedTexture");
516 m_FliesIndex = -1;
517 GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).Call(this.OnPlayerLoaded);
518 }
const int BREATH_VAPOUR_LEVEL_MAX
DayZGame GetDayZGame()
Definition DayZGame.c:3530
eMixedSoundStates
bits
void EmoteManager(PlayerBase player)
eInjuryHandlerLevels
void InjuryAnimationHandler(PlayerBase player)
void MapNavigationBehaviour(PlayerBase pPlayer, EMapNavigationType pNavigationType=EMapNavigationType.BASIC)
eModifierSyncIDs
void ModifiersManager(PlayerBase player)
void NotifiersManager(PlayerBase player)
void PlayerSoundManagerClient(PlayerBase player)
void PlayerStomach(PlayerBase player)
PluginConfigDebugProfile m_ConfigDebugProfile
void PluginLifespan()
eBloodyHandsTypes
void QuickBarBase(PlayerBase player)
void RandomGeneratorSyncManager(DayZPlayer player)
static void AddPlayerBase(Man player)
Definition ClientData.c:23
Client only - manage set up crafting on client.
ref array< int > m_ProcessRemoveEffectWidgets
Definition PlayerBase.c:279
void OnPlayerLoaded()
bool m_MeleeDebug
melee stats
Definition PlayerBase.c:244
static ref array< string > m_BleedingSourcesLow
Definition PlayerBase.c:144
PluginPlayerStatus m_ModulePlayerStatus
Definition PlayerBase.c:25
ref array< int > m_Recipes
Definition PlayerBase.c:202
bool m_LoweredNVGHeadset
Definition PlayerBase.c:253
ref array< int > m_ProcessAddEffectWidgets
Definition PlayerBase.c:278
ref Environment m_Environment
Definition PlayerBase.c:41
bool m_ProcessUIWarning
Definition PlayerBase.c:16
vector SetDefaultHitPosition(string pSelection)
ref Param2< int, int > m_UAParam
Definition PlayerBase.c:61
int m_FliesIndex
Definition PlayerBase.c:58
bool m_WorkingNVGHeadset
Definition PlayerBase.c:252
ref Param1< float > m_DeathDarkeningParam
Definition PlayerBase.c:65
const int SHAKE_LEVEL_MAX
Definition PlayerBase.c:4
ref Timer m_AnalyticsTimer
Definition PlayerBase.c:241
ref HiddenSelectionsData m_EmptyGloves
Definition PlayerBase.c:76
ref Param2< float, float > m_UAProgressParam
Definition PlayerBase.c:60
string m_DecayedTexture
Definition PlayerBase.c:135
bool m_ActionQBControl
Definition PlayerBase.c:209
bool m_PlayerLoaded
Definition PlayerBase.c:14
int m_LifespanLevelLocal
Definition PlayerBase.c:21
bool m_HideHairAnimated
Definition PlayerBase.c:134
PluginRecipesManager m_ModuleRecipesManager
Definition PlayerBase.c:32
PluginLifespan m_ModuleLifespan
Definition PlayerBase.c:27
ref Param1< float > m_UnconParam
Definition PlayerBase.c:64
bool m_IsCraftingReady
Definition PlayerBase.c:199
bool m_QuickBarHold
Definition PlayerBase.c:86
PluginConfigEmotesProfile m_ConfigEmotesProfile
Definition PlayerBase.c:26
ref Param1< string > m_UAParamMessage
Definition PlayerBase.c:63
ref PlayerSoundManagerClient m_PlayerSoundManagerClient
Definition PlayerBase.c:83
int m_CorpseStateLocal
Definition PlayerBase.c:97
float m_CargoLoad
Definition PlayerBase.c:53
static ref array< string > m_BleedingSourcesUp
Definition PlayerBase.c:145
static const int CORPSE_STATE_DECAYED
string GetDefaultHitPositionComponent()
Definition dayzplayer.c:497
array< string > TStringArray
Definition EnScript.c:666
EntityEvent
Entity events for event-mask, or throwing event from code.
Definition EnEntity.c:44
static proto float Max(float x, float y)
Returns bigger of two given values.
HumanMoveCommandID
do not process rotations !
Definition human.c:1230

References ClientData::AddPlayerBase(), BREATH_VAPOUR_LEVEL_MAX, CALL_CATEGORY_SYSTEM, PlayerConstants::CORPSE_STATE_DECAYED, EmoteManager(), GetDayZGame(), GetDayZPlayerType(), GetDefaultHitPositionComponent(), GetGame(), GetPlugin(), InjuryAnimationHandler(), m_ActionsInitialize, m_AdminLog, m_ArrowManager, m_BloodType, m_ConfigDebugProfile, m_Hud, m_ModulePlayerStatus, m_PlayerStats, m_QuickBarBonus, m_Recipes, m_StaminaHandler, m_VirtualHud, MapNavigationBehaviour(), Math::Max(), ModifiersManager(), NotifiersManager(), PlayerSoundManagerClient(), PlayerStomach(), PluginLifespan(), QuickBarBase(), RandomGeneratorSyncManager(), and VirtualHud().

◆ InitEditor()

void ManBase::InitEditor ( )
inlineprotected

Definition at line 2017 of file PlayerBase.c.

2018 {
2019 if (GetGame().IsDebug())
2020 {
2021 if (!GetGame().IsMultiplayer() && GetGame().GetPlayer() && GetGame().GetPlayer().GetID() == this.GetID())
2022 {
2023 PluginSceneManager scene_editor = PluginSceneManager.Cast(GetPlugin(PluginSceneManager));
2024 scene_editor.InitLoad();
2025 }
2026 }
2027 }
int GetID()
Get the ID registered in SEffectManager.
Definition Effect.c:517
PlayerBase GetPlayer()

References GetGame(), GetID(), GetPlayer(), and GetPlugin().

◆ InitializeActions()

void ManBase::InitializeActions ( )
inlineprotected

Definition at line 1393 of file PlayerBase.c.

1394 {
1395 // Backwards compatibility
1396 if (IsControlledPlayer())
1397 {
1399 SetActions();
1400 }
1401 else
1402 {
1405 }
1407
1410
1413 }
map< typename, ref array< ActionBase_Basic > > TInputActionMap
void SetActions()
void SetActionsRemoteTarget()

References m_InputActionMap, and SetActions().

◆ InsertAgent()

override void ManBase::InsertAgent ( int agent,
float count = 1 )
inlineprotected

Definition at line 7172 of file PlayerBase.c.

7173 {
7174 m_AgentPool.AddAgent(agent, count);
7175 }

◆ IsAlreadyInFallingCommand()

override bool ManBase::IsAlreadyInFallingCommand ( int pCurrentCommandID)
inlineprotected

Don't switch to falling command if unconscious Don't switch to falling command if being damaged

Definition at line 3178 of file PlayerBase.c.

3179 {
3180 if (super.IsAlreadyInFallingCommand(pCurrentCommandID))
3181 return true;
3182
3185 return pCurrentCommandID == DayZPlayerConstants.COMMANDID_UNCONSCIOUS || pCurrentCommandID == DayZPlayerConstants.COMMANDID_DAMAGE;
3186 }

◆ IsAntibioticsActive()

bool ManBase::IsAntibioticsActive ( )
inlineprotected

Definition at line 535 of file PlayerBase.c.

536 {
537 return (m_AntibioticsActive > 0);
538 }

◆ IsBleeding()

bool ManBase::IsBleeding ( )
inlineprotected

Definition at line 752 of file PlayerBase.c.

753 {
754 return (m_BleedingBits != 0);
755 }

◆ IsClimbing()

bool ManBase::IsClimbing ( )
inlineprotected

Definition at line 4929 of file PlayerBase.c.

4930 {
4931 return m_MovementState.m_CommandTypeId == DayZPlayerConstants.COMMANDID_CLIMB;
4932 }

References m_MovementState.

◆ IsCurrentCameraAimedAtGround()

bool ManBase::IsCurrentCameraAimedAtGround ( )
inlineprotected

Definition at line 2381 of file PlayerBase.c.

2382 {
2383 if (!m_CurrentCamera)
2384 return false;
2385
2386 return m_CurrentCamera.GetCurrentPitch() < PlayerConstants.CAMERA_THRESHOLD_PITCH;
2387 }
static const float CAMERA_THRESHOLD_PITCH

References PlayerConstants::CAMERA_THRESHOLD_PITCH.

◆ IsEmotePlaying()

bool ManBase::IsEmotePlaying ( )
inlineprotected

Definition at line 4943 of file PlayerBase.c.

4944 {
4945 return m_EmoteManager && m_EmoteManager.IsEmotePlaying();
4946 }

◆ IsFacingTarget()

bool ManBase::IsFacingTarget ( Object target)
inlineprotected

Definition at line 4185 of file PlayerBase.c.

4186 {
4187 vector pdir = GetDirection();
4188 vector ptv = target.GetPosition() - GetPosition();
4189 pdir.Normalize();
4190 ptv.Normalize();
4191
4192 if (Math.AbsFloat(pdir[0] - ptv[0]) < 0.5 && Math.AbsFloat(pdir[2] - ptv[2]) < 0.5)
4193 return true;
4194 return false;
4195 }
static proto float AbsFloat(float f)
Returns absolute value.

References Math::AbsFloat(), and GetPosition.

◆ IsFalling()

bool ManBase::IsFalling ( )
inlineprotected

Definition at line 4934 of file PlayerBase.c.

4935 {
4936 return m_MovementState.m_CommandTypeId == DayZPlayerConstants.COMMANDID_FALL;
4937 }

References m_MovementState.

◆ IsFighting()

override bool ManBase::IsFighting ( )
inlineprotected

Definition at line 4938 of file PlayerBase.c.

4939 {
4940 return m_IsFighting;
4941 }

◆ IsHoldingBreath()

override bool ManBase::IsHoldingBreath ( )
inlineprotected

Definition at line 1968 of file PlayerBase.c.

1969 {
1970 return m_IsHoldingBreath;
1971 }

◆ IsIgnoredByConstruction()

override bool ManBase::IsIgnoredByConstruction ( )
inlineprotected

Definition at line 4948 of file PlayerBase.c.

4949 {
4950 return IsRuined();
4951 }

◆ IsInFBEmoteState()

override bool ManBase::IsInFBEmoteState ( )
inlineprotected

Definition at line 7752 of file PlayerBase.c.

7753 {
7754 if (!IsEmotePlaying())
7755 return false;
7756 if ((m_EmoteManager.m_Callback && m_EmoteManager.m_Callback.m_IsFullbody) || m_EmoteManager.m_IsSurrendered)
7757 return true;
7758 return false;
7759 }
bool IsEmotePlaying()

References IsEmotePlaying().

◆ IsInProne()

bool ManBase::IsInProne ( )
inlineprotected

Definition at line 4900 of file PlayerBase.c.

4901 {
4902 return m_MovementState.IsInProne();
4903 }

References m_MovementState.

◆ IsInRasedProne()

bool ManBase::IsInRasedProne ( )
inlineprotected

Definition at line 4905 of file PlayerBase.c.

4906 {
4907 return m_MovementState.IsInRaisedProne();
4908 }

References m_MovementState.

◆ IsInventorySoftLocked()

override bool ManBase::IsInventorySoftLocked ( )
inlineprotected

Definition at line 7555 of file PlayerBase.c.

7556 {
7557 return m_InventorySoftLockCount > 0;
7558 }
int m_InventorySoftLockCount
Definition PlayerBase.c:236

◆ IsInventoryVisible()

override bool ManBase::IsInventoryVisible ( )
inlineprotected

Definition at line 1722 of file PlayerBase.c.

1723 {
1724 return true;
1725 }

◆ IsInWater()

bool ManBase::IsInWater ( )
inlineprotected

Definition at line 2352 of file PlayerBase.c.

2353 {
2354 return m_IsInWater;
2355 }
bool m_IsInWater
Definition PlayerBase.c:91

◆ IsItemInInventory()

bool ManBase::IsItemInInventory ( EntityAI entity)
inlineprotected

Definition at line 4595 of file PlayerBase.c.

4596 {
4597 return GetInventory().HasEntityInInventory(entity);
4598 }

◆ IsItemsToDelete()

bool ManBase::IsItemsToDelete ( )
inlineprotected

Definition at line 7465 of file PlayerBase.c.

7466 {
7467 return m_ItemsToDelete.Count() > 0;
7468 }

◆ IsJumpInProgress()

bool ManBase::IsJumpInProgress ( )
inlineprotected

Definition at line 4134 of file PlayerBase.c.

4135 {
4136 return m_JumpClimb.m_bIsJumpInProgress;
4137 }

◆ IsLanded()

override bool ManBase::IsLanded ( int pCurrentCommandID)
inlineprotected

Handle fall damage for unconscious

No fall damage for players currently being damaged, animation is temporary

Definition at line 3149 of file PlayerBase.c.

3150 {
3151 if (super.IsLanded(pCurrentCommandID))
3152 return true;
3153
3155 if (pCurrentCommandID == DayZPlayerConstants.COMMANDID_UNCONSCIOUS)
3156 {
3157 bool wasFalling = m_IsUnconsciousFalling;
3158 m_IsUnconsciousFalling = PhysicsIsFalling(false);
3159 return wasFalling && !m_IsUnconsciousFalling;
3160 }
3161
3163
3164 return false;
3165 }
proto native bool PhysicsIsFalling(bool pValidate)
returns true if physics controller is falling

References PhysicsIsFalling().

◆ IsLeaning()

bool ManBase::IsLeaning ( )
inlineprotected

Definition at line 4910 of file PlayerBase.c.

4911 {
4912 return m_MovementState.IsLeaning();
4913 }

References m_MovementState.

◆ IsLiftWeapon()

override bool ManBase::IsLiftWeapon ( )
inlineprotected

Definition at line 7580 of file PlayerBase.c.

7581 {
7582 return m_LiftWeapon_player;
7583 }

◆ IsMale()

bool ManBase::IsMale ( )
inlineprotected

Definition at line 1310 of file PlayerBase.c.

1311 {
1312 if (ConfigGetBool("woman") != 1)
1313 return true;
1314 return false;
1315 }

◆ IsManagingArrows()

override bool ManBase::IsManagingArrows ( )
inlineprotected

Definition at line 8787 of file PlayerBase.c.

8788 {
8789 return true;
8790 }

◆ IsMapCallbackCancelInput()

bool ManBase::IsMapCallbackCancelInput ( )
inlineprotected

Definition at line 3055 of file PlayerBase.c.

3056 {
3057 if (IsRaised() || (GetUApi().GetInputByID(UAUIMenu).LocalPress() || GetUApi().GetInputByID(UAGear).LocalPress()))
3058 return true;
3059
3060 return false;
3061 }

References GetUApi(), and IsRaised().

◆ IsMapCallbackEndInput()

bool ManBase::IsMapCallbackEndInput ( )
inlineprotected

Definition at line 3063 of file PlayerBase.c.

3064 {
3065 if (GetUApi().GetInputByID(UADefaultAction).LocalPress())
3066 return true;
3067
3068 return false;
3069 }

References GetUApi().

◆ IsMapOpen()

bool ManBase::IsMapOpen ( )
inlineprotected

Definition at line 3040 of file PlayerBase.c.

3041 {
3042 return m_MapOpen;
3043 }
bool m_MapOpen
Definition PlayerBase.c:227

◆ IsNVGLowered()

bool ManBase::IsNVGLowered ( )
inlineprotected

Definition at line 8227 of file PlayerBase.c.

8228 {
8229 return m_LoweredNVGHeadset;
8230 }

◆ IsNVGWorking()

bool ManBase::IsNVGWorking ( )
inlineprotected

Definition at line 8222 of file PlayerBase.c.

8223 {
8224 return m_ActiveNVTypes && m_ActiveNVTypes.Count() > 0;
8225 }

◆ IsOverloaded()

bool ManBase::IsOverloaded ( )
inlineprotected

Definition at line 4573 of file PlayerBase.c.

4574 {
4575 return GetWeightEx() >= OVERLOAD_LIMIT;
4576 }
const int OVERLOAD_LIMIT
Definition PlayerBase.c:52

◆ IsPersistentFlag()

bool ManBase::IsPersistentFlag ( PersistentFlag bit)
inlineprivate

Definition at line 6428 of file PlayerBase.c.

6429 {
6430 return (m_PersistentFlags & bit);
6431 }
int m_PersistentFlags
Definition PlayerBase.c:99

◆ IsPlacingLocal()

bool ManBase::IsPlacingLocal ( )
inlineprotected

Definition at line 2195 of file PlayerBase.c.

2196 {
2197 if (m_HologramLocal)
2198 return true;
2199
2200 return false;
2201 }

◆ IsPlacingServer()

bool ManBase::IsPlacingServer ( )
inlineprotected

Definition at line 2187 of file PlayerBase.c.

2188 {
2189 if (m_HologramServer)
2190 return true;
2191
2192 return false;
2193 }

◆ IsPlayer()

override bool ManBase::IsPlayer ( )
inlineprotected

Definition at line 747 of file PlayerBase.c.

748 {
749 return true;
750 }

◆ IsPlayerDisconnected()

bool ManBase::IsPlayerDisconnected ( )
inlineprotected

Definition at line 2089 of file PlayerBase.c.

2090 {
2092 }
bool m_PlayerDisconnectProcessed
Definition PlayerBase.c:15

◆ IsPlayerLoaded()

bool ManBase::IsPlayerLoaded ( )
inlineprotected

Definition at line 7776 of file PlayerBase.c.

7777 {
7778 return m_PlayerLoaded;
7779 }

◆ IsQBControl()

bool ManBase::IsQBControl ( )
inlineprotected

Definition at line 4372 of file PlayerBase.c.

4373 {
4374 return m_ActionQBControl;
4375 }

◆ IsQuickFishing()

bool ManBase::IsQuickFishing ( )
inlineprotected

Definition at line 1650 of file PlayerBase.c.

1651 {
1652 return m_AllowQuickFishing;
1653 }
bool m_AllowQuickFishing
Definition PlayerBase.c:119

◆ IsQuickRestrain()

bool ManBase::IsQuickRestrain ( )
inlineprotected

Definition at line 1645 of file PlayerBase.c.

1646 {
1647 return m_AllowQuickRestrain;
1648 }
bool m_AllowQuickRestrain
Definition PlayerBase.c:118

◆ IsRefresherSignalingViable()

override bool ManBase::IsRefresherSignalingViable ( )
inlineprotected

Definition at line 1973 of file PlayerBase.c.

1974 {
1975 return false;
1976 }

◆ IsRestrained()

override bool ManBase::IsRestrained ( )
inlineprotected

Definition at line 1717 of file PlayerBase.c.

1718 {
1719 return m_IsRestrained;
1720 }
bool m_IsRestrained
Definition PlayerBase.c:104

◆ IsRestrainPrelocked()

bool ManBase::IsRestrainPrelocked ( )
inlineprotected

Definition at line 1706 of file PlayerBase.c.

1707 {
1708 return m_IsRestrainPrelocked;
1709 }
bool m_IsRestrainPrelocked
Definition PlayerBase.c:106

◆ IsRestrainStarted()

bool ManBase::IsRestrainStarted ( )
inlineprotected

Definition at line 1695 of file PlayerBase.c.

1696 {
1697 return m_IsRestrainStarted;
1698 }
bool m_IsRestrainStarted
Definition PlayerBase.c:105

◆ IsRolling()

bool ManBase::IsRolling ( )
inlineprotected

Definition at line 4915 of file PlayerBase.c.

4916 {
4917 return GetCommand_Move() && GetCommand_Move().IsInRoll());
4918 }

References GetCommand_Move().

◆ IsSprinting()

bool ManBase::IsSprinting ( )
inlineprotected

Definition at line 4880 of file PlayerBase.c.

4881 {
4882 return m_MovementState.m_iMovement == DayZPlayerConstants.MOVEMENT_SPRINT);
4883 }

References m_MovementState.

◆ IsStance()

bool ManBase::IsStance ( int stance,
int stanceMask )
inlineprotected

Definition at line 3769 of file PlayerBase.c.

3770 {
3771 return ((1 << stance) & stanceMask) != 0;
3772 }

◆ IsSurrendered()

bool ManBase::IsSurrendered ( )
inlineprotected

Definition at line 7768 of file PlayerBase.c.

7769 {
7770 if (m_EmoteManager)
7771 return m_EmoteManager.m_IsSurrendered;
7772
7773 return false;
7774 }

◆ IsSwapBetweenHandsAndGroundLargeItem()

bool ManBase::IsSwapBetweenHandsAndGroundLargeItem ( notnull EntityAI item1,
notnull EntityAI item2,
out EntityAI item_hands,
out EntityAI item_ground )
inlineprotected

Definition at line 8041 of file PlayerBase.c.

8042 {
8044 if (item1.GetInventory().GetCurrentInventoryLocation(il) && il.GetType() == InventoryLocationType.HANDS)
8045 item_hands = item1;
8046 if (item2.GetInventory().GetCurrentInventoryLocation(il) && il.GetType() == InventoryLocationType.HANDS)
8047 item_hands = item2;
8048 if (item1.GetInventory().GetCurrentInventoryLocation(il) && il.GetType() == InventoryLocationType.GROUND)
8050 if (item2.GetInventory().GetCurrentInventoryLocation(il) && il.GetType() == InventoryLocationType.GROUND)
8052
8053 return item_hands && item_ground && item_ground.IsHeavyBehaviour();
8054 }
InventoryLocationType
types of Inventory Location

◆ IsSyncedModifierActive()

bool ManBase::IsSyncedModifierActive ( eModifierSyncIDs modifier)
inlineprotected

Checks whether modifier (which has syncing enabled) is currently active, works on both Client and Server.

Definition at line 5455 of file PlayerBase.c.

5456 {
5458 }
int m_SyncedModifiersPrev
Definition PlayerBase.c:257
int m_SyncedModifiers
Definition PlayerBase.c:256

◆ IsTargetInActiveRefresherRange()

bool ManBase::IsTargetInActiveRefresherRange ( EntityAI target)
inlineprotected

Definition at line 4139 of file PlayerBase.c.

4140 {
4142 temp = GetGame().GetMission().GetActiveRefresherLocations();
4143 int count = temp.Count();
4144 if (count > 0)
4145 {
4146 vector pos = target.GetPosition();
4147 for (int i = 0; i < count; i++)
4148 {
4150 return true;
4151 }
4152
4153 return false;
4154 }
4155 else
4156 return false;
4157 }
static proto native float Distance(vector v1, vector v2)
Returns the distance between tips of two 3D vectors.
const float REFRESHER_RADIUS
Definition constants.c:881

References vector::Distance(), GetGame(), and GameConstants::REFRESHER_RADIUS.

◆ IsUnconscious()

override bool ManBase::IsUnconscious ( )
inlineprotected

Definition at line 3312 of file PlayerBase.c.

3313 {
3314 return m_MovementState.m_CommandTypeId == DayZPlayerConstants.COMMANDID_UNCONSCIOUS || m_IsUnconscious;
3315 }

References m_MovementState.

◆ IsWearingSplint()

bool ManBase::IsWearingSplint ( )
inlineprotected

Definition at line 3550 of file PlayerBase.c.

3551 {
3553 Class.CastTo(attachment, GetItemOnSlot("Splint_Right"));
3554 if (attachment && attachment.GetType() == "Splint_Applied")
3555 return true;
3556 return false;
3557 }

References Class::CastTo().

◆ JunctureDeleteItem()

override void ManBase::JunctureDeleteItem ( EntityAI item)
inlineprotected

Definition at line 7491 of file PlayerBase.c.

7492 {
7494 }
static void SendDeleteItem(DayZPlayer pPlayer, EntityAI item)

References DayZPlayerSyncJunctures::SendDeleteItem().

◆ KillUndergroundHandler()

void ManBase::KillUndergroundHandler ( )
inlineprotected

Definition at line 1341 of file PlayerBase.c.

1342 {
1344 }

◆ LockHandsUntilItemHeld()

void ManBase::LockHandsUntilItemHeld ( )
inlineprotected

Definition at line 2156 of file PlayerBase.c.

2157 {
2158 m_AreHandsLocked = true;
2159 }

◆ MapNavigationItemInPossession()

void ManBase::MapNavigationItemInPossession ( EntityAI item)
inlineprotected

Definition at line 3076 of file PlayerBase.c.

3077 {
3079 GetMapNavigationBehaviour().OnItemInPlayerPossession(item);
3080 }
MapNavigationBehaviour GetMapNavigationBehaviour()

◆ MapNavigationItemNotInPossession()

void ManBase::MapNavigationItemNotInPossession ( EntityAI item)
inlineprotected

Definition at line 3082 of file PlayerBase.c.

3083 {
3085 GetMapNavigationBehaviour().OnItemNotInPlayerPossession(item);
3086 }

◆ Message()

void ManBase::Message ( string text,
string style )
inlineprotected

colorStatusChannel colorAction colorFriendly colorImportant

Definition at line 6070 of file PlayerBase.c.

6071 {
6072 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER)
6073 GetGame().ChatMP(this, text, style);
6074 else
6075 GetGame().Chat(text, style);
6076 }

References GetGame(), and GetInstanceType().

◆ MessageAction()

void ManBase::MessageAction ( string text)
inlineprotected

Definition at line 6085 of file PlayerBase.c.

6086 {
6087 Message(text, "colorAction");
6088 }
void Message(string text, string style)

◆ MessageFriendly()

void ManBase::MessageFriendly ( string text)
inlineprotected

Definition at line 6091 of file PlayerBase.c.

6092 {
6093 Message(text, "colorFriendly");
6094 }

◆ MessageImportant()

void ManBase::MessageImportant ( string text)
inlineprotected

Definition at line 6097 of file PlayerBase.c.

6098 {
6099 Message(text, "colorImportant");
6100 }

◆ MessageStatus()

void ManBase::MessageStatus ( string text)
inlineprotected

Definition at line 6079 of file PlayerBase.c.

6080 {
6081 Message(text, "colorStatusChannel");
6082 }

◆ MovingShock()

void ManBase::MovingShock ( float legHealth,
float highShock,
float midShock,
float lowShock )
inlineprotected

Definition at line 3499 of file PlayerBase.c.

3500 {
3502 {
3503 //Inflict "high shock"
3504 m_ShockHandler.SetShock(highShock);
3505 }
3507 {
3508 //Inflict "low shock"
3509 m_ShockHandler.SetShock(lowShock);
3510 }
3511 else
3512 {
3513 //If neither high nore low, inflict "mid shock"
3514 m_ShockHandler.SetShock(midShock);
3515 }
3516 }
static const float BROKEN_LEGS_HIGH_HEALTH_THRESHOLD
static const float BROKEN_LEGS_LOW_HEALTH_THRESHOLD

References PlayerConstants::BROKEN_LEGS_HIGH_HEALTH_THRESHOLD, and PlayerConstants::BROKEN_LEGS_LOW_HEALTH_THRESHOLD.

◆ NeedInventoryJunctureFromServer()

override bool ManBase::NeedInventoryJunctureFromServer ( notnull EntityAI item,
EntityAI currParent,
EntityAI newParent )
inlineprotected

Definition at line 4600 of file PlayerBase.c.

4601 {
4602 if (GetGame().IsMultiplayer())
4603 {
4605 switch (t)
4606 {
4607 case DayZPlayerInstanceType.INSTANCETYPE_AI_SINGLEPLAYER:
4608 return false;
4609 case DayZPlayerInstanceType.INSTANCETYPE_CLIENT:
4610 case DayZPlayerInstanceType.INSTANCETYPE_SERVER:
4611 case DayZPlayerInstanceType.INSTANCETYPE_AI_SERVER:
4612 case DayZPlayerInstanceType.INSTANCETYPE_AI_REMOTE:
4613 case DayZPlayerInstanceType.INSTANCETYPE_REMOTE:
4614 return true; // Might help mitigate "megabugged" (desync)
4615
4616 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[syncinv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " NeedInventoryJunctureFromServer item=" + Object.GetDebugName(item) + " currPar=" + currParent + " newPar=" + newParent);
4617
4618 bool i_owned = GetHumanInventory().HasEntityInInventory(item);
4619
4620 bool cp_owned = false;
4621 if (currParent)
4622 cp_owned = GetHumanInventory().HasEntityInInventory(currParent);
4623
4624 bool np_owned = false;
4625 if (newParent)
4626 np_owned = GetHumanInventory().HasEntityInInventory(newParent);
4627
4628 bool all_owned = i_owned && cp_owned && (np_owned || (newParent == null));
4629 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[syncinv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " NeedInventoryJunctureFromServer=" + !all_owned + " i_pwn=" + i_owned + " cp_pwn=" + cp_owned + " np_pwn=" + np_owned);
4630
4631 return !all_owned;
4632 default:
4633 Error("[syncinv] unsupported instance type t=" + t);
4634 break;
4635 }
4636 }
4637 return false;
4638 }
void syncDebugPrint(string s)
Definition Debug.c:1
static bool IsSyncLogEnable()
Definition Debug.c:759
override string GetDebugName()

References Error(), GetDebugName(), GetGame(), GetInstanceType(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ OnBleedingBegin()

void ManBase::OnBleedingBegin ( )
protected

◆ OnBleedingEnd()

void ManBase::OnBleedingEnd ( )
protected

◆ OnBleedingSourceAdded()

void ManBase::OnBleedingSourceAdded ( )
inlineprotected

Definition at line 6957 of file PlayerBase.c.

6958 {
6960 if (IsControlledPlayer())
6961 {
6962 if (!GetGame().IsDedicatedServer())
6963 {
6965 if (dis_elm)
6966 dis_elm.SetValue(GetBleedingSourceCount());
6967
6968
6969 //Print("----------bleeding_SoundSet----------");
6970 SEffectManager.PlaySoundOnObject("bleeding_SoundSet", this);
6971 }
6972 }
6973 }
DisplayElementBase GetElement(eDisplayElements element_id)
VirtualHud GetVirtualHud()
int GetBleedingSourceCount()

References GetElement(), GetGame(), GetVirtualHud(), and SEffectManager::PlaySoundOnObject().

◆ OnBleedingSourceRemoved()

void ManBase::OnBleedingSourceRemoved ( )
inlineprotected

Definition at line 6975 of file PlayerBase.c.

6976 {
6978 if (GetGame().IsServer())
6979 {
6981 if (GetBleedingSourceCount() > 0)
6982 arrowManager.DropFirstArrow();
6983 else
6984 arrowManager.DropAllArrows();
6985 }
6986
6987 if (IsControlledPlayer())
6988 {
6989 if (!GetGame().IsDedicatedServer())
6990 {
6991 //Print("GetBleedingSourceCount() "+GetBleedingSourceCount());
6993 if (dis_elm)
6994 dis_elm.SetValue(GetBleedingSourceCount());
6995 }
6996 }
6997 }

References GetArrowManager(), GetElement(), GetGame(), and GetVirtualHud().

◆ OnBleedingSourceRemovedEx()

void ManBase::OnBleedingSourceRemovedEx ( ItemBase item)
inlineprotected

Definition at line 7000 of file PlayerBase.c.

7001 {
7003 }
void OnBleedingSourceRemoved()

◆ OnCameraChanged()

void ManBase::OnCameraChanged ( DayZPlayerCameraBase new_camera)
inlineprotected

Definition at line 2370 of file PlayerBase.c.

2371 {
2372 m_CameraSwayModifier = new_camera.GetWeaponSwayModifier();
2374 }
float m_CameraSwayModifier
Definition PlayerBase.c:110

◆ OnCommandClimbFinish()

override void ManBase::OnCommandClimbFinish ( )
inlineprotected

Definition at line 3664 of file PlayerBase.c.

3665 {
3666 if (GetInventory())
3667 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3668
3669 GetWeaponManager().RefreshAnimationState();
3670 }

◆ OnCommandClimbStart()

override void ManBase::OnCommandClimbStart ( )
inlineprotected

Definition at line 3650 of file PlayerBase.c.

3651 {
3653
3654 if (GetInventory())
3655 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3656
3658
3660 GetWeaponManager().DelayedRefreshAnimationState(10);
3662 }
void AbortWeaponEvent()
void CloseInventoryMenu()
void RequestHandAnimationStateRefresh()

References AbortWeaponEvent().

◆ OnCommandDeathStart()

override void ManBase::OnCommandDeathStart ( )
inlineprotected

Definition at line 3730 of file PlayerBase.c.

3731 {
3733
3735 GetWeaponManager().DelayedRefreshAnimationState(10);
3737 }

References AbortWeaponEvent().

◆ OnCommandFallFinish()

override void ManBase::OnCommandFallFinish ( )
inlineprotected

Definition at line 3642 of file PlayerBase.c.

3643 {
3644 if (GetInventory())
3645 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3646
3647 GetWeaponManager().RefreshAnimationState();
3648 }

◆ OnCommandFallStart()

override void ManBase::OnCommandFallStart ( )
inlineprotected

Definition at line 3628 of file PlayerBase.c.

3629 {
3631
3632 if (GetInventory())
3633 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3634
3636
3638 GetWeaponManager().DelayedRefreshAnimationState(10);
3640 }

References AbortWeaponEvent().

◆ OnCommandHandlerTick()

void ManBase::OnCommandHandlerTick ( float delta_time,
int pCurrentCommandID )
inlineprotected

Definition at line 2590 of file PlayerBase.c.

2591 {
2592 if (!IsAlive())
2593 {
2594 if (!m_DeathSyncSent && m_KillerData)
2595 {
2596 SyncEvents.SendEntityKilled(this, m_KillerData.m_Killer, m_KillerData.m_MurderWeapon, m_KillerData.m_KillerHiTheBrain);
2597 //Print("Sending Death Sync, yay! Headshot by killer = " + m_KillerData.m_KillerHiTheBrain);
2598 //Print("And was he killed by headshot in general? = " + m_KilledByHeadshot);
2599 m_DeathSyncSent = true;
2600 }
2601 return;
2602 }
2604 m_DebugMonitorValues.OnScheduledTick(delta_time);
2605 if (GetSymptomManager())
2606 GetSymptomManager().OnTick(delta_time, pCurrentCommandID, m_MovementState);//needs to stay in command handler tick as it's playing animations
2607 //if (GetBleedingManagerServer()) GetBleedingManagerServer().OnTick(delta_time);
2608
2610 if (instType == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
2611 {
2612 if (m_PlayerSoundEventHandler)
2613 m_PlayerSoundEventHandler.OnTick(delta_time);
2614
2617
2620
2622
2625
2626#ifdef DIAG_DEVELOPER
2627 if (m_WeaponDebug)
2628 m_WeaponDebug.OnCommandHandlerUpdate();
2629#endif
2630
2631 m_ProcessAddEffectWidgets.Clear(); //clears array for remotes as well
2632 m_ProcessRemoveEffectWidgets.Clear(); //clears array for remotes as well
2633 }
2634
2636
2639 }
static bool GetAllowStaminaAffectInertia()
override void RemoveActiveEffects(array< int > effects)
override void AddActiveEffects(array< int > effects)
void HandleGlassesEffect()
bool m_ContaminatedAreaEffectEnabled
Definition PlayerBase.c:151
void ContaminatedParticleAdjustment()
void UpdateMovementInertia()
Update movement inertia based on stamina available.
void OnTick(float deltatime, int pCurrentCommandID, HumanMovementState movement_state)
static void SendEntityKilled(EntityAI victim, EntityAI killer, EntityAI source, bool is_headshot)
Definition SyncEvents.c:54

References GameplayEffectWidgets_base::AddActiveEffects(), CfgGameplayHandler::GetAllowStaminaAffectInertia(), GetInstanceType(), m_MovementState, GameplayEffectWidgets_base::RemoveActiveEffects(), and SyncEvents::SendEntityKilled().

◆ OnCommandLadderFinish()

override void ManBase::OnCommandLadderFinish ( )
inlineprotected

Definition at line 3618 of file PlayerBase.c.

3619 {
3620 TryHideItemInHands(false, true);
3621
3622 if (GetInventory())
3623 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3624
3625 GetGame().GetMission().RemoveActiveInputExcludes({"ladderclimbing"});
3626 }
void TryHideItemInHands(bool hide, bool force=false)
tries to hide item in player's hands, some exceptions for various movement states

References GetGame().

◆ OnCommandLadderStart()

override void ManBase::OnCommandLadderStart ( )
inlineprotected

Definition at line 3605 of file PlayerBase.c.

3606 {
3608 TryHideItemInHands(true);
3609
3610 if (GetInventory())
3611 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3612
3614
3615 GetGame().GetMission().AddActiveInputExcludes({"ladderclimbing"});
3616 }

References GetGame().

◆ OnCommandMelee2Finish()

override void ManBase::OnCommandMelee2Finish ( )
inlineprotected

Definition at line 3722 of file PlayerBase.c.

3723 {
3725
3726 GetWeaponManager().RefreshAnimationState();
3727
3728 }
void RunFightBlendTimer()

◆ OnCommandMelee2Start()

override void ManBase::OnCommandMelee2Start ( )
inlineprotected

Definition at line 3712 of file PlayerBase.c.

3713 {
3715 m_IsFighting = true;
3716
3718 GetWeaponManager().DelayedRefreshAnimationState(10);
3720 }

References AbortWeaponEvent().

◆ OnCommandMoveStart()

override void ManBase::OnCommandMoveStart ( )
inlineprotected

Definition at line 3820 of file PlayerBase.c.

3821 {
3822 if (GetGame().IsServer())
3823 {
3824 //In case player changes stance through a different command, we refresh the anim overrides
3825 int prone = DayZPlayerConstants.STANCEMASK_PRONE | DayZPlayerConstants.STANCEMASK_RAISEDPRONE;
3826 if (!IsPlayerInStance(prone))
3827 {
3828 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.PRONE_ANIM_OVERRIDE;
3830 }
3831 }
3832 }
void ForceUpdateInjuredState()
update injured state immediately

References GetGame(), and IsPlayerInStance().

◆ OnCommandSwimFinish()

override void ManBase::OnCommandSwimFinish ( )
inlineprotected

Definition at line 3591 of file PlayerBase.c.

3592 {
3593 TryHideItemInHands(false, true);
3594
3595 if (GetInventory())
3596 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3597
3598 GetDayZGame().GetBacklit().OnSwimmingStop();
3599
3600 GetWeaponManager().RefreshAnimationState();
3601
3602 GetGame().GetMission().RemoveActiveInputExcludes({"swimming"});
3603 }

References GetDayZGame(), and GetGame().

◆ OnCommandSwimStart()

override void ManBase::OnCommandSwimStart ( )
inlineprotected

Definition at line 3562 of file PlayerBase.c.

3563 {
3565 if (itemInHands)
3566 {
3567 if (itemInHands.IsHeavyBehaviour())
3568 {
3569 TryHideItemInHands(false);
3570 DropHeavyItem();
3571 }
3572 else
3573 TryHideItemInHands(true);
3574 itemInHands.OnItemInHandsPlayerSwimStart(this);
3575 }
3577
3578 if (GetInventory())
3579 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3580
3582 GetDayZGame().GetBacklit().OnSwimmingStart();
3583
3585 GetWeaponManager().DelayedRefreshAnimationState(10);
3587
3588 GetGame().GetMission().AddActiveInputExcludes({"swimming"});
3589 }

References AbortWeaponEvent(), GetDayZGame(), and GetGame().

◆ OnCommandVehicleFinish()

override void ManBase::OnCommandVehicleFinish ( )
inlineprotected

Definition at line 3699 of file PlayerBase.c.

3700 {
3701 if (GetInventory())
3702 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3703
3704 TryHideItemInHands(false, true);
3705
3708
3709 GetGame().GetMission().RemoveActiveInputExcludes({"vehicledriving"});
3710 }
void OnVehicleSeatDriverLeft()
bool m_IsVehicleSeatDriver
Definition PlayerBase.c:126

References GetGame().

◆ OnCommandVehicleStart()

override void ManBase::OnCommandVehicleStart ( )
inlineprotected

Definition at line 3672 of file PlayerBase.c.

3673 {
3675
3676 if (GetInventory())
3677 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3678
3680
3682 EntityAI itemOnHead = FindAttachmentBySlotName("Headgear");
3683
3684 if (itemInHand && itemInHand.GetCompEM())
3685 itemInHand.GetCompEM().SwitchOff();
3686
3687 TryHideItemInHands(true);
3688
3689 if (itemOnHead && itemOnHead.GetCompEM())
3690 itemOnHead.GetCompEM().SwitchOff();
3691
3693 if (hcv && hcv.GetVehicleSeat() == DayZPlayerConstants.VEHICLESEAT_DRIVER)
3695
3696 GetGame().GetMission().AddActiveInputExcludes({"vehicledriving"});
3697 }
void OnVehicleSeatDriverEnter()

References GetCommand_Vehicle(), and GetGame().

◆ OnConnect()

void ManBase::OnConnect ( )
inlineprivate

Definition at line 6728 of file PlayerBase.c.

6729 {
6730 Debug.Log("Player connected:" + this.ToString(), "Connect");
6731
6732 // analytics
6733 GetGame().GetAnalyticsServer().OnPlayerConnect(this);
6734
6736 if (m_AnalyticsTimer)
6737 m_AnalyticsTimer.Run(60, this, "UpdatePlayerMeasures", null, true);
6738
6739 //construction action data
6741 }
proto string ToString()
vector m_PlayerOldPos
void ResetConstructionActionData()

References GetGame(), GetPosition, Debug::Log(), and ToString().

◆ OnContaminatedAreaEnterServer()

void ManBase::OnContaminatedAreaEnterServer ( )
inlineprotected

Definition at line 634 of file PlayerBase.c.

635 {
636 GetModifiersManager().ActivateModifier(eModifiers.MDF_AREAEXPOSURE);
637 //Print("Contaminated ENTERED <------------------------------------------------------------- FINAL");
638 }

◆ OnContaminatedAreaExitServer()

void ManBase::OnContaminatedAreaExitServer ( )
inlineprotected

Definition at line 640 of file PlayerBase.c.

641 {
642 GetModifiersManager().DeactivateModifier(eModifiers.MDF_AREAEXPOSURE);
643 //Print("Contaminated LEFT <------------------------------------------------------------- FINAL");
644 }

◆ OnDisconnect()

void ManBase::OnDisconnect ( )
inlineprivate

Definition at line 6752 of file PlayerBase.c.

6753 {
6754 Debug.Log("Player disconnected:" + this.ToString(), "Connect");
6755
6756 // analytics
6757 // force update of the stats
6758 // if player disconnect too soon, UpdatePlayersStats() is not called
6759 GetGame().GetAnalyticsServer().OnPlayerDisconnect(this);
6760
6762 data.m_CharacterId = g_Game.GetDatabaseID();
6763 data.m_Reason = "Disconnected";
6765
6766 if (m_AnalyticsTimer)
6767 m_AnalyticsTimer.Stop();
6769
6771 }
static void PlayerDisconnected(StatsEventDisconnectedData data)
void SetPlayerDisconnected(bool state)
void UpdatePlayerMeasures()

References g_Game, GetGame(), Debug::Log(), Analytics::PlayerDisconnected(), and ToString().

◆ OnDrowningEnd()

void ManBase::OnDrowningEnd ( )
inlineprotected

Definition at line 2229 of file PlayerBase.c.

2230 {
2231#ifndef SERVER
2232 if (IsControlledPlayer())
2233 {
2235 req.Stop();
2236 }
2237 GetGame().GetCallQueue(CALL_CATEGORY_SYSTEM).Remove(SpawnDrowningBubbles);
2238#endif
2239 }
void SpawnDrowningBubbles()

References CALL_CATEGORY_SYSTEM, and GetGame().

◆ OnDrowningStart()

void ManBase::OnDrowningStart ( )
inlineprotected

Definition at line 2216 of file PlayerBase.c.

2217 {
2218#ifndef SERVER
2219 if (IsControlledPlayer())
2220 {
2222 req.Start();
2223 }
2224 //Particles
2226#endif
2227 }

◆ OnGameplayDataHandlerSync()

override void ManBase::OnGameplayDataHandlerSync ( )
inlineprotected

Definition at line 5280 of file PlayerBase.c.

5281 {
5282 super.OnGameplayDataHandlerSync();
5283
5285 //Print("setting respawn to " + CfgGameplayHandler.GetDisableRespawnDialog());
5286 GetGame().GetMission().SetRespawnModeClient(CfgGameplayHandler.GetDisableRespawnDialog());//TODO: maybe move to mission/game ?
5288 }
static bool GetHitIndicationPPEEnabled()
static bool GetDisableRespawnDialog()
void UpdateLighting()
void SetHitPPEEnabled(bool enabled)

References CfgGameplayHandler::GetDisableRespawnDialog(), GetGame(), and CfgGameplayHandler::GetHitIndicationPPEEnabled().

◆ OnHoldBreathEnd()

void ManBase::OnHoldBreathEnd ( )
inlineprotected

Definition at line 1962 of file PlayerBase.c.

1963 {
1964 //SendSoundEvent(SoundSetMap.GetSoundSetID("releaseBreath_male_Char_SoundSet"));
1965 RequestSoundEventEx(EPlayerSoundEventID.RELEASE_BREATH, true, EPlayerSoundEventParam.SKIP_CONTROLLED_PLAYER);
1966 }
override void RequestSoundEventEx(EPlayerSoundEventID id, bool from_server_and_client=false, int param=0)

◆ OnHoldBreathExhausted()

void ManBase::OnHoldBreathExhausted ( )
inlineprotected

Definition at line 1957 of file PlayerBase.c.

1958 {
1959 RequestSoundEventEx(EPlayerSoundEventID.EXHAUSTED_BREATH, true, EPlayerSoundEventParam.SKIP_CONTROLLED_PLAYER);
1960 }

◆ OnHoldBreathStart()

void ManBase::OnHoldBreathStart ( )
inlineprotected

Definition at line 1951 of file PlayerBase.c.

1952 {
1953 //SendSoundEvent(SoundSetMap.GetSoundSetID("holdBreath_male_Char_SoundSet"));
1954 RequestSoundEventEx(EPlayerSoundEventID.HOLD_BREATH, true, EPlayerSoundEventParam.SKIP_CONTROLLED_PLAYER);
1955 }

◆ OnInputUserDataProcess()

override bool ManBase::OnInputUserDataProcess ( int userDataType,
ParamsReadContext ctx )
inlineprotected

Definition at line 5712 of file PlayerBase.c.

5713 {
5714 if (super.OnInputUserDataProcess(userDataType, ctx))
5715 return true;
5716
5717 if (m_QuickBarBase.OnInputUserDataProcess(userDataType, ctx))
5718 return true;
5719
5720 if (m_WeaponManager.OnInputUserDataProcess(userDataType, ctx))
5721 return true;
5722
5724 return true;
5725
5726 if (userDataType == INPUT_UDT_INVENTORY && GetHumanInventory().OnInputUserDataProcess(ctx))
5727 return true;
5728
5730 return true;
5731
5733 return true;
5734
5735 string uid;
5736 bool mute;
5738 {
5739 if (ctx.Read(uid) && ctx.Read(mute))
5740 {
5741 GetGame().MutePlayer(uid, GetIdentity().GetPlainId(), mute);
5742 // commented because plainID should not be present in logs
5743 //Print("Player: " + GetIdentity().GetId() + " set mute for " + uid + " to " + mute);
5744 }
5745 }
5746
5748 return m_EmoteManager.OnInputUserDataProcess(userDataType, ctx);
5749
5752
5753 if (m_ActionManager)
5754 return m_ActionManager.OnInputUserDataProcess(userDataType, ctx);
5755 return false;
5756 }
const int INPUT_UDT_INVENTORY
Definition _constants.c:9
const int INPUT_UDT_WEAPON_LIFT_EVENT
Definition _constants.c:16
const int INPUT_UDT_USER_MUTE_XBOX
Definition _constants.c:13
const int INPUT_UDT_GESTURE
Definition _constants.c:18
override bool OnInputUserDataProcess(int userDataType, ParamsReadContext ctx)
bool ReadLiftWeaponRequest(int userDataType, ParamsReadContext ctx)
bool ResetADSPlayerSync(int userDataType, ParamsReadContext ctx)
server only
bool TogglePlacingServer(int userDataType, ParamsReadContext ctx)
bool HandleRemoteItemManipulation(int userDataType, ParamsReadContext ctx)

References GetGame(), INPUT_UDT_GESTURE, INPUT_UDT_INVENTORY, INPUT_UDT_USER_MUTE_XBOX, INPUT_UDT_WEAPON_LIFT_EVENT, and OnInputUserDataProcess().

◆ OnInventoryMenuClose()

void ManBase::OnInventoryMenuClose ( )
inlineprotected

Definition at line 5498 of file PlayerBase.c.

5499 {
5500
5501 }

◆ OnInventoryMenuOpen()

void ManBase::OnInventoryMenuOpen ( )
inlineprotected

Definition at line 5493 of file PlayerBase.c.

5494 {
5495
5496 }

◆ OnJumpEnd()

override void ManBase::OnJumpEnd ( int pLandType = 0)
inlineprotected

Definition at line 3749 of file PlayerBase.c.

3750 {
3752 {
3753 switch (pLandType)
3754 {
3755 case HumanCommandFall.LANDTYPE_NONE:
3756 case HumanCommandFall.LANDTYPE_LIGHT:
3757 m_PresenceNotifier.ProcessEvent(EPresenceNotifierNoiseEventType.LAND_LIGHT);
3758 break;
3759 case HumanCommandFall.LANDTYPE_MEDIUM:
3760 case HumanCommandFall.LANDTYPE_HEAVY:
3761 m_PresenceNotifier.ProcessEvent(EPresenceNotifierNoiseEventType.LAND_HEAVY);
3762 break;
3763 }
3764 }
3765
3766 GetWeaponManager().RefreshAnimationState();
3767 }
EPresenceNotifierNoiseEventType
class HumanCommandMelee2 HumanCommandFall()
Definition human.c:571

References HumanCommandFall().

◆ OnJumpOutVehicleFinish()

void ManBase::OnJumpOutVehicleFinish ( float carSpeed)
inlineprotected

Definition at line 3857 of file PlayerBase.c.

3858 {
3859 string surfaceType;
3860 int liquidType;
3861 GetGame().SurfaceUnderObject(this, surfaceType, liquidType);
3862 }

References GetGame().

◆ OnJumpStart()

override void ManBase::OnJumpStart ( )
inlineprotected

Definition at line 3739 of file PlayerBase.c.

3740 {
3741 m_ActionManager.OnJumpStart();
3742
3744 GetWeaponManager().DelayedRefreshAnimationState(10);
3746 CloseMapEx(true);
3747 }

References AbortWeaponEvent().

◆ OnLadder()

override void ManBase::OnLadder ( float delta_time,
HumanMovementState pState )
inlineprotected

called every command handler tick when player is on ladder

Definition at line 1530 of file PlayerBase.c.

1531 {
1533 }
void ProcessHandDamage(float delta_time, HumanMovementState pState)

◆ OnLand()

override bool ManBase::OnLand ( int pCurrentCommandID,
FallDamageData fallDamageData )
inlineprotected

Nothing happens for unconscious Nothing happens for being damaged

Definition at line 3167 of file PlayerBase.c.

3168 {
3170 return true;
3171
3174
3175 return false;
3176 }

◆ OnParticleEvent()

override void ManBase::OnParticleEvent ( string pEventType,
string pUserString,
int pUserInt )
inlineprotected

Definition at line 6192 of file PlayerBase.c.

6193 {
6194 super.OnParticleEvent(pEventType, pUserString, pUserInt);
6195
6196 if (!GetGame().IsDedicatedServer())
6197 {
6198 if (pUserInt == 123456) // 123456 is ID for vomiting effect. The current implementation is WIP.
6199 {
6200 PlayerBase player = PlayerBase.Cast(this);
6201 int boneIdx = player.GetBoneIndexByName("Head");
6202
6203 if (boneIdx != -1)
6204 {
6206
6207 if (m_SyncedModifiers & eModifierSyncIDs.MODIFIER_SYNC_CONTAMINATION2)
6208 eff = new EffVomitBlood();
6209 else
6210 eff = new EffVomit();
6211
6212 eff.SetDecalOwner(player);
6213 eff.SetAutodestroy(true);
6215 Particle p = eff.GetParticle();
6216 player.AddChild(p, boneIdx);
6217 }
6218 }
6219 }
6220 }
Wrapper class for managing particles through SEffectManager.
Legacy way of using particles in the game.
Definition Particle.c:7
static int PlayInWorld(notnull Effect eff, vector pos)
Play an Effect.

References GetGame(), SEffectManager::PlayInWorld(), and vector::Zero.

◆ OnPlayerIsNowInsideEffectAreaBeginClient()

void ManBase::OnPlayerIsNowInsideEffectAreaBeginClient ( )
inlineprotected

Definition at line 656 of file PlayerBase.c.

657 {
658 //Print("ANY EFFECT AREA ENTERED CLIENT <------------------------------------------------------------- FINAL");
659 }

◆ OnPlayerIsNowInsideEffectAreaBeginServer()

void ManBase::OnPlayerIsNowInsideEffectAreaBeginServer ( )
inlineprotected

Definition at line 646 of file PlayerBase.c.

647 {
648 //Print("ANY EFFECT AREA ENTERED <------------------------------------------------------------- FINAL");
649 }

◆ OnPlayerIsNowInsideEffectAreaEndClient()

void ManBase::OnPlayerIsNowInsideEffectAreaEndClient ( )
inlineprotected

Definition at line 661 of file PlayerBase.c.

662 {
664 //Print("ANY EFFECT AREA LEFT CLIENT <------------------------------------------------------------- FINAL");
665 }
void RemoveCurrentEffectTrigger()
Definition PlayerBase.c:580

◆ OnPlayerIsNowInsideEffectAreaEndServer()

void ManBase::OnPlayerIsNowInsideEffectAreaEndServer ( )
inlineprotected

Definition at line 651 of file PlayerBase.c.

652 {
653 //Print("ANY EFFECT AREA LEFT <------------------------------------------------------------- FINAL");
654 }

◆ OnPlayerLoaded()

void ManBase::OnPlayerLoaded ( )
inlineprotected

Definition at line 2030 of file PlayerBase.c.

2031 {
2032 InitEditor();
2033
2034 if (GetGame().IsMultiplayer() || GetGame().IsServer())
2035 {
2036 if (m_ModuleLifespan)
2038 }
2039
2040 if (IsControlledPlayer())//true only on client for the controlled character
2041 {
2042 if (!m_VirtualHud)
2043 m_VirtualHud = new VirtualHud(this);
2044 if (m_Hud)
2045 {
2047 PPERequesterBank.GetRequester(PPERequester_DeathDarkening).Stop();
2049 PPERequesterBank.GetRequester(PPERequester_UnconEffects).Stop(); //TODO - stop en mass...check if effects do not terminate (spawning inside of contaminated area)?!
2050 GetGame().GetUIManager().CloseAll();
2051 GetGame().GetMission().SetPlayerRespawning(false);
2052 GetGame().GetMission().OnPlayerRespawned(this);
2053
2054 m_Hud.ShowHudUI(true);
2055 m_Hud.ShowQuickbarUI(true);
2057 }
2058 m_EffectWidgets = GetGame().GetMission().GetEffectWidgets();
2059 }
2060 if (!GetGame().IsDedicatedServer())
2061 {
2062 GetGame().GetCallQueue(CALL_CATEGORY_GUI).CallLater(UpdateCorpseStateVisual, 2000, false);//sometimes it takes a while to load in
2063 m_PlayerSoundEventHandler = new PlayerSoundEventHandler(this);
2064 }
2066 m_CharactersHead = Head_Default.Cast(GetInventory().FindPlaceholderForSlot(slot_id));
2070
2072 if (wpn)
2073 wpn.ValidateAndRepair();
2074 /*
2075 PreloadDecayTexture();
2076 UpdateCorpseStateVisual();
2077 */
2078 m_PlayerLoaded = true;
2079
2080 //Print("PlayerBase | OnPlayerLoaded()");
2081
2082 }
void PlayerSoundEventHandler(PlayerBase player)
void UpdateBloodName()
Definition gameplay.c:640
void ShowHudUI(bool show)
void ShowQuickbarUI(bool show)
void UpdateQuickbarGlobalVisibility()
void PreloadDecayTexture()
void InitEditor()
void CheckHairClippingOnCharacterLoad()
helper method for re-checking hairhiding on character load

References CALL_CATEGORY_GUI, GetGame(), InventorySlots::GetSlotIdFromString(), m_BloodType, m_Hud, m_VirtualHud, PlayerSoundEventHandler(), Hud::ShowHudUI(), Hud::ShowQuickbarUI(), Hud::UpdateBloodName(), Hud::UpdateQuickbarGlobalVisibility(), and VirtualHud().

◆ OnPlayerReceiveFlashbangHitEnd()

void ManBase::OnPlayerReceiveFlashbangHitEnd ( )
inlineprotected

Definition at line 1107 of file PlayerBase.c.

1107{}

◆ OnPlayerReceiveFlashbangHitStart()

void ManBase::OnPlayerReceiveFlashbangHitStart ( bool visual)
inlineprotected

Definition at line 1102 of file PlayerBase.c.

1103 {
1105 }
void SpawnFlashbangEffect(PlayerBase player, bool visual)
Definition PlayerBase.c:864

◆ OnPlayerRecievedHit()

override void ManBase::OnPlayerRecievedHit ( )
inlineprotected

Definition at line 1083 of file PlayerBase.c.

1084 {
1085#ifndef NO_GUI
1086 if (m_MeleeFightLogic.IsInBlock())
1087 {
1088 EffectSound sound = SEffectManager.PlaySoundOnObject("BlockingAttack_SoundSet", this);
1089 sound.SetAutodestroy(true);
1090 return;
1091 }
1092
1097
1098 CloseMapEx(true);
1099#endif
1100 }
static ref Param2< float, float > PARAM2_FLOAT_FLOAT
override void SpawnDamageDealtEffect()
Definition PlayerBase.c:842
void SpawnDamageDealtEffect2(Param param1=null, Param param2=null)
Definition PlayerBase.c:851

References CachedObjectsParams::PARAM2_FLOAT_FLOAT, and SEffectManager::PlaySoundOnObject().

◆ OnQuickBarContinuousUseEnd()

void ManBase::OnQuickBarContinuousUseEnd ( int slotClicked)
inlineprotected

Definition at line 4339 of file PlayerBase.c.

4340 {
4341 if (m_QuickBarHold)
4342 {
4343 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
4344 {
4346
4348 {
4349 ActionBase action = am.GetRunningAction();
4350 if (action)
4351 {
4352 if (!action.GetInput().IsActive())
4353 am.EndActionInput();
4354
4355 }
4356 }
4357
4358 if (m_QuickBarFT)
4359 {
4360 am.ClearForceTarget();
4361 m_QuickBarFT = false;
4362 }
4363 }
4364 }
4365 m_QuickBarHold = false;
4366 }
bool m_QuickBarFT
Definition PlayerBase.c:87

References GetActionManager(), and GetInstanceType().

◆ OnQuickBarContinuousUseStart()

void ManBase::OnQuickBarContinuousUseStart ( int slotClicked)
inlineprotected

Definition at line 4306 of file PlayerBase.c.

4307 {
4308 if (GetInventory().IsInventoryLocked())
4309 return;
4310
4311 if (IsSwimming() || IsClimbingLadder() || GetCommand_Melee() || IsClimbing() || IsRestrained() || IsRestrainPrelocked())
4312 return;
4313
4315
4316 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
4317 {
4318 ItemBase itemInHands = ItemBase.Cast(GetHumanInventory().GetEntityInHands());
4319
4321 {
4323
4324 if (amc.CanPerformActionFromQuickbar(itemInHands, quickBarItem))
4325 amc.PerformActionFromQuickbar(itemInHands, quickBarItem);
4326 else
4327 {
4328 if (IsRaised() || GetCommand_Melee())
4329 return;
4330
4331 amc.ForceTarget(quickBarItem);
4332 m_QuickBarFT = true;
4333 }
4334 }
4335 }
4336 m_QuickBarHold = true;
4337 }
EntityAI GetQuickBarEntity(int index)
proto native HumanCommandMelee GetCommand_Melee()

References GetActionManager(), GetCommand_Melee(), GetInstanceType(), and IsRaised().

◆ OnQuickbarSetEntityRequest()

void ManBase::OnQuickbarSetEntityRequest ( ParamsReadContext ctx)
inlineprotected

Definition at line 1887 of file PlayerBase.c.

1888 {
1889 m_QuickBarBase.OnSetEntityRequest(ctx);
1890 }

◆ OnQuickBarSingleUse()

void ManBase::OnQuickBarSingleUse ( int slotClicked)
inlineprotected

Definition at line 4198 of file PlayerBase.c.

4199 {
4200 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER)
4201 return;
4202
4203 if (m_AreHandsLocked)
4204 return; //Player is in the short window of time after interrupting placement of an item and before getting it back in hands
4205
4206 if (GetInventory().IsInventoryLocked() || IsEmotePlaying())
4207 return;
4208
4209 if (GetThrowing().IsThrowingModeEnabled() || GetThrowing().IsThrowingAnimationPlaying())
4210 return;
4211
4212 if (IsRaised() || GetCommand_Melee() || IsSwimming() || IsClimbingLadder() || IsClimbing() || IsRestrained() || IsRestrainPrelocked())
4213 return;
4214
4215 if (GetDayZPlayerInventory().IsProcessing() || IsItemsToDelete())
4216 return;
4217
4219 return;
4220
4222 return;
4223
4225 return;
4226
4227 //TODO MW change locking method
4228 //if (GetDayZPlayerInventory().HasLockedHands())
4229 // return;
4230
4231 EntityAI quickBarEntity = GetQuickBarEntity(slotClicked - 1);//GetEntityInQuickBar(slotClicked - 1);
4232
4233 if (!quickBarEntity)
4234 return;
4235
4236 Magazine mag;
4238
4239 if (Class.CastTo(mag, quickBarEntity) && Class.CastTo(wpn, mag.GetHierarchyParent()))
4240 return;
4241
4242 EntityAI inHandEntity = GetHumanInventory().GetEntityInHands();
4243
4244 if (!GetDayZPlayerInventory().IsIdle())
4245 return; // player is already performing some animation
4246
4248 handInventoryLocation.SetHands(this, quickBarEntity);
4249 if (this.GetInventory().HasInventoryReservation(quickBarEntity, handInventoryLocation))
4250 return;
4251
4253 {
4254 if (GetHumanInventory().CanRemoveEntityInHands())
4255 {
4256 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[QB] Stash - PredictiveMoveItemFromHandsToInventory HND=" + Object.GetDebugName(inHandEntity));
4257 PredictiveMoveItemFromHandsToInventory();
4258 }
4259 }
4260 else
4261 {
4263 quickBarEntity.GetInventory().GetCurrentInventoryLocation(invLocQBItem);
4264 if (GetInventory().HasInventoryReservation(quickBarEntity, invLocQBItem))
4265 return;
4266
4267 if (inHandEntity)
4268 {
4270
4272 inHandEntity.GetInventory().GetCurrentInventoryLocation(inHandEntityFSwapDst);
4273
4274 int index = GetHumanInventory().FindUserReservedLocationIndex(inHandEntity);
4275 if (index >= 0)
4276 GetHumanInventory().GetUserReservedLocation(index, Reserved_Item_il);
4277
4278 if (Reserved_Item_il)
4279 inHandEntityFSwapDst.CopyLocationFrom(Reserved_Item_il, true);
4280
4282 {
4283 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[QB] PredictiveSwapEntities QB=" + Object.GetDebugName(quickBarEntity) + " HND=" + Object.GetDebugName(inHandEntity));
4285 }
4287 {
4288 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[QB] Swap - PredictiveForceSwapEntities HND=" + Object.GetDebugName(inHandEntity) + " QB=" + Object.GetDebugName(quickBarEntity) + " fswap_dst=" + InventoryLocation.DumpToStringNullSafe(inHandEntityFSwapDst));
4290 }
4291 }
4292 else
4293 {
4294 if (GetInventory().HasInventoryReservation(quickBarEntity, handInventoryLocation))
4295 return;
4296
4297 if (GetInventory().CanAddEntityIntoHands(quickBarEntity))
4298 {
4299 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[QB] Stash - PredictiveTakeEntityToHands QB=" + Object.GetDebugName(quickBarEntity));
4301 }
4302 }
4303 }
4304 }
bool IsProcessing()
override bool IsIdle()
static bool CanSwapEntitiesEx(notnull EntityAI item1, notnull EntityAI item2)
Definition Inventory.c:610
static bool CanForceSwapEntitiesEx(notnull EntityAI item1, InventoryLocation item1_dst, notnull EntityAI item2, out InventoryLocation item2_dst)
Definition Inventory.c:645
override void PredictiveTakeEntityToHands(EntityAI item)
override bool PredictiveSwapEntities(notnull EntityAI item1, notnull EntityAI item2)
bool IsItemsToDelete()
override bool PredictiveForceSwapEntities(notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)

References GameInventory::CanForceSwapEntitiesEx(), ScriptInputUserData::CanStoreInputUserData(), GameInventory::CanSwapEntitiesEx(), Class::CastTo(), InventoryLocation::DumpToStringNullSafe(), GetActionManager(), GetCommand_Melee(), GetInstanceType(), GetRunningAction(), IsEmotePlaying(), IsIdle(), IsProcessing(), IsRaised(), IsRunning(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ OnReceivedHit()

override void ManBase::OnReceivedHit ( ImpactEffectsData hitData)
inlineprotected

Call only on client or single player PlayerBase (as GetGame().GetPlayer())

Definition at line 1067 of file PlayerBase.c.

1068 {
1069 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
1070 {
1071 float shakeStrength = Math.InverseLerp(0, 500, hitData.m_InSpeed.Length());
1072 GetCurrentCamera().SpawnCameraShake(shakeStrength);
1074 }
1075
1076 if (hitData.m_AmmoType == "Bullet_CupidsBolt")
1077 Ammo_CupidsBolt.PlayOnHitParticle(hitData.m_Position);
1078
1079 //ParticleManager.GetInstance().PlayInWorld(ParticleList.BOLT_CUPID_HIT, hitData.m_Position);
1080 }
override void OnPlayerRecievedHit()
proto native DayZPlayerCamera GetCurrentCamera()
-------------— camera additional functions ----------------------—

References GetCurrentCamera(), GetInstanceType(), and Math::InverseLerp().

◆ OnReconnect()

void ManBase::OnReconnect ( )
inlineprivate

Definition at line 6743 of file PlayerBase.c.

6744 {
6745 Debug.Log("Player reconnected:" + this.ToString(), "Reconnect");
6746
6747 //construction action data
6748
6750 }

References Debug::Log(), and ToString().

◆ OnRestrainStart()

void ManBase::OnRestrainStart ( )
inlineprotected

Definition at line 3333 of file PlayerBase.c.

3334 {
3336 GetGame().GetMission().RemoveActiveInputExcludes({"inventory"}, true);
3337 GetGame().GetMission().RemoveActiveInputRestriction(EInputRestrictors.INVENTORY);
3338 }

References GetGame().

◆ OnRollFinish()

override void ManBase::OnRollFinish ( )
inlineprotected

Definition at line 3853 of file PlayerBase.c.

3854 {
3855 }

◆ OnRollStart()

override void ManBase::OnRollStart ( bool isToTheRight)
inlineprotected

Definition at line 3845 of file PlayerBase.c.

3846 {
3848
3849 if (GetBrokenLegs() == eBrokenLegs.BROKEN_LEGS)
3851 }
override void DepleteStamina(EStaminaModifiers modifier, float dT=-1)
static const float BROKEN_LEGS_ROLL_SHOCK

References PlayerConstants::BROKEN_LEGS_ROLL_SHOCK.

◆ OnRPC()

override void ManBase::OnRPC ( PlayerIdentity sender,
int rpc_type,
ParamsReadContext ctx )
inlineprotected

uses contants outside of ERPCs !!!!

Definition at line 5002 of file PlayerBase.c.

5003 {
5004 super.OnRPC(sender, rpc_type, ctx);
5005
5006 switch (rpc_type)
5007 {
5008#ifndef SERVER
5009
5010 case ERPCs.RPC_SYNC_DISPLAY_STATUS:
5011 if (GetVirtualHud())
5012 GetVirtualHud().OnRPC(ctx);
5013 break;
5014
5015 case ERPCs.RPC_PLAYER_SYMPTOM_ON:
5016 if (GetSymptomManager())
5017 GetSymptomManager().OnRPC(ERPCs.RPC_PLAYER_SYMPTOM_ON, ctx);
5018 break;
5019
5020 case ERPCs.RPC_PLAYER_SYMPTOM_OFF:
5021 if (GetSymptomManager())
5022 GetSymptomManager().OnRPC(ERPCs.RPC_PLAYER_SYMPTOM_OFF, ctx);
5023 break;
5024
5025 case ERPCs.RPC_DAMAGE_VALUE_SYNC:
5026 if (m_TrasferValues)
5027 m_TrasferValues.OnRPC(ctx);
5028 break;
5029
5030 case ERPCs.RPC_USER_ACTION_MESSAGE:
5031 if (!GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
5032 break;
5033 if (ctx.Read(m_UAParamMessage))
5034 {
5035 string actiontext = m_UAParamMessage.param1;
5037 }
5038 break;
5039
5040 case ERPCs.RPC_SOFT_SKILLS_SPECIALTY_SYNC:
5042 ctx.Read(p_synch);
5043 float specialty_level = p_synch.param1;
5045 break;
5046
5047 case ERPCs.RPC_SOFT_SKILLS_STATS_SYNC:
5049 ctx.Read(p_debug_synch);
5050 float general_bonus_before = p_debug_synch.param1;
5051 float general_bonus_after = p_debug_synch.param2;
5052 float last_UA_value = p_debug_synch.param3;
5053 float cooldown_value = p_debug_synch.param4;
5054 float cooldown_active = p_debug_synch.param5;
5060 break;
5061
5062 case ERPCs.RPC_WARNING_ITEMDROP:
5063 {
5064 if (GetGame().IsClient() && GetGame().GetUIManager() && !GetGame().GetUIManager().FindMenu(MENU_WARNING_ITEMDROP))
5065 {
5066 GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).Call(GetGame().GetUIManager().EnterScriptedMenu, MENU_WARNING_ITEMDROP, null);
5067 GetGame().GetMission().AddActiveInputExcludes({"menu"});
5068 }
5069 break;
5070 }
5071
5072 case ERPCs.RPC_WARNING_TELEPORT:
5073 {
5074 if (GetGame().IsClient() && GetGame().GetUIManager() && !GetGame().GetUIManager().FindMenu(MENU_WARNING_TELEPORT))
5075 {
5076 GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).Call(GetGame().GetUIManager().EnterScriptedMenu, MENU_WARNING_TELEPORT, null);
5077 GetGame().GetMission().AddActiveInputExcludes({"menu"});
5078 }
5079 break;
5080 }
5081 case ERPCs.RPC_INIT_SET_QUICKBAR:
5083 if (ctx.Read(count));
5084 {
5085 for (int i = 0; i < count.param1 ; i++)
5086 m_QuickBarBase.OnSetEntityRPC(ctx);
5087 }
5088 break;
5089
5090 case ERPCs.RPC_SYNC_THERMOMETER:
5091 {
5092 float value;
5093 if (ctx.Read(value))
5094 m_Hud.SetTemperature(value.ToString() + "#degrees_celsius");
5095 break;
5096 }
5097
5098
5099 case ERPCs.RPC_CHECK_PULSE:
5103 pulse = EPulseType.REGULAR;
5104 else
5105 pulse = EPulseType.IRREGULAR;
5106
5110 break;
5111
5113 //woodcutting
5114 case PlantType.TREE_HARD:
5115 SoundHardTreeFallingPlay();
5116 break;
5117
5118 case PlantType.TREE_SOFT:
5119 SoundSoftTreeFallingPlay();
5120 break;
5121
5122 case PlantType.BUSH_HARD:
5123 SoundHardBushFallingPlay();
5124 break;
5125
5126 case PlantType.BUSH_SOFT:
5127 SoundSoftBushFallingPlay();
5128 break;
5129
5130 case ERPCs.RPC_DEBUG_MONITOR_FLT:
5132 m_DebugMonitorValues.OnRPCFloat(ctx);
5133 break;
5134
5135 case ERPCs.RPC_DEBUG_MONITOR_STR:
5137 m_DebugMonitorValues.OnRPCString(ctx);
5138 break;
5139#endif
5140
5141
5142 /*
5143 case ERPCs.RPC_CRAFTING_INVENTORY_INSTANT:
5144 ref Param3<int, ItemBase, ItemBase> craftParam = new Param3<int, ItemBase, ItemBase>(-1, NULL, NULL);
5145 if (ctx.Read(craftParam))
5146 {
5147 m_ModuleRecipesManager.PerformRecipeServer(craftParam.param1, craftParam.param2, craftParam.param3, this);
5148 }
5149 break;
5150 */
5151
5152
5153#ifdef DIAG_DEVELOPER
5154 case ERPCs.DEV_RPC_AGENT_RESET:
5155 {
5156 bool val;
5157 if (ctx.Read(val))
5158 m_AgentPool.RemoveAllAgents();
5159 break;
5160 }
5161
5162 case ERPCs.DEV_PLAYER_DEBUG_REQUEST:
5163 {
5165 plugin_remote_server.OnRPC(ctx, this);
5166 break;
5167 }
5168
5169 case ERPCs.DEV_PLAYER_DEBUG_DATA:
5170 {
5172 PluginDeveloper plugin_dev = PluginDeveloper.Cast(GetPlugin(PluginDeveloper));
5173 if (plugin_dev.m_ScriptConsole)
5174 plugin_dev.m_ScriptConsole.OnRPCEx(rpc_type, ctx);
5175 else
5177 break;
5178 }
5179
5180 case ERPCs.DEV_AGENT_GROW:
5181 {
5182 m_AgentPool.RemoteGrowRequestDebug(ctx);
5183 break;
5184 }
5185
5186 case ERPCs.RPC_ITEM_DIAG_CLOSE:
5187 {
5189 mid.StopWatchRequest(this);
5190 break;
5191 }
5192
5194 case ERPCs.DEV_REQUEST_UTS_DEBUG:
5195 {
5196 PluginUniversalTemperatureSourceServer plugin_uts_server = PluginUniversalTemperatureSourceServer.Cast(GetPlugin(PluginUniversalTemperatureSourceServer));
5197 plugin_uts_server.OnRPC(ctx, this);
5198 break;
5199 }
5200
5201 case ERPCs.DEV_UTS_DEBUG_DATA:
5202 {
5203 PluginUniversalTemperatureSourceClient plugin_uts_client = PluginUniversalTemperatureSourceClient.Cast(GetPlugin(PluginUniversalTemperatureSourceClient));
5204 plugin_uts_client.OnRPC(ctx);
5205 break;
5206 }
5208#endif
5209
5210#ifdef DEVELOPER
5211 case ERPCs.DEV_RPC_SERVER_SCRIPT:
5212 {
5213 //PluginItemDiagnostic plugin = PluginItemDiagnostic.Cast(GetPlugin(PluginItemDiagnostic));
5214 //SetDebugDeveloper_item(plugin.GetWatchedItem(this));//!! needs to be inside DEVELOPER ifdef
5215
5217 {
5218 _player = this;
5219 string code = CachedObjectsParams.PARAM1_STRING.param1;
5220 bool success = GetGame().ExecuteEnforceScript("void scConsMain() \n{\n" + code + "\n}\n", "scConsMain");
5222 RPCSingleParam(ERPCs.DEV_RPC_SERVER_SCRIPT_RESULT, CachedObjectsParams.PARAM1_BOOL, true, GetIdentity());
5223 }
5224 break;
5225 }
5226
5227 case ERPCs.DEV_RPC_SERVER_SCRIPT_RESULT:
5228 {
5229 PluginDeveloper dev = PluginDeveloper.Cast(GetPlugin(PluginDeveloper));
5230 if (dev.m_ScriptConsole)
5231 dev.m_ScriptConsole.OnRPCEx(rpc_type, ctx);
5232 break;
5233 }
5234
5235 case ERPCs.DEV_SET_DEV_ITEM:
5236 {
5238 if (ctx.Read(ent) && ent.param1)
5239 {
5241 mid2.RegisterDebugItem(ent.param1, this);
5242 }
5243 //SetDebugDeveloper_item(this);
5244 break;
5245 }
5246
5247 case ERPCs.RPC_ITEM_DIAG:
5248 {
5250 if (ctx.Read(p1))
5251 {
5253 plgn.OnRPC(p1.param1, ctx);
5254 }
5255 break;
5256 }
5257#endif
5258 }
5259
5260#ifdef DIAG_DEVELOPER
5261 PluginDeveloper module_rc = PluginDeveloper.Cast(GetPlugin(PluginDeveloper));
5262 if (module_rc)
5263 module_rc.OnRPC(this, rpc_type, ctx);
5264
5265 PluginDeveloperSync module_rcs = PluginDeveloperSync.Cast(GetPlugin(PluginDeveloperSync));
5266 if (module_rcs)
5267 module_rcs.OnRPC(this, rpc_type, ctx);
5268
5269#ifdef SERVER
5271#else
5273#endif
5274
5275 if (plugin_diag_menu)
5276 plugin_diag_menu.OnRPC(this, rpc_type, ctx);
5277#endif
5278 }
EPulseType
Definition EPulseType.c:2
void PluginItemDiagnostic()
PlayerBase _player
static string GetPulseMessage(EPulseType pulse_type, int blood_level)
const int TARGET_IRREGULAR_PULSE_BIT
static ref Param1< bool > PARAM1_BOOL
static ref Param1< int > PARAM1_INT
static ref Param1< string > PARAM1_STRING
void SetTemperature(string temp)
PlayerBase m_CheckPulseLastTarget
Definition PlayerBase.c:131
void MessageAction(string text)
SoftSkillsManager GetSoftSkillsManager()
void SetCoolDown(bool cool_down)
void SetLastUAValue(float last_ua_value)
void SetGeneralBonusBefore(float general_bonus_before)
void SetCoolDownValue(float cooldown_value)
void SetGeneralBonusAfter(float general_bonus_after)
void SetSpecialtyLevel(float specialty_level)
void OnRPC(int rpc_type, ParamsReadContext ctx)
const int MENU_WARNING_TELEPORT
Definition constants.c:200
const int MENU_WARNING_ITEMDROP
Definition constants.c:198
const int CALL_CATEGORY_GAMEPLAY
Definition tools.c:10

References _player, CALL_CATEGORY_GAMEPLAY, GetGame(), GetInstanceType(), GetPlugin(), ActionCheckPulse::GetPulseMessage(), GetVirtualHud(), m_Hud, MENU_WARNING_ITEMDROP, MENU_WARNING_TELEPORT, CachedObjectsParams::PARAM1_BOOL, CachedObjectsParams::PARAM1_INT, CachedObjectsParams::PARAM1_STRING, PluginItemDiagnostic(), Hud::SetTemperature(), and ActionCheckPulse::TARGET_IRREGULAR_PULSE_BIT.

◆ OnScheduledTick()

void ManBase::OnScheduledTick ( float deltaTime)
inlineprotected

Definition at line 2561 of file PlayerBase.c.

2562 {
2563 if (!IsPlayerSelected() || !IsAlive())
2564 return;
2566 m_ModifiersManager.OnScheduledTick(deltaTime);
2568 m_NotifiersManager.OnScheduledTick();
2569 if (m_TrasferValues)
2570 m_TrasferValues.OnScheduledTick(deltaTime);
2571 if (m_VirtualHud)
2572 m_VirtualHud.OnScheduledTick();
2575 if (m_Environment)
2576 m_Environment.Update(deltaTime);
2577
2578 // Check if electric device needs to be unplugged
2580 if (heldItem && heldItem.HasEnergyManager() && heldItem.GetCompEM().IsPlugged())
2581 {
2582 // Now we know we are working with an electric device which is plugged into a power source.
2584
2585 // Unplug the device when the player is too far from the power source.
2586 placed_entity.GetCompEM().UpdatePlugState();
2587 }
2588 }

References m_VirtualHud.

◆ OnSelectPlayer()

void ManBase::OnSelectPlayer ( )
inlineprotected

add callbacks for ai target system

Definition at line 5504 of file PlayerBase.c.

5505 {
5506 //Print("PlayerBase | OnSelectPlayer()");
5507 m_PlayerSelected = true;
5508
5509 m_QuickBarBase.updateSlotsCount();
5510
5511 m_WeaponManager.SortMagazineAfterLoad();
5512
5513 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER || !GetGame().IsMultiplayer())
5514 {
5515 PlayerIdentity identity = GetIdentity();
5516
5517 if (identity)
5518 {
5519 m_CachedPlayerID = identity.GetId();
5520 m_CachedPlayerName = identity.GetName();
5521 }
5522
5524 SetAITargetCallbacks(new AITargetCallbacksPlayer(this));
5525
5527 if (m_aQuickBarLoad)
5528 {
5529 int count = m_aQuickBarLoad.Count();
5531 params.Insert(paramCount);
5532 for (int i = 0; i < count; i++)
5533 {
5534 m_QuickBarBase.OnSetEntityNoSync(m_aQuickBarLoad.Get(i).param1, m_aQuickBarLoad.Get(i).param2);
5535 params.Insert(m_aQuickBarLoad.Get(i));
5536 }
5537
5538 if (count > 0 && GetGame().IsMultiplayer())
5539 GetGame().RPC(this, ERPCs.RPC_INIT_SET_QUICKBAR, params, true, identity);
5541 }
5542
5544 GetModifiersManager().SetModifiers(true);
5545
5546 SetSynchDirty();
5547
5548 if (GetGame().IsMultiplayer())
5549 {
5550 //Drop item warning
5552 {
5553 GetGame().RPCSingleParam(this, ERPCs.RPC_WARNING_ITEMDROP, null, true, identity);
5554 m_ProcessUIWarning = false;
5555 }
5556
5557 GetGame().GetMission().SyncRespawnModeInfo(identity);
5558 }
5559 }
5560
5561 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER)
5562 {
5565
5566 CheckForGag();
5567 }
5568 else if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
5569 {
5573
5574 }
5575 else if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_AI_SINGLEPLAYER)
5577
5578 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
5579 {
5580 //m_PlayerLightManager = new PlayerLightManager(this);
5581 if (GetGame().GetMission())
5582 {
5583 GetGame().GetMission().ResetGUI();
5584 // force update player
5585 GetDayZGame().GetBacklit().UpdatePlayer(true);
5586 }
5587
5588 m_DeathCheckTimer = new Timer();
5589 m_DeathCheckTimer.Run(0.1, this, "CheckDeath", null, true);
5592
5593 int characterCount = GetGame().GetMenuData().GetCharactersCount() - 1;
5594 int idx = GetGame().GetMenuData().GetLastPlayedCharacter();
5596 GetGame().GetCallQueue(CALL_CATEGORY_GUI).Call(SetNewCharName);
5597
5598 GetGame().GetMission().EnableAllInputs(true);
5599
5601 m_PresenceNotifier.Init(this);
5602 OnGameplayDataHandlerSync();//only here for legacy reasons
5603 }
5604
5605#ifdef BOT
5606 m_Bot = new Bot(this);
5607 m_Bot.Start(true, new MyBotTrigger(this));
5608#endif
5609 }
PPERequesterCategory
array< ref PlayerStatBase > Get()
void PluginPresenceNotifier()
Definition Bot.c:19
Client only - manage set up crafting on client.
PlayerStat< float > GetStatSpecialty()
ref array< ref Param2< EntityAI, int > > m_aQuickBarLoad
Definition PlayerBase.c:184
void CheckForGag()
void CheckForBurlap()
override void OnGameplayDataHandlerSync()
void SetNewCharName()
Static component of PPE manager, used to hold the instance.
Definition PPEManager.c:3
static PPEManager GetPPEManager()
Returns the manager instance singleton.
Definition PPEManager.c:27
The class that will be instanced (moddable)
Definition gameplay.c:376
void InitSpecialty(float specialty_level)
const int DEFAULT_CHARACTER_MENU_ID
Definition constants.c:840

References CALL_CATEGORY_GUI, GameConstants::DEFAULT_CHARACTER_MENU_ID, Get(), GetDayZGame(), GetGame(), GetInstanceType(), GetPlugin(), PPEManagerStatic::GetPPEManager(), PlayerBase::OnGameplayDataHandlerSync(), and PluginPresenceNotifier().

◆ OnSpawnedFromConsole()

void ManBase::OnSpawnedFromConsole ( )
inlineprotected

Definition at line 4528 of file PlayerBase.c.

4529 {
4530 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER || !GetGame().IsMultiplayer())
4531 {
4532 GetGame().GetMission().AddDummyPlayerToScheduler(this);
4534 }
4535 }
void OnSelectPlayer()

References GetGame(), and GetInstanceType().

◆ OnStanceChange()

override void ManBase::OnStanceChange ( int previousStance,
int newStance )
inlineprotected

Definition at line 3774 of file PlayerBase.c.

3775 {
3776 int prone = DayZPlayerConstants.STANCEMASK_PRONE | DayZPlayerConstants.STANCEMASK_RAISEDPRONE;
3777 int notProne = DayZPlayerConstants.STANCEMASK_ERECT | DayZPlayerConstants.STANCEMASK_CROUCH | DayZPlayerConstants.STANCEMASK_RAISEDERECT | DayZPlayerConstants.STANCEMASK_RAISEDCROUCH;
3778
3779 if (IsStance(previousStance, DayZPlayerConstants.STANCEMASK_PRONE) && IsStance(newStance, DayZPlayerConstants.STANCEMASK_ERECT))
3780 m_SprintedTimePerStanceMin = PlayerConstants.FULL_SPRINT_DELAY_FROM_PRONE;
3781
3782 if (IsStance(previousStance, DayZPlayerConstants.STANCEMASK_PRONE) && IsStance(previousStance, DayZPlayerConstants.STANCEMASK_CROUCH) || (IsStance(previousStance, DayZPlayerConstants.STANCEMASK_CROUCH) && IsStance(newStance, DayZPlayerConstants.STANCEMASK_ERECT)))
3783 m_SprintedTimePerStanceMin = PlayerConstants.FULL_SPRINT_DELAY_FROM_CROUCH;
3784
3786 {
3788 GetWeaponManager().RefreshAnimationState();
3789 }
3790 }
bool IsStance(int stance, int stanceMask)
static const float FULL_SPRINT_DELAY_FROM_CROUCH
[seconds]
static const float FULL_SPRINT_DELAY_FROM_PRONE
[seconds]

References AbortWeaponEvent(), PlayerConstants::FULL_SPRINT_DELAY_FROM_CROUCH, and PlayerConstants::FULL_SPRINT_DELAY_FROM_PRONE.

◆ OnStoreLoad()

override bool ManBase::OnStoreLoad ( ParamsReadContext ctx,
int version )
inlineprivate

Definition at line 6501 of file PlayerBase.c.

6502 {
6503 //Print("---- PlayerBase OnStoreLoad START ----, version: "+version);
6505
6506 // todo :: this should be after base call !!!!
6507 if (version < 102)//write removed in v. 102
6508 {
6509 if (!ctx.Read(m_StoreLoadVersion))
6510 return false;
6511 }
6512
6513 if (!super.OnStoreLoad(ctx, version))
6514 return false;
6515
6516 // FSM of hands
6517 if (!GetHumanInventory().OnStoreLoad(ctx, version))
6518 return false;
6519
6520 if (!OnStoreLoadLifespan(ctx, version))
6521 return false;
6522
6523 if (GetDayZGame().IsServer() && GetDayZGame().IsMultiplayer())
6524 {
6525 if (!GetPlayerStats().LoadStats(ctx, version)) // load stats
6526 {
6527 Print("---- failed to load PlayerStats ----");
6528 return false;
6529 }
6530
6531 if (version < m_ModifiersManager.GetStorageVersion())//load modifiers !! WILL CANCEL REST OF STREAM IF UNSUPPORTED VERSION !!
6532 {
6533 Print("---- failed to load ModifiersManager, unsupported version ----");
6534 return false;
6535 }
6536 else
6537 {
6538 if (!m_ModifiersManager.OnStoreLoad(ctx, version))
6539 {
6540 Print("---- failed to load ModifiersManager, read fail ----");
6541 return false;
6542 }
6543 }
6544
6545 if (version < m_AgentPool.GetStorageVersion())//load agents !! WILL CANCEL REST OF STREAM IF UNSUPPORTED VERSION !!
6546 {
6547 Print("---- failed to load AgentPool, unsupported version ----");
6548 return false;
6549 }
6550 else
6551 {
6552 if (!m_AgentPool.OnStoreLoad(ctx, version))
6553 {
6554 Print("---- failed to load AgentPool, read fail ----");
6555 return false;
6556 }
6557 }
6558
6559
6560 if (version < GetSymptomManager().GetStorageVersion())//load symptoms !! WILL CANCEL REST OF STREAM IF UNSUPPORTED VERSION !!
6561 {
6562 Print("---- failed to load SymptomManager, unsupported version ----");
6563 return false;
6564 }
6565 else
6566 {
6567 if (!GetSymptomManager().OnStoreLoad(ctx, version))
6568 {
6569 Print("---- failed to load SymptomManager, read fail ----");
6570 return false;
6571 }
6572 }
6573
6574 if (version < GetBleedingManagerServer().GetStorageVersion())//load bleeding manager !! WILL CANCEL REST OF STREAM IF UNSUPPORTED VERSION !!
6575 {
6576 Print("---- failed to load BleedingManagerServer, unsupported version ----");
6577 return false;
6578 }
6579 else
6580 {
6581 if (!GetBleedingManagerServer().OnStoreLoad(ctx, version))
6582 {
6583 Print("---- failed to load BleedingManagerServer, read fail ----");
6584 return false;
6585 }
6586 }
6587
6588 if (version < m_PlayerStomach.GetStorageVersion())//load PlayerStomach !! WILL CANCEL REST OF STREAM IF UNSUPPORTED VERSION !!
6589 {
6590 Print("---- failed to load PlayerStomach, unsupported version ----");
6591 return false;
6592 }
6593 else
6594 {
6595 if (!m_PlayerStomach.OnStoreLoad(ctx, version))
6596 {
6597 Print("---- failed to load PlayerStomach, read fail ----");
6598 return false;
6599 }
6600 }
6601
6602 //Check for broken leg value
6603 if (version >= 116)
6604 {
6605 if (!ctx.Read(m_BrokenLegState))
6606 return false;
6607 if (version <= 126)// WHILE >= 116
6608 {
6609 if (!ctx.Read(m_LocalBrokenState))
6610 return false;
6611 }
6612 }
6613 //Check for broken leg value
6614 if (version >= 125 && (!ctx.Read(m_PersistentFlags)))
6615 {
6616 Print("---- failed to load Persistent Flags, read fail ----");
6617 return false;
6618 }
6619
6620 if (version >= 131)
6621 {
6622 bool onLadder;
6623 if (!ctx.Read(onLadder))
6624 return false;
6625
6626 if (onLadder)
6627 {
6629 if (!ctx.Read(position))
6630 return false;
6631
6632 Hive hive = GetHive();
6633 if (!hive || !hive.CharacterIsLoginPositionChanged(this))
6635 }
6636 }
6637
6638 if (version >= 134)
6639 {
6641 arrowManager.Load(ctx);
6642 }
6643 }
6644
6645 Print("---- PlayerBase OnStoreLoad SUCCESS ----");
6646 return true;
6647 }
int GetStorageVersion()
Definition Hive.c:6
override bool OnStoreLoad(ParamsReadContext ctx, int version)
bool OnStoreLoadLifespan(ParamsReadContext ctx, int version)
proto native void SetPosition(vector position)
Set the world position of the Effect.
Definition Effect.c:420

References GetArrowManager(), GetDayZGame(), GetHive(), GetStorageVersion(), OnStoreLoad(), Print(), and SetPosition().

◆ OnStoreLoadLifespan()

bool ManBase::OnStoreLoadLifespan ( ParamsReadContext ctx,
int version )
inlineprivate

Definition at line 6665 of file PlayerBase.c.

6666 {
6667 int lifespan_state = 0;
6668 if (!ctx.Read(lifespan_state))
6669 return false;
6671
6672 int last_shaved = 0;
6673 if (!ctx.Read(last_shaved))
6674 return false;
6676
6677 if (version < 122)
6678 {
6679 bool bloody_hands_old;
6680 if (!ctx.Read(bloody_hands_old))
6681 return false;
6683 }
6684 else
6685 {
6686 int bloody_hands = 0;
6687 if (!ctx.Read(bloody_hands))
6688 return false;
6690 }
6691
6692
6693 bool blood_visible = false;
6694 if (!ctx.Read(blood_visible))
6695 return false;
6697
6698 int blood_type = 0;
6699 if (!ctx.Read(blood_type))
6700 return false;
6702
6703 return true;
6704 }

References m_BloodType.

◆ OnStoreSave()

override void ManBase::OnStoreSave ( ParamsWriteContext ctx)
inlineprivate

Definition at line 6450 of file PlayerBase.c.

6451 {
6452 //Print("OnStoreSave");
6453 if (GetGame().SaveVersion() < 102)
6454 {
6455 ctx.Write(ACT_STORE_SAVE_VERSION);//to be removed after we push 102+
6456 }
6457
6458 super.OnStoreSave(ctx);
6459
6460 GetHumanInventory().OnStoreSave(ctx); // FSM of hands
6462
6463 if (GetDayZGame().IsServer() && GetDayZGame().IsMultiplayer())
6464 {
6465 GetPlayerStats().SaveStats(ctx);// save stats
6466 m_ModifiersManager.OnStoreSave(ctx);// save modifiers
6467 m_AgentPool.OnStoreSave(ctx);//save agents
6468 GetSymptomManager().OnStoreSave(ctx);//save states
6470 {
6471 GetBleedingManagerServer().OnStoreSave(ctx);//save bleeding sources
6472 }
6473 m_PlayerStomach.OnStoreSave(ctx);
6474 ctx.Write(GetBrokenLegs());
6475 //ctx.Write(m_LocalBrokenState);
6477
6479 if (ladder)
6480 {
6481 ctx.Write(true);
6482 ctx.Write(ladder.GetLogoutPosition());
6483 }
6484 else
6485 ctx.Write(false);
6486
6488 arrowManager.Save(ctx);
6489 }
6490 }
const int ACT_STORE_SAVE_VERSION
Definition PlayerBase.c:20
void SaveAreaPersistenceFlag(ParamsWriteContext ctx)
void OnStoreSaveLifespan(ParamsWriteContext ctx)
void SaveStats(ParamsWriteContext ctx)
void OnStoreSave(ParamsWriteContext ctx)
proto native HumanCommandLadder GetCommand_Ladder()

References GetArrowManager(), GetCommand_Ladder(), GetDayZGame(), and GetGame().

◆ OnStoreSaveLifespan()

void ManBase::OnStoreSaveLifespan ( ParamsWriteContext ctx)
inlineprivate

Definition at line 6656 of file PlayerBase.c.

6657 {
6658 ctx.Write(m_LifeSpanState);
6659 ctx.Write(m_LastShavedSeconds);
6662 ctx.Write(m_BloodType);
6663 }

References m_BloodType.

◆ OnSyncJuncture()

override void ManBase::OnSyncJuncture ( int pJunctureID,
ParamsReadContext pCtx )
inlineprotected

SyncJunctures

Definition at line 7379 of file PlayerBase.c.

7380 {
7381 super.OnSyncJuncture(pJunctureID, pCtx);
7382
7383 switch (pJunctureID)
7384 {
7387 bool enable;
7389 m_InjuryHandler.SetInjuryCommandParams(enable, level);
7390 break;
7393 break;
7396 break;
7398 GetInventory().OnInventoryJunctureFromServer(pCtx);
7399 break;
7401 GetInventory().OnInventoryJunctureRepairFromServer(pCtx);
7402 break;
7404 GetInventory().OnInventoryJunctureFailureFromServer(pCtx);
7405 break;
7409 m_ActionManager.OnSyncJuncture(pJunctureID, pCtx);
7410 break;
7414 m_WeaponManager.OnSyncJuncture(pJunctureID, pCtx);
7415 break;
7418 break;
7421 break;
7423 float amount;
7425 {
7426 if (GetAimingModel() && IsFireWeaponRaised())
7427 GetAimingModel().RequestKuruShake(amount);
7428 }
7429 break;
7431 m_EmoteManager.OnSyncJuncture(pJunctureID, pCtx);
7432 break;
7435 break;
7437 m_ResetADS = true;
7438 break;
7441 break;
7445 break;
7448 break;
7450 m_StaminaHandler.OnSyncJuncture(pJunctureID, pCtx);
7451 break;
7453 m_StaminaHandler.OnSyncJuncture(pJunctureID, pCtx);
7454 break;
7455#ifdef DEVELOPER
7456 case DayZPlayerSyncJunctures.SJ_DEBUG_GET_IN_CAR:
7457 EntityAI car;
7458 DayZPlayerSyncJunctures.ReadGetInCarParams(pCtx, car);
7460 break;
7461#endif
7462 }
7463 }
static bool ReadShockParams(ParamsReadContext pCtx, out float shockValue)
static const int SJ_PLAYER_ADD_MODIFIER
static const int SJ_WEAPON_ACTION_ACK_REJECT
static bool ReadKuruRequest(ParamsReadContext pCtx, out float amount)
static const int SJ_QUICKBAR_SET_SHORTCUT
static bool ReadBrokenLegsParamsEx(ParamsReadContext pCtx, out int currentState)
static const int SJ_WEAPON_ACTION_ACK_ACCEPT
static const int SJ_WEAPON_SET_JAMMING_CHANCE
static bool ReadInjuryParams(ParamsReadContext pCtx, out bool pEnable, out eInjuryHandlerLevels level)
static bool ReadPlayerUnconsciousnessParams(ParamsReadContext pCtx, out bool enable)
void OnQuickbarSetEntityRequest(ParamsReadContext ctx)
void SetToDelete(ParamsReadContext pCtx)
float m_CurrentShock
Definition PlayerBase.c:103
void SetLiftWeapon(int pJunctureID, ParamsReadContext ctx)
void SetAnimation(ParamsReadContext ctx)

References m_StaminaHandler, StaminaHandler::OnSyncJuncture(), DayZPlayerSyncJunctures::ReadBrokenLegsParamsEx(), DayZPlayerSyncJunctures::ReadInjuryParams(), DayZPlayerSyncJunctures::ReadKuruRequest(), DayZPlayerSyncJunctures::ReadPlayerUnconsciousnessParams(), DayZPlayerSyncJunctures::ReadShockParams(), DayZPlayerSyncJunctures::SJ_ACTION_ACK_ACCEPT, DayZPlayerSyncJunctures::SJ_ACTION_ACK_REJECT, DayZPlayerSyncJunctures::SJ_ACTION_INTERRUPT, DayZPlayerSyncJunctures::SJ_ADS_RESET, DayZPlayerSyncJunctures::SJ_BROKEN_LEGS, DayZPlayerSyncJunctures::SJ_DELETE_ITEM, DayZPlayerSyncJunctures::SJ_GESTURE_REQUEST, DayZPlayerSyncJunctures::SJ_INJURY, DayZPlayerSyncJunctures::SJ_INVENTORY, DayZPlayerSyncJunctures::SJ_INVENTORY_FAILURE, DayZPlayerSyncJunctures::SJ_INVENTORY_REPAIR, DayZPlayerSyncJunctures::SJ_KURU_REQUEST, DayZPlayerSyncJunctures::SJ_PLAYER_ADD_MODIFIER, DayZPlayerSyncJunctures::SJ_PLAYER_STATES, DayZPlayerSyncJunctures::SJ_QUICKBAR_SET_SHORTCUT, DayZPlayerSyncJunctures::SJ_SHOCK, DayZPlayerSyncJunctures::SJ_STAMINA, DayZPlayerSyncJunctures::SJ_STAMINA_MISC, DayZPlayerSyncJunctures::SJ_UNCONSCIOUSNESS, DayZPlayerSyncJunctures::SJ_WEAPON_ACTION_ACK_ACCEPT, DayZPlayerSyncJunctures::SJ_WEAPON_ACTION_ACK_REJECT, DayZPlayerSyncJunctures::SJ_WEAPON_LIFT, and DayZPlayerSyncJunctures::SJ_WEAPON_SET_JAMMING_CHANCE.

◆ OnThrowingModeChange()

override void ManBase::OnThrowingModeChange ( bool change_to_enabled)
inlineprotected

Definition at line 3886 of file PlayerBase.c.

3887 {
3889 {
3892 }
3893 }
void PlacingCancelServer()
void PlacingCancelLocal()

◆ OnTick()

void ManBase::OnTick ( )
inlineprotected

Definition at line 2665 of file PlayerBase.c.

2666 {
2667 float deltaT = (GetGame().GetTime() - m_LastTick) * 0.001;
2668 if (m_LastTick < 0)
2669 deltaT = 0; //first tick protection
2670
2671 m_LastTick = GetGame().GetTime();
2672
2674 }
void OnScheduledTick()
float m_LastTick
Definition PlayerBase.c:193

References GetGame(), m_LastTick, and OnScheduledTick().

◆ OnUnconsciousStart()

void ManBase::OnUnconsciousStart ( )
inlineprotected

Definition at line 3188 of file PlayerBase.c.

3189 {
3191
3192 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
3193 {
3195 if (m_LastCommandBeforeUnconscious != DayZPlayerConstants.COMMANDID_VEHICLE)
3196 {
3197 EntityAI entity_in_hands = GetHumanInventory().GetEntityInHands();
3200 }
3201 GetGame().GetSoundScene().SetSoundVolume(0, 2);
3203 }
3204
3205 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER || (!GetGame().IsMultiplayer() && GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT))
3206 {
3207 SetSynchDirty();
3208
3209 if (m_LastCommandBeforeUnconscious == DayZPlayerConstants.COMMANDID_VEHICLE)
3210 {
3211 if (m_TransportCache)
3212 m_TransportCache.MarkCrewMemberUnconscious(m_TransportCache.CrewMemberIndex(this));
3213 }
3214
3215 // disable voice communication
3216 GetGame().EnableVoN(this, false);
3217
3218 if (m_AdminLog)
3219 m_AdminLog.UnconStart(this);
3220
3221 // When we fall uncon we force out of block
3222 if (GetMeleeFightLogic())
3223 GetMeleeFightLogic().SetBlock(false);
3224 }
3225
3226 SetMasterAttenuation("UnconsciousAttenuation");
3227 }
override void AddSuspendRequest(int request_id)
bool IsSurrendered()
override void SetInventorySoftLock(bool status)
'soft lock' meaning inventory screen cannot be displayed, but mechanically, inventory operations are ...

References GameplayEffectWidgets_base::AddSuspendRequest(), GetGame(), GetInstanceType(), and m_AdminLog.

◆ OnUnconsciousStop()

void ManBase::OnUnconsciousStop ( int pCurrentCommandID)
inlineprotected

Definition at line 3229 of file PlayerBase.c.

3230 {
3232 SetSynchDirty();
3235 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
3236 {
3237 if (pCurrentCommandID != DayZPlayerConstants.COMMANDID_DEATH)
3238 {
3239 GetGame().GetSoundScene().SetSoundVolume(g_Game.m_volume_sound, 1);
3240 PPERequesterBank.GetRequester(PPERequester_UnconEffects).Stop();
3241 GetGame().GetMission().GetHud().ShowHudUI(true);
3242 GetGame().GetMission().GetHud().ShowQuickbarUI(true);
3243 if (GetGame().GetUIManager().IsDialogVisible())
3244 GetGame().GetUIManager().CloseDialog();
3245 if (GetGame().GetUIManager().IsMenuOpen(MENU_RESPAWN_DIALOGUE))
3246 GetGame().GetUIManager().FindMenu(MENU_RESPAWN_DIALOGUE).Close();
3247 }
3248 SetInventorySoftLock(false);
3250 }
3251 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER)
3252 {
3253 // enable voice communication
3254 if (IsAlive())
3255 GetGame().EnableVoN(this, true);
3256
3257 if (m_AdminLog)
3258 m_AdminLog.UnconStop(this);
3259 }
3260
3261 SetMasterAttenuation("");
3262 }
override void RemoveSuspendRequest(int request_id)
float m_UnconsciousVignetteTarget
Definition PlayerBase.c:109
const int MENU_RESPAWN_DIALOGUE
Definition constants.c:199

References g_Game, GetGame(), GetInstanceType(), m_AdminLog, MENU_RESPAWN_DIALOGUE, and GameplayEffectWidgets_base::RemoveSuspendRequest().

◆ OnUnconsciousUpdate()

void ManBase::OnUnconsciousUpdate ( float pDt,
int last_command )
inlineprotected

Definition at line 3264 of file PlayerBase.c.

3265 {
3267 if (GetGame().IsServer())
3268 {
3270
3272 {
3274 SetSynchDirty();
3275 }
3276
3278 SetHealth("", "", -100);
3279 }
3280 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
3281 {
3282 GetGame().GetMission().GetHud().ShowHudUI(false);
3283 GetGame().GetMission().GetHud().ShowQuickbarUI(false);
3284 if (GetPulseType() == EPulseType.REGULAR)
3285 {
3287
3288 float sin = Math.Sin(m_UnconsciousTime * 0.3);
3289 float sin_normalized = (sin + 1) / 2;
3290 if (sin_normalized < 0.05)
3291 m_UnconsciousVignetteTarget = (1 - shock_simple_normalized / 3) * 2/*vignette max*/;
3293 //PrintString(m_UnconsciousVignetteTarget.ToString());
3294 m_UnconParam.param1 = vignette;
3296 }
3297 }
3298 }
float GetSimplifiedShockNormalized()
EPulseType GetPulseType()
Definition PlayerBase.c:807
int SimplifyShock()
static const float UNCONSCIOUS_IN_WATER_TIME_LIMIT_TO_DEATH
static proto float Sin(float angle)
Returns sinus of angle in radians.

References GetGame(), GetInstanceType(), Math::Lerp(), Math::Sin(), and PlayerConstants::UNCONSCIOUS_IN_WATER_TIME_LIMIT_TO_DEATH.

◆ OnVariablesSynchronized()

override void ManBase::OnVariablesSynchronized ( )
inlineprotected

Remotely Activated Item Behaviour refresh on item is in hands

Definition at line 5389 of file PlayerBase.c.

5390 {
5391 super.OnVariablesSynchronized();
5392 if (m_ModuleLifespan)
5393 {
5395
5396 if (m_LifespanLevelLocal != m_LifeSpanState) //client solution, lifespan level changed
5397 {
5400 }
5401 }
5402
5405 GetBleedingManagerRemote().OnVariablesSynchronized(GetBleedingBits());
5406
5407 if (m_CorpseStateLocal != m_CorpseState && (IsPlayerLoaded() || IsControlledPlayer()))
5409
5411 {
5412 RefreshHandAnimationState(396); //mean animation blend time
5414 }
5416 {
5419 else
5422 }
5423
5424 //-------MODIFIERS START--------
5426 {
5427 int diff = (m_SyncedModifiers & ~m_SyncedModifiersPrev) | (~m_SyncedModifiers & m_SyncedModifiersPrev);//XOR gets us a mask for modifiers that changed by either deactivating, or activating
5428
5429 if (eModifierSyncIDs.MODIFIER_SYNC_DROWNING & diff)//has this modifier's status as active/inactive changed ?
5430 {
5431 if (eModifierSyncIDs.MODIFIER_SYNC_DROWNING & m_SyncedModifiers)//is this modifier currently active ? if so, it means it's been just activated
5432 SetDrowning(true);
5433 else
5434 SetDrowning(false);
5435
5436 }
5437
5439 }
5440 //-------MODIFIERS END--------
5441
5443
5446 if (itemHands)
5447 {
5448 RemotelyActivatedItemBehaviour raib = itemHands.GetRemotelyActivatedItemBehaviour();
5449 if (raib)
5450 raib.OnVariableSynchronized();
5451 }
5452 }
void RefreshHandAnimationState(int delay=0)
bool m_InsideEffectAreaPrev
Definition PlayerBase.c:157
void HandleBrokenLegsSync()
int m_RefreshAnimStateIdx
Definition PlayerBase.c:18
void OnPlayerIsNowInsideEffectAreaEndClient()
Definition PlayerBase.c:661
bool IsPlayerLoaded()
int GetBleedingBits()
Definition PlayerBase.c:770
void OnPlayerIsNowInsideEffectAreaBeginClient()
Definition PlayerBase.c:656
BleedingSourcesManagerRemote GetBleedingManagerRemote()
void SetDrowning(bool enable)
void CheckSoundEvent()
int m_LocalRefreshAnimStateIdx
Definition PlayerBase.c:17

References m_BloodType.

◆ OnVehicleSeatDriverEnter()

void ManBase::OnVehicleSeatDriverEnter ( )
inlineprotected

Definition at line 3872 of file PlayerBase.c.

3873 {
3874 m_IsVehicleSeatDriver = true;
3875 if (m_Hud)
3877 }
void ShowVehicleInfo()

References m_Hud, and Hud::ShowVehicleInfo().

◆ OnVehicleSeatDriverLeft()

void ManBase::OnVehicleSeatDriverLeft ( )
inlineprotected

Definition at line 3879 of file PlayerBase.c.

3880 {
3881 m_IsVehicleSeatDriver = false;
3882 if (m_Hud)
3884 }
void HideVehicleInfo()

References Hud::HideVehicleInfo(), and m_Hud.

◆ OnVehicleSwitchSeat()

void ManBase::OnVehicleSwitchSeat ( int seatIndex)
inlineprotected

Definition at line 3864 of file PlayerBase.c.

3865 {
3866 if (seatIndex == DayZPlayerConstants.VEHICLESEAT_DRIVER)
3868 else
3870 }

◆ OnVoiceEvent()

void ManBase::OnVoiceEvent ( PlayerSoundEventBase voice_event)
inlineprotected

Definition at line 5682 of file PlayerBase.c.

5683 {
5684 if (m_EffectWidgets)
5685 {
5686 MaskBase mask = MaskBase.Cast(GetInventory().FindAttachment(InventorySlots.MASK));
5687 if (mask)
5688 {
5690 //m_EffectWidgets.SetBreathIntensityStamina(GetStaminaHandler().GetStaminaCap(),GetStaminaHandler().GetStamina());
5691 }
5692 }
5693 }
void UpdateMaskBreathWidget(notnull MaskBase mask, bool is_start=false)

◆ OnVoiceEventPlayback()

void ManBase::OnVoiceEventPlayback ( PlayerSoundEventBase voice_event,
AbstractWave callback,
float playback_time )
inlineprotected

called every cmd handler tick during a playback of PlayerSoundEvent, m_ProcessPlaybackEvent needs to be enabled on the PlayerSoundEvent

Definition at line 5697 of file PlayerBase.c.

5698 {
5699 if (m_EffectWidgets)
5700 {
5701 MaskBase mask = MaskBase.Cast(GetInventory().FindAttachment(InventorySlots.MASK));
5702 if (mask)
5703 {
5704 if (m_EffectWidgets.m_MaskWidgetUpdateCount < 2 && callback.GetLength() > 2 && playback_time > 0.5)
5706 }
5707 }
5708 }

◆ PhysicalPredictiveDropItem()

override bool ManBase::PhysicalPredictiveDropItem ( EntityAI entity,
bool heavy_item_only = true )
inlineprotected

Definition at line 8467 of file PlayerBase.c.

8468 {
8469 vector dir;
8470 ItemBase item = ItemBase.Cast(entity);
8471
8472 if (GetItemInHands() == item) //from hands
8473 {
8474 //HOTFIX
8475 return PredictiveDropEntity(item);
8476
8477 if (entity.ConfigGetString("physLayer") != "item_large" && heavy_item_only)
8478 return PredictiveDropEntity(item);
8479 else
8480 {
8481 dir = GetOrientation();
8482 //item.m_ItemBeingDropped = true;
8483 return GetHumanInventory().ThrowEntity(item, dir, 0);
8484 }
8485 }
8486 else //from anywhere else
8487 {
8489 if (CastTo(mngr_client, m_ActionManager))
8490 {
8491 ActionTarget atrg = new ActionTarget(null, null, -1, vector.Zero, -1);
8492 if (mngr_client.GetAction(ActionDropItemSimple).Can(this, atrg, item))
8493 {
8494 //Param1<bool> p1 = new Param1<bool>(false);
8495 //p1.param1 = heavy_item_only;
8496 mngr_client.PerformActionStart(mngr_client.GetAction(ActionDropItemSimple), atrg, item/*,p1*/);
8497 return true;
8498 }
8499 return false;
8500 }
8501 else
8502 return true;
8503 }
8504 }
class ActionTargets ActionTarget
vector GetOrientation()

References ActionTarget, GetOrientation(), and vector::Zero.

◆ PlacingCancelLocal()

void ManBase::PlacingCancelLocal ( )
inlineprotected

Definition at line 2161 of file PlayerBase.c.

2162 {
2163 EntityAI entityInHands = GetHumanInventory().GetEntityInHands();
2164 if (entityInHands && entityInHands.HasEnergyManager())
2165 {
2166 if (entityInHands.GetCompEM().IsPlugged())
2167 entityInHands.OnPlacementCancelled(this);
2168 }
2169
2171
2172 delete m_HologramLocal;
2173 }
void SetLocalProjectionPosition(vector local_position)

References vector::Zero.

◆ PlacingCancelServer()

void ManBase::PlacingCancelServer ( )
inlineprotected

Definition at line 2134 of file PlayerBase.c.

2135 {
2136 EntityAI entityInHands = GetHumanInventory().GetEntityInHands();
2137
2138 if (IsPlacingServer())
2139 {
2141 GetHologramServer().GetParentEntity().OnPlacementCancelled(this);
2143
2144 delete m_HologramServer;
2145
2146 return;
2147 }
2148 else if (entityInHands && entityInHands.HasEnergyManager())
2149 {
2150 if (entityInHands.GetCompEM().IsPlugged())
2151 entityInHands.OnPlacementCancelled(this);
2152 }
2153 }
EntityAI GetParentEntity()
Definition Hologram.c:1230
void CheckPowerSource()
Definition Hologram.c:930
bool IsPlacingServer()
Hologram GetHologramServer()

References vector::Zero.

◆ PlacingCompleteLocal()

void ManBase::PlacingCompleteLocal ( )
inlineprotected

Definition at line 2181 of file PlayerBase.c.

2182 {
2184 delete m_HologramLocal;
2185 }

References vector::Zero.

◆ PlacingCompleteServer()

void ManBase::PlacingCompleteServer ( )
inlineprotected

Definition at line 2175 of file PlayerBase.c.

2176 {
2178 delete m_HologramServer;
2179 }

References vector::Zero.

◆ PlacingStartLocal()

void ManBase::PlacingStartLocal ( ItemBase item)
inlineprotected

Definition at line 2122 of file PlayerBase.c.

2123 {
2124 if (GetGame().IsMultiplayer() && GetGame().IsServer())
2125 return;
2126
2127 if (item)
2128 {
2130 GetHologramLocal().GetProjectionEntity().OnPlacementStarted(this);
2131 }
2132 }
EntityAI GetProjectionEntity()
Definition Hologram.c:1240
Hologram GetHologramLocal()
vector GetLocalProjectionPosition()

References GetGame().

◆ PlacingStartServer()

void ManBase::PlacingStartServer ( ItemBase item)
inlineprotected

Definition at line 2109 of file PlayerBase.c.

2110 {
2111 if (item)
2112 {
2116 GetHologramServer().GetProjectionEntity().OnPlacementStarted(this);
2119 }
2120 }
void SetProjectionOrientation(vector orientation)
Definition Hologram.c:1312
void RefreshVisual()
Definition Hologram.c:1446
void SetProjectionPosition(vector position)
Definition Hologram.c:1304
vector GetLocalProjectionOrientation()

◆ PlayAttachmentDropSound()

void ManBase::PlayAttachmentDropSound ( )
inlineprotected

Definition at line 4990 of file PlayerBase.c.

4991 {
4992 //TODO
4993 }

◆ PlayerBase()

void ManBase::PlayerBase ( )
inlineprotected

Definition at line 285 of file PlayerBase.c.

286 {
287 Init();
288 }
void Init()
Definition PlayerBase.c:290

References Init().

◆ PlaySound()

override SoundOnVehicle ManBase::PlaySound ( string sound_name,
float range,
bool create_local = false )
inlineprotected

Definition at line 4563 of file PlayerBase.c.

4564 {
4565 return BetaSound.SaySound(this, sound_name, range, false);
4566 }
static SoundOnVehicle SaySound(Object source, string sound_name, float distance, bool looped)
Definition BetaSound.c:3

References BetaSound::SaySound().

◆ PlaySoundEvent()

override bool ManBase::PlaySoundEvent ( EPlayerSoundEventID id,
bool from_anim_system = false,
bool is_from_server = false )
inlineprotected

Definition at line 6936 of file PlayerBase.c.

6937 {
6939 }

◆ PlaySoundEventEx()

override bool ManBase::PlaySoundEventEx ( EPlayerSoundEventID id,
bool from_anim_system = false,
bool is_from_server = false,
int param = 0 )
inlineprotected

Definition at line 6941 of file PlayerBase.c.

6942 {
6943 if (!m_PlayerSoundEventHandler)
6944 return false;
6945
6946 return m_PlayerSoundEventHandler.PlayRequestEx(id, is_from_server, param);
6947 }

◆ PredictiveDropEntity()

override bool ManBase::PredictiveDropEntity ( notnull EntityAI item)
inlineprotected

We don't care if a valid transform couldn't be found, we just want to preferably use it instead of placing on the player

Definition at line 7903 of file PlayerBase.c.

7904 {
7905 bool can_detach;
7907 {
7908 if (can_detach)
7909 {
7910 vector m4[4];
7912
7916 il.SetGround(item, m4);
7917 return GetWeaponManager().DetachMagazine(il);
7918 }
7919 return false;
7920 }
7921 return super.PredictiveDropEntity(item);
7922 }
static proto native bool PrepareDropEntityPos(EntityAI owner, notnull EntityAI item, out vector mat[4], bool useValuesInMatrix=false, int conflictCheckDepth=-1)
Finds a transformation for the item to be dropped to If the initial transforation overlaps with anoth...
bool CanRedirectToWeaponManager(notnull EntityAI item, out bool isActionPossible)
const int INVENTORY_ENTITY_DROP_OVERLAP_DEPTH
Definition constants.c:908
static void MatrixIdentity4(out vector mat[4])
Creates identity matrix.
Definition EnMath3D.c:233

References GameConstants::INVENTORY_ENTITY_DROP_OVERLAP_DEPTH, Math3D::MatrixIdentity4(), and GameInventory::PrepareDropEntityPos().

◆ PredictiveForceSwapEntities()

override bool ManBase::PredictiveForceSwapEntities ( notnull EntityAI item1,
notnull EntityAI item2,
notnull InventoryLocation item2_dst )
inlineprotected

Definition at line 7983 of file PlayerBase.c.

7984 {
7986
7988 if (item1.IsHeavyBehaviour() && item1.GetInventory().GetCurrentInventoryLocation(il) && il.GetType() == InventoryLocationType.GROUND && !m_ActionManager.GetRunningAction())
7989 {
7990 //Print("override bool PredictiveForceSwapEntities (notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)");
7993
7994 ActionTarget atrg = new ActionTarget(item1, null, -1, vector.Zero, -1.0);
7995 if (mngr_client.GetAction(ActionSwapItemToHands).Can(this, atrg, ItemBase.Cast(item2)))
7996 mngr_client.PerformActionStart(mngr_client.GetAction(ActionSwapItemToHands), atrg, ItemBase.Cast(item2));
7997 return true;
7998 }
7999 else
8000 return super.PredictiveForceSwapEntities(item1, item2, item2_dst);
8001 }
void ForceStandUpForHeavyItemsSwap(notnull EntityAI item1, notnull EntityAI item2)

References ActionTarget, ForceStandUpForHeavyItemsSwap(), and vector::Zero.

◆ PredictiveSwapEntities()

override bool ManBase::PredictiveSwapEntities ( notnull EntityAI item1,
notnull EntityAI item2 )
inlineprotected

Definition at line 7924 of file PlayerBase.c.

7925 {
7927 //Print("PlayerBase | PredictiveSwapEntities");
7930
7931 if (swapmag1 && swapmag2)
7932 {
7934
7935 if (Class.CastTo(parentWpn, swapmag1.GetHierarchyParent()))
7936 {
7937 if (GetWeaponManager().CanSwapMagazine(parentWpn, swapmag2))
7938 {
7939 Print("[inv] PlayerBase.PredictiveSwapEntities: swapping mag1=" + swapmag1 + " to parent wpn=" + parentWpn + " of mag1=" + swapmag1);
7940 return GetWeaponManager().SwapMagazine(swapmag2);
7941 }
7942 else
7943 {
7944 Print("[inv] PlayerBase.PredictiveSwapEntities: can not swap magazines");
7945 return false;
7946 }
7947 }
7948
7949 if (Class.CastTo(parentWpn, swapmag2.GetHierarchyParent()))
7950 {
7951 if (GetWeaponManager().CanSwapMagazine(parentWpn, swapmag1))
7952 {
7953 Print("[inv] PlayerBase.PredictiveSwapEntities: swapping mag1=" + swapmag1 + " to parent wpn=" + parentWpn + " of mag2=" + swapmag2);
7954 return GetWeaponManager().SwapMagazine(swapmag1);
7955 }
7956 else
7957 {
7958 Print("[inv] PlayerBase.PredictiveSwapEntities: can not swap magazines");
7959 return false;
7960 }
7961 }
7962 }
7963
7967 {
7970
7971 ActionTarget atrg = new ActionTarget(item_ground, null, -1, vector.Zero, -1.0);
7972 if (mngr_client.GetAction(ActionSwapItemToHands).Can(this, atrg, ItemBase.Cast(item_hands)))
7973 {
7974 mngr_client.PerformActionStart(mngr_client.GetAction(ActionSwapItemToHands), atrg, ItemBase.Cast(item_hands));
7975 return true;
7976 }
7977 return super.PredictiveSwapEntities(item1, item2);
7978 }
7979 else
7980 return super.PredictiveSwapEntities(item1, item2);
7981 }
bool IsSwapBetweenHandsAndGroundLargeItem(notnull EntityAI item1, notnull EntityAI item2, out EntityAI item_hands, out EntityAI item_ground)

References ActionTarget, Class::CastTo(), ForceStandUpForHeavyItemsSwap(), Print(), and vector::Zero.

◆ PredictiveTakeEntityToHands()

override void ManBase::PredictiveTakeEntityToHands ( EntityAI item)
inlineprotected

Definition at line 8003 of file PlayerBase.c.

8004 {
8005 if (item.IsHeavyBehaviour() && !m_ActionManager.GetRunningAction() && !item.GetHierarchyParent())
8006 {
8008 if (CastTo(mngr_client, m_ActionManager))
8009 {
8010 ActionTarget atrg = new ActionTarget(item, null, -1, vector.Zero, -1.0);
8011
8012 if (mngr_client.GetAction(ActionTakeItemToHands).Can(this, atrg, null))
8013 mngr_client.PerformActionStart(mngr_client.GetAction(ActionTakeItemToHands), atrg, null);
8014 /*).Can(this,
8015 mngr_client.ActionStart(mngr_client.GetAction(ActionTakeItemToHands),mngr_client.FindActionTarget(),null);
8016 return;*/
8017 }
8018 }
8019 else
8020 super.PredictiveTakeEntityToHands(item);
8021 }

References ActionTarget, and vector::Zero.

◆ PredictiveTakeEntityToInventory()

override bool ManBase::PredictiveTakeEntityToInventory ( FindInventoryLocationType flags,
notnull EntityAI item )
inlineprotected

Definition at line 7832 of file PlayerBase.c.

7833 {
7834 bool can_detach;
7836 {
7838 if (can_detach && GetInventory().FindFreeLocationFor(item, flags, il))
7839 return GetWeaponManager().DetachMagazine(il);
7840 return false;
7841 }
7842 return super.PredictiveTakeEntityToInventory(flags, item);
7843 }

◆ PredictiveTakeEntityToTargetAttachment()

override bool ManBase::PredictiveTakeEntityToTargetAttachment ( notnull EntityAI target,
notnull EntityAI item )
inlineprotected

Definition at line 7845 of file PlayerBase.c.

7846 {
7848 Magazine mag = Magazine.Cast(item);
7849 if (parentWpn && mag)
7850 {
7851 if (GetWeaponManager().CanAttachMagazine(parentWpn, mag))
7852 return GetWeaponManager().AttachMagazine(mag);
7853
7854 return false;
7855 }
7856 return super.PredictiveTakeEntityToTargetAttachment(target, item);
7857 }

◆ PredictiveTakeEntityToTargetAttachmentEx()

override bool ManBase::PredictiveTakeEntityToTargetAttachmentEx ( notnull EntityAI target,
notnull EntityAI item,
int slot )
inlineprotected

Definition at line 7859 of file PlayerBase.c.

7860 {
7862 Magazine mag = Magazine.Cast(item);
7863 if (parentWpn && mag)
7864 {
7865 if (target.CanReceiveAttachment(item, slot) && GetWeaponManager().CanAttachMagazine(parentWpn, mag))
7866 return GetWeaponManager().AttachMagazine(mag);
7867
7868 return false;
7869 }
7870 return super.PredictiveTakeEntityToTargetAttachmentEx(target, item, slot);
7871 }

◆ PredictiveTakeEntityToTargetCargo()

override bool ManBase::PredictiveTakeEntityToTargetCargo ( notnull EntityAI target,
notnull EntityAI item )
inlineprotected

Definition at line 7873 of file PlayerBase.c.

7874 {
7875 bool can_detach;
7877 {
7879 if (can_detach && target.GetInventory().FindFreeLocationFor(item, FindInventoryLocationType.CARGO, il))
7880 return GetWeaponManager().DetachMagazine(il);
7881 return false;
7882 }
7883 return super.PredictiveTakeEntityToTargetCargo(target, item);
7884 }

◆ PredictiveTakeEntityToTargetCargoEx()

override bool ManBase::PredictiveTakeEntityToTargetCargoEx ( notnull CargoBase cargo,
notnull EntityAI item,
int row,
int col )
inlineprotected

Definition at line 7886 of file PlayerBase.c.

7887 {
7888 bool can_detach;
7890 {
7891 if (can_detach)
7892 {
7894 dst.SetCargoAuto(cargo, item, row, col, item.GetInventory().GetFlipCargo());
7895
7896 return GetWeaponManager().DetachMagazine(dst);
7897 }
7898 return false;
7899 }
7900 return super.PredictiveTakeEntityToTargetCargoEx(cargo, item, row, col);
7901 }

◆ PredictiveTakeEntityToTargetInventory()

override bool ManBase::PredictiveTakeEntityToTargetInventory ( notnull EntityAI target,
FindInventoryLocationType flags,
notnull EntityAI item )
inlineprotected

Definition at line 7819 of file PlayerBase.c.

7820 {
7821 bool can_detach;
7823 {
7825 if (can_detach && target.GetInventory().FindFreeLocationFor(item, flags, il))
7826 return GetWeaponManager().DetachMagazine(il);
7827 return false;
7828 }
7829 return super.PredictiveTakeEntityToTargetInventory(target, flags, item);
7830 }

◆ PredictiveTakeToDst()

override bool ManBase::PredictiveTakeToDst ( notnull InventoryLocation src,
notnull InventoryLocation dst )
inlineprotected

Definition at line 8023 of file PlayerBase.c.

8024 {
8025 EntityAI item = src.GetItem();
8026 if (item)
8027 {
8028 bool can_detach;
8029
8031 {
8032 if (can_detach)
8033 return GetWeaponManager().DetachMagazine(dst);
8034 return false;
8035 }
8036 return super.PredictiveTakeToDst(src, dst);
8037 }
8038 return false;
8039 }

◆ PreloadDecayTexture()

void ManBase::PreloadDecayTexture ( )
inlineprotected

Definition at line 8436 of file PlayerBase.c.

8437 {
8438 int idx;
8439 int slot_id;
8440
8441 idx = GetHiddenSelectionIndex("decay_preload");
8442 if (idx > -1)
8443 {
8444 SetObjectTexture(idx, m_DecayedTexture);
8445 //Print("'decay_preload'" + m_DecayedTexture +" loaded on " + GetModelName());
8446 }
8447 else
8448 {
8449 //Print("No 'decay_preload' selection found on " + this);
8450 }
8451 }

◆ PrintAgents()

void ManBase::PrintAgents ( )
inlineprotected

Definition at line 7195 of file PlayerBase.c.

7196 {
7197 m_AgentPool.PrintAgents();
7198 }

◆ ProcessADDModifier()

void ManBase::ProcessADDModifier ( )
inlineprotected

Definition at line 6231 of file PlayerBase.c.

6232 {
6233 if (m_AddModifier != -1)
6234 {
6236 if (ad)
6237 ad.StartModifier(m_AddModifier);
6238
6239 m_AddModifier = -1;
6240 }
6241 }
int m_AddModifier
Definition PlayerBase.c:194
proto native HumanCommandAdditives GetCommandModifier_Additives()
default (always-on modifiers)
class HumanCommandWeapons HumanCommandAdditives()
Definition human.c:1086

References GetCommandModifier_Additives(), and HumanCommandAdditives().

◆ ProcessDrowning()

void ManBase::ProcessDrowning ( float dT)
inlineprotected

Definition at line 1907 of file PlayerBase.c.

1908 {
1910
1911#ifndef SERVER
1912 //PP EFFECTS
1914 req.SetStamina01(GetStaminaHandler().GetStaminaNormalized());
1915#endif
1916 }

◆ ProcessFeetDamageServer()

override void ManBase::ProcessFeetDamageServer ( int pUserInt)
inlineprotected

Definition at line 1568 of file PlayerBase.c.

1569 {
1570 //InventorySlots.HEADGEAR
1571 EntityAI shoes = GetInventory().FindAttachment(InventorySlots.FEET);
1572
1573 string surface; int liquid;
1574 GetGame().SurfaceUnderObject(this, surface, liquid);
1575 float modifier_surface = Surface.GetParamFloat(surface, "footDamage");
1576
1577 if (shoes && shoes.GetHealthLevel() < 4)
1578 {
1580
1581 return;
1582 }
1583
1584 float rnd = Math.RandomFloat01();
1587 if (rnd < chance)
1588 {
1589 if (pUserInt % 2 == 0)
1590 {
1591 if (GetBleedingManagerServer().AttemptAddBleedingSourceBySelection("RightFoot"))
1592 SendSoundEvent(EPlayerSoundEventID.INJURED_LIGHT);
1593
1594 }
1595 else
1596 {
1597 if (GetBleedingManagerServer().AttemptAddBleedingSourceBySelection("LeftFoot"))
1598 SendSoundEvent(EPlayerSoundEventID.INJURED_LIGHT);
1599 }
1600 }
1601 }
void SendSoundEvent(EPlayerSoundEventID id)
float GetFeetDamageMoveModifier()
static const float SHOES_MOVEMENT_DAMAGE_PER_STEP
static const int CHECK_EVERY_N_STEP
static const float BAREFOOT_MOVEMENT_BLEED_MODIFIER
[seconds]
static float GetParamFloat(string surface_name, string param_name)
Definition Surface.c:3
static float RandomFloat01()
Returns a random float number between and min [inclusive] and max [inclusive].
Definition EnMath.c:126

References PlayerConstants::BAREFOOT_MOVEMENT_BLEED_MODIFIER, PlayerConstants::CHECK_EVERY_N_STEP, GetGame(), Surface::GetParamFloat(), Math::RandomFloat01(), and PlayerConstants::SHOES_MOVEMENT_DAMAGE_PER_STEP.

◆ ProcessHandDamage()

void ManBase::ProcessHandDamage ( float delta_time,
HumanMovementState pState )
inlineprotected

Definition at line 1535 of file PlayerBase.c.

1536 {
1537 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER || !GetGame().IsMultiplayer())
1538 {
1539 if (pState.m_iMovement == DayZPlayerConstants.MOVEMENTIDX_SLIDE)
1540 {
1541 //Print("sliding down");
1542 EntityAI gloves = GetInventory().FindAttachment(InventorySlots.GLOVES);
1543
1544 if (gloves && gloves.GetHealthLevel() < 4)
1545 {
1547 return;
1548 }
1549
1551 {
1552 if (Math.RandomFloat01() < 0.5)
1553 {
1554 if (GetBleedingManagerServer().AttemptAddBleedingSourceBySelection("LeftForeArmRoll"))
1555 SendSoundEvent(EPlayerSoundEventID.INJURED_LIGHT);
1556 }
1557 else
1558 {
1559 if (GetBleedingManagerServer().AttemptAddBleedingSourceBySelection("RightForeArmRoll"))
1560 SendSoundEvent(EPlayerSoundEventID.INJURED_LIGHT);
1561 }
1562 }
1563
1564 }
1565 }
1566 }
static const float GLOVES_DAMAGE_SLIDING_LADDER_PER_SEC
static const float CHANCE_TO_BLEED_SLIDING_LADDER_PER_SEC

References PlayerConstants::CHANCE_TO_BLEED_SLIDING_LADDER_PER_SEC, GetGame(), GetInstanceType(), PlayerConstants::GLOVES_DAMAGE_SLIDING_LADDER_PER_SEC, and Math::RandomFloat01().

◆ ProcessHoldBreath()

void ManBase::ProcessHoldBreath ( float dT)
inlineprotected

Definition at line 1934 of file PlayerBase.c.

1935 {
1936 if (IsTryingHoldBreath() && CanStartConsumingStamina(EStaminaConsumers.HOLD_BREATH))
1937 {
1938 if (!m_IsHoldingBreath)
1939 {
1941 m_IsHoldingBreath = true;
1942 }
1943 }
1944 else if (!IsTryingHoldBreath() || !CanConsumeStamina(EStaminaConsumers.HOLD_BREATH))
1945 {
1947 m_IsHoldingBreath = false;
1948 }
1949 }
override bool CanStartConsumingStamina(EStaminaConsumers consumer)
void OnHoldBreathStart()
void OnHoldBreathEnd()

◆ ProcessLiftWeapon()

override void ManBase::ProcessLiftWeapon ( )
inlineprotected

Definition at line 7664 of file PlayerBase.c.

7665 {
7666 if (m_ProcessLiftWeapon)
7667 {
7669 if (hcw)
7670 hcw.LiftWeapon(m_ProcessLiftWeaponState);
7671
7672 GetWeaponManager().OnLiftWeapon();
7673 m_LiftWeapon_player = m_ProcessLiftWeaponState;
7674 m_ProcessLiftWeapon = false;
7675
7676 //Debug.Log("SimulationStamp_server: " + this.GetSimulationTimeStamp());
7677 }
7678 }
proto native HumanCommandWeapons GetCommandModifier_Weapons()
returns interface for handling weapons

References GetCommandModifier_Weapons().

◆ QueueAddEffectWidget()

void ManBase::QueueAddEffectWidget ( array< int > effects)
inlineprotected

Definition at line 817 of file PlayerBase.c.

818 {
820 }

◆ QueueAddGlassesEffect()

void ManBase::QueueAddGlassesEffect ( int id)
inlineprotected

Definition at line 827 of file PlayerBase.c.

828 {
830 }

◆ QueueRemoveEffectWidget()

void ManBase::QueueRemoveEffectWidget ( array< int > effects)
inlineprotected

Definition at line 822 of file PlayerBase.c.

823 {
825 }

◆ QueueRemoveGlassesEffect()

void ManBase::QueueRemoveGlassesEffect ( int id)
inlineprotected

Definition at line 832 of file PlayerBase.c.

833 {
835 }

◆ QuickReloadWeapon()

void ManBase::QuickReloadWeapon ( EntityAI weapon)
inlineprotected

Definition at line 4400 of file PlayerBase.c.

4401 {
4404 }
void ReloadWeapon(EntityAI weapon, EntityAI magazine)
EntityAI GetMagazineToReload(EntityAI weapon)

◆ RadialQuickBarCombine()

void ManBase::RadialQuickBarCombine ( int slotClicked)
inlineprotected

Definition at line 4391 of file PlayerBase.c.

4392 {
4394 EntityAI entity_in_hands = GetHumanInventory().GetEntityInHands();
4395
4397 }

◆ RadialQuickBarSingleUse()

void ManBase::RadialQuickBarSingleUse ( int slotClicked)
inlineprotected

Definition at line 4385 of file PlayerBase.c.

4386 {
4388 }

◆ ReadLiftWeaponRequest()

bool ManBase::ReadLiftWeaponRequest ( int userDataType,
ParamsReadContext ctx )
inlineprotected

Definition at line 7586 of file PlayerBase.c.

7587 {
7588 bool state;
7589 ctx.Read(state);
7590
7592 pCtx.Write(state);
7593
7595
7596 return true;
7597 }
proto native void SendSyncJuncture(int pJunctureID, ParamsWriteContext ctx)
-------------— sync stuff ----------------------—

References SendSyncJuncture(), and DayZPlayerSyncJunctures::SJ_WEAPON_LIFT.

◆ RefreshHandAnimationState()

void ManBase::RefreshHandAnimationState ( int delay = 0)
inlineprotected

Definition at line 4170 of file PlayerBase.c.

4171 {
4172 if (delay == 0)
4173 {
4174 GetItemAccessor().OnItemInHandsChanged(true);
4175 GetItemAccessor().ResetWeaponInHands();
4176 }
4177 else
4178 GetGame().GetCallQueue(CALL_CATEGORY_GUI).CallLater(RefreshHandAnimationState, delay, false, 0);
4179 }

References CALL_CATEGORY_GUI, GetGame(), and GetItemAccessor().

◆ ReloadWeapon()

void ManBase::ReloadWeapon ( EntityAI weapon,
EntityAI magazine )
inlineprotected

Definition at line 4407 of file PlayerBase.c.

4408 {
4409 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
4410 {
4412 CastTo(mngr_client, GetActionManager());
4413
4414 if (mngr_client && FirearmActionLoadMultiBulletRadial.Cast(mngr_client.GetRunningAction()))
4415 mngr_client.Interrupt();
4416 else if (GetHumanInventory().GetEntityInHands() != magazine)
4417 {
4419 Magazine mag;
4422 if (GetWeaponManager().CanUnjam(wpn))
4423 GetWeaponManager().Unjam();
4424 else if (GetWeaponManager().CanAttachMagazine(wpn, mag))
4425 GetWeaponManager().AttachMagazine(mag);
4426 else if (GetWeaponManager().CanSwapMagazine(wpn, mag))
4427 GetWeaponManager().SwapMagazine(mag);
4428 else if (GetWeaponManager().CanLoadBullet(wpn, mag))
4429 {
4430 //GetWeaponManager().LoadMultiBullet(mag);
4431
4432 ActionTarget atrg = new ActionTarget(mag, this, -1, vector.Zero, -1.0);
4433 if (mngr_client && !mngr_client.GetRunningAction() && mngr_client.GetAction(FirearmActionLoadMultiBulletRadial).Can(this, atrg, wpn))
4434 mngr_client.PerformActionStart(mngr_client.GetAction(FirearmActionLoadMultiBulletRadial), atrg, wpn);
4435 }
4436 }
4437 }
4438 }

References ActionTarget, Class::CastTo(), GetActionManager(), GetInstanceType(), and vector::Zero.

◆ RemoveAction() [1/2]

void ManBase::RemoveAction ( typename actionName )
inlineprotected

Definition at line 1491 of file PlayerBase.c.

1492 {
1494 }
void RemoveAction(typename actionName, out TInputActionMap InputActionMap)

References m_InputActionMap, and RemoveAction().

◆ RemoveAction() [2/2]

void ManBase::RemoveAction ( typename actionName ,
out TInputActionMap InputActionMap )
inlineprotected

Definition at line 1472 of file PlayerBase.c.

1473 {
1474 ActionBase action = GetActionManager().GetAction(actionName);
1475 typename ai = action.GetInputType();
1477
1478 if (action_array)
1479 {
1480 for (int i = 0; i < action_array.Count(); i++)
1481 {
1482 if (action == action_array.Get(i))
1483 action_array.Remove(i);
1484 }
1487 }
1488 action_array.Insert(action);
1489 }

References GetActionManager().

◆ RemoveActiveNV()

void ManBase::RemoveActiveNV ( int type)
inlineprotected

Definition at line 8272 of file PlayerBase.c.

8273 {
8274 if (!m_ActiveNVTypes || (GetGame().IsMultiplayer() && GetGame().IsServer()))
8275 {
8276#ifdef DEVELOPER
8277 Error("RemoveActiveNV | illegal server-side call!");
8278#endif
8279
8280 return;
8281 }
8282
8283 if (m_ActiveNVTypes.Find(type) != -1) //TODO - set instead?
8284 m_ActiveNVTypes.RemoveItem(type);
8285 }

References Error(), and GetGame().

◆ RemoveAgent()

override void ManBase::RemoveAgent ( int agent_id)
inlineprotected

Definition at line 7159 of file PlayerBase.c.

7160 {
7161 m_AgentPool.RemoveAgent(agent_id);
7162 }

◆ RemoveAllAgents()

override void ManBase::RemoveAllAgents ( )
inlineprotected

Definition at line 7165 of file PlayerBase.c.

7166 {
7167 m_AgentPool.RemoveAllAgents();
7168 }

◆ RemoveAllItems()

void ManBase::RemoveAllItems ( )
inlineprotected

Definition at line 1287 of file PlayerBase.c.

1288 {
1290 ItemBase item;
1291 GetInventory().EnumerateInventory(InventoryTraversalType.PREORDER, itemsArray);
1292
1293 for (int i = 0; i < itemsArray.Count(); i++)
1294 {
1295 Class.CastTo(item, itemsArray.Get(i));
1296 if (item && !item.IsInherited(SurvivorBase)) GetInventory().LocalDestroyEntity(item);
1297 }
1298 }

References Class::CastTo().

◆ RemoveCurrentEffectTrigger()

void ManBase::RemoveCurrentEffectTrigger ( )
inlineprotected

Definition at line 580 of file PlayerBase.c.

581 {
583 {
584 /*
585 Print("--------------------------------------------------");
586 Print("OFF Disabling effect");
587 Print("--------------------------------------------------");
588 */
591 }
592 }
EffectTrigger m_CurrentEffectTrigger
Definition PlayerBase.c:158

References EffectTrigger::m_PPERequester.

◆ RemovePossibleCoverFaceForShave()

void ManBase::RemovePossibleCoverFaceForShave ( )
inlineprotected

DEPRECATED!

Definition at line 1148 of file PlayerBase.c.

1149 {
1151 }

◆ RemoveQuickBarEntityShortcut()

void ManBase::RemoveQuickBarEntityShortcut ( EntityAI entity)
inlineprotected

Definition at line 1838 of file PlayerBase.c.

1839 {
1840 int index = m_QuickBarBase.FindEntityIndex(entity);
1841 if (index != -1)
1842 m_QuickBarBase.SetEntityShortcut(entity, -1);
1843 }

◆ RequestHandAnimationStateRefresh()

void ManBase::RequestHandAnimationStateRefresh ( )
inlineprotected

Definition at line 4159 of file PlayerBase.c.

4160 {
4161 if ((GetGame().IsMultiplayer() && GetGame().IsServer()))
4162 {
4164 if (m_RefreshAnimStateIdx > 3)
4166 SetSynchDirty();
4167 }
4168 }

References GetGame().

◆ RequestResetADSSync()

void ManBase::RequestResetADSSync ( )
inlineprotected

Definition at line 2252 of file PlayerBase.c.

2253 {
2254 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT && GetGame().IsMultiplayer())
2255 {
2257 {
2259 ctx.Write(INPUT_UDT_RESET_ADS);
2260 ctx.Send();
2261 }
2262 }
2263 else if (!GetGame().IsMultiplayer())
2264 m_ResetADS = true;
2265 }
const int INPUT_UDT_RESET_ADS
Definition _constants.c:17

References ScriptInputUserData::CanStoreInputUserData(), GetGame(), GetInstanceType(), and INPUT_UDT_RESET_ADS.

◆ RequestSoundEvent()

override void ManBase::RequestSoundEvent ( EPlayerSoundEventID id,
bool from_server_and_client = false )
inlineprivate

Definition at line 6895 of file PlayerBase.c.

6896 {
6898 }

◆ RequestSoundEventEx()

override void ManBase::RequestSoundEventEx ( EPlayerSoundEventID id,
bool from_server_and_client = false,
int param = 0 )
inlineprivate

Definition at line 6885 of file PlayerBase.c.

6886 {
6887 if (from_server_and_client && GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
6888 {
6889 PlaySoundEventEx(id, false, false, param);
6890 return;
6891 }
6893 }
void SendSoundEventEx(EPlayerSoundEventID id, int param=0)

References GetInstanceType().

◆ RequestTriggerEffect()

void ManBase::RequestTriggerEffect ( EffectTrigger trigger,
int ppeIdx = -1,
int aroundId = ParticleList.CONTAMINATED_AREA_GAS_AROUND,
int tinyId = ParticleList.CONTAMINATED_AREA_GAS_TINY,
string soundset = "",
bool partDynaUpdate = false,
int newBirthRate = 0,
bool forceUpdate = false )
inlineprotected

Definition at line 547 of file PlayerBase.c.

548 {
549 //do note multiple triggers can be calling this method within a single frame depending on the contaminated area setup and dynamic gameplay events(such as gas grenades being deployed)
550
552 return;
553 bool allow = false;
555 allow = true;
557 {
558 allow = true;
559 //Print("ON Enabling effect FORCED " + trigger);
560 }
561 else if (trigger.GetEffectsPriority() > m_CurrentEffectTrigger.GetEffectsPriority())
562 {
564 allow = true;
565 }
566 if (allow)
567 {
568 /*
569 Print("--------------------------------------------------");
570 Print("ON Enabling effect " + trigger);
571 Print("------------> soundset " + soundset);
572 Print("--------------------------------------------------");
573 */
576 }
577 }
int GetEffectsPriority()

References EffectTrigger::GetEffectsPriority().

◆ RequestUnconsciousness()

void ManBase::RequestUnconsciousness ( bool enable)
inlineprotected

◆ ResetActionEndInput()

void ManBase::ResetActionEndInput ( )
inlineprotected

Definition at line 4376 of file PlayerBase.c.

4377 {
4378 m_ActionQBControl = false;
4379 }

◆ ResetActiveNV()

void ManBase::ResetActiveNV ( )
inlineprotected

Definition at line 8287 of file PlayerBase.c.

8288 {
8289 m_ActiveNVTypes.Clear();
8290 }

◆ ResetADSPlayerSync()

bool ManBase::ResetADSPlayerSync ( int userDataType,
ParamsReadContext ctx )
inlineprotected

server only

Definition at line 2268 of file PlayerBase.c.

2269 {
2271 {
2274 return true;
2275 }
2276
2277 return false;
2278 }

References INPUT_UDT_RESET_ADS, SendSyncJuncture(), and DayZPlayerSyncJunctures::SJ_ADS_RESET.

◆ ResetConstructionActionData()

void ManBase::ResetConstructionActionData ( )
inlineprotected

Definition at line 1799 of file PlayerBase.c.

1800 {
1802 m_ConstructionActionData.ResetActionIndexes();
1803 }

◆ ResetPlayer()

void ManBase::ResetPlayer ( bool set_max)
inlineprotected

Definition at line 7011 of file PlayerBase.c.

7012 {
7013#ifdef DIAG_DEVELOPER
7014 if (GetGame().IsServer() || !GetGame().IsMultiplayer())
7015 {
7016 GetStomach().ClearContents();
7017
7018 DamageSystem.ResetAllZones(this);
7019 GetModifiersManager().ResetAll();
7020
7021 // bleeding sources
7023 m_BleedingManagerServer.RemoveAllSources();
7024
7025 // Stats
7026 if (GetPlayerStats())
7027 {
7028 int bloodType = GetStatBloodType().Get();
7031 }
7032
7033 // Agents
7034 if (m_AgentPool)
7035 m_AgentPool.RemoveAllAgents();
7036
7037 if (m_StaminaHandler)
7039
7040 // uncon
7041 if (IsUnconscious())
7043
7044 // set max
7045 if (set_max)
7046 {
7047 GetStatWater().Set(GetStatWater().GetMax());
7049 }
7050
7051 // fix up inventory
7053
7054 //remove bloody hands
7056 moduleLifespan.UpdateBloodyHandsVisibilityEx(this, eBloodyHandsTypes.CLEAN);
7057
7058 if (GetArrowManager())
7059 GetArrowManager().ClearArrows();
7060
7061 }
7062
7063 // client + single + server
7065 if (vehCmd)
7066 {
7067 CarScript car = CarScript.Cast(vehCmd.GetTransport());
7068 if (car)
7069 car.FixEntity();
7070 }
7071#endif
7072 }
void FixAllInventoryItems()
PlayerStomach GetStomach()
proto native float GetMax()

References GetArrowManager(), GetCommand_Vehicle(), GetGame(), GetMax(), GetPlugin(), m_StaminaHandler, PluginLifespan(), DayZPlayerSyncJunctures::SendPlayerUnconsciousness(), StaminaHandler::SetStamina(), and GameConstants::STAMINA_MAX.

◆ RPC()

override void ManBase::RPC ( int rpc_type,
array< ref Param > params,
bool guaranteed,
PlayerIdentity recipient = NULL )
inlineprotected

Definition at line 4996 of file PlayerBase.c.

4997 {
4999 }

◆ RunFightBlendTimer()

void ManBase::RunFightBlendTimer ( )
inlineprotected

Definition at line 4962 of file PlayerBase.c.

4963 {
4964 if (!m_FightEndBlendTimer)
4965 m_FightEndBlendTimer = new Timer();
4966 if (!m_FightEndBlendTimer.IsRunning())
4967 m_FightEndBlendTimer.Run(PlayerConstants.MELEE2_MOVEMENT_BLEND_DELAY, this, "EndFighting");
4968 }
static const float MELEE2_MOVEMENT_BLEND_DELAY

References PlayerConstants::MELEE2_MOVEMENT_BLEND_DELAY.

◆ Save()

bool ManBase::Save ( )
inlineprotected

Definition at line 7111 of file PlayerBase.c.

7112 {
7113 // saved player must be alive and not captive
7114 if (GetPlayerState() == EPlayerStates.ALIVE && !IsRestrained())
7115 {
7116 GetHive().CharacterSave(this);
7117 Debug.Log("Player " + this.ToString() + " saved as alive");
7118
7119 return true;
7120 }
7121 return false;
7122 }
EPlayerStates

References GetHive(), Debug::Log(), and ToString().

◆ SaveAreaPersistenceFlag()

void ManBase::SaveAreaPersistenceFlag ( ParamsWriteContext ctx)
inlineprivate

Definition at line 6493 of file PlayerBase.c.

6494 {
6495 if (GetModifiersManager())
6496 SetPersistentFlag(PersistentFlag.AREA_PRESENCE, GetModifiersManager().IsModifierActive(eModifiers.MDF_AREAEXPOSURE));//set the flag for player's presence in contaminated area
6497 ctx.Write(m_PersistentFlags);
6498 }
PersistentFlag
void SetPersistentFlag(PersistentFlag bit, bool enable)

References IsModifierActive().

◆ SaySoundSet()

AbstractWave ManBase::SaySoundSet ( string name)
inlineprotected

Definition at line 1983 of file PlayerBase.c.

1984 {
1986 {
1989
1991 }
1992
1993 m_SaySoundObject = m_SaySoundBuilder.BuildSoundObject();
1994 m_SaySoundObject.SetPosition(GetPosition());
1995 return GetGame().GetSoundScene().Play3D(m_SaySoundObject, m_SaySoundBuilder);
1996 }
void SoundObjectBuilder(SoundParams soundParams)
ref SoundObject m_SaySoundObject
Definition PlayerBase.c:206
ref SoundObjectBuilder m_SaySoundBuilder
Definition PlayerBase.c:205
ref SoundParams m_SaySoundParams
Definition PlayerBase.c:204
string m_SaySoundLastSetName
Definition PlayerBase.c:207

References GetGame(), GetPosition, name, and SoundObjectBuilder().

◆ SendLiftWeaponSync()

void ManBase::SendLiftWeaponSync ( bool state)
inlineprotected

Client-side only.

Definition at line 7611 of file PlayerBase.c.

7612 {
7614 //SP version
7615 if (!GetGame().IsMultiplayer())
7616 {
7617 m_LiftWeapon_player = state;
7618
7620 if (hcw)
7621 hcw.LiftWeapon(state);
7622
7623 GetWeaponManager().OnLiftWeapon();
7624
7625 return;
7626 }
7627
7629
7630 if (GetGame().IsMultiplayer() && GetGame().IsClient() && !ctx.CanStoreInputUserData())
7631 {
7632 //Print("ctx unavailable");
7633 return;
7634 }
7635 else if (GetGame().IsMultiplayer() && GetGame().IsClient() && ctx.CanStoreInputUserData())
7636 {
7637 //Print("sending ECB cancel request");
7639 ctx.Write(state);
7640 ctx.Send();
7641 }
7642 }

References GetCommandModifier_Weapons(), GetGame(), and INPUT_UDT_WEAPON_LIFT_EVENT.

◆ SendSoundEvent()

void ManBase::SendSoundEvent ( EPlayerSoundEventID id)
inlineprotected

Definition at line 6900 of file PlayerBase.c.

6901 {
6902 SendSoundEventEx(id);
6903 }

◆ SendSoundEventEx()

void ManBase::SendSoundEventEx ( EPlayerSoundEventID id,
int param = 0 )
inlineprotected

Definition at line 6905 of file PlayerBase.c.

6906 {
6907 if (!GetGame().IsServer())
6908 return;
6909 m_SoundEvent = id;
6911 SetSynchDirty();
6912
6913 if (!GetGame().IsMultiplayer())
6915
6916 //PrintString(GetGame().GetTime().ToString() + " Set SoundEvent, id:" + id.ToString());
6917 }

References GetGame().

◆ SetActionEndInput()

void ManBase::SetActionEndInput ( ActionBase action)
inlineprotected

Definition at line 4367 of file PlayerBase.c.

4368 {
4369 m_ActionQBControl = !action.GetInput().IsActive();
4370 }

◆ SetActions() [1/2]

void ManBase::SetActions ( )
inlineprotected

Definition at line 1376 of file PlayerBase.c.

1377 {
1378 }

◆ SetActions() [2/2]

void ManBase::SetActions ( out TInputActionMap InputActionMap)
inlineprotected

Definition at line 1348 of file PlayerBase.c.

1349 {
1355
1356 //-----------CheckIfCanMOveToTarget----------
1363 AddAction(ActionDrinkPondContinuous, InputActionMap);
1366
1370
1374 }
void ActionGetOutTransport()
void ActionStartEngine()
DEPRECATED.
ActionUncoverHeadBase ActionContinuousBase ActionUncoverHeadSelf()
ActionWashHandsWaterCB ActionContinuousBaseCB ActionWashHandsWater()

References ActionGetOutTransport(), ActionStartEngine(), ActionUncoverHeadSelf(), ActionWashHandsWater(), and AddAction().

◆ SetActionsRemoteTarget() [1/2]

void ManBase::SetActionsRemoteTarget ( )
inlineprotected

Definition at line 1389 of file PlayerBase.c.

1390 {
1391 }

◆ SetActionsRemoteTarget() [2/2]

◆ SetBleedingBits()

void ManBase::SetBleedingBits ( int bits)
inlineprotected

Definition at line 757 of file PlayerBase.c.

758 {
759 if (m_BleedingBits != bits)
760 {
761 if (m_BleedingBits == 0)
763 else if (bits == 0)
765 }
767 SetSynchDirty();
768 }
void OnBleedingBegin()
void OnBleedingEnd()

◆ SetBloodType()

void ManBase::SetBloodType ( int blood_type)
inlineprivate

Definition at line 6388 of file PlayerBase.c.

6389 {
6391 SetSynchDirty();
6392 }

References m_BloodType.

◆ SetBloodTypeVisible()

void ManBase::SetBloodTypeVisible ( bool show)
inlineprivate

Definition at line 6377 of file PlayerBase.c.

6378 {
6379 m_HasBloodTypeVisible = show;
6380 SetSynchDirty();
6381 }

◆ SetBloodyHands()

void ManBase::SetBloodyHands ( bool show)
inlineprotected

Definition at line 6341 of file PlayerBase.c.

6342 {
6343 SetBloodyHandsBase(show);
6344 }
void SetBloodyHandsBase(int type)

◆ SetBloodyHandsBase()

void ManBase::SetBloodyHandsBase ( int type)
inlineprivate

Definition at line 6351 of file PlayerBase.c.

6352 {
6354 SetSynchDirty();
6355
6356#ifdef DIAG_DEVELOPER
6357#ifndef SERVER
6358 if (IsControlledPlayer())
6359 {
6360 bool enable = type;
6361 DiagMenu.SetValue(DiagMenuIDs.LIFESPAN_BLOODY_HANDS, enable);
6362 }
6363#endif
6364#endif
6365 }
static proto void SetValue(int id, int value)
Set value at the given script id.

References DiagMenu::SetValue().

◆ SetBloodyHandsEx()

void ManBase::SetBloodyHandsEx ( eBloodyHandsTypes type)
inlineprotected

Definition at line 6346 of file PlayerBase.c.

6347 {
6348 SetBloodyHandsBase(type);
6349 }

◆ SetBloodyHandsPenalty()

void ManBase::SetBloodyHandsPenalty ( )
inlineprivate

Definition at line 6367 of file PlayerBase.c.

6368 {
6369 InsertAgent(eAgents.SALMONELLA, 1);
6370 }
override void InsertAgent(int agent, float count=1)

References InsertAgent().

◆ SetBrokenLegs()

void ManBase::SetBrokenLegs ( int stateId)
inlineprotected

Definition at line 3352 of file PlayerBase.c.

3353 {
3355
3357 eBrokenLegs state = GetBrokenLegs();//m_BrokenLegState can go bellow 0, cannot be used directly
3358
3359 if (state == eBrokenLegs.NO_BROKEN_LEGS)
3360 {
3361 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.BROKEN_LEGS;
3362 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.BROKEN_LEGS_SPLINT;
3363 }
3364 else if (state == eBrokenLegs.BROKEN_LEGS)
3365 SetLegHealth();
3366 else if (state == eBrokenLegs.BROKEN_LEGS_SPLINT)
3367 {
3368 // handle splint here
3369 }
3370
3371 SetSynchDirty();
3372 }
static void SendBrokenLegsEx(DayZPlayer pPlayer, int currentState)
void SetLegHealth()

References DayZPlayerSyncJunctures::SendBrokenLegsEx().

◆ SetCheckMeleeItem()

void ManBase::SetCheckMeleeItem ( ItemBase item = null)
inlineprotected

Definition at line 3088 of file PlayerBase.c.

3089 {
3091 }

◆ SetContaminatedEffect()

void ManBase::SetContaminatedEffect ( bool enable,
int ppeIdx = -1,
int aroundId = ParticleList.CONTAMINATED_AREA_GAS_AROUND,
int tinyId = ParticleList.CONTAMINATED_AREA_GAS_TINY,
bool partDynaUpdate = false,
int newBirthRate = 0 )
inlineprotected

Definition at line 5358 of file PlayerBase.c.

◆ SetContaminatedEffectEx()

void ManBase::SetContaminatedEffectEx ( bool enable,
int ppeIdx = -1,
int aroundId = ParticleList.CONTAMINATED_AREA_GAS_AROUND,
int tinyId = ParticleList.CONTAMINATED_AREA_GAS_TINY,
string soundset = "",
bool partDynaUpdate = false,
int newBirthRate = 0 )
inlineprotected

Definition at line 5301 of file PlayerBase.c.

5302 {
5303 if (enable) // enable
5304 {
5305 // We assume that if this is set to true the PPE is already active
5307 return;
5308
5309 if (aroundId != 0)
5310 {
5312 m_ContaminatedAroundPlayer = ParticleManager.GetInstance().PlayInWorld(aroundId, GetPosition());
5313 // First entry in an area with dynamic tweaks to particles
5314 if (partDynaUpdate)
5315 m_ContaminatedAroundPlayer.SetParameter(0, EmitorParam.BIRTH_RATE, newBirthRate);
5316 }
5317
5319 m_ContaminatedAroundPlayerTiny = ParticleManager.GetInstance().PlayInWorld(tinyId, GetPosition());
5320
5321 if (ppeIdx != -1)
5322 {
5324 if (Class.CastTo(ppeRequester, PPERequesterBank.GetRequester(ppeIdx)))
5325 ppeRequester.Start();
5326 }
5327
5328 // We start playing the ambient sound
5329 if (!m_AmbientContamination && soundset != "")
5330 PlaySoundSetLoop(m_AmbientContamination, soundset, 0.1, 0.1);
5331
5332 }
5333 else // disable
5334 {
5336 {
5339 }
5340
5342 {
5345 }
5346 if (ppeIdx != -1)
5347 PPERequesterBank.GetRequester(ppeIdx).Stop(new Param1<bool>(true)); //fade out
5348
5349 // We stop the ambient sound
5351 StopSoundSet(m_AmbientContamination);
5352
5353 // We make sure to reset the state
5354 }
5356 }
void ParticleManager(ParticleManagerSettings settings)
Constructor (ctor)
EffectSound m_AmbientContamination
Definition PlayerBase.c:153

References Class::CastTo(), GetPosition, ParticleManager(), Particle::SetParameter(), and Particle::Stop().

◆ SetCraftingRecipeID()

void ManBase::SetCraftingRecipeID ( int recipeID)
inlineprotected

Definition at line 1783 of file PlayerBase.c.

1784 {
1785 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
1787 else
1789 }
void SetRecipeID(int recipeID)

References GetInstanceType(), and m_RecipeID.

◆ SetDeathDarknessLevel()

override void ManBase::SetDeathDarknessLevel ( float duration,
float tick_time )
inlineprotected

Definition at line 7720 of file PlayerBase.c.

7721 {
7722 super.SetDeathDarknessLevel(duration, tick_time);
7723
7724 if (IsControlledPlayer())
7725 {
7726 float actual_tick = tick_time;
7729
7730 if (GetFlashbangEffect())
7732
7733 float progress;
7734 if (duration > 0)
7735 progress = 1 - ((duration - m_DeathDarkeningCurrentTime) / duration);
7736
7737 m_DeathDarkeningCurrentTime += actual_tick;
7738
7739 if (!IsAlive() && IsPlayerSelected())
7740 {
7743 }
7744
7745 if (m_DeathDarkeningCurrentTime >= duration)
7746 StopDeathDarkeningEffect();
7747 }
7748 else
7749 StopDeathDarkeningEffect();
7750 }

◆ SetDecayEffects()

void ManBase::SetDecayEffects ( int effect = -1)
inlineprotected

Definition at line 8384 of file PlayerBase.c.

8385 {
8386 int boneIdx = GetBoneIndexByName("Spine2");
8387 Particle p;
8388
8389 switch (effect)
8390 {
8392 //play medium sound/flies particle
8393 if (!m_FliesEff)
8395
8397 {
8398 m_FliesEff.SetDecalOwner(this);
8400 p = m_FliesEff.GetParticle();
8401 AddChild(p, boneIdx);
8402 if (!m_SoundFliesEffect)
8403 {
8404 PlaySoundSetLoop(m_SoundFliesEffect, "Flies_SoundSet", 1.0, 1.0);
8405 // ErrorEx("DbgFlies | CORPSE_STATE_MEDIUM | m_SoundFliesEffect created! " + m_SoundFliesEffect,ErrorExSeverity.INFO);
8406 }
8407 }
8408 break;
8410 //play serious sound/flies particle
8411 if (!m_FliesEff)
8413
8415 {
8416 m_FliesEff.SetDecalOwner(this);
8418 p = m_FliesEff.GetParticle();
8419 AddChild(p, boneIdx);
8420 if (!m_SoundFliesEffect)
8421 {
8422 PlaySoundSetLoop(m_SoundFliesEffect, "Flies_SoundSet", 1.0, 1.0);
8423 // ErrorEx("DbgFlies | CORPSE_STATE_DECAYED | m_SoundFliesEffect created! " + m_SoundFliesEffect,ErrorExSeverity.INFO);
8424 }
8425 }
8426 break;
8427 //remove
8428 default:
8430 // ErrorEx("DbgFlies | StopSoundSet | exit 3 ",ErrorExSeverity.INFO);
8431 StopSoundSet(m_SoundFliesEffect);
8432 break;
8433 }
8434 }
static const int CORPSE_STATE_MEDIUM
static int PlayOnObject(notnull Effect eff, Object obj, vector local_pos="0 0 0", vector local_ori="0 0 0", bool force_rotation_relative_to_world=false)
Play an Effect.
static bool IsEffectExist(int effect_id)
Checks whether an Effect ID is registered in SEffectManager.

References AddChild(), PlayerConstants::CORPSE_STATE_DECAYED, PlayerConstants::CORPSE_STATE_MEDIUM, SEffectManager::DestroyEffect(), GetBoneIndexByName(), SEffectManager::IsEffectExist(), and SEffectManager::PlayOnObject().

◆ SetDefaultHitPosition()

vector ManBase::SetDefaultHitPosition ( string pSelection)
inlineprotected

Definition at line 1136 of file PlayerBase.c.

1137 {
1138 return GetSelectionPositionMS(pSelection);
1139 }

◆ SetDrowning()

void ManBase::SetDrowning ( bool enable)
inlineprotected

Definition at line 2203 of file PlayerBase.c.

2204 {
2205 if (enable != m_IsDrowning)
2206 {
2207 if (enable)
2209 else
2210 OnDrowningEnd();
2211 }
2212
2214 }
void OnDrowningEnd()
void OnDrowningStart()

◆ SetEnableQuickBarEntityShortcut()

void ManBase::SetEnableQuickBarEntityShortcut ( EntityAI entity,
bool value )
inlineprotected

Definition at line 1845 of file PlayerBase.c.

1846 {
1847 int index = m_QuickBarBase.FindEntityIndex(entity);
1848 if (index != -1)
1849 m_QuickBarBase.SetShotcutEnable(index, value);
1850
1851 }

◆ SetFirstRecipe()

void ManBase::SetFirstRecipe ( )
inlineprotected

Definition at line 1506 of file PlayerBase.c.

1507 {
1508 m_RecipePick = 0;
1509 }

◆ SetFlagTendencyRaise()

void ManBase::SetFlagTendencyRaise ( bool state)
inlineprotected

DEPRECATED.

Definition at line 4558 of file PlayerBase.c.

4559 {
4561 }

◆ SetHairLevelToHide()

void ManBase::SetHairLevelToHide ( int level,
bool state,
bool was_debug = false )
inlineprotected

Dynamic hair hiding.

Definition at line 8057 of file PlayerBase.c.

8058 {
8059 if (was_debug && GetInstanceType() != DayZPlayerInstanceType.INSTANCETYPE_CLIENT)
8060 return;
8061
8062 if (!m_CharactersHead)
8063 {
8064 ErrorEx("No valid head detected on character!");
8065 return;
8066 }
8067
8068 if (level == -1) //hide/show ALL
8069 {
8071 for (int i = 0; i < m_CharactersHead.m_HeadHairSelectionArray.Count(); ++i)
8072 {
8073 //m_CharactersHead.SetSimpleHiddenSelectionState(i,m_HideHairAnimated);
8074 SelectionTranslation stt = SelectionTranslation.Cast(m_CharactersHead.m_HeadHairHidingStateMap.Get(i));
8075 stt.SetSelectionState(m_HideHairAnimated);
8076 m_CharactersHead.m_HeadHairHidingStateMap.Set(i, stt);
8077#ifdef DIAG_DEVELOPER
8078#ifndef SERVER
8080 diagmenu.m_HairHidingStateMap.Set(i, m_HideHairAnimated);
8081#endif
8082#endif
8083 }
8084 }
8085 else //hide/show selected level only
8086 {
8087 bool switchState;
8088 if (was_debug)
8089 {
8090#ifdef DIAG_DEVELOPER
8091#ifndef SERVER
8093 switchState = !diagmenuu.m_HairHidingStateMap.Get(level);
8094 diagmenuu.m_HairHidingStateMap.Set(level, switchState);
8095#endif
8096#endif
8097 }
8098 else
8099 switchState = !state;
8100 //m_CharactersHead.SetSimpleHiddenSelectionState(level,switchState);
8101 stt = SelectionTranslation.Cast(m_CharactersHead.m_HeadHairHidingStateMap.Get(level));
8102 stt.SetSelectionState(switchState);
8103 m_CharactersHead.m_HeadHairHidingStateMap.Set(level, stt); //nescessary?
8104 }
8105 }
enum ShapeType ErrorEx

References ErrorEx, GetInstanceType(), and GetPlugin().

◆ SetHitPPEEnabled()

void ManBase::SetHitPPEEnabled ( bool enabled)
inlineprotected

Definition at line 1305 of file PlayerBase.c.

1306 {
1308 }

◆ SetImmunityBoosted()

void ManBase::SetImmunityBoosted ( bool boosted)
inlineprotected

Definition at line 4855 of file PlayerBase.c.

4856 {
4858 }

◆ SetInventorySoftLock()

override void ManBase::SetInventorySoftLock ( bool status)
inlineprotected

'soft lock' meaning inventory screen cannot be displayed, but mechanically, inventory operations are still possible

Definition at line 7561 of file PlayerBase.c.

7562 {
7563 if (status)
7565 else
7567
7570
7572 }
bool m_InventorySoftLocked
Definition PlayerBase.c:235
override bool IsInventorySoftLocked()

◆ SetInWater()

void ManBase::SetInWater ( bool pState)
inlineprotected

water contact (driven by Environment)

Definition at line 2346 of file PlayerBase.c.

2347 {
2349 SetSynchDirty();
2350 }

◆ SetLastFirePoint()

void ManBase::SetLastFirePoint ( vector last_fire_point)
inlineprotected

Definition at line 1821 of file PlayerBase.c.

1822 {
1824 }

◆ SetLastFirePointIndex()

void ManBase::SetLastFirePointIndex ( int last_fire_point_index)
inlineprotected

Definition at line 1829 of file PlayerBase.c.

◆ SetLastFirePointRot()

void ManBase::SetLastFirePointRot ( float last_fire_point_rot)
inlineprotected

Definition at line 1825 of file PlayerBase.c.

1826 {
1828 }

◆ SetLastMapInfo()

void ManBase::SetLastMapInfo ( float scale,
vector pos )
inlineprotected

Definition at line 8453 of file PlayerBase.c.

8454 {
8455 m_LastMapScale = scale;
8456 m_LastMapPos = pos;
8457 }

◆ SetLastShavedSeconds()

void ManBase::SetLastShavedSeconds ( int last_shaved_seconds)
inlineprotected

Definition at line 6310 of file PlayerBase.c.

◆ SetLastUAMessage()

void ManBase::SetLastUAMessage ( string pMsg)
inlineprotected

Definition at line 7328 of file PlayerBase.c.

7329 {
7331
7332 if (m_UALastMessageTimer.IsRunning())
7333 m_UALastMessageTimer.Stop();
7334
7335 m_UALastMessageTimer.Run(PlayerConstants.LAST_UA_MSG_LIFETIME, this, "ClearLastUAMessage", null);
7336 }
static const int LAST_UA_MSG_LIFETIME

References PlayerConstants::LAST_UA_MSG_LIFETIME.

◆ SetLegHealth()

void ManBase::SetLegHealth ( )
inlineprotected

Definition at line 3535 of file PlayerBase.c.

3536 {
3537 SetHealth("RightLeg", "", 0);
3538 SetHealth("RightFoot", "", 0);
3539 SetHealth("LeftLeg", "", 0);
3540 SetHealth("LeftFoot", "", 0);
3541 }

◆ SetLifeSpanStateVisible()

void ManBase::SetLifeSpanStateVisible ( int show_state)
inlineprotected

Definition at line 6284 of file PlayerBase.c.

6285 {
6286 bool state_changed;
6288 state_changed = true;
6290 SetSynchDirty();
6291
6292 if (state_changed) //server only, client solution in OnVariablesSynchronized()
6293 {
6294 //SendLifespanSyncEvent(m_LifeSpanState);
6295
6297 }
6298 }

◆ SetLiftWeapon()

void ManBase::SetLiftWeapon ( int pJunctureID,
ParamsReadContext ctx )
inlineprotected

Definition at line 7599 of file PlayerBase.c.

7600 {
7601 bool state;
7602 ctx.Read(state);
7603
7604 m_ProcessLiftWeaponState = state;
7605 m_ProcessLiftWeapon = true;
7606
7607 //Print("SetLiftWeapon | STS: " + GetSimulationTimeStamp());
7608 }

◆ SetLiquidTendencyDrain()

void ManBase::SetLiquidTendencyDrain ( bool state)
inlineprotected

Definition at line 4545 of file PlayerBase.c.

4546 {
4548 }

◆ SetLoadedQuickBarItemBind()

void ManBase::SetLoadedQuickBarItemBind ( EntityAI entity,
int index )
inlineprotected

Definition at line 7574 of file PlayerBase.c.

7575 {
7576 if (m_aQuickBarLoad)
7578 }

◆ SetLocalProjectionOrientation()

void ManBase::SetLocalProjectionOrientation ( vector local_orientation)
inlineprotected

Definition at line 2325 of file PlayerBase.c.

◆ SetLocalProjectionPosition()

void ManBase::SetLocalProjectionPosition ( vector local_position)
inlineprotected

Definition at line 2320 of file PlayerBase.c.

◆ SetMapClosingSyncSet()

void ManBase::SetMapClosingSyncSet ( bool state)
inlineprotected

Definition at line 3045 of file PlayerBase.c.

3046 {
3048 }

◆ SetMapOpen()

void ManBase::SetMapOpen ( bool state)
inlineprotected

Definition at line 3035 of file PlayerBase.c.

3036 {
3037 m_MapOpen = state;
3038 }

◆ SetMixedSoundState()

void ManBase::SetMixedSoundState ( eMixedSoundStates state)
inlineprotected

Definition at line 736 of file PlayerBase.c.

737 {
739
741 {
743 SetSynchDirty();
744 }
745 }

◆ SetModifiers()

void ManBase::SetModifiers ( bool enable)
inlineprivate

Definition at line 6773 of file PlayerBase.c.

6774 {
6775 GetModifiersManager().SetModifiers(enable);
6776 }

◆ SetNewCharName()

void ManBase::SetNewCharName ( )
inlineprotected

Definition at line 5623 of file PlayerBase.c.

5624 {
5625 g_Game.GetMenuData().SaveCharacter(false, true);
5626 g_Game.GetMenuData().SetCharacterName(g_Game.GetMenuData().GetLastPlayedCharacter(), g_Game.GetMenuDefaultCharacterData(false).GetCharacterName());
5627 g_Game.GetMenuData().SaveCharactersLocal();
5628 }

References g_Game.

◆ SetNextRecipe()

void ManBase::SetNextRecipe ( )
inlineprotected

Definition at line 1501 of file PlayerBase.c.

1502 {
1503 m_RecipePick++;
1504 }

◆ SetNVGLowered()

void ManBase::SetNVGLowered ( bool state)
inlineprotected

Definition at line 8252 of file PlayerBase.c.

8253 {
8255 }

◆ SetNVGWorking()

void ManBase::SetNVGWorking ( bool state)
inlineprotected

Deprecated.

Definition at line 8246 of file PlayerBase.c.

8247 {
8248 //Deprecated, below is for legacy's sake
8249 AddActiveNV(NVTypes.NV_GOGGLES);
8250 }
void AddActiveNV(int type)

◆ SetPersistentFlag()

void ManBase::SetPersistentFlag ( PersistentFlag bit,
bool enable )
inlineprivate

Definition at line 6433 of file PlayerBase.c.

6434 {
6435 if (enable)//turn on bit
6437 else//turn off bit
6439
6440 }

◆ SetPlayerDisconnected()

void ManBase::SetPlayerDisconnected ( bool state)
inlineprotected

Definition at line 2084 of file PlayerBase.c.

2085 {
2087 }

◆ SetPlayerLoad()

void ManBase::SetPlayerLoad ( float load)
inlineprotected

Definition at line 4578 of file PlayerBase.c.

4579 {
4580 m_CargoLoad = load;
4581 //Print("m_CargoLoad: " + m_CargoLoad);
4582 //Log(ToString(this) + "'s load weight is " + ftoa(m_CargoLoad) + " g.", LogTemplates.TEMPLATE_PLAYER_WEIGHT);
4583 }

◆ SetProcessUIWarning()

override void ManBase::SetProcessUIWarning ( bool state)
inlineprotected

Definition at line 8506 of file PlayerBase.c.

8507 {
8509 }

◆ SetPulseType()

void ManBase::SetPulseType ( EPulseType pulse_type)
inlineprotected

Definition at line 812 of file PlayerBase.c.

813 {
815 }

◆ SetQuickBarEntityShortcut()

void ManBase::SetQuickBarEntityShortcut ( EntityAI entity,
int index,
bool force = false )
inlineprotected

Definition at line 1882 of file PlayerBase.c.

1883 {
1884 m_QuickBarBase.SetEntityShortcut(entity, index, force);
1885 }

◆ SetQuickFishing()

void ManBase::SetQuickFishing ( bool enable)
inlineprotected

Definition at line 1640 of file PlayerBase.c.

1641 {
1643 }

◆ SetQuickRestrain()

void ManBase::SetQuickRestrain ( bool enable)
inlineprotected

Definition at line 1635 of file PlayerBase.c.

1636 {
1638 }

◆ SetRestrained()

void ManBase::SetRestrained ( bool is_restrained)
inlineprotected

Definition at line 1711 of file PlayerBase.c.

1712 {
1714 SetSynchDirty();
1715 }

◆ SetRestrainPrelocked()

void ManBase::SetRestrainPrelocked ( bool restrain_prelock)
inlineprotected

Definition at line 1700 of file PlayerBase.c.

1701 {
1703 SetSynchDirty();
1704 }

◆ SetRestrainStarted()

void ManBase::SetRestrainStarted ( bool restrain_started)
inlineprotected

Definition at line 1689 of file PlayerBase.c.

1690 {
1692 SetSynchDirty();
1693 }

◆ SetShakesForced()

void ManBase::SetShakesForced ( int value)
inlineprotected

Definition at line 3118 of file PlayerBase.c.

3119 {
3121 }

◆ SetSoundCategoryHash()

void ManBase::SetSoundCategoryHash ( int hash)
inlineprotected

Definition at line 540 of file PlayerBase.c.

541 {
542 m_ActionSoundCategoryHash = hash;
543 SetSynchDirty();
544 }

◆ SetStamina()

void ManBase::SetStamina ( int value,
int range )
inlineprotected

Definition at line 1621 of file PlayerBase.c.

1622 {
1624 m_ModulePlayerStatus.SetStamina(value, range);
1625 }

References m_ModulePlayerStatus.

◆ SetStaminaState()

void ManBase::SetStaminaState ( eStaminaState state)
inlineprotected

Definition at line 7091 of file PlayerBase.c.

7092 {
7093 if (state != m_StaminaState)
7094 {
7096 //PrintString("m_StaminaState:"+m_StaminaState.ToString());
7097 SetSynchDirty();
7098 }
7099 }

◆ SetToDelete()

void ManBase::SetToDelete ( ParamsReadContext pCtx)
inlineprotected

Definition at line 7470 of file PlayerBase.c.

7471 {
7472 EntityAI item;
7473 pCtx.Read(item);
7475 }
override void AddItemToDelete(EntityAI item)

◆ SetUnderground()

void ManBase::SetUnderground ( EUndergroundPresence presence)
inlineprotected

Definition at line 2294 of file PlayerBase.c.

2295 {
2297 }

◆ SetVisibilityCoef()

void ManBase::SetVisibilityCoef ( float pVisibility)
inlineprotected

Definition at line 4692 of file PlayerBase.c.

4693 {
4695 }

◆ ShavePlayer()

void ManBase::ShavePlayer ( )
inlineprotected

Definition at line 6176 of file PlayerBase.c.

6177 {
6179
6180 m_ModuleLifespan.UpdateLifespan(this, true);
6181 }
void SetLastShavedSeconds(int last_shaved_seconds)

References AnalyticsManagerServer::STAT_PLAYTIME.

◆ ShockRefill()

void ManBase::ShockRefill ( float pDt)
protected

functionality moved to ShockMdfr::OnTick

◆ ShowUnconsciousScreen()

void ManBase::ShowUnconsciousScreen ( bool show)
inlineprivate

Definition at line 6869 of file PlayerBase.c.

6870 {
6871#ifndef NO_GUI
6872 if (show)
6873 {
6874 GetGame().GetUIManager().ScreenFadeIn(0, "You are Unconscious", FadeColors.BLACK, FadeColors.WHITE);
6875 PrintString("Fade in");
6876 }
6877 else
6878 {
6879 GetGame().GetUIManager().ScreenFadeOut(0);
6880 PrintString("Fade out");
6881 }
6882#endif
6883 }
void PrintString(string s)
Helper for printing out string expression. Example: PrintString("Hello " + var);.
Definition EnScript.c:344

References GetGame(), and PrintString().

◆ SimplifyShock()

int ManBase::SimplifyShock ( )
inlineprotected

Definition at line 3300 of file PlayerBase.c.

3301 {
3302 int shock = Math.Lerp(0, SIMPLIFIED_SHOCK_CAP, GetHealth("", "Shock") / GetMaxHealth("", "Shock"));
3304 return shock;
3305 }

References Math::Clamp(), and Math::Lerp().

◆ SimulateDeath()

override void ManBase::SimulateDeath ( bool state)
inlineprotected

◆ SpawnAI()

EntityAI ManBase::SpawnAI ( string object_name,
vector pos )
inlineprotected

Definition at line 5870 of file PlayerBase.c.

5871 {
5872 bool is_ai = GetGame().IsKindOf(object_name, "DZ_LightAI");
5873 if (is_ai)
5874 return EntityAI.Cast(GetGame().CreateObjectEx(object_name, pos, ECE_PLACE_ON_SURFACE | ECE_INITAI | ECE_EQUIP_ATTACHMENTS));
5875 return NULL;
5876 }
const int ECE_EQUIP_ATTACHMENTS
const int ECE_PLACE_ON_SURFACE
const int ECE_INITAI

References ECE_EQUIP_ATTACHMENTS, ECE_INITAI, ECE_PLACE_ON_SURFACE, and GetGame().

◆ SpawnBreathVaporEffect()

void ManBase::SpawnBreathVaporEffect ( )
inlineprotected

Definition at line 6243 of file PlayerBase.c.

6244 {
6245 //Print("SpawnBreathVaporEffect:"+GetGame().GetTime());
6246 int boneIdx = GetBoneIndexByName("Head");
6247 if (boneIdx != -1)
6248 {
6249 Particle p;
6250 switch (m_BreathVapour)
6251 {
6252 case 1:
6253 p = ParticleManager.GetInstance().PlayInWorld(ParticleList.BREATH_VAPOUR_LIGHT, "-0.03 0.15 0");
6254 break;
6255 case 2:
6256 p = ParticleManager.GetInstance().PlayInWorld(ParticleList.BREATH_VAPOUR_MEDIUM, "-0.03 0.15 0");
6257 break;
6258 case 3:
6259 p = ParticleManager.GetInstance().PlayInWorld(ParticleList.BREATH_VAPOUR_HEAVY, "-0.03 0.15 0");
6260 break;
6261 default:
6262 break;
6263 }
6264
6265 if (p)
6266 AddChild(p, boneIdx);
6267 }
6268 }
static const int BREATH_VAPOUR_MEDIUM
static const int BREATH_VAPOUR_LIGHT
static const int BREATH_VAPOUR_HEAVY

References AddChild(), ParticleList::BREATH_VAPOUR_HEAVY, ParticleList::BREATH_VAPOUR_LIGHT, ParticleList::BREATH_VAPOUR_MEDIUM, GetBoneIndexByName(), and ParticleManager().

◆ SpawnDamageDealtEffect()

override void ManBase::SpawnDamageDealtEffect ( )
inlineprotected

Definition at line 842 of file PlayerBase.c.

◆ SpawnDamageDealtEffect2()

void ManBase::SpawnDamageDealtEffect2 ( Param param1 = null,
Param param2 = null )
inlineprotected

Definition at line 851 of file PlayerBase.c.

852 {
853 if (m_EffectRadial)
854 delete m_EffectRadial;
855
856 m_EffectRadial = new EffectRadial(param1, param2);
857 }
void EffectRadial(Param param1, Param param2)

References EffectRadial().

◆ SpawnDrowningBubbles()

void ManBase::SpawnDrowningBubbles ( )
inlineprotected

Definition at line 1918 of file PlayerBase.c.

1919 {
1921 return;
1923 int boneIdx = GetBoneIndexByName("Head");
1924
1925 if (boneIdx != -1)
1926 {
1927 Particle p = ParticleManager.GetInstance().PlayInWorld(ParticleList.DROWNING_BUBBLES, "-0.03 0.15 0");
1928 if (p)
1929 AddChild(p, boneIdx);
1931 }
1932 }
bool GetDrowningWaterLevelCheck()
static const int DROWNING_BUBBLES
static const int DROWNING_BUBBLE_FREQUENCY_MIN
static const int DROWNING_BUBBLE_FREQUENCY_MAX

References AddChild(), CALL_CATEGORY_SYSTEM, PlayerConstants::DROWNING_BUBBLE_FREQUENCY_MAX, PlayerConstants::DROWNING_BUBBLE_FREQUENCY_MIN, ParticleList::DROWNING_BUBBLES, GetBoneIndexByName(), GetGame(), Math::Lerp(), and ParticleManager().

◆ SpawnEntityOnGroundOnCursorDir()

EntityAI ManBase::SpawnEntityOnGroundOnCursorDir ( string object_name,
float distance )
inlineprotected

Definition at line 5864 of file PlayerBase.c.

5865 {
5866 vector position = GetPosition() + (GetDirection() * distance);
5868 }

References GetPosition.

◆ SpawnEntityOnGroundPos()

override EntityAI ManBase::SpawnEntityOnGroundPos ( string object_name,
vector pos )
inlineprotected

Definition at line 5843 of file PlayerBase.c.

5844 {
5845 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER || !GetGame().IsMultiplayer())
5846 {
5847 bool is_AI = GetGame().IsKindOf(object_name, "DZ_LightAI");
5848 if (is_AI)
5849 return SpawnAI(object_name, pos);
5850 else
5851 {
5853 vector mtx[4];
5855 mtx[3] = pos;
5856 inv_loc.SetGround(NULL, mtx);
5857 //return GetGame().SpawnEntity(object_name, inv_loc, ECE_PLACE_ON_SURFACE, RF_DEFAULT);
5858 return EntityAI.Cast(GetGame().CreateObjectEx(object_name, inv_loc.GetPos(), ECE_PLACE_ON_SURFACE));
5859 }
5860 }
5861 return null;
5862 }
EntityAI SpawnAI(string object_name, vector pos)

References ECE_PLACE_ON_SURFACE, GetGame(), GetInstanceType(), and Math3D::MatrixIdentity4().

◆ SpawnFlashbangEffect()

void ManBase::SpawnFlashbangEffect ( PlayerBase player,
bool visual )
inlineprotected

Definition at line 864 of file PlayerBase.c.

865 {
867 {
868 m_FlashbangEffect.Stop();
869 delete m_FlashbangEffect;
870 }
871
873 }

◆ SpawnShockEffect()

void ManBase::SpawnShockEffect ( float intensity_max)
inlineprotected

Definition at line 880 of file PlayerBase.c.

◆ SpreadAgents()

void ManBase::SpreadAgents ( )
inlineprotected

Definition at line 7147 of file PlayerBase.c.

7148 {
7149 SpreadAgentsEx(3, 1);
7150 }
void SpreadAgentsEx(float distance=3, float chance=0.25)
chance between [0..1] , distance in meters

◆ SpreadAgentsEx()

void ManBase::SpreadAgentsEx ( float distance = 3,
float chance = 0.25 )
inlineprotected

chance between [0..1] , distance in meters

Definition at line 7131 of file PlayerBase.c.

7132 {
7133 if (Math.RandomFloat01() > chance)
7134 return;
7135
7136 GetGame().GetPlayers(m_ServerPlayers);
7137 float dist_check = distance * distance;//make it sq
7138 PluginTransmissionAgents plugin = PluginTransmissionAgents.Cast(GetPlugin(PluginTransmissionAgents));
7139
7140 foreach (Man target: m_ServerPlayers)
7141 {
7142 if (vector.DistanceSq(GetWorldPosition(), target.GetWorldPosition()) < dist_check && target != this)
7143 plugin.TransmitAgents(this, target, AGT_AIRBOURNE_BIOLOGICAL, 1);
7144 }
7145 }
static ref array< Man > m_ServerPlayers
Definition PlayerBase.c:160
static proto native float DistanceSq(vector v1, vector v2)
Returns the square distance between tips of two 3D vectors.
const int AGT_AIRBOURNE_BIOLOGICAL
Definition constants.c:472

References AGT_AIRBOURNE_BIOLOGICAL, vector::DistanceSq(), GetGame(), GetPlugin(), and Math::RandomFloat01().

◆ StaminaHUDNotifier()

void ManBase::StaminaHUDNotifier ( bool show)
inlineprotected

Definition at line 4054 of file PlayerBase.c.

4055 {
4056 if (m_Hud)
4058 }
void SetStaminaBarVisibility(bool show)

References m_Hud, and Hud::SetStaminaBarVisibility().

◆ SwitchItemSelectionTexture()

override void ManBase::SwitchItemSelectionTexture ( EntityAI item,
string slot_name )
inlineprotected

Definition at line 1274 of file PlayerBase.c.

1275 {
1276 super.SwitchItemSelectionTexture(item, slot_name);
1277
1278 //shirt + armband
1279 EntityAI armband = FindAttachmentBySlotName("Armband");
1280 if (slot_name == "Body" && armband)
1281 {
1283 armband.SwitchItemSelectionTextureEx(EItemManipulationContext.UPDATE, p);
1284 }
1285 }

◆ SwitchItemTypeAttach()

void ManBase::SwitchItemTypeAttach ( EntityAI item,
string slot )
inlineprotected

Definition at line 1230 of file PlayerBase.c.

1231 {
1232 //Print("SwitchItemTypeAttach: " + item.GetType());
1233 if (!GetGame().IsServer())
1234 return;
1235
1236 /*InventoryLocation invloc = new InventoryLocation;
1237
1238 item.GetInventory().GetCurrentInventoryLocation(invloc);
1239 //Print(invloc.DumpToString());
1240 if (item.ConfigIsExisting("ChangeIntoOnAttach") && invloc.GetType() != InventoryLocationType.UNKNOWN)
1241 {
1242 string str = item.ChangeIntoOnAttach(slot);
1243 if (str != "")
1244 {
1245 string typestr = item.GetType();
1246 MiscGameplayFunctions.TurnItemIntoItem(ItemBase.Cast(item), str, this);
1247 }
1248 }*/
1249 }

References GetGame().

◆ SwitchItemTypeDetach()

void ManBase::SwitchItemTypeDetach ( EntityAI item,
string slot )
inlineprotected

Definition at line 1251 of file PlayerBase.c.

1252 {
1253 //Print("SwitchItemTypeDetach: " + item.GetType());
1254 }

◆ TakeEntityAsAttachmentImpl()

bool ManBase::TakeEntityAsAttachmentImpl ( InventoryMode mode,
notnull EntityAI item )
inlineprotected

Definition at line 8599 of file PlayerBase.c.

8600 {
8602 {
8603 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " Take2Att(SPLIT) item=" + GetDebugName(item));
8604 return true;
8605 }
8606
8607 return super.TakeEntityAsAttachmentImpl(mode, item);
8608 }
bool CheckAndExecuteStackSplit(FindInventoryLocationType flags, notnull EntityAI item, notnull EntityAI target)

References GetDebugName(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ TakeEntityToCargoImpl()

bool ManBase::TakeEntityToCargoImpl ( InventoryMode mode,
notnull EntityAI item )
inlineprotected

Definition at line 8588 of file PlayerBase.c.

8589 {
8591 {
8592 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " Take2Cgo(SPLIT) item=" + GetDebugName(item));
8593 return true;
8594 }
8595
8596 return super.TakeEntityToCargoImpl(mode, item);
8597 }

References GetDebugName(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ TakeEntityToHandsImpl()

override void ManBase::TakeEntityToHandsImpl ( InventoryMode mode,
EntityAI item )
inlineprotected

Definition at line 8610 of file PlayerBase.c.

8611 {
8613 {
8614 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " Take2Hands(SPLIT) item=" + GetDebugName(item));
8615 return;
8616 }
8617
8618 super.TakeEntityToHandsImpl(mode, item);
8619 }

References GetDebugName(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ TakeEntityToInventoryImpl()

bool ManBase::TakeEntityToInventoryImpl ( InventoryMode mode,
FindInventoryLocationType flags,
notnull EntityAI item )
inlineprotected

Definition at line 8577 of file PlayerBase.c.

8578 {
8579 if (CheckAndExecuteStackSplit(flags, item, this))
8580 {
8581 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " Take2Inv(SPLIT) item=" + GetDebugName(item));
8582 return true;
8583 }
8584
8585 return super.TakeEntityToInventoryImpl(mode, flags, item);
8586 }

References GetDebugName(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ TakeEntityToTargetAttachmentImpl()

bool ManBase::TakeEntityToTargetAttachmentImpl ( InventoryMode mode,
notnull EntityAI target,
notnull EntityAI item )
inlineprotected

Definition at line 8643 of file PlayerBase.c.

8644 {
8646 {
8647 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " Take2TargetAtt(SPLIT) item=" + GetDebugName(item));
8648 return true;
8649 }
8650
8651 return super.TakeEntityToTargetAttachmentImpl(mode, target, item);
8652 }

References GetDebugName(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ TakeEntityToTargetCargoImpl()

bool ManBase::TakeEntityToTargetCargoImpl ( InventoryMode mode,
notnull EntityAI target,
notnull EntityAI item )
inlineprotected

Definition at line 8632 of file PlayerBase.c.

8633 {
8635 {
8636 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " Take2TargetCgo(SPLIT) item=" + GetDebugName(item));
8637 return true;
8638 }
8639
8640 return super.TakeEntityToTargetCargoImpl(mode, target, item);
8641 }

References GetDebugName(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ TakeEntityToTargetInventoryImpl()

bool ManBase::TakeEntityToTargetInventoryImpl ( InventoryMode mode,
notnull EntityAI target,
FindInventoryLocationType flags,
notnull EntityAI item )
inlineprotected

Definition at line 8621 of file PlayerBase.c.

8622 {
8624 {
8625 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " Take2TargetInv(SPLIT) item=" + GetDebugName(item));
8626 return true;
8627 }
8628
8629 return super.TakeEntityToTargetInventoryImpl(mode, target, flags, item);
8630 }

References GetDebugName(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ TakeToDstImpl()

bool ManBase::TakeToDstImpl ( InventoryMode mode,
notnull InventoryLocation src,
notnull InventoryLocation dst )
inlineprotected

Definition at line 8654 of file PlayerBase.c.

8655 {
8657 {
8658 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[inv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " Take2Dst(SPLIT) item=" + GetDebugName(dst.GetItem()));
8659 return true;
8660 }
8661
8662 return super.TakeToDstImpl(mode, src, dst);
8663 }
bool CheckAndExecuteStackSplitToInventoryLocation(InventoryLocation il, notnull EntityAI item)

References GetDebugName(), LogManager::IsSyncLogEnable(), and syncDebugPrint().

◆ TestSend()

void ManBase::TestSend ( )
inlineprotected

Definition at line 7084 of file PlayerBase.c.

7085 {
7086 if (GetGame().IsClient()) return;
7087 RequestSoundEvent(1234);
7088 //Math.RandomInt(1,4096)
7089 }
override void RequestSoundEvent(EPlayerSoundEventID id, bool from_server_and_client=false)

References GetGame().

◆ ToggleHeatBufferVisibility()

void ManBase::ToggleHeatBufferVisibility ( bool show)
inlineprotected

Definition at line 7316 of file PlayerBase.c.

7317 {
7318 m_HasHeatBuffer = show;
7319 SetSynchDirty();
7320 }

◆ TogglePlacingLocal()

void ManBase::TogglePlacingLocal ( ItemBase item = null)
inlineprotected

Definition at line 2299 of file PlayerBase.c.

2300 {
2301 if (IsPlacingLocal())
2302 {
2303 if (GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_CLIENT && GetGame().IsMultiplayer())
2304 {
2306 {
2309 ctx.Send();
2310 }
2311 }
2313 }
2314 else if (!item)
2316 else
2318 }
const int INPUT_UDT_ADVANCED_PLACEMENT
Definition _constants.c:10
void PlacingStartLocal(ItemBase item)

References ScriptInputUserData::CanStoreInputUserData(), GetGame(), GetInstanceType(), and INPUT_UDT_ADVANCED_PLACEMENT.

◆ TogglePlacingServer()

bool ManBase::TogglePlacingServer ( int userDataType,
ParamsReadContext ctx )
inlineprotected

Definition at line 2241 of file PlayerBase.c.

2242 {
2244 {
2246 return true;
2247 }
2248
2249 return false;
2250 }

References INPUT_UDT_ADVANCED_PLACEMENT.

◆ TryHideItemInHands()

void ManBase::TryHideItemInHands ( bool hide,
bool force = false )
inlineprotected

tries to hide item in player's hands, some exceptions for various movement states

Definition at line 8534 of file PlayerBase.c.

8535 {
8536 if (!hide && ((!IsSwimming() && !IsClimbingLadder() && !IsInVehicle() && !AnimCommandCheck(HumanMoveCommandID.CommandSwim | HumanMoveCommandID.CommandLadder | HumanMoveCommandID.CommandVehicle)) || force))
8537 GetItemAccessor().HideItemInHands(false);
8538 else
8539 GetItemAccessor().HideItemInHands(true);
8540 }
bool AnimCommandCheck(HumanMoveCommandID mask)

References GetItemAccessor().

◆ UnsetMixedSoundState()

void ManBase::UnsetMixedSoundState ( eMixedSoundStates state)
inlineprotected

Definition at line 722 of file PlayerBase.c.

723 {
725
727
729 {
731 SetSynchDirty();
732 }
733 }

◆ UpdateBrokenLegs()

void ManBase::UpdateBrokenLegs ( int stateId)
inlineprotected

Definition at line 3375 of file PlayerBase.c.

3376 {
3378 //Raise broken legs flag and force to prone
3379 if (state != eBrokenLegs.NO_BROKEN_LEGS)
3380 {
3381 if (state == eBrokenLegs.BROKEN_LEGS_SPLINT)
3382 {
3383 if (m_MovementState.m_iStanceIdx != DayZPlayerConstants.STANCEIDX_PRONE)
3384 {
3385 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.PRONE_ANIM_OVERRIDE;
3386 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.BROKEN_LEGS;
3387 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask | eInjuryOverrides.BROKEN_LEGS_SPLINT;
3388 }
3389 m_InjuryHandler.CheckValue(false);
3390
3391 }
3392 else if (state == eBrokenLegs.BROKEN_LEGS)
3393 {
3394
3395 if (m_MovementState.m_iStanceIdx != DayZPlayerConstants.STANCEIDX_PRONE)
3396 {
3397 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.PRONE_ANIM_OVERRIDE;
3398 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.BROKEN_LEGS_SPLINT;
3399 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask | eInjuryOverrides.BROKEN_LEGS;
3400 }
3401
3403 m_InjuryHandler.CheckValue(false);
3404
3405 }
3406 }
3407 else if (state == eBrokenLegs.NO_BROKEN_LEGS)
3408 {
3409 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.BROKEN_LEGS;
3410 m_InjuryHandler.m_ForceInjuryAnimMask = m_InjuryHandler.m_ForceInjuryAnimMask & ~eInjuryOverrides.BROKEN_LEGS_SPLINT;
3411 }
3412
3413 }
void BrokenLegWalkShock()

References m_MovementState.

◆ UpdateCorpseState()

void ManBase::UpdateCorpseState ( )
inlineprotected

Definition at line 5364 of file PlayerBase.c.

5365 {
5367 if (m_CorpseState > 0)
5369 else if (m_CorpseState < 0)
5370 SetDecayEffects();//no params means remove the effects
5372 }
void SetDecayEffects(int effect=-1)

References Math::AbsInt().

◆ UpdateCorpseStateVisual()

void ManBase::UpdateCorpseStateVisual ( )
inlineprotected

Definition at line 8343 of file PlayerBase.c.

8344 {
8345 //Print("---Prettying up corpses... | " + GetGame().GetTime() + " | " + this + " | " + GetType() + "---");
8346 //Print("m_DecayedTexture = " + m_DecayedTexture);
8347 int state = Math.AbsInt(m_CorpseState);//negative sign denotes a special meaning(state was forced to a live player), but we are only intetested in the positive value here
8349 {
8351 ItemBase item;
8352
8353 string path;
8354 int idx;
8355 int slot_id;
8356 array<string> bodyparts = {"Gloves", "Body", "Legs", "Feet"};
8357
8358 for (int i = 0; i < bodyparts.Count(); i++)
8359 {
8361 bodypart = GetInventory().FindPlaceholderForSlot(slot_id);
8362 item = ItemBase.Cast(GetInventory().FindAttachment(slot_id));
8363
8364 if (bodypart)
8365 {
8366 path = "cfgVehicles " + bodypart.GetType();
8367 idx = bodypart.GetHiddenSelectionIndex("personality");
8368 if (idx > -1)
8369 bodypart.SetObjectTexture(idx, m_DecayedTexture);
8370 }
8371 if (item)
8372 {
8373 path = "cfgVehicles " + item.GetType();
8374 idx = item.GetHiddenSelectionIndex("personality");
8375 if (idx > -1)
8376 item.SetObjectTexture(idx, m_DecayedTexture);
8377 }
8378 }
8379
8380 SetFaceTexture(m_DecayedTexture);
8381 }
8382 }

References Math::AbsInt(), PlayerConstants::CORPSE_STATE_DECAYED, InventorySlots::GetSlotIdFromString(), and path.

◆ UpdateDelete()

void ManBase::UpdateDelete ( )
inlineprotected

Definition at line 7496 of file PlayerBase.c.

7497 {
7498 int count = m_ItemsToDelete.Count();
7499 if (count > 0)
7500 {
7501 if (CanDeleteItems())
7502 {
7504
7505 if (GetGame().IsClient() && GetGame().IsMultiplayer())
7506 {
7508 for (int i = count - 1; i >= 0 ; i--)
7509 {
7511 if (itemToDelete != null)
7512 itemToDelete.GetInventory().GetCurrentInventoryLocation(il);
7513
7514 if (itemToDelete == null || (GetItemInHands() == null && il.GetType() == InventoryLocationType.UNKNOWN))
7515 m_ItemsToDelete.Remove(i);
7516 }
7517 }
7518 else
7519 {
7520 for (int j = count - 1; j >= 0 ; j--)
7521 {
7523 if (itemToDelete == null)
7524 m_ItemsToDelete.Remove(j);
7525 else
7526 {
7527 itemToDelete.Delete();
7528 m_ItemsToDelete.Remove(j);
7529 }
7530 }
7531 }
7532 }
7533 }
7534 }
bool CanDeleteItems()

References GetGame().

◆ UpdateHairSelectionVisibility()

void ManBase::UpdateHairSelectionVisibility ( bool was_debug = false)
inlineprotected

Definition at line 8156 of file PlayerBase.c.

8157 {
8158 if (!m_CharactersHead)
8159 return;
8160 bool shown;
8161 bool exception_hidden = false;
8162 int i;
8163 int count = m_CharactersHead.m_HeadHairHidingStateMap.Count();
8165
8166 //hide/show beard
8167 if (IsMale() && m_CharactersHead.GetBeardIndex() > -1 && !was_debug)
8168 SetHairLevelToHide(m_CharactersHead.GetBeardIndex(), GetLifeSpanState() != LifeSpanState.BEARD_EXTRA);
8169
8170 //show all first
8171 for (i = 0; i < count; i++)
8172 m_CharactersHead.SetSimpleHiddenSelectionState(i, true);
8173 //then carve it up
8174 for (i = 0; i < count; i++)
8175 {
8176 stt = m_CharactersHead.m_HeadHairHidingStateMap.Get(i);
8177 shown = stt.GetSelectionState();
8178 if (!shown)
8179 {
8180 if (/*IsMale() && */!m_CharactersHead.IsHandlingException())
8181 {
8182 m_CharactersHead.SetSimpleHiddenSelectionState(i, shown);
8184 //Print("hidden idx: " + i);
8185 }
8186 else
8187 exception_hidden = true;
8188 }
8189 }
8190
8191 //exceptions handled differently; hides hair
8192 if (exception_hidden)
8193 {
8194 m_CharactersHead.SetSimpleHiddenSelectionState(m_CharactersHead.GetHairIndex(), false);
8195 if (IsMale())
8196 m_CharactersHead.SetSimpleHiddenSelectionState(m_CharactersHead.GetBeardIndex(), false);
8197 }
8198 }
void UpdateTranslatedSelections(SelectionTranslation stt)
bool IsMale()

◆ UpdateLighting()

void ManBase::UpdateLighting ( )
inlineprotected

Definition at line 5290 of file PlayerBase.c.

5291 {
5292 Mission mission = GetGame().GetMission();
5293 if (mission)
5294 {
5296 if (wLighting)
5297 wLighting.SetGlobalLighting(CfgGameplayHandler.GetLightingConfig());
5298 }
5299 }
Mission mission
static int GetLightingConfig()
Mission class.
Definition gameplay.c:668
WorldLighting GetWorldLighting()
Definition gameplay.c:728

References GetGame(), CfgGameplayHandler::GetLightingConfig(), Mission::GetWorldLighting(), and mission.

◆ UpdateMaskBreathWidget()

void ManBase::UpdateMaskBreathWidget ( notnull MaskBase mask,
bool is_start = false )
inlineprotected

Definition at line 5666 of file PlayerBase.c.

5667 {
5668 if (is_start)
5669 m_EffectWidgets.ResetMaskUpdateCount();
5670 float resistance = 0;
5671 if (mask.HasIntegratedFilter() || mask.IsExternalFilterAttached())
5672 resistance = 1 - mask.GetFilterQuantity01();
5673
5674
5676 m_EffectWidgets.IncreaseMaskUpdateCount();
5677
5678 }
override void OnVoiceEvent(float breathing_resistance01)

References GameplayEffectWidgets_base::OnVoiceEvent().

◆ UpdateMovementInertia()

void ManBase::UpdateMovementInertia ( )
inlineprotected

Update movement inertia based on stamina available.

Definition at line 2642 of file PlayerBase.c.

2643 {
2645 if (hcm)
2646 {
2648 hcm.SetTurnSpanSprintModifier(2 - staminaPercentage);
2649 hcm.SetRunSprintFilterModifier((2 - staminaPercentage) * 0.5);
2650 hcm.SetDirectionSprintFilterModifier(2 - staminaPercentage);
2651 }
2652 }
float GetSyncedStaminaNormalized()

References GetCommand_Move().

◆ UpdatePlayerMeasures()

void ManBase::UpdatePlayerMeasures ( )
inlineprivate

Definition at line 6707 of file PlayerBase.c.

6708 {
6709 int hour, minute, second;
6711 float distance;
6713 if (m_AnalyticsTimer)
6714 {
6716 data.m_CharacterId = g_Game.GetDatabaseID();
6717 data.m_TimeInterval = m_AnalyticsTimer.GetRemaining();
6718 data.m_DaytimeHour = hour;
6719 data.m_PositionStart = m_PlayerOldPos;
6720 data.m_PositionEnd = GetPosition();
6721 data.m_DistanceOnFoot = distance;
6723 }
6724
6726 }
static void PlayerMeasures(StatsEventMeasuresData data)
proto void GetHourMinuteSecond(out int hour, out int minute, out int second)
Returns world time.

References g_Game, GetHourMinuteSecond(), GetPosition, Analytics::PlayerMeasures(), and AnalyticsManagerServer::STAT_DISTANCE.

◆ UpdateQuickBarEntityVisibility()

void ManBase::UpdateQuickBarEntityVisibility ( EntityAI entity)
inlineprotected

Definition at line 1875 of file PlayerBase.c.

1876 {
1878 if (i >= 0)
1879 m_QuickBarBase.UpdateShotcutVisibility(i);
1880 }
int FindQuickBarEntityIndex(EntityAI entity)

◆ UpdateQuickBarExtraSlots()

void ManBase::UpdateQuickBarExtraSlots ( )
inlineprotected

Definition at line 7106 of file PlayerBase.c.

7107 {
7108 m_QuickBarBase.updateSlotsCount();
7109 }

◆ UpdateShoulderProxyVisibility()

void ManBase::UpdateShoulderProxyVisibility ( EntityAI item,
string slot_name )
inlineprotected

Definition at line 1256 of file PlayerBase.c.

1257 {
1258 string slot = slot_name;
1259 bool boo;
1260 boo = item.IsWeapon();
1261
1262 if (slot == "Melee")
1263 {
1264 SetSimpleHiddenSelectionState(SIMPLE_SELECTION_MELEE_RIFLE, boo);
1265 SetSimpleHiddenSelectionState(SIMPLE_SELECTION_MELEE_MELEE, !boo);
1266 }
1267 else if (slot == "Shoulder")
1268 {
1269 SetSimpleHiddenSelectionState(SIMPLE_SELECTION_SHOULDER_RIFLE, boo);
1270 SetSimpleHiddenSelectionState(SIMPLE_SELECTION_SHOULDER_MELEE, !boo);
1271 }
1272 }
const int SIMPLE_SELECTION_SHOULDER_RIFLE
const int SIMPLE_SELECTION_SHOULDER_MELEE
class SDayZPlayerAimingModel SIMPLE_SELECTION_MELEE_RIFLE
const int SIMPLE_SELECTION_MELEE_MELEE

References SIMPLE_SELECTION_MELEE_MELEE, SIMPLE_SELECTION_MELEE_RIFLE, SIMPLE_SELECTION_SHOULDER_MELEE, and SIMPLE_SELECTION_SHOULDER_RIFLE.

◆ UpdateTranslatedSelections()

void ManBase::UpdateTranslatedSelections ( SelectionTranslation stt)
inlineprotected

Definition at line 8200 of file PlayerBase.c.

8201 {
8202 int index;
8203 array<int> translatedSelectinosArray = stt.GetTranslatedSelections();
8204 for (int i = 0; i < translatedSelectinosArray.Count(); i++)
8205 {
8207 //if (index > -1)
8208 m_CharactersHead.SetSimpleHiddenSelectionState(index, false); //safe this way, only hiding/carving from shown parts
8209 }
8210 }

Member Data Documentation

◆ ACT_STORE_SAVE_VERSION

const int ManBase::ACT_STORE_SAVE_VERSION = 4
private

Definition at line 20 of file PlayerBase.c.

◆ CONTAMINATED_AREA_AMBIENT

const string ManBase::CONTAMINATED_AREA_AMBIENT = "ContaminatedArea_SoundSet"
protected

Definition at line 152 of file PlayerBase.c.

◆ DEBUG_INVENTORY_ACCESS

bool ManBase::DEBUG_INVENTORY_ACCESS = false
staticprotected

Definition at line 143 of file PlayerBase.c.

◆ ItemToInventory

bool ManBase::ItemToInventory
protected

Definition at line 218 of file PlayerBase.c.

◆ m_ActionManager

ActionManagerBase ManBase::m_ActionManager
protected

Definition at line 37 of file PlayerBase.c.

◆ m_ActionQBControl

bool ManBase::m_ActionQBControl
protected

Definition at line 209 of file PlayerBase.c.

◆ m_ActionsInitialize

bool ManBase::m_ActionsInitialize
protected

Definition at line 74 of file PlayerBase.c.

◆ m_ActiveNVTypes

ref array<int> ManBase::m_ActiveNVTypes
protected

Definition at line 254 of file PlayerBase.c.

◆ m_AddModifier

int ManBase::m_AddModifier = -1
protected

Definition at line 194 of file PlayerBase.c.

◆ m_AdminLog

PluginAdminLog ManBase::m_AdminLog
protected

Definition at line 258 of file PlayerBase.c.

◆ m_AgentPool

ref PlayerAgentPool ManBase::m_AgentPool
protected

Definition at line 39 of file PlayerBase.c.

◆ m_Agents

int ManBase::m_Agents
protected

Definition at line 40 of file PlayerBase.c.

◆ m_AllowQuickFishing

bool ManBase::m_AllowQuickFishing
protected

Definition at line 119 of file PlayerBase.c.

◆ m_AllowQuickRestrain

bool ManBase::m_AllowQuickRestrain
protected

Definition at line 118 of file PlayerBase.c.

◆ m_AmbientContamination

EffectSound ManBase::m_AmbientContamination
protected

Definition at line 153 of file PlayerBase.c.

◆ m_AnalyticsTimer

ref Timer ManBase::m_AnalyticsTimer
protected

Definition at line 241 of file PlayerBase.c.

◆ m_AnimCommandStarting

int ManBase::m_AnimCommandStarting
protected

Definition at line 22 of file PlayerBase.c.

◆ m_AntibioticsActive

int ManBase::m_AntibioticsActive
protected

Definition at line 148 of file PlayerBase.c.

◆ m_aQuickBarLoad

ref array<ref Param2<EntityAI, int> > ManBase::m_aQuickBarLoad
protected

Definition at line 184 of file PlayerBase.c.

◆ m_AreHandsLocked

bool ManBase::m_AreHandsLocked
protected

Definition at line 108 of file PlayerBase.c.

◆ m_ArrowManager

ref ArrowManagerPlayer ManBase::m_ArrowManager
protected

Definition at line 79 of file PlayerBase.c.

◆ m_BleedingBits

int ManBase::m_BleedingBits
protected

Definition at line 113 of file PlayerBase.c.

◆ m_BleedingManagerRemote

ref BleedingSourcesManagerRemote ManBase::m_BleedingManagerRemote
protected

Definition at line 34 of file PlayerBase.c.

◆ m_BleedingManagerServer

ref BleedingSourcesManagerServer ManBase::m_BleedingManagerServer
protected

Definition at line 33 of file PlayerBase.c.

◆ m_BleedingSourceCount

int ManBase::m_BleedingSourceCount
protected

Definition at line 128 of file PlayerBase.c.

◆ m_BleedingSourcesLow

ref array<string> ManBase::m_BleedingSourcesLow
staticprotected

Definition at line 144 of file PlayerBase.c.

◆ m_BleedingSourcesUp

ref array<string> ManBase::m_BleedingSourcesUp
staticprotected

Definition at line 145 of file PlayerBase.c.

◆ m_BloodType

int ManBase::m_BloodType
private

Definition at line 7 of file PlayerBase.c.

◆ m_BreathVapour

int ManBase::m_BreathVapour
protected

Definition at line 122 of file PlayerBase.c.

◆ m_BrokenLegsJunctureReceived

bool ManBase::m_BrokenLegsJunctureReceived
protected

Definition at line 139 of file PlayerBase.c.

◆ m_BrokenLegSound

ref EffectSound ManBase::m_BrokenLegSound
protected

Definition at line 140 of file PlayerBase.c.

◆ m_BrokenLegState

int ManBase::m_BrokenLegState = eBrokenLegs.NO_BROKEN_LEGS
protected

Definition at line 137 of file PlayerBase.c.

◆ m_CachedPlayerID

string ManBase::m_CachedPlayerID
protected

Definition at line 164 of file PlayerBase.c.

◆ m_CachedPlayerName

string ManBase::m_CachedPlayerName
protected

Definition at line 163 of file PlayerBase.c.

◆ m_CameraSwayModifier

float ManBase::m_CameraSwayModifier = 0.2
protected

Definition at line 110 of file PlayerBase.c.

◆ m_CanDisplayHitEffectPPE

bool ManBase::m_CanDisplayHitEffectPPE
protected

Definition at line 161 of file PlayerBase.c.

◆ m_CanPlayBrokenLegSound

bool ManBase::m_CanPlayBrokenLegSound
protected

Definition at line 142 of file PlayerBase.c.

◆ m_CargoLoad

float ManBase::m_CargoLoad
protected

Definition at line 53 of file PlayerBase.c.

◆ m_CharactersHead

Head_Default ManBase::m_CharactersHead
protected

Definition at line 129 of file PlayerBase.c.

◆ m_CheckMeleeItem

ItemBase ManBase::m_CheckMeleeItem
protected

Definition at line 246 of file PlayerBase.c.

◆ m_CheckPulseLastTarget

PlayerBase ManBase::m_CheckPulseLastTarget
protected

Definition at line 131 of file PlayerBase.c.

◆ m_ConfigEmotesProfile

PluginConfigEmotesProfile ManBase::m_ConfigEmotesProfile
private

Definition at line 26 of file PlayerBase.c.

◆ m_ConstructionActionData

ref ConstructionActionData ManBase::m_ConstructionActionData
protected

Definition at line 212 of file PlayerBase.c.

◆ m_ContaminatedAreaCount

int ManBase::m_ContaminatedAreaCount
protected

Definition at line 154 of file PlayerBase.c.

◆ m_ContaminatedAreaEffectEnabled

bool ManBase::m_ContaminatedAreaEffectEnabled
protected

Definition at line 151 of file PlayerBase.c.

◆ m_ContaminatedAroundPlayer

Particle ManBase::m_ContaminatedAroundPlayer
staticprotected

Definition at line 261 of file PlayerBase.c.

◆ m_ContaminatedAroundPlayerTiny

Particle ManBase::m_ContaminatedAroundPlayerTiny
staticprotected

Definition at line 262 of file PlayerBase.c.

◆ m_CorpseProcessing

bool ManBase::m_CorpseProcessing
protected

Definition at line 95 of file PlayerBase.c.

◆ m_CorpseState

int ManBase::m_CorpseState
protected

Definition at line 96 of file PlayerBase.c.

◆ m_CorpseStateLocal

int ManBase::m_CorpseStateLocal
protected

Definition at line 97 of file PlayerBase.c.

◆ m_CraftingInitialPos

vector ManBase::m_CraftingInitialPos
protected

Definition at line 201 of file PlayerBase.c.

◆ m_CraftingManager

ref CraftingManager ManBase::m_CraftingManager
protected

Definition at line 78 of file PlayerBase.c.

◆ m_CurrentCamera

DayZPlayerCameraBase ManBase::m_CurrentCamera
protected

Definition at line 112 of file PlayerBase.c.

◆ m_CurrentEffectTrigger

EffectTrigger ManBase::m_CurrentEffectTrigger
protected

Definition at line 158 of file PlayerBase.c.

◆ m_CurrentShock

float ManBase::m_CurrentShock
protected

Definition at line 103 of file PlayerBase.c.

◆ m_DamageDealtEffect

ref DamageDealtEffect ManBase::m_DamageDealtEffect
protected

Definition at line 66 of file PlayerBase.c.

◆ m_DatabaseID

string ManBase::m_DatabaseID
protected

Definition at line 240 of file PlayerBase.c.

◆ m_DbgListSelection

int ManBase::m_DbgListSelection = 0
protected

Definition at line 2655 of file PlayerBase.c.

◆ m_DbgOptions

ref array<string> ManBase::m_DbgOptions = {"jedna", "dva", "tri"}
protected

Definition at line 2657 of file PlayerBase.c.

2657{"jedna", "dva", "tri"};

◆ m_DbgSliderValue

float ManBase::m_DbgSliderValue = 0.0
protected

Definition at line 2656 of file PlayerBase.c.

◆ m_DeathCheckTimer

ref Timer ManBase::m_DeathCheckTimer
protected

Definition at line 94 of file PlayerBase.c.

◆ m_DeathDarkeningParam

ref Param1<float> ManBase::m_DeathDarkeningParam
protected

Definition at line 65 of file PlayerBase.c.

◆ m_DebugMonitorEnabled

int ManBase::m_DebugMonitorEnabled
protected

Definition at line 223 of file PlayerBase.c.

◆ m_DebugMonitorValues

ref DebugMonitorValues ManBase::m_DebugMonitorValues
protected

Definition at line 51 of file PlayerBase.c.

◆ m_DecayedTexture

string ManBase::m_DecayedTexture
protected

Definition at line 135 of file PlayerBase.c.

◆ m_DefaultHitPosition

vector ManBase::m_DefaultHitPosition
protected

Definition at line 115 of file PlayerBase.c.

◆ m_DirectionToCursor

vector ManBase::m_DirectionToCursor
protected

Definition at line 114 of file PlayerBase.c.

◆ m_DiseaseCount

int ManBase::m_DiseaseCount
protected

Definition at line 116 of file PlayerBase.c.

◆ m_EffectAreaCount

int ManBase::m_EffectAreaCount
protected

Definition at line 155 of file PlayerBase.c.

◆ m_EffectRadial

ref EffectRadial ManBase::m_EffectRadial
protected

Definition at line 67 of file PlayerBase.c.

◆ m_EffectWidgets

GameplayEffectWidgets_base ManBase::m_EffectWidgets
protected

effect widgets

Definition at line 277 of file PlayerBase.c.

◆ m_EmoteManager

ref EmoteManager ManBase::m_EmoteManager
protected

Definition at line 42 of file PlayerBase.c.

◆ m_EmptyGloves

ref HiddenSelectionsData ManBase::m_EmptyGloves
protected

Definition at line 76 of file PlayerBase.c.

◆ m_Environment

ref Environment ManBase::m_Environment
protected

Definition at line 41 of file PlayerBase.c.

◆ m_FaceCoveredForShaveLayers

int ManBase::m_FaceCoveredForShaveLayers = 0
private

Definition at line 12 of file PlayerBase.c.

◆ m_FlagRaisingTendency

bool ManBase::m_FlagRaisingTendency
private

Definition at line 10 of file PlayerBase.c.

◆ m_FlashbangEffect

ref FlashbangEffect ManBase::m_FlashbangEffect
protected

Definition at line 68 of file PlayerBase.c.

◆ m_FliesEff

ref EffectParticle ManBase::m_FliesEff
protected

Definition at line 70 of file PlayerBase.c.

◆ m_FliesIndex

int ManBase::m_FliesIndex
protected

Definition at line 58 of file PlayerBase.c.

◆ m_ForceInjuryAnimMask

int ManBase::m_ForceInjuryAnimMask
protected

Definition at line 132 of file PlayerBase.c.

◆ m_hac

ActionUnfoldMapCB ManBase::m_hac
protected

Definition at line 226 of file PlayerBase.c.

◆ m_HasBloodTypeVisible

bool ManBase::m_HasBloodTypeVisible
private

Definition at line 8 of file PlayerBase.c.

◆ m_HasBloodyHandsVisible

int ManBase::m_HasBloodyHandsVisible
private

Definition at line 11 of file PlayerBase.c.

◆ m_HasHeatBuffer

bool ManBase::m_HasHeatBuffer
protected

Definition at line 13 of file PlayerBase.c.

◆ m_HCAnimHandler

ref HeatComfortAnimHandler ManBase::m_HCAnimHandler
protected

Definition at line 84 of file PlayerBase.c.

◆ m_HealingsCount

int ManBase::m_HealingsCount
protected

Definition at line 117 of file PlayerBase.c.

◆ m_HealthLevel

int ManBase::m_HealthLevel
protected

Definition at line 123 of file PlayerBase.c.

◆ m_HideHairAnimated

bool ManBase::m_HideHairAnimated
protected

Definition at line 134 of file PlayerBase.c.

◆ m_HologramLocal

ref Hologram ManBase::m_HologramLocal
protected

Definition at line 188 of file PlayerBase.c.

◆ m_HologramServer

ref Hologram ManBase::m_HologramServer
protected

Definition at line 187 of file PlayerBase.c.

◆ m_Hud

Hud ManBase::m_Hud
protected

Definition at line 88 of file PlayerBase.c.

◆ m_ImmunityBoosted

bool ManBase::m_ImmunityBoosted
protected

Definition at line 107 of file PlayerBase.c.

◆ m_InjuryHandler

ref InjuryAnimationHandler ManBase::m_InjuryHandler
protected

Definition at line 46 of file PlayerBase.c.

◆ m_InputActionMap

ref TInputActionMap ManBase::m_InputActionMap
protected

Definition at line 71 of file PlayerBase.c.

◆ m_InputActionMapAsTarget

ref TInputActionMap ManBase::m_InputActionMapAsTarget
protected

Definition at line 73 of file PlayerBase.c.

◆ m_InputActionMapControled

ref TInputActionMap ManBase::m_InputActionMapControled
protected

Definition at line 72 of file PlayerBase.c.

◆ m_InsideEffectArea

bool ManBase::m_InsideEffectArea
protected

Definition at line 156 of file PlayerBase.c.

◆ m_InsideEffectAreaPrev

bool ManBase::m_InsideEffectAreaPrev
protected

Definition at line 157 of file PlayerBase.c.

◆ m_InventoryActionHandler

ref InventoryActionHandler ManBase::m_InventoryActionHandler
protected

Definition at line 80 of file PlayerBase.c.

◆ m_InventorySoftLockCount

int ManBase::m_InventorySoftLockCount = 0
protected

Definition at line 236 of file PlayerBase.c.

◆ m_InventorySoftLocked

bool ManBase::m_InventorySoftLocked
protected

Definition at line 235 of file PlayerBase.c.

◆ m_IsCraftingReady

bool ManBase::m_IsCraftingReady
protected

Definition at line 199 of file PlayerBase.c.

◆ m_IsDrowning

bool ManBase::m_IsDrowning
protected

Definition at line 220 of file PlayerBase.c.

◆ m_IsFighting

bool ManBase::m_IsFighting = false
protected

Definition at line 219 of file PlayerBase.c.

◆ m_IsHoldingBreath

bool ManBase::m_IsHoldingBreath
protected

Definition at line 90 of file PlayerBase.c.

◆ m_IsInWater

bool ManBase::m_IsInWater
protected

Definition at line 91 of file PlayerBase.c.

◆ m_IsRestrained

bool ManBase::m_IsRestrained
protected

Definition at line 104 of file PlayerBase.c.

◆ m_IsRestrainPrelocked

bool ManBase::m_IsRestrainPrelocked
protected

Definition at line 106 of file PlayerBase.c.

◆ m_IsRestrainStarted

bool ManBase::m_IsRestrainStarted
protected

Definition at line 105 of file PlayerBase.c.

◆ m_IsVehicleSeatDriver

bool ManBase::m_IsVehicleSeatDriver
protected

Definition at line 126 of file PlayerBase.c.

◆ m_Item1

EntityAI ManBase::m_Item1
protected

Definition at line 197 of file PlayerBase.c.

◆ m_Item2

EntityAI ManBase::m_Item2
protected

Definition at line 198 of file PlayerBase.c.

◆ m_ItemsToDelete

ref array<EntityAI> ManBase::m_ItemsToDelete
protected

Definition at line 136 of file PlayerBase.c.

◆ m_LastFirePoint

vector ManBase::m_LastFirePoint
protected

Definition at line 214 of file PlayerBase.c.

◆ m_LastFirePointIndex

int ManBase::m_LastFirePointIndex
protected

Definition at line 216 of file PlayerBase.c.

◆ m_LastFirePointRot

float ManBase::m_LastFirePointRot
protected

Definition at line 215 of file PlayerBase.c.

◆ m_LastMapPos

vector ManBase::m_LastMapPos
protected

Definition at line 231 of file PlayerBase.c.

◆ m_LastMapScale

float ManBase::m_LastMapScale = -1.0
protected

Definition at line 230 of file PlayerBase.c.

◆ m_LastPostFrameTickTime

float ManBase::m_LastPostFrameTickTime
protected

Definition at line 92 of file PlayerBase.c.

◆ m_LastShavedSeconds

int ManBase::m_LastShavedSeconds
private

Definition at line 6 of file PlayerBase.c.

◆ m_LastShockHitTime

float ManBase::m_LastShockHitTime
protected

Definition at line 111 of file PlayerBase.c.

◆ m_LastTick

float ManBase::m_LastTick = -1
protected

Definition at line 193 of file PlayerBase.c.

◆ m_LifespanLevelLocal

int ManBase::m_LifespanLevelLocal
protected

Definition at line 21 of file PlayerBase.c.

◆ m_LifeSpanState

int ManBase::m_LifeSpanState
private

Definition at line 5 of file PlayerBase.c.

◆ m_LiquidTendencyDrain

bool ManBase::m_LiquidTendencyDrain
private

Definition at line 9 of file PlayerBase.c.

◆ m_LocalBrokenState

int ManBase::m_LocalBrokenState = eBrokenLegs.NO_BROKEN_LEGS
protected

Definition at line 138 of file PlayerBase.c.

◆ m_LocalProjectionOrientation

vector ManBase::m_LocalProjectionOrientation = "0 0 0 "
protected

Definition at line 190 of file PlayerBase.c.

◆ m_LocalProjectionPosition

vector ManBase::m_LocalProjectionPosition = "0 0 0 "
protected

Definition at line 189 of file PlayerBase.c.

◆ m_LocalRefreshAnimStateIdx

int ManBase::m_LocalRefreshAnimStateIdx
protected

Definition at line 17 of file PlayerBase.c.

◆ m_LoweredNVGHeadset

bool ManBase::m_LoweredNVGHeadset
protected

Definition at line 253 of file PlayerBase.c.

◆ m_MapCloseRequestProcessed

bool ManBase::m_MapCloseRequestProcessed
protected

Definition at line 228 of file PlayerBase.c.

◆ m_MapClosingSyncSent

bool ManBase::m_MapClosingSyncSent
protected

Definition at line 229 of file PlayerBase.c.

◆ m_MapNavigationBehaviour

ref MapNavigationBehaviour ManBase::m_MapNavigationBehaviour
protected

Definition at line 232 of file PlayerBase.c.

◆ m_MapOpen

bool ManBase::m_MapOpen
protected

Definition at line 227 of file PlayerBase.c.

◆ m_MeleeDebug

bool ManBase::m_MeleeDebug
protected

melee stats

Definition at line 244 of file PlayerBase.c.

◆ m_MixedSoundStates

int ManBase::m_MixedSoundStates
protected

Definition at line 124 of file PlayerBase.c.

◆ m_ModifiersManager

ref ModifiersManager ManBase::m_ModifiersManager
protected

Definition at line 35 of file PlayerBase.c.

◆ m_ModuleLifespan

PluginLifespan ManBase::m_ModuleLifespan
private

Definition at line 27 of file PlayerBase.c.

◆ m_ModulePlayerStatus

PluginPlayerStatus ManBase::m_ModulePlayerStatus
private

Definition at line 25 of file PlayerBase.c.

◆ m_ModuleRecipesManager

PluginRecipesManager ManBase::m_ModuleRecipesManager
protected

Definition at line 32 of file PlayerBase.c.

◆ m_NotifiersManager

ref NotifiersManager ManBase::m_NotifiersManager
protected

Definition at line 36 of file PlayerBase.c.

◆ m_OriginalSlidePoseAngle

float ManBase::m_OriginalSlidePoseAngle
protected

Definition at line 55 of file PlayerBase.c.

◆ m_PersistentFlags

int ManBase::m_PersistentFlags
protected

Definition at line 99 of file PlayerBase.c.

◆ m_PlayerDisconnectProcessed

bool ManBase::m_PlayerDisconnectProcessed
protected

Definition at line 15 of file PlayerBase.c.

◆ m_PlayerLoaded

bool ManBase::m_PlayerLoaded
protected

Definition at line 14 of file PlayerBase.c.

◆ m_PlayerOldPos

vector ManBase::m_PlayerOldPos
private

Definition at line 6706 of file PlayerBase.c.

◆ m_PlayerSoundManagerClient

ref PlayerSoundManagerClient ManBase::m_PlayerSoundManagerClient
protected

Definition at line 83 of file PlayerBase.c.

◆ m_PlayerSoundManagerServer

ref PlayerSoundManagerServer ManBase::m_PlayerSoundManagerServer
protected

Definition at line 82 of file PlayerBase.c.

◆ m_PlayerStats

ref PlayerStats ManBase::m_PlayerStats
protected

Definition at line 31 of file PlayerBase.c.

◆ m_PlayerStomach

ref PlayerStomach ManBase::m_PlayerStomach
protected

Definition at line 259 of file PlayerBase.c.

◆ m_PresenceNotifier

PluginPresenceNotifier ManBase::m_PresenceNotifier
protected

Definition at line 28 of file PlayerBase.c.

◆ m_ProcessAddEffectWidgets

ref array<int> ManBase::m_ProcessAddEffectWidgets
protected

Definition at line 278 of file PlayerBase.c.

◆ m_ProcessAddGlassesEffects

ref array<int> ManBase::m_ProcessAddGlassesEffects
protected

Definition at line 282 of file PlayerBase.c.

◆ m_ProcessRemoveEffectWidgets

ref array<int> ManBase::m_ProcessRemoveEffectWidgets
protected

Definition at line 279 of file PlayerBase.c.

◆ m_ProcessRemoveGlassesEffects

ref array<int> ManBase::m_ProcessRemoveGlassesEffects
protected

Definition at line 283 of file PlayerBase.c.

◆ m_ProcessUIWarning

bool ManBase::m_ProcessUIWarning
protected

Definition at line 16 of file PlayerBase.c.

◆ m_PulseType

EPulseType ManBase::m_PulseType
protected

Definition at line 130 of file PlayerBase.c.

◆ m_QBarItems

ref TStringArray ManBase::m_QBarItems
staticprotected

Definition at line 237 of file PlayerBase.c.

◆ m_QuickBarBase

QuickBarBase ManBase::m_QuickBarBase
protected

Definition at line 81 of file PlayerBase.c.

◆ m_QuickBarBonus

int ManBase::m_QuickBarBonus = 0
protected

Definition at line 125 of file PlayerBase.c.

◆ m_QuickBarFT

bool ManBase::m_QuickBarFT = false
protected

Definition at line 87 of file PlayerBase.c.

◆ m_QuickBarHold

bool ManBase::m_QuickBarHold
protected

Definition at line 86 of file PlayerBase.c.

◆ m_RecipeAnimLength

float ManBase::m_RecipeAnimLength
protected

Definition at line 200 of file PlayerBase.c.

◆ m_RecipeID

int ManBase::m_RecipeID = -1
protected

Definition at line 196 of file PlayerBase.c.

◆ m_RecipePick

int ManBase::m_RecipePick
protected

Definition at line 89 of file PlayerBase.c.

◆ m_Recipes

ref array<int> ManBase::m_Recipes
protected

Definition at line 202 of file PlayerBase.c.

◆ m_RefreshAnimStateIdx

int ManBase::m_RefreshAnimStateIdx
protected

Definition at line 18 of file PlayerBase.c.

◆ m_RGSManager

RandomGeneratorSyncManager ManBase::m_RGSManager
protected

Definition at line 147 of file PlayerBase.c.

◆ m_SaySoundBuilder

ref SoundObjectBuilder ManBase::m_SaySoundBuilder
protected

Definition at line 205 of file PlayerBase.c.

◆ m_SaySoundLastSetName

string ManBase::m_SaySoundLastSetName
protected

Definition at line 207 of file PlayerBase.c.

◆ m_SaySoundObject

ref SoundObject ManBase::m_SaySoundObject
protected

Definition at line 206 of file PlayerBase.c.

◆ m_SaySoundParams

ref SoundParams ManBase::m_SaySoundParams
protected

Definition at line 204 of file PlayerBase.c.

◆ m_ServerPlayers

ref array<Man> ManBase::m_ServerPlayers = new array<Man>
staticprotected

Definition at line 160 of file PlayerBase.c.

◆ m_Shakes

int ManBase::m_Shakes
protected

Definition at line 120 of file PlayerBase.c.

◆ m_ShakesForced

int ManBase::m_ShakesForced
protected

Definition at line 121 of file PlayerBase.c.

◆ m_ShockDealtEffect

ref ShockDealtEffect ManBase::m_ShockDealtEffect
protected

Definition at line 69 of file PlayerBase.c.

◆ m_ShockHandler

ref ShockHandler ManBase::m_ShockHandler
protected

Definition at line 47 of file PlayerBase.c.

◆ m_ShockSimplified

int ManBase::m_ShockSimplified
protected

Definition at line 102 of file PlayerBase.c.

◆ m_ShowDbgUI

bool ManBase::m_ShowDbgUI = true
protected

Definition at line 2654 of file PlayerBase.c.

◆ m_SoftSkillsManager

ref SoftSkillsManager ManBase::m_SoftSkillsManager
protected

Definition at line 48 of file PlayerBase.c.

◆ m_SoundEvent

int ManBase::m_SoundEvent
protected

Definition at line 56 of file PlayerBase.c.

◆ m_SoundEventParam

int ManBase::m_SoundEventParam
protected

Definition at line 57 of file PlayerBase.c.

◆ m_SoundEventSent

bool ManBase::m_SoundEventSent
protected

Definition at line 59 of file PlayerBase.c.

◆ m_SoundFliesEffect

ref EffectSound ManBase::m_SoundFliesEffect
protected

Definition at line 85 of file PlayerBase.c.

◆ m_StaminaHandler

ref StaminaHandler ManBase::m_StaminaHandler
protected

Definition at line 45 of file PlayerBase.c.

◆ m_StaminaParam

ref Param3<float, float, bool> ManBase::m_StaminaParam
protected

Definition at line 62 of file PlayerBase.c.

◆ m_StaminaState

int ManBase::m_StaminaState
protected

Definition at line 100 of file PlayerBase.c.

◆ m_StanceIndicator

ref StanceIndicator ManBase::m_StanceIndicator
protected

Definition at line 49 of file PlayerBase.c.

◆ m_StatEnergy

PlayerStat<float> ManBase::m_StatEnergy
protected

Definition at line 266 of file PlayerBase.c.

◆ m_StatHeatComfort

PlayerStat<float> ManBase::m_StatHeatComfort
protected

Definition at line 267 of file PlayerBase.c.

◆ m_StatToxicity

PlayerStat<float> ManBase::m_StatToxicity
protected

Definition at line 265 of file PlayerBase.c.

◆ m_StatTremor

PlayerStat<float> ManBase::m_StatTremor
protected

Definition at line 268 of file PlayerBase.c.

◆ m_StatWater

PlayerStat<float> ManBase::m_StatWater
protected

Definition at line 264 of file PlayerBase.c.

◆ m_StoreLoadVersion

int ManBase::m_StoreLoadVersion
private

Definition at line 19 of file PlayerBase.c.

◆ m_SymptomManager

ref SymptomManager ManBase::m_SymptomManager
protected

Definition at line 43 of file PlayerBase.c.

◆ m_SyncedModifiers

int ManBase::m_SyncedModifiers
protected

Definition at line 256 of file PlayerBase.c.

◆ m_SyncedModifiersPrev

int ManBase::m_SyncedModifiersPrev
protected

Definition at line 257 of file PlayerBase.c.

◆ m_TrasferValues

ref TransferValues ManBase::m_TrasferValues
protected

Definition at line 50 of file PlayerBase.c.

◆ m_UALastMessage

string ManBase::m_UALastMessage
protected

user actions last message

Definition at line 249 of file PlayerBase.c.

◆ m_UALastMessageTimer

ref Timer ManBase::m_UALastMessageTimer
protected

Definition at line 250 of file PlayerBase.c.

◆ m_UAParam

ref Param2<int, int> ManBase::m_UAParam
protected

Definition at line 61 of file PlayerBase.c.

◆ m_UAParamMessage

ref Param1<string> ManBase::m_UAParamMessage
protected

Definition at line 63 of file PlayerBase.c.

◆ m_UAProgressParam

ref Param2<float, float> ManBase::m_UAProgressParam
protected

Definition at line 60 of file PlayerBase.c.

◆ m_UnconParam

ref Param1<float> ManBase::m_UnconParam
protected

Definition at line 64 of file PlayerBase.c.

◆ m_UnconRefillModifier

float ManBase::m_UnconRefillModifier = 1
protected

Definition at line 146 of file PlayerBase.c.

◆ m_UnconsciousEndTime

float ManBase::m_UnconsciousEndTime = 0
protected

Definition at line 127 of file PlayerBase.c.

◆ m_UnconsciousTime

float ManBase::m_UnconsciousTime
protected

Definition at line 101 of file PlayerBase.c.

◆ m_UnconsciousVignetteTarget

float ManBase::m_UnconsciousVignetteTarget = 2
protected

Definition at line 109 of file PlayerBase.c.

◆ m_UndergroundHandler

ref UndergroundHandlerClient ManBase::m_UndergroundHandler
protected

Definition at line 30 of file PlayerBase.c.

◆ m_UndergroundPresence

EUndergroundPresence ManBase::m_UndergroundPresence
protected

Definition at line 23 of file PlayerBase.c.

◆ m_VirtualHud

ref VirtualHud ManBase::m_VirtualHud
protected

Definition at line 44 of file PlayerBase.c.

◆ m_VisibilityCoef

float ManBase::m_VisibilityCoef
protected

Definition at line 54 of file PlayerBase.c.

◆ m_WeaponManager

ref WeaponManager ManBase::m_WeaponManager
protected

Definition at line 77 of file PlayerBase.c.

◆ m_WorkingNVGHeadset

bool ManBase::m_WorkingNVGHeadset
protected

Definition at line 252 of file PlayerBase.c.

◆ OVERLOAD_LIMIT

const int ManBase::OVERLOAD_LIMIT = 30000
protected

Definition at line 52 of file PlayerBase.c.

◆ SHAKE_LEVEL_MAX

const int ManBase::SHAKE_LEVEL_MAX = 7
private

Definition at line 4 of file PlayerBase.c.

◆ SIMPLIFIED_SHOCK_CAP

const int ManBase::SIMPLIFIED_SHOCK_CAP = 63
private

Definition at line 3 of file PlayerBase.c.

◆ SOUND_BREAK_LEG

const string ManBase::SOUND_BREAK_LEG = "broken_leg_SoundSet"
protected

Definition at line 141 of file PlayerBase.c.

◆ SPREAD_AGENTS_OBJECTS

ref array<Object> ManBase::SPREAD_AGENTS_OBJECTS = new array<Object>
staticprotected

Definition at line 7126 of file PlayerBase.c.

◆ SPREAD_AGENTS_PROXY_CARGOS

ref array<CargoBase> ManBase::SPREAD_AGENTS_PROXY_CARGOS = new array<CargoBase>
staticprotected

Definition at line 7127 of file PlayerBase.c.


The documentation for this class was generated from the following file: