178 #ifdef DIAG_DEVELOPER
179 int m_IsInsideTrigger;
180 bool m_CanBeTargetedDebug;
182 bool m_PresetSpawned;
183 ref CameraToolsMenuClient m_CameraToolsMenuClient;
184 protected PluginTargetTemperature m_TargetTemperatureDiag;
191 #ifdef DIAG_DEVELOPER
327 m_PlayerSelected =
false;
354 #ifdef DIAG_DEVELOPER
355 m_CanBeTargetedDebug =
true;
394 if (!
GetGame().IsDedicatedServer())
419 PluginConfigDebugProfileFixed m_ConfigDebugProfileFixed = PluginConfigDebugProfileFixed.Cast(
GetPlugin(PluginConfigDebugProfileFixed));
421 PluginDeveloper m_Developer = PluginDeveloper.Cast(
GetPlugin(PluginDeveloper));
428 if (player && default_preset !=
"")
431 m_ConfigDebugProfileFixed.GetPresetItems(default_preset, preset_array);
433 bool is_preset_fixed =
true;
434 if (preset_array.Count() == 0)
437 is_preset_fixed =
false;
440 if (preset_array.Count() > 0)
442 m_Developer.ClearInventory(player);
444 for (
int i = 0; i < preset_array.Count(); i++)
450 health = m_ConfigDebugProfileFixed.GetItemHealth(default_preset, i);
451 quantity = m_ConfigDebugProfileFixed.GetItemQuantity(default_preset, i);
458 m_Developer.SpawnEntityInPlayerInventory(player, preset_array.Get(i), health, quantity);
505 RegisterNetSyncVariableInt(
"m_LifeSpanState", LifeSpanState.BEARD_NONE, LifeSpanState.COUNT);
506 RegisterNetSyncVariableInt(
"m_BloodType", 0, 128);
509 RegisterNetSyncVariableInt(
"m_SoundEventParam", 0, ((EPlayerSoundEventParam.ENUM_COUNT - 1) * 2) - 1);
510 RegisterNetSyncVariableInt(
"m_StaminaState",0, eStaminaState.COUNT - 1);
511 RegisterNetSyncVariableInt(
"m_BleedingBits");
515 RegisterNetSyncVariableInt(
"m_MixedSoundStates", 0,
eMixedSoundStates.COUNT - 1);
517 RegisterNetSyncVariableInt(
"m_RefreshAnimStateIdx",0,3);
518 RegisterNetSyncVariableInt(
"m_BrokenLegState", -
eBrokenLegs.BROKEN_LEGS_SPLINT,
eBrokenLegs.BROKEN_LEGS_SPLINT);
519 RegisterNetSyncVariableInt(
"m_SyncedModifiers", 0, ((
eModifierSyncIDs.LAST_INDEX - 1) * 2) - 1);
520 RegisterNetSyncVariableInt(
"m_HasBloodyHandsVisible", 0,
eBloodyHandsTypes.LAST_INDEX - 1);
521 RegisterNetSyncVariableInt(
"m_ActionSoundCategoryHash");
522 RegisterNetSyncVariableInt(
"m_PerformedAnimActionID", -1, 2048);
523 RegisterNetSyncVariableInt(
"m_ActivePrimarySymptomID", 0, SymptomIDs.LAST_INDEX);
526 RegisterNetSyncVariableFloat(
"m_HeatBufferDynamicMax", 0.0, 1.0, 2);
528 RegisterNetSyncVariableBool(
"m_IsUnconscious");
529 RegisterNetSyncVariableBool(
"m_IsRestrained");
530 RegisterNetSyncVariableBool(
"m_IsInWater");
531 RegisterNetSyncVariableBool(
"m_InsideEffectArea");
533 RegisterNetSyncVariableBool(
"m_HasBloodTypeVisible");
534 RegisterNetSyncVariableBool(
"m_IsRestrainStarted");
535 RegisterNetSyncVariableBool(
"m_IsRestrainPrelocked");
536 RegisterNetSyncVariableBool(
"m_HasHeatBuffer");
537 RegisterNetSyncVariableBool(
"m_IsInColdArea");
539 RegisterNetSyncVariableFloat(
"m_CurrentShock");
594 m_ActionSoundCategoryHash = hash;
749 if (waterLevel > 0.5)
752 timeSpent += timeSlice;
766 timeSpent += timeSlice;
814 EntityAI item_EAI = this.GetInventory().FindAttachment(slot_id);
817 if (item_EAI && !item_IB)
819 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() +
"!";
843 if (GetInventory().HasInventoryReservation(item, null))
850 if (GetHumanInventory().GetEntityInHands() == item)
869 int bit_mask_remove = ~state;
1065 if (!
GetGame().IsDedicatedServer())
1083 super.EEKilled(killer);
1088 super.EEHitBy(damageResult, damageType, source,
component, dmgZone, ammo, modelPos, speedCoef);
1095 if (damageResult != null && damageResult.
GetDamage(dmgZone,
"Shock") > 0)
1101 if (
GetGame().ConfigIsExisting(
"cfgAmmo " + ammo +
" unconRefillModifier"))
1113 if (damageType ==
DamageType.EXPLOSION && ammo ==
"FlashGrenade_Ammo")
1122 float dmg = damageResult.
GetDamage(dmgZone,
"Blood");
1127 #ifdef DIAG_DEVELOPER
1129 Print(
"EEHitBy() | " +
GetDisplayName() +
" hit by " + source.GetDisplayName() +
" to " + dmgZone);
1131 PluginRemotePlayerDebugServer plugin_remote_server = PluginRemotePlayerDebugServer.Cast(
GetPlugin(PluginRemotePlayerDebugServer));
1132 if (plugin_remote_server)
1134 plugin_remote_server.OnDamageEvent(
this, damageResult);
1138 if (
GetGame().IsDebugMonitor())
1144 int transferShockToDamageCoef =
g_Game.ConfigGetInt(
string.Format(
"%1 %2 DamageApplied transferShockToDamage",
CFG_AMMO, ammo));
1145 if (transferShockToDamageCoef == 1)
1149 if (dmgZone !=
"Head")
1150 AddHealth(dmgZone,
"Health", -damageResult.
GetDamage(dmgZone,
"Shock"));
1155 if (GetHealth(
"RightLeg",
"Health") <= 1 || GetHealth(
"LeftLeg",
"Health") <= 1 || GetHealth(
"RightFoot",
"Health") <= 1 || GetHealth(
"LeftFoot",
"Health") <= 1)
1164 if (ammo ==
"Bullet_CupidsBolt" && IsAlive())
1166 DamageSystem.ResetAllZones(
this);
1213 super.EEHitByRemote(damageType, source,
component, dmgZone, ammo, modelPos);
1215 if (m_MeleeFightLogic.IsInBlock())
1236 return super.ConvertNonlethalDamage(damage, damageType);
1246 float shakeStrength =
Math.
InverseLerp(0, 500, hitData.m_InSpeed.Length());
1251 if (hitData.m_AmmoType ==
"Bullet_CupidsBolt")
1252 Ammo_CupidsBolt.PlayOnHitParticle(hitData.m_Position);
1259 if (m_MeleeFightLogic.IsInBlock())
1311 return GetSelectionPositionMS(pSelection);
1328 super.EEItemAttached(item, slot_name);
1332 Param1<PlayerBase> p =
new Param1<PlayerBase>(
this);
1333 item.SwitchItemSelectionTextureEx(EItemManipulationContext.ATTACHING, p);
1344 if (!
GetGame().IsDedicatedServer())
1346 if (clothing.GetEffectWidgetTypes())
1351 if (clothing.GetGlassesEffectID() > -1)
1359 else if (
GetGame().IsServer())
1361 if (clothing.IsGasMask())
1367 clothing.UpdateNVGStatus(
this,
true);
1376 super.EEItemDetached(item, slot_name);
1379 item.SwitchItemSelectionTextureEx(EItemManipulationContext.DETACHING);
1389 if (!
GetGame().IsDedicatedServer())
1391 if (clothing.GetEffectWidgetTypes())
1396 if (clothing.GetGlassesEffectID() > -1)
1404 if (clothing.IsGasMask())
1410 clothing.UpdateNVGStatus(
this);
1418 string slot = slot_name;
1420 boo = item.IsWeapon();
1422 if (slot ==
"Melee")
1427 else if (slot ==
"Shoulder")
1436 super.SwitchItemSelectionTexture(item,slot_name);
1439 EntityAI armband = FindAttachmentBySlotName(
"Armband");
1440 if (slot_name ==
"Body" && armband)
1442 Param1<PlayerBase> p =
new Param1<PlayerBase>(
this);
1443 armband.SwitchItemSelectionTextureEx(EItemManipulationContext.UPDATE,p);
1453 for (
int i = 0; i < itemsArray.Count(); i++)
1456 if (item && !item.IsInherited(SurvivorBase)) GetInventory().LocalDestroyEntity(item);
1472 if (ConfigGetBool(
"woman") != 1)
1481 int voice_type = ConfigGetInt(
"voiceType");
1483 if (voice_type == 0)
1529 AddAction(ActionLockedDoors, InputActionMap);
1579 if (IsControlledPlayer())
1610 if (IsControlledPlayer())
1620 if (IsControlledPlayer())
1625 actions.InsertAll(bcActions);
1645 InputActionMap.Insert(ai, action_array);
1647 action_array.Insert(action);
1663 for (
int i = 0; i < action_array.Count(); i++)
1665 if (action == action_array.Get(i))
1667 action_array.Remove(i);
1671 InputActionMap.Insert(ai, action_array);
1673 action_array.Insert(action);
1729 if (gloves && gloves.GetHealthLevel() < 4)
1762 string surface;
int liquid;
1766 if (shoes && shoes.GetHealthLevel() < 4)
1778 if (pUserInt % 2 == 0)
1816 #ifdef DIAG_DEVELOPER
1817 void SetStaminaDisabled(
bool value)
1875 if (GetThrowing() && GetThrowing().IsThrowingModeEnabled())
1944 if (IsControlledPlayer())
1953 return super.CanReleaseAttachment(attachment);
1958 return super.CanReleaseCargo(cargo);
1963 return super.CanReceiveItemIntoCargo(item);
1968 return super.CanSwapItemInCargo(child_entity, new_entity);
1979 return super.CanReceiveItemIntoHands(item_to_hands);
1984 return super.CanSaveItemInHands(item_in_hands);
1989 return super.CanReleaseFromHands(handheld);
2123 float add_health_coef = 0.33;
2127 AddHealth(
"LeftLeg",
"Health", (GetMaxHealth(
"LeftLeg",
"Health") - GetHealth(
"LeftLeg",
"Health") ) * add_health_coef );
2128 AddHealth(
"RightLeg",
"Health", (GetMaxHealth(
"RightLeg",
"Health") - GetHealth(
"RightLeg",
"Health")) * add_health_coef );
2129 AddHealth(
"RightFoot",
"Health", (GetMaxHealth(
"RightFoot",
"Health") - GetHealth(
"RightFoot",
"Health")) * add_health_coef );
2130 AddHealth(
"LeftFoot",
"Health", (GetMaxHealth(
"LeftFoot",
"Health") - GetHealth(
"LeftFoot",
"Health")) * add_health_coef );
2140 PPERequester_Drowning req = PPERequester_Drowning.Cast(PPERequesterBank.GetRequester(PPERequesterBank.REQ_DROWNING));
2234 int attcount = this.GetInventory().AttachmentCount();
2236 for (
int att = 0; att < attcount; att++)
2238 attachment = GetInventory().GetAttachmentFromIndex(att);
2239 if (attachment.IsItemBase())
2241 item_name = attachment.GetType();
2242 if (
GetGame().IsKindOf(item_name, searched_item))
2257 PluginSceneManager scene_editor = PluginSceneManager.Cast(
GetPlugin(PluginSceneManager));
2258 scene_editor.InitLoad();
2280 if (IsControlledPlayer())
2286 m_Hud.UpdateBloodName();
2292 m_Hud.ShowQuickbarUI(
true);
2293 m_Hud.UpdateQuickbarGlobalVisibility();
2294 m_Hud.InitHeatBufferUI(
this);
2295 m_Hud.OnPlayerLoaded();
2299 if (!
GetGame().IsDedicatedServer())
2306 m_CharactersHead = Head_Default.Cast(GetInventory().FindPlaceholderForSlot(slotId));
2316 wpn.DelayedValidateAndRepair();
2320 wpn.ValidateAndRepair();
2379 EntityAI entityInHands = GetHumanInventory().GetEntityInHands();
2390 else if (entityInHands && entityInHands.HasEnergyManager())
2392 if (entityInHands.GetCompEM().IsPlugged())
2393 entityInHands.OnPlacementCancelled(
this);
2405 EntityAI entityInHands = GetHumanInventory().GetEntityInHands();
2406 if (entityInHands && entityInHands.HasEnergyManager())
2408 if (entityInHands.GetCompEM().IsPlugged())
2409 entityInHands.OnPlacementCancelled(
this);
2459 if (IsControlledPlayer())
2461 PPERequester_Drowning req = PPERequester_Drowning.Cast(PPERequesterBank.GetRequester(PPERequesterBank.REQ_DROWNING));
2472 if (IsControlledPlayer())
2474 PPERequester_Drowning req = PPERequester_Drowning.Cast(PPERequesterBank.GetRequester(PPERequesterBank.REQ_DROWNING));
2496 m_ProcessResetADS =
true;
2499 else if (!
GetGame().IsMultiplayer())
2513 m_ProcessResetADS =
false;
2535 foreach (
string t: disallowedUndergroundTypes)
2537 if (item.IsKindOf(t))
2691 if (!IsPlayerSelected() || !IsAlive())
2708 if (heldItem && heldItem.HasEnergyManager() && heldItem.GetCompEM().IsPlugged())
2714 placed_entity.GetCompEM().UpdatePlugState();
2722 if (!m_DeathSyncSent && m_KillerData)
2725 m_DeathSyncSent =
true;
2738 if (m_PlayerSoundEventHandler)
2739 m_PlayerSoundEventHandler.OnTick(delta_time);
2756 #ifdef DIAG_DEVELOPER
2759 m_WeaponDebug.OnCommandHandlerUpdate();
2772 if (m_ProcessResetADS)
2814 super.EEItemIntoHands(item);
2818 MiscGameplayFunctions.RemoveAllAttachedChildrenByTypename(item, {
Bolt_Base});
2823 w.ResetWeaponAnimState();
2829 GetMeleeFightLogic().SetBlock(
false);
2834 if (item.IsHeavyBehaviour() && IsRaised())
2849 super.EEItemOutOfHands(item);
2864 override void CommandHandler(
float pDt,
int pCurrentCommandID,
bool pCurrentCommandFinished)
2866 EvaluateDamageHit(pCurrentCommandID);
2869 super.CommandHandler(pDt,pCurrentCommandID,pCurrentCommandFinished);
2871 vector playerPosition = PhysicsGetPositionWS();
2898 GetDayZPlayerInventory().HandleInventory(pDt);
2962 GetHumanInventory().Update(pDt);
2969 HandleDamageHit(pCurrentCommandID);
2973 mngr.Update(pCurrentCommandID);
2978 if (!m_UnconsciousDebug)
2981 if (m_ShouldBeUnconscious && m_IsUnconscious)
2986 m_Swimming.m_bWasSwimming |= hcu.
IsInWater();
2989 if (m_Swimming.m_bWasSwimming)
2997 else if (m_ShouldBeUnconscious)
3006 m_IsUnconscious =
true;
3014 m_LastCommandBeforeUnconscious = pCurrentCommandID;
3022 m_TransportCache = null;
3026 m_JumpClimb.CheckAndFinishJump();
3027 StartCommand_Unconscious(0);
3028 SetFallYDiff(playerPosition[1]);
3032 else if (m_IsUnconscious)
3045 if (m_Swimming.m_bWasSwimming || m_LastCommandBeforeUnconscious ==
DayZPlayerConstants.COMMANDID_VEHICLE)
3048 hcu.
WakeUp(wakeUpStance);
3050 m_IsUnconscious =
false;
3059 m_IsUnconscious =
false;
3068 if (quickBarSlot && IsAlive())
3096 bool isSwimmingOrClimbing = GetCommand_Swim() || GetCommand_Climb() || GetCommand_Ladder();
3097 bool isStaminaLimitAppliable = hcm || isSwimmingOrClimbing;
3099 if (isStaminaLimitAppliable)
3104 if (isRunning || isSwimmingOrClimbing)
3126 if (!
GetGame().IsDedicatedServer())
3147 #ifdef DIAG_DEVELOPER
3149 m_Bot.OnUpdate(pDt);
3159 TryGetInVehicleDebug();
3166 void SetGetInVehicleDebug(
EntityAI ent)
3168 m_GetInVehicleTransportDebug =
Transport.Cast(ent);
3171 void TryGetInVehicleDebug()
3173 if (m_GetInVehicleTransportDebug)
3175 HumanCommandVehicle vehCommand = StartCommand_Vehicle(m_GetInVehicleTransportDebug, 0, 0);
3178 vehCommand.
SetVehicleType(m_GetInVehicleTransportDebug.GetAnimInstance());
3180 m_GetInVehicleTransportDebug = null;
3215 else if (!
GetGame().IsMultiplayer())
3222 m_hac.InternalCommand(command_ID);
3228 if (!
GetGame().IsDedicatedServer())
3235 m_Hud.ShowQuickbarPlayer(
true);
3276 if (
GetUApi().GetInputByID(UADefaultAction).LocalPress() ||
GetUApi().GetInputByID(UAUIMenu).LocalPress() ||
GetUApi().GetInputByID(UAGear).LocalPress())
3345 if (super.IsLanded(pCurrentCommandID))
3353 bool wasFalling = m_IsUnconsciousFalling;
3354 m_IsUnconsciousFalling = PhysicsIsFalling(
false);
3355 return wasFalling && !m_IsUnconsciousFalling;
3365 if (super.OnLand(pCurrentCommandID, fallDamageData))
3378 if (super.IsAlreadyInFallingCommand(pCurrentCommandID))
3398 EntityAI entity_in_hands = GetHumanInventory().GetEntityInHands();
3414 if (m_TransportCache)
3415 m_TransportCache.MarkCrewMemberUnconscious(m_TransportCache.CrewMemberIndex(
this));
3427 if (GetMeleeFightLogic())
3429 GetMeleeFightLogic().SetBlock(
false);
3433 SetMasterAttenuation(
"UnconsciousAttenuation");
3451 PPERequesterBank.GetRequester(PPERequester_UnconEffects).Stop();
3453 if (
GetGame().GetUIManager().IsDialogVisible())
3477 SetMasterAttenuation(
"");
3498 PluginAdminLog adm = PluginAdminLog.Cast(
GetPlugin(PluginAdminLog));
3499 adm.PlayerKilledByDrowningUncon(
this);
3501 SetHealth(
"",
"",-100);
3512 float sin_normalized = (sin + 1) / 2;
3513 if (sin_normalized < 0.05)
3519 PPERequesterBank.GetRequester(PPERequester_UnconEffects).Start(
m_UnconParam);
3543 return m_IsUnconscious;
3548 #ifdef DIAG_DEVELOPER
3549 if (!m_CanBeTargetedDebug)
3555 return super.CanBeTargetedByAI(ai) && !
IsUnconscious() && !IsInVehicle();
3560 AddHealth(
"",
"Shock",shock);
3660 if (attachment && attachment.GetType() ==
"Splint_Applied")
3662 attachment.Delete();
3682 hcm = GetCommand_Move();
3691 m_JumpClimb.CheckAndFinishJump();
3700 float avgLegHealth = GetHealth(
"RightLeg",
"") + GetHealth(
"LeftLeg",
"") + GetHealth(
"RightFoot",
"") + GetHealth(
"LeftFoot",
"");
3701 avgLegHealth *= 0.25;
3707 PhysicsGetVelocity(v);
3716 if (IsClimbingLadder())
3744 void MovingShock(
float legHealth,
float highShock,
float midShock,
float lowShock)
3765 Param1<float> damage =
new Param1<float>(0);
3766 damage.param1 = dmg;
3776 return super.CanPickupHeavyItem(item);
3782 SetHealth(
"RightLeg",
"", 0);
3783 SetHealth(
"RightFoot",
"", 0);
3784 SetHealth(
"LeftLeg",
"", 0);
3785 SetHealth(
"LeftFoot",
"", 0);
3791 if (itemInHands && itemInHands.IsHeavyBehaviour())
3799 if (attachment && attachment.GetType() ==
"Splint_Applied")
3814 if (itemInHands.IsHeavyBehaviour())
3823 itemInHands.OnItemInHandsPlayerSwimStart(
this);
3828 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3845 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3860 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3872 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3882 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3894 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3904 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3916 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3926 GetInventory().LockInventory(LOCK_FROM_SCRIPT);
3931 EntityAI itemOnHead = FindAttachmentBySlotName(
"Headgear");
3933 if (itemInHand && itemInHand.GetCompEM())
3934 itemInHand.GetCompEM().SwitchOff();
3938 if (itemOnHead && itemOnHead.GetCompEM())
3939 itemOnHead.GetCompEM().SwitchOff();
3947 GetInventory().UnlockInventory(LOCK_FROM_SCRIPT);
3980 super.OnCommandDeathStart();
4015 return ((1 << stance) & stanceMask) != 0;
4039 if (GetThrowing().IsThrowingAnimationPlaying())
4047 if (
Math.
AbsInt(previousStance - newStance) == 3)
4124 m_Hud.ShowVehicleInfo();
4126#ifdef FEATURE_NETWORK_RECONCILIATION
4133 identity.Possess(pawn);
4140#ifdef FEATURE_NETWORK_RECONCILIATION
4144 if (identity && !m_ShouldBeUnconscious)
4147 identity.Possess(
this);
4153 m_Hud.HideVehicleInfo();
4158 if (change_to_enabled)
4170 m_Hud.Update(timeSlice);
4238 #ifdef DIAG_DEVELOPER
4239 DiagOnPostFrame(other, extra);
4243#ifdef DIAG_DEVELOPER
4244 protected void DiagOnPostFrame(
IEntity other,
int extra)
4250 m_WeaponDebug.OnPostFrameUpdate();
4253 if (GetBleedingManagerRemote())
4255 GetBleedingManagerRemote().OnUpdate();
4262 m_MeleeDebug =
true;
4265 else if (!DiagMenu.GetBool(
DiagMenuIDs.MELEE_DEBUG) && m_MeleeDebug)
4267 m_MeleeDebug =
false;
4272 if (DiagMenu.GetBool(
DiagMenuIDs.SOUNDS_ITEM_IMPACT_SOUNDS))
4273 InventoryItem.DrawImpacts();
4277 PluginDrawCheckerboard drawCheckerboard = PluginDrawCheckerboard.Cast(
GetPluginManager().GetPluginByType(PluginDrawCheckerboard));
4278 if (drawCheckerboard && !drawCheckerboard.IsActive())
4280 drawCheckerboard.ShowWidgets(DiagMenu.GetBool(
DiagMenuIDs.MISC_DRAW_CHECKERBOARD));
4284 if (m_PresenceNotifier)
4286 m_PresenceNotifier.EnableDebug(DiagMenu.GetBool(
DiagMenuIDs.MISC_PRESENCE_NOTIFIER_DBG));
4289 if (m_TargetTemperatureDiag)
4291 m_TargetTemperatureDiag.ShowDebug(DiagMenu.GetBool(
DiagMenuIDs.MISC_TARGET_TEMPERATURE));
4294 if (DiagMenu.GetBool(
DiagMenuIDs.TRIGGER_PLAYER_DEBUG))
4297 GetCollisionBox(minmax);
4300 if (m_IsInsideTrigger)
4307 dbgShape.CreateMatrix(mat);
4308 dbgShape.SetMatrix(mat);
4312 if (m_Environment && m_Environment.m_Debug)
4315 EnvDebugData envDebugData = m_Environment.GetEnvDebugData();
4318 m_Environment.ShowEnvDebugPlayerInfo(DiagMenu.GetBool(
DiagMenuIDs.MISC_ENVIRONMENT_DEBUG));
4322 if (m_FallDamage && m_FallDamage.m_Debug)
4325 FallDamageDebugData fallDamageDebugData = m_FallDamage.GetFallDamageDebugData();
4328 m_FallDamage.ShowFallDamageDebugInfo(DiagMenu.GetBool(
DiagMenuIDs.MISC_FALLDAMAGE_DEBUG));
4333 override void OnEnterTrigger(ScriptedEntity trigger)
4335 super.OnEnterTrigger(trigger);
4337 ++m_IsInsideTrigger;
4340 override void OnLeaveTrigger(ScriptedEntity trigger)
4342 super.OnLeaveTrigger(trigger);
4344 --m_IsInsideTrigger;
4351 m_Hud.SetStaminaBarVisibility(show);
4386 override bool CanClimb(
int climbType, SHumanCommandClimbResult climbRes)
4404 return super.CanClimb(climbType,climbRes);
4426 return super.CanJump();
4431 return m_JumpClimb.m_bIsJumpInProgress;
4438 int count = temp.Count();
4441 vector pos = target.GetPosition();
4442 for (
int i = 0; i < count; i++)
4471 GetItemAccessor().OnItemInHandsChanged(
true);
4472 GetItemAccessor().ResetWeaponInHands();
4486 vector pdir = GetDirection();
4510 if (GetThrowing().IsThrowingModeEnabled() || GetThrowing().IsThrowingAnimationPlaying())
4534 if (!quickBarEntity)
4543 EntityAI inHandEntity = GetHumanInventory().GetEntityInHands();
4545 if (!GetDayZPlayerInventory().
IsIdle())
4549 handInventoryLocation.
SetHands(
this,quickBarEntity);
4550 if (this.GetInventory().HasInventoryReservation(quickBarEntity, handInventoryLocation))
4553 if (inHandEntity == quickBarEntity)
4555 if (GetHumanInventory().CanRemoveEntityInHands())
4558 PredictiveMoveItemFromHandsToInventory();
4564 quickBarEntity.GetInventory().GetCurrentInventoryLocation(invLocQBItem);
4565 if (GetInventory().HasInventoryReservation(quickBarEntity,invLocQBItem))
4573 inHandEntity.GetInventory().GetCurrentInventoryLocation(inHandEntityFSwapDst);
4575 int index = GetHumanInventory().FindUserReservedLocationIndex(inHandEntity);
4577 GetHumanInventory().GetUserReservedLocation(index, Reserved_Item_il);
4579 if (Reserved_Item_il)
4595 if (GetInventory().HasInventoryReservation(quickBarEntity,handInventoryLocation))
4598 if (GetInventory().CanAddEntityIntoHands(quickBarEntity))
4609 if (GetInventory().IsInventoryLocked())
4619 ItemBase itemInHands =
ItemBase.Cast(GetHumanInventory().GetEntityInHands());
4621 if (itemInHands != quickBarItem)
4631 if (IsRaised() || GetCommand_Melee())
4699 EntityAI entity_in_hands = GetHumanInventory().GetEntityInHands();
4721 mngr_client.Interrupt();
4723 else if (GetHumanInventory().GetEntityInHands()!= magazine)
4761 int last_ammo_magazine_count;
4762 int ammo_magazine_count;
4765 int last_ammo_pile_count;
4766 int ammo_pile_count;
4769 for (
int att_i = 0; att_i < GetInventory().AttachmentCount(); ++att_i)
4771 EntityAI attachment = GetInventory().GetAttachmentFromIndex(att_i);
4772 ref
CargoBase attachment_cargo = attachment.GetInventory().GetCargo();
4774 if (attachment_cargo)
4776 for (
int cgo_i = 0; cgo_i < attachment_cargo.GetItemCount(); ++cgo_i)
4778 EntityAI cargo_item = attachment_cargo.GetItem(cgo_i);
4781 if (cargo_item.IsMagazine())
4783 Magazine magazine = Magazine.Cast(cargo_item);
4784 ammo_pile_count = magazine.GetAmmoCount();
4789 if (ammo_pile_count > 0)
4791 if (last_ammo_magazine_count == 0)
4793 ammo_magazine = magazine;
4794 last_ammo_magazine_count = ammo_pile_count;
4798 if (last_ammo_magazine_count < ammo_pile_count)
4800 ammo_magazine = magazine;
4801 last_ammo_magazine_count = ammo_pile_count;
4807 else if (weapon_manager.
CanLoadBullet(weapon_base, magazine))
4809 if (ammo_pile_count > 0)
4811 if (last_ammo_pile_count == 0)
4813 ammo_pile = magazine;
4814 last_ammo_pile_count = ammo_pile_count;
4818 if (last_ammo_pile_count > ammo_pile_count)
4820 ammo_pile = magazine;
4821 last_ammo_pile_count = ammo_pile_count;
4834 return ammo_magazine;
4851#ifdef DIAG_DEVELOPER
4854 m_Bot =
new Bot(
this);
4886 override SoundOnVehicle
PlaySound(
string sound_name,
float range,
bool create_local =
false)
4893 return GetWeightEx();
4920 return GetInventory().HasEntityInInventory(entity);
4925 if (
GetGame().IsMultiplayer())
4941 bool i_owned = GetHumanInventory().HasEntityInInventory(item);
4943 bool cp_owned =
false;
4945 cp_owned = GetHumanInventory().HasEntityInInventory(currParent);
4947 bool np_owned =
false;
4949 np_owned = GetHumanInventory().HasEntityInInventory(newParent);
4951 bool all_owned = i_owned && cp_owned && (np_owned || (newParent == null));
4956 Error(
"[syncinv] unsupported instance type t=" + t);
4966 float totalWeight = super.GetWeightSpecialized(forceRecalc);
4971 totalWeight += itemHands.GetWeightEx(forceRecalc);
4974 if (WeightDebug.m_VerbosityFlags & WeightDebugType.RECALC_FORCED)
4976 float itemInHandsWeight = totalWeight - super.GetWeightSpecialized(forceRecalc);
4978 dta.
SetCalcDetails(
"TMan: " + (super.GetWeightSpecialized(forceRecalc)+ itemInHandsWeight) +
"(contents weight[includes item in hands])");
4986 const int VISIBILITY_SLOTS_COUNT = 10;
4988 int attcount = GetInventory().AttachmentCount();
4989 float sumVisibility = 0;
4990 float countVisibility = 0;
4991 float visibilityMean = 0;
4995 for (
int att = 0; att < attcount; att++)
4997 EntityAI attachment = GetInventory().GetAttachmentFromIndex(att);
4998 if (attachment.IsClothing())
5002 sumVisibility += clothing.GetItemVisibility();
5007 visibilityMean = (sumVisibility + (VISIBILITY_SLOTS_COUNT - countVisibility)) / VISIBILITY_SLOTS_COUNT;
5036 float health = GetHealth(
"",
"");
5048 float blood = GetHealth(
"",
"Blood");
5076 float immmunity_max = 1;
5083 float health = GetHealth(
"",
"");
5084 float health_max = GetMaxHealth(
"",
"");
5097 float blood = GetHealth(
"",
"Blood");
5098 float blood_max = GetMaxHealth(
"",
"Blood");
5120 if (stat_value <= critical)
5124 if (stat_value <= low)
5128 if (stat_value <= normal)
5132 if (stat_value <= high)
5141 if (stat_value <= critical)
5145 if (stat_value <= low)
5149 if (stat_value <= normal)
5153 if (stat_value <= high)
5173 float max_health = GetMaxHealth(
"GlobalHealth",
"Health") + 0.01;
5174 float max_blood = GetMaxHealth(
"GlobalHealth",
"Blood") + 0.01;
5177 float health_normalized = GetHealth(
"GlobalHealth",
"Health") / max_health;
5178 float blood_normalized = GetHealth(
"GlobalHealth",
"Blood") / max_blood;
5179 immunity = energy_normalized + water_normalized + health_normalized + blood_normalized;
5180 immunity = immunity / 4;
5194 if (IsRaised() || (item && item.IsHeavyBehaviour()))
5197 if (item && GetThrowing() && GetThrowing().IsThrowingModeEnabled())
5223 return GetCommand_Move() && GetCommand_Move().IsInRoll());
5261 if (!m_FightEndBlendTimer)
5262 m_FightEndBlendTimer =
new Timer();
5263 if (!m_FightEndBlendTimer.IsRunning())
5278 if (item && item.GetHierarchyParent() && item.GetHierarchyParent().IsWeapon() && item.IsRuined())
5299 super.RPC(rpc_type, params, guaranteed, recipient);
5305 super.OnRPC(sender, rpc_type, ctx);
5311 case ERPCs.RPC_PLAYER_STAT:
5316 case ERPCs.RPC_SYNC_DISPLAY_STATUS:
5323 case ERPCs.RPC_PLAYER_SYMPTOM_ON:
5330 case ERPCs.RPC_PLAYER_SYMPTOM_OFF:
5337 case ERPCs.RPC_DAMAGE_VALUE_SYNC:
5342 case ERPCs.RPC_USER_ACTION_MESSAGE:
5354 case ERPCs.RPC_SOFT_SKILLS_SPECIALTY_SYNC:
5355 ref Param1<float> p_synch =
new Param1<float>(0);
5357 float specialty_level = p_synch.param1;
5361 case ERPCs.RPC_SOFT_SKILLS_STATS_SYNC:
5362 ref Param5<float, float, float, float, bool> p_debug_synch =
new Param5<float, float ,float, float, bool>(0, 0, 0, 0,
false);
5363 ctx.
Read(p_debug_synch);
5364 float general_bonus_before = p_debug_synch.param1;
5365 float general_bonus_after = p_debug_synch.param2;
5366 float last_UA_value = p_debug_synch.param3;
5367 float cooldown_value = p_debug_synch.param4;
5368 float cooldown_active = p_debug_synch.param5;
5376 case ERPCs.RPC_WARNING_ITEMDROP:
5386 case ERPCs.RPC_WARNING_TELEPORT:
5395 case ERPCs.RPC_INIT_SET_QUICKBAR:
5396 ref Param1<int> count =
new Param1<int>(0);
5397 if (ctx.
Read(count));
5399 for (
int i = 0; i < count.param1 ; i++)
5406 case ERPCs.RPC_SYNC_THERMOMETER:
5409 if (ctx.
Read(value))
5410 m_Hud.SetTemperature(value.
ToString() +
"#degrees_celsius");
5415 case ERPCs.RPC_CHECK_PULSE:
5436 case PlantType.TREE_HARD:
5437 SoundHardTreeFallingPlay();
5440 case PlantType.TREE_SOFT:
5441 SoundSoftTreeFallingPlay();
5444 case PlantType.BUSH_HARD:
5445 SoundHardBushFallingPlay();
5448 case PlantType.BUSH_SOFT:
5449 SoundSoftBushFallingPlay();
5452 case ERPCs.RPC_DEBUG_MONITOR_FLT:
5459 case ERPCs.RPC_DEBUG_MONITOR_STR:
5480 #ifdef DIAG_DEVELOPER
5481 case ERPCs.DEV_RPC_AGENT_RESET:
5489 case ERPCs.DEV_PLAYER_DEBUG_REQUEST:
5491 PluginRemotePlayerDebugServer plugin_remote_server = PluginRemotePlayerDebugServer.Cast(
GetPlugin(PluginRemotePlayerDebugServer));
5492 plugin_remote_server.OnRPC(ctx,
this);
5496 case ERPCs.DEV_PLAYER_DEBUG_DATA:
5498 PluginRemotePlayerDebugClient plugin_remote_client = PluginRemotePlayerDebugClient.Cast(
GetPlugin(PluginRemotePlayerDebugClient));
5499 PluginDeveloper plugin_dev = PluginDeveloper.Cast(
GetPlugin(PluginDeveloper));
5500 if (plugin_dev.m_ScriptConsole)
5501 plugin_dev.m_ScriptConsole.OnRPCEx(rpc_type, ctx);
5503 plugin_remote_client.OnRPC(ctx);
5507 case ERPCs.DEV_AGENT_GROW:
5513 case ERPCs.RPC_ITEM_DIAG_CLOSE:
5516 mid.StopWatchRequest(
this);
5521 case ERPCs.DEV_REQUEST_UTS_DEBUG:
5523 PluginUniversalTemperatureSourceServer plugin_uts_server = PluginUniversalTemperatureSourceServer.Cast(
GetPlugin(PluginUniversalTemperatureSourceServer));
5524 plugin_uts_server.OnRPC(ctx,
this);
5528 case ERPCs.DEV_UTS_DEBUG_DATA:
5530 PluginUniversalTemperatureSourceClient plugin_uts_client = PluginUniversalTemperatureSourceClient.Cast(
GetPlugin(PluginUniversalTemperatureSourceClient));
5531 plugin_uts_client.OnRPC(ctx);
5538 case ERPCs.DEV_RPC_SERVER_SCRIPT:
5554 case ERPCs.DEV_RPC_SERVER_SCRIPT_RESULT:
5556 PluginDeveloper dev = PluginDeveloper.Cast(
GetPlugin(PluginDeveloper));
5557 if (dev.m_ScriptConsole)
5558 dev.m_ScriptConsole.OnRPCEx(rpc_type, ctx);
5562 case ERPCs.DEV_SET_DEV_ITEM:
5564 Param1<EntityAI> ent =
new Param1<EntityAI>(null);
5565 if (ctx.
Read(ent) && ent.param1)
5568 mid2.RegisterDebugItem(ent.param1,
this);
5574 case ERPCs.RPC_ITEM_DIAG:
5576 Param1<EntityAI> p1 =
new Param1<EntityAI>(null);
5580 plgn.OnRPC(p1.param1, ctx);
5587 #ifdef DIAG_DEVELOPER
5588 PluginDeveloper module_rc = PluginDeveloper.Cast(
GetPlugin(PluginDeveloper));
5590 module_rc.OnRPC(
this, rpc_type, ctx);
5592 PluginDeveloperSync module_rcs = PluginDeveloperSync.Cast(
GetPlugin(PluginDeveloperSync));
5594 module_rcs.OnRPC(
this, rpc_type, ctx);
5602 if (plugin_diag_menu)
5603 plugin_diag_menu.
OnRPC(
this, rpc_type, ctx);
5609 super.OnGameplayDataHandlerSync();
5656 if (
Class.
CastTo(ppeRequester, PPERequesterBank.GetRequester(ppeIdx)))
5657 ppeRequester.
Start();
5679 PPERequesterBank.GetRequester(ppeIdx).Stop(
new Param1<bool>(
true));
5709 super.EEHealthLevelChanged(oldLevel, newLevel, zone);
5710 if (!
GetGame().IsDedicatedServer())
5727 super.OnVariablesSynchronized();
5840 item.SetHealthMax(
"",
"");
5841 item.SetWet(item.GetWetInit());
5843 item.SetFrozen(
false);
5854 m_PlayerSelected =
true;
5862#ifdef FEATURE_NETWORK_RECONCILIATION
5866 identity.Possess(
this);
5885 Param1<int> paramCount =
new Param1<int>(count);
5886 params.Insert(paramCount);
5887 for (
int i = 0; i < count; i++)
5893 if (count > 0 &&
GetGame().IsMultiplayer())
5895 GetGame().
RPC(
this,
ERPCs.RPC_INIT_SET_QUICKBAR, params,
true, identity);
5905 if (
GetGame().IsMultiplayer())
5962 #ifdef DIAG_DEVELOPER
5963 m_TargetTemperatureDiag = PluginTargetTemperature.Cast(
GetPlugin(PluginTargetTemperature));
5964 m_TargetTemperatureDiag.Init(
this);
5970 m_Bot =
new Bot(
this);
5977 super.SimulateDeath(state);
5990 g_Game.GetMenuData().SaveCharacter(
false,
true);
5991 g_Game.GetMenuData().SetCharacterName(
g_Game.GetMenuData().GetLastPlayedCharacter(),
g_Game.GetMenuDefaultCharacterData(
false).GetCharacterName());
5992 g_Game.GetMenuData().SaveCharactersLocal();
5999 BurlapSackCover attachment;
6002 PPERequester_BurlapSackEffects req;
6003 if (
Class.
CastTo(req,PPERequesterBank.GetRequester(PPERequesterBank.REQ_BURLAPSACK)))
6009 else if (req.IsRequesterRunning())
6011 PPERequesterBank.GetRequester(PPERequester_BurlapSackEffects).Stop();
6027 if (item && item.IsObstructingVoice())
6029 item.MutePlayer(
this,
true);
6043 float resistance = 0;
6044 if (mask.HasIntegratedFilter() || mask.IsExternalFilterAttached())
6045 resistance = 1 - mask.GetFilterQuantity01();
6077 if (
m_EffectWidgets.m_MaskWidgetUpdateCount < 2 && callback.GetLength() > 2 && playback_time > 0.5 )
6087 if (super.OnInputUserDataProcess(userDataType, ctx))
6112 if (ctx.
Read(uid) && ctx.
Read(mute))
6133 float blood = GetHealth(
"GlobalHealth",
"Blood");
6135 blood_scale_normalized =
Math.
Clamp(blood_scale_normalized,0,1);
6146 bool use_stack_max =
false;
6149 if (!ctx.
Read(type))
6154 if (!ctx.
Read(item1))
6162 if (ctx.
Read(dummy))
6163 item1.SplitItemToInventoryLocation(dst);
6165 item1.SplitIntoStackMaxToInventoryLocation(dst);
6171 if (!ctx.
Read(item1))
6173 if (!ctx.
Read(item2))
6175 if (!ctx.
Read(use_stack_max))
6177 if (!ctx.
Read(slot_id))
6180 if (type == -1 && item1 && item2)
6182 item1.CombineItems(item2, use_stack_max);
6184 else if (type == 1 && item1)
6187 item1.SplitIntoStackMax(item2, slot_id,
this);
6189 item1.SplitItem(
this);
6191 else if (type == 2 && item1)
6198 item1.SplitIntoStackMaxCargo(item2, slot_id, row, col);
6200 else if (type == 3 && item1)
6202 item1.SplitIntoStackMaxHands(
this);
6229 return SpawnAI(object_name, pos);
6241 if (
g_Game.IsKindOf(object_name,
"Boat"))
6253 vector posRandom = MiscGameplayFunctions.GetRandomizedPositionVerifiedPlayer(
this,raycastDistance,radius,
this);
6286 item.SetPosition(pos_spawn);
6287 item.PlaceOnSurface();
6288 return can_be_dropped;
6315 string t = src.GetType();
6327 MiscGameplayFunctions.TransferItemProperties(src, dst);
6349 dst.PlaceOnSurface();
6350 dst.SetResultOfSplit(markItemAsSplitResult);
6351 MiscGameplayFunctions.TransferItemProperties(src, dst);
6381 Message(text,
"colorStatusChannel");
6393 Message(text,
"colorFriendly");
6399 Message(text,
"colorImportant");
6429 if ((
GetGame().IsServer() || !
GetGame().IsMultiplayer()) && GetInventory())
6434 for (
int i = 0; i < items.Count(); i++)
6443 ItemBase item_in_hands =
ItemBase.Cast(GetHumanInventory().GetEntityInHands());
6447 LocalDestroyEntityInHands();
6458 int count = itemsArray.Count();
6460 for (
int i = 0; i < itemsArray.Count(); i++)
6464 if (item && !item.IsInherited(SurvivorBase))
6466 ServerDropEntity(item);
6504 super.OnParticleEvent(pEventType ,pUserString, pUserInt);
6506 if (!
GetGame().IsDedicatedServer())
6508 if (pUserInt == 123456)
6511 int boneIdx = player.GetBoneIndexByName(
"Head");
6527 eff.SetAutodestroy(
true);
6530 player.AddChild(p, boneIdx);
6539 if (!ToDelete() && IsAlive() && !IsSwimming() && !
m_IsDrowning)
6590 vector pos = GetBonePositionWS(index);
6591 float depth =
g_Game.GetWaterDepth(pos);
6608 state_changed =
true;
6643 set<int> ret =
new set<int>;
6644 ret.Insert(EAttExclusions.SHAVING_MASK_ATT_0);
6645 ret.Insert(EAttExclusions.SHAVING_HEADGEAR_ATT_0);
6676 #ifdef DIAG_DEVELOPER
6678 if (IsControlledPlayer())
6717 if (amount > storedValue)
6759 if (IsPlayerSelected() && !IsAlive())
6809 if (
GetGame().SaveVersion() < 102)
6814 super.OnStoreSave(ctx);
6816 GetHumanInventory().OnStoreSave(ctx);
6846 arrowManager.
Save(ctx);
6871 if (!super.OnStoreLoad(ctx, version))
6875 if (!GetHumanInventory().
OnStoreLoad(ctx, version))
6885 Print(
"---- failed to load PlayerStats ----");
6891 Print(
"---- failed to load ModifiersManager, read fail ----");
6897 Print(
"---- failed to load AgentPool, read fail ----");
6903 Print(
"---- failed to load SymptomManager, read fail ----");
6909 Print(
"---- failed to load BleedingManagerServer, read fail ----");
6915 Print(
"---- failed to load PlayerStomach, read fail ----");
6937 Print(
"---- failed to load Persistent Flags, read fail ----");
6944 if (!ctx.
Read(onLadder))
6952 if (!ctx.
Read(position))
6968 arrowManager.
Load(ctx);
6972 Print(
"---- PlayerBase OnStoreLoad SUCCESS ----");
6978 GetHumanInventory().OnAfterStoreLoad();
6991 if (MiscGameplayFunctions.TeleportPlayerToSafeLocation3D(
this,safePos) &&
m_AdminLog)
6992 m_AdminLog.PlayerTeleportedLog(
this,currentPos,safePos,
"Spawning in Player Restricted Area: " + pra.
areaName);
7007 int lifespan_state = 0;
7008 if (!ctx.
Read(lifespan_state))
7012 int last_shaved = 0;
7013 if (!ctx.
Read(last_shaved))
7019 bool bloody_hands_old;
7020 if (!ctx.
Read(bloody_hands_old))
7026 int bloody_hands = 0;
7027 if (!ctx.
Read(bloody_hands))
7033 bool blood_visible =
false;
7034 if (!ctx.
Read(blood_visible))
7039 if (!ctx.
Read(blood_type))
7049 int hour, minute, second;
7120 PluginTransmissionAgents plugin = PluginTransmissionAgents.Cast(
GetPlugin(PluginTransmissionAgents));
7122 float temperature = 0;
7128 if (pollution & EPollution.HEAVYMETAL)
7142 if (!edibleItem || !edibleItem.CanBeConsumed())
7148 temperature = edibleItem.GetTemperature();
7153 if (edibleItem.IsLiquidContainer())
7155 int liquidType = edibleItem.GetLiquidType();
7156 string liquidClassName = Liquid.GetLiquidClassname(liquidType);
7157 if (liquidClassName.
Length() == 0)
7158 Error(
"Error! Trying to add unknown liquid to stomach with item=" +
Object.GetDebugName(edibleItem) +
" data.m_Type=" + data.
m_Type +
" liquid_type=" + liquidType);
7166 foodStageType = edibleItem.
GetFoodStage().GetFoodStageType();
7226 if (!
GetGame().IsMultiplayer())
7255 if (m_ReplaceSoundEventHandler)
7256 return m_ReplaceSoundEventHandler.PlayReplaceSound(soundEventID, soundType, param);
7268 if (!m_PlayerSoundEventHandler)
7271 return m_PlayerSoundEventHandler.PlayRequestEx(
id, is_from_server, param);
7276 return m_PlayerSoundEventHandler;
7285 if (IsControlledPlayer())
7287 if (!
GetGame().IsDedicatedServer())
7318 if (IsControlledPlayer())
7320 if (!
GetGame().IsDedicatedServer())
7346 #ifdef DIAG_DEVELOPER
7351 DamageSystem.ResetAllZones(
this);
7403 transport.FixEntity();
7420 if (m_PerformedActionSounds.Count() == 0)
7429 m_PerformedActionSounds.Clear();
7435 if (
GetGame().IsClient())
return;
7481 float dist_check = distance * distance;
7482 PluginTransmissionAgents plugin = PluginTransmissionAgents.Cast(
GetPlugin(PluginTransmissionAgents));
7486 if (
vector.
DistanceSq(GetWorldPosition(), target.GetWorldPosition()) < dist_check && target !=
this)
7532 int max_count = PluginTransmissionAgents.GetAgentMaxCount(agent_id);
7533 return m_AgentPool.GetSingleAgentCount(agent_id) / max_count;
7569 float min_distance = 0.5;
7575 int contactComponent;
7577 DayZPhysics.
RaycastRV(from, to, contactPos, contactDir, contactComponent, NULL, NULL, NULL,
false,
true);
7586 return (!mask || (mask && mask.AllowFoodConsumption()));
7669 return m_StatStamina;
7678 return m_StatSpecialty;
7687 return m_StatBloodType;
7696 return m_StatHeatBuffer;
7761#ifdef DIAG_DEVELOPER
7762 if (m_Bot && action_id >
EActions.PLAYER_BOT_INTERNAL_START && action_id <
EActions.PLAYER_BOT_END)
7764 m_Bot.StartAction(action_id);
7769 return super.OnAction(action_id, player, ctx);
7777 PluginTransmissionAgents pluginTransmissionAgents = PluginTransmissionAgents.Cast(
GetPlugin(PluginTransmissionAgents));
7779 if (pluginTransmissionAgents)
7781 map<int, string> agentList = pluginTransmissionAgents.GetSimpleAgentList();
7785 foreach (
int tid,
string tname : agentList)
7787 string injectName =
"Inject " + tname;
7788 string removeName =
"Remove " + tname;
7796#ifdef DIAG_DEVELOPER
7803 int cnt = e.GetVariableCount();
7806 for (i = 0; i < cnt; i++)
7808 if (!e.GetVariableValue(null, i, val))
7811 if (val <=
EActions.PLAYER_BOT_INTERNAL_START)
7814 if (val ==
EActions.PLAYER_BOT_START)
7820 if (val >=
EActions.PLAYER_BOT_END)
7823 string name = e.GetVariableName(i);
7838 super.OnSyncJuncture(pJunctureID, pCtx);
7855 GetInventory().OnInventoryJunctureFromServer(pCtx);
7858 GetInventory().OnInventoryJunctureRepairFromServer(pCtx);
7861 GetInventory().OnInventoryJunctureFailureFromServer(pCtx);
7883 if (GetAimingModel() && IsFireWeaponRaised())
7885 GetAimingModel().RequestKuruShake(amount);
7918 SetGetInVehicleDebug(vehicle);
7940 item.SetPrepareToDelete();
7947 return !(GetThrowing().IsThrowingAnimationPlaying() || GetDayZPlayerInventory().IsProcessing() || (
GetActionManager() &&
GetActionManager().GetRunningAction()));
7967 for (
int i = count - 1; i >= 0 ; i--)
7970 if (itemToDelete != null)
7972 itemToDelete.GetInventory().GetCurrentInventoryLocation(il);
7983 for (
int j = count - 1; j >= 0 ; j--)
7986 if (itemToDelete == null)
7992 itemToDelete.Delete();
8031 m_fLastHeadingDiff = 0;
8036 return super.HeadingModel(pDt, pModel);
8066 return m_LiftWeapon_player;
8093 m_ProcessLiftWeaponState = state;
8094 m_ProcessLiftWeapon =
true;
8103 m_LiftWeapon_player = state;
8105 hcw = GetCommandModifier_Weapons();
8135 bool limited = weap.LiftWeaponCheck(
this);
8137 if (limited && !m_LiftWeapon_player)
8139 else if (!limited && m_LiftWeapon_player)
8142 else if (m_LiftWeapon_player)
8151 if (m_ProcessLiftWeapon)
8158 m_LiftWeapon_player = m_ProcessLiftWeaponState;
8159 m_ProcessLiftWeapon =
false;
8168 super.HideClothing(optic, state);
8185 SetInvisibleRecursive(
true,
this,clothingArray);
8195 SetInvisibleRecursive(
false,
this,clothingArray);
8207 super.SetDeathDarknessLevel(duration, tick_time);
8209 if (IsControlledPlayer())
8211 float actual_tick = tick_time;
8220 progress = 1 - ((duration - m_DeathDarkeningCurrentTime) / duration);
8222 m_DeathDarkeningCurrentTime += actual_tick;
8224 if (!IsAlive() && IsPlayerSelected())
8230 if (m_DeathDarkeningCurrentTime >= duration)
8232 StopDeathDarkeningEffect();
8237 StopDeathDarkeningEffect();
8278 OverrideSlidePoseAngle(
Math.
PI2);
8280 else if (!
IsInFBEmoteState() && IsControlledPlayer() && IsPlayerSelected())
8294 isActionPossible =
false;
8295 Magazine mag = Magazine.Cast(item);
8302 isActionPossible =
true;
8320 if (can_detach && target.GetInventory().FindFreeLocationFor(item, flags, il))
8326 return super.PredictiveTakeEntityToTargetInventory(target, flags, item);
8335 if (can_detach && GetInventory().FindFreeLocationFor(item, flags, il))
8341 return super.PredictiveTakeEntityToInventory(flags, item);
8347 Magazine mag = Magazine.Cast(item);
8348 if (parentWpn && mag)
8355 return super.PredictiveTakeEntityToTargetAttachment(target, item);
8361 Magazine mag = Magazine.Cast(item);
8362 if (parentWpn && mag)
8364 if (target.CanReceiveAttachment(item,slot) &&
GetWeaponManager().CanAttachMagazine(parentWpn, mag))
8369 return super.PredictiveTakeEntityToTargetAttachmentEx(target, item,slot);
8384 return super.PredictiveTakeEntityToTargetCargo(target,item);
8395 dst.
SetCargoAuto(cargo, item, row, col, item.GetInventory().GetFlipCargo());
8401 return super.PredictiveTakeEntityToTargetCargoEx (cargo, item, row, col);
8422 return super.PredictiveDropEntity(item);
8428 Magazine swapmag1 = Magazine.Cast(item1);
8429 Magazine swapmag2 = Magazine.Cast(item2);
8431 if (swapmag1 && swapmag2)
8435 if (
Class.
CastTo(parentWpn, swapmag1.GetHierarchyParent()))
8439 Print(
"[inv] PlayerBase.PredictiveSwapEntities: swapping mag1=" + swapmag1 +
" to parent wpn=" + parentWpn +
" of mag1=" + swapmag1);
8444 Print(
"[inv] PlayerBase.PredictiveSwapEntities: can not swap magazines");
8449 if (
Class.
CastTo(parentWpn, swapmag2.GetHierarchyParent()))
8453 Print(
"[inv] PlayerBase.PredictiveSwapEntities: swapping mag1=" + swapmag1 +
" to parent wpn=" + parentWpn +
" of mag2=" + swapmag2);
8458 Print(
"[inv] PlayerBase.PredictiveSwapEntities: can not swap magazines");
8472 if (mngr_client.GetAction(ActionSwapItemToHands).Can(
this,atrg,
ItemBase.Cast(item_hands)))
8477 return super.PredictiveSwapEntities(item1, item2);
8493 if (mngr_client.GetAction(ActionSwapItemToHands).Can(
this,atrg,
ItemBase.Cast(item2)))
8500 return super.PredictiveForceSwapEntities(item1, item2, item2_dst);
8505 if (item.IsHeavyBehaviour() && !
m_ActionManager.GetRunningAction() && !item.GetHierarchyParent())
8522 super.PredictiveTakeEntityToHands(item);
8540 return super.PredictiveTakeToDst(src,dst);
8553 item_ground = item1;
8555 item_ground = item2;
8557 return item_hands && item_ground && item_ground.IsHeavyBehaviour();
8568 ErrorEx(
"No valid head detected on character!");
8575 for (
int i = 0; i <
m_CharactersHead.m_HeadHairSelectionArray.Count(); ++i)
8581#ifdef DIAG_DEVELOPER
8594#ifdef DIAG_DEVELOPER
8597 switchState = !diagmenuu.m_HairHidingStateMap.Get(level);
8598 diagmenuu.m_HairHidingStateMap.Set(level, switchState);
8604 switchState = !state;
8624 item.GetInventory().GetCurrentAttachmentSlotInfo(slot_id,slot_name);
8626 if (item.HidesSelectionBySlot())
8628 count = item.GetInventory().GetSlotIdCount();
8629 for (i = 0; i < count; i++)
8631 if (item.GetInventory().GetSlotId(i) == slot_id)
8633 str = item.GetHeadHidingSelection().Get(i);
8639 Debug.
Log(
"No valid selection '" + str +
"' found on head of " +
GetType() +
". Verify the p3d, model config, and the 'HAIR_HIDING_SELECTIONS' macro in basicDefines.");
8646 count = item.GetHeadHidingSelection().Count();
8647 for (i = 0; i < count; i++)
8649 str = item.GetHeadHidingSelection().Get(i);
8655 Debug.
Log(
"No valid selection '" + str +
"' found on head of " +
GetType() +
". Verify the p3d, model config, and the 'HAIR_HIDING_SELECTIONS' macro in basicDefines.");
8667 bool exception_hidden =
false;
8679 for (i = 0; i < count; i++)
8684 for (i = 0; i < count; i++)
8698 exception_hidden =
true;
8704 if (exception_hidden)
8716 for (
int i = 0; i < translatedSelectinosArray.Count(); i++)
8718 index = translatedSelectinosArray.Get(i);
8778 Error(
"AddActiveNV | illegal server-side call!");
8793 Error(
"RemoveActiveNV | illegal server-side call!");
8811 string text = super.GetDebugText();
8828 void DEBUGRotateNVG()
8832 if (FindAttachmentBySlotName(
"Eyewear"))
8834 nvg = NVGoggles.Cast(FindAttachmentBySlotName(
"Eyewear").FindAttachmentBySlotName(
"NVG"));
8836 else if (FindAttachmentBySlotName(
"Headgear"))
8838 nvg = NVGoggles.Cast(FindAttachmentBySlotName(
"Headgear").FindAttachmentBySlotName(
"NVG"));
8843 nvg.RotateGoggles(nvg.m_IsLowered);
8852 if (slot_name ==
"Headgear")
8854 item.SetSimpleHiddenSelectionState(0,1);
8855 item.SetSimpleHiddenSelectionState(1,0);
8857 else if (slot_name ==
"Mask")
8859 item.SetSimpleHiddenSelectionState(0,0);
8860 item.SetSimpleHiddenSelectionState(1,1);
8869 if (slot_name ==
"Headgear")
8871 item.SetSimpleHiddenSelectionState(0,1);
8872 item.SetSimpleHiddenSelectionState(1,0);
8874 else if (slot_name ==
"Mask")
8876 item.SetSimpleHiddenSelectionState(0,0);
8877 item.SetSimpleHiddenSelectionState(1,1);
8898 for (
int i = 0; i < bodyparts.Count(); i++)
8901 bodypart = GetInventory().FindPlaceholderForSlot(slot_id);
8902 item =
ItemBase.Cast(GetInventory().FindAttachment(slot_id));
8906 path =
"cfgVehicles " + bodypart.GetType();
8907 idx = bodypart.GetHiddenSelectionIndex(
"personality");
8915 path =
"cfgVehicles " + item.GetType();
8916 idx = item.GetHiddenSelectionIndex(
"personality");
8979 int idx = GetHiddenSelectionIndex(
"decay_preload");
9045 legZones.Insert(
"LeftLeg");
9046 legZones.Insert(
"RightLeg");
9047 legZones.Insert(
"RightFoot");
9048 legZones.Insert(
"LeftFoot");
9050 foreach (
string legZone : legZones)
9051 DecreaseHealth(legZone,
"", inputDmg);
9057 if (!hide && ((!IsSwimming() && !IsClimbingLadder() && !IsInVehicle() && !
AnimCommandCheck(HumanMoveCommandID.CommandSwim | HumanMoveCommandID.CommandLadder | HumanMoveCommandID.CommandVehicle)) || force))
9059 GetItemAccessor().HideItemInHands(
false);
9063 GetItemAccessor().HideItemInHands(
true);
9071 if (target.GetInventory().FindFreeLocationFor(item, flags, il))
9081 float stackableTarget = item.GetTargetQuantityMax(slotID);
9082 if (stackableTarget > 0 && stackableTarget < item.GetQuantity())
9085 if (CastTo(itemB, item))
9087 itemB.SplitIntoStackMaxToInventoryLocationClient(il);
9102 return super.TakeEntityToInventoryImpl(mode, flags, item);
9113 return super.TakeEntityToCargoImpl(mode, item);
9124 return super.TakeEntityAsAttachmentImpl(mode, item);
9135 super.TakeEntityToHandsImpl(mode, item);
9146 return super.TakeEntityToTargetInventoryImpl(mode, target, flags, item);
9157 return super.TakeEntityToTargetCargoImpl(mode, target, item);
9168 return super.TakeEntityToTargetAttachmentImpl(mode, target, item);
9179 return super.TakeToDstImpl(mode, src, dst);
9193 float playerSpeed = GetCommand_Move().GetCurrentMovementSpeed();
9199 float particleLifetime = 5.25;
9200 float particleSpeed = 0.25;
9201 if (playerSpeed >= 1)
9203 particleLifetime = 3.5;
9204 particleSpeed = 3.25;
9206 if (playerSpeed >= 2)
9208 particleLifetime = 2.5;
9209 particleSpeed = 5.25;
9211 if (playerSpeed >= 3)
9213 particleLifetime = 1.5;
9214 particleSpeed = 8.25;
9223 GetTransform(transform);
9231 if (!IsControlledPlayer())
9259 int pivot = componentIndex;
9275 vector parentTransMat[4];
9278 arrow.GetTransform(arrowTransMat);
9282 GetTransformWS(parentTransMat);
9289 parentTransMat[0] = rotMatrix[0];
9290 parentTransMat[1] = rotMatrix[1];
9291 parentTransMat[2] = rotMatrix[2];
9292 parentTransMat[3] = closeBonePosWS;
9297 arrow.SetTransform(arrowTransMat);
9304 if (bleedingManager)
9306 if (!bleedingManager.AttemptAddBleedingSourceBySelection(compName))
9307 bleedingManager.AttemptAddBleedingSourceBySelection(
"Pelvis");
9329 super.OnFreezeStateChangeClient();
9376 consumeData.
m_Type = consume_type;
Param4< int, int, string, int > TSelectableActionInfoWithColor
void syncDebugPrint(string s)
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
eBleedingSourceType GetType()
void ActionDrinkPondContinuous()
ActionEatSnowContinuousCB ActionContinuousBaseCB ActionEatSnowContinuous()
void ActionManagerBase(PlayerBase player)
map< typename, ref array< ActionBase_Basic > > TInputActionMap
void ActionStartEngine()
DEPRECATED.
ActionStartEngineBoatCB ActionContinuousBaseCB ActionStartEngineBoat()
class ActionTargets ActionTarget
ActionUncoverHeadBase ActionContinuousBase ActionUncoverHeadSelf()
ActionWashHandsSnowCB ActionContinuousBaseCB ActionWashHandsSnow()
ActionWashHandsWaterCB ActionContinuousBaseCB ActionWashHandsWater()
void AddAction(typename actionName)
void RemoveAction(typename actionName)
override ArrowManagerBase GetArrowManager()
const int BREATH_VAPOUR_LEVEL_MAX
void EffectRadial(Param param1, Param param2)
const int ECE_EQUIP_ATTACHMENTS
const int ECE_PLACE_ON_SURFACE
const int ECE_IN_INVENTORY
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
DamageType
exposed from C++ (do not change)
proto native int GetBoneIndexByName(string pBoneName)
returns bone index for a name (-1 if pBoneName doesn't exist)
ref HumanMovementState m_MovementState
movement state
void DayZPlayerCameraOptics(DayZPlayer pPlayer, HumanInputController pInput)
ref DayZPlayerImplementMeleeCombat m_MeleeCombat
void DayZPlayerUtils()
cannot be instantiated
DisplayElementBase GetElement(eDisplayElements element_id)
void VirtualHud(PlayerBase player)
bool Consume(float amount, PlayerBase consumer)
int GetID()
Get the ID registered in SEffectManager.
void EmoteManager(PlayerBase player)
bool OnInputUserDataProcess(int userDataType, ParamsReadContext ctx)
proto native Hive GetHive()
void InjuryAnimationHandler(PlayerBase player)
FindInventoryLocationType
flags for searching locations in inventory
InventoryLocationType
types of Inventory Location
class BoxCollidingParams component
ComponentInfo for BoxCollidingResult.
override void InsertAgent(int agent, float count=1)
class ItemBase extends InventoryItem SpawnItemOnLocation(string object_name, notnull InventoryLocation loc, bool full_quantity)
static string GetDisplayName(int liquid_type)
void MapNavigationBehaviour(PlayerBase pPlayer, EMapNavigationType pNavigationType=EMapNavigationType.BASIC)
bool OnStoreLoad(ParamsReadContext ctx, int version)
void ModifiersManager(PlayerBase player)
void NotifiersManager(PlayerBase player)
VirtualHud GetVirtualHud()
void ParticleManager(ParticleManagerSettings settings)
Constructor (ctor)
void PlayerSoundEventHandler(PlayerBase player)
void PlayerSoundManagerClient(PlayerBase player)
void PlayerStat(T min, T max, T init, string label, int flags)
bool LoadStats(ParamsReadContext ctx, int version)
void PlayerStats(Man player)
PlayerStatBase GetStatObject(int id)
void PlayerStomach(PlayerBase player)
PluginConfigDebugProfile m_ConfigDebugProfile
void PluginItemDiagnostic()
PluginManager GetPluginManager()
Returns registred plugin by class type, better is to use global funtion GetPlugin(typename plugin_typ...
PluginBase GetPlugin(typename plugin_type)
void PluginPresenceNotifier()
EPresenceNotifierNoiseEventType
void QuickBarBase(PlayerBase player)
void RandomGeneratorSyncManager(DayZPlayer player)
const float DEFAULT_SPAWN_DISTANCE
void ReplaceSoundEventHandler(PlayerBase player)
StaminaHandler m_StaminaHandler
void UndergroundHandlerClient(PlayerBase player)
bool IsFullBody(PlayerBase player)
static string GetPulseMessage(EPulseType pulse_type, int blood_level)
const int TARGET_IRREGULAR_PULSE_BIT
Vector2 GetCameraLRAngle()
bool IsCameraLockOnPerform()
bool CanPerformActionFromQuickbar(ItemBase mainItem, ItemBase targetItem)
void PerformActionFromQuickbar(ItemBase mainItem, ItemBase targetItem)
override void RequestInterruptAction()
client requests action interrupt
override void RequestEndAction()
void PerformActionStart(ActionBase action, ActionTarget target, ItemBase item, Param extra_data=NULL)
override void EndActionInput()
void ForceTarget(Object targetObject)
static void PlayerDisconnected(StatsEventDisconnectedData data)
static void PlayerMeasures(StatsEventMeasuresData data)
void OnItemAttachedAtPlayer(EntityAI item, string slot_name)
void OnEntityHit(EntityAI source, Man target)
void OnPlayerDisconnect(Man player)
const string STAT_PLAYTIME
void OnPlayerConnect(Man player)
const string STAT_DISTANCE
bool Save(ParamsWriteContext ctx)
bool Load(ParamsReadContext ctx)
static SoundOnVehicle SaySound(Object source, string sound_name, float distance, bool looped)
proto native UIManager GetUIManager()
proto native bool HasInventoryJunctureDestination(Man player, notnull InventoryLocation dst)
proto native void GetPlayers(out array< Man > players)
proto native void RPCSingleParam(Object target, int rpc_type, Param param, bool guaranteed, PlayerIdentity recipient=null)
see CGame.RPC
proto native void EnableVoN(Object player, bool enable)
Enable/disable VoN for target player.
proto native void SetVoiceEffect(Object player, int effect, bool enable)
Enable/disable VoN effect (only on server)
override ScriptCallQueue GetCallQueue(int call_category)
proto native void MutePlayer(string muteUID, string playerUID, bool mute)
Mutes voice of source player to target player.
bool IsKindOf(string cfg_class_name, string cfg_parent_name)
Returns is class name inherited from parent class name.
proto native MenuData GetMenuData()
Return singleton of MenuData class - at main menu contains characters played with current profile.
proto native AbstractSoundScene GetSoundScene()
proto native void ChatMP(Man recipient, string text, string colorClass)
proto native int ConfigGetInt(string path)
Get int value from config on path.
proto native void Chat(string text, string colorClass)
Prints text into game chat.
proto native void RPC(Object target, int rpcType, notnull array< ref Param > params, bool guaranteed, PlayerIdentity recipient=null)
Initiate remote procedure call. When called on client, RPC is evaluated on server; When called on ser...
AnalyticsManagerServer GetAnalyticsServer()
proto native vector GetCurrentCameraPosition()
proto int GetTime()
returns mission time in milliseconds
proto void SurfaceUnderObject(notnull Object object, out string type, out int liquidType)
AnalyticsManagerClient GetAnalyticsClient()
proto native void RemoteObjectTreeCreate(Object obj)
RemoteObjectCreate - postponed registration of network object (and creation of remote object)....
proto native vector GetCurrentCameraDirection()
proto native bool ExecuteEnforceScript(string expression, string mainFnName)
Delevoper only: Executes Enforce Script expression, if there is an error, is printed into the script ...
proto native Mission GetMission()
proto native void ObjectDelete(Object obj)
proto void ObjectGetType(Object obj, out string type)
static ref TStringArray ARRAY_STRING
static ref Param1< bool > PARAM1_BOOL
static ref Param1< int > PARAM1_INT
static ref Param1< string > PARAM1_STRING
static ref Param2< float, float > PARAM2_FLOAT_FLOAT
represents base for cargo storage for entities
static bool GetUse3DMap()
static int GetLightingConfig()
static bool GetAllowStaminaAffectInertia()
static bool GetHitIndicationPPEEnabled()
static TStringSet GetDisallowedTypesInUnderground()
static bool GetDisableRespawnDialog()
static bool IsInitialized()
static bool IsPointInPlayerRestrictedArea(vector point, out PlayerRestrictedAreaInstance hitArea)
Super root of all classes in Enforce script.
static void RemovePlayerBase(Man player)
static void AddPlayerBase(Man player)
Client only - manage set up crafting on client.
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.
this is main camera class
static bool NoHeading(float pDt, SDayZPlayerHeadingModel pModel, out float pLastHeadingDiff)
static bool RestrictHeading(float pDt, SDayZPlayerHeadingModel pModel, out float pLastHeadingDiff, HeadingRestrictData restrictData)
static bool ClampHeading(float pDt, SDayZPlayerHeadingModel pModel, out float pLastHeadingDiff)
static const int SJ_BROKEN_LEGS
static const int SJ_ACTION_INTERRUPT
static const int SJ_PLAYER_STATES
static const int SJ_ACTION_ACK_REJECT
static const int SJ_WEAPON_LIFT
static const int SJ_STAMINA
static const int SJ_INVENTORY_REPAIR
static bool ReadShockParams(ParamsReadContext pCtx, out float shockValue)
static const int SJ_KURU_REQUEST
static const int SJ_PLAYER_ADD_MODIFIER
static const int SJ_WEAPON_ACTION_ACK_REJECT
static const int SJ_SHOCK
static void SendDeleteItem(DayZPlayer pPlayer, EntityAI item)
static bool ReadKuruRequest(ParamsReadContext pCtx, out float amount)
static const int SJ_GESTURE_REQUEST
static const int SJ_QUICKBAR_SET_SHORTCUT
static bool ReadBrokenLegsParamsEx(ParamsReadContext pCtx, out int currentState)
static const int SJ_INVENTORY_FAILURE
static const int SJ_WEAPON_ACTION_ACK_ACCEPT
static const int SJ_UNCONSCIOUSNESS
static const int SJ_DELETE_ITEM
static const int SJ_ADS_RESET
static const int SJ_WEAPON_SET_JAMMING_CHANCE
static bool ReadInjuryParams(ParamsReadContext pCtx, out bool pEnable, out eInjuryHandlerLevels level)
static void SendPlayerUnconsciousness(DayZPlayer pPlayer, bool enable)
static const int SJ_ACTION_ACK_ACCEPT
static bool ReadPlayerUnconsciousnessParams(ParamsReadContext pCtx, out bool enable)
static void SendBrokenLegsEx(DayZPlayer pPlayer, int currentState)
static const int SJ_INJURY
static const int SJ_STAMINA_MISC
static const int SJ_INVENTORY
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.
int FilterAgents(int agentsIn)
Filter agents from the item (override on higher implementations)
bool Consume(float amount, PlayerBase consumer)
override FoodStage GetFoodStage()
Particle GetParticle()
Gets the main particle which this Effect is managing.
void SetDecalOwner(Object o)
Wrapper class for managing particles through SEffectManager.
override void SetAutodestroy(bool auto_destroy)
Sets whether Effect automatically cleans up when it stops.
Wrapper class for managing sound through SEffectManager.
bool PredictiveSwapEntities(notnull EntityAI item1, notnull EntityAI item2)
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...
proto native bool EnumerateInventory(InventoryTraversalType tt, out array< EntityAI > items)
enumerate inventory using traversal type and filling items array
static bool CanSwapEntitiesEx(notnull EntityAI item1, notnull EntityAI item2)
static bool CanForceSwapEntitiesEx(notnull EntityAI item1, InventoryLocation item1_dst, notnull EntityAI item2, out InventoryLocation item2_dst)
script counterpart to engine's class Inventory
const int NUMBER_OF_STAGES
proto native void CharacterSave(Man player)
proto native bool CharacterIsLoginPositionChanged(Man player)
Only valid during login.
proto native void CharacterKill(Man player)
static void ApplyEffects(PlayerBase player)
static const float HEAT_DAMAGE_TICK_TIME
void ShowHudUI(bool show)
void ShowQuickbarUI(bool show)
proto native vector GetLogoutPosition()
proto native float GetCurrentMovementSpeed()
0,1,2..3 idle, walk, run, sprint
proto native void SetTurnSpanSprintModifier(float value)
sets the multiplier for HumanItemBehaviorCfg::m_fMoveHeadingSprintFilterSpan
proto native void ForceStance(int pStanceIdx)
proto native void SetRunSprintFilterModifier(float value)
sets the multiplier for SHumanCommandMoveSettings::m_fRunSpringTimeout
proto native void SetDirectionSprintFilterModifier(float value)
sets the multiplier for SHumanCommandMoveSettings::m_fDirFilterSprintTimeout
proto native void SetMeleeBlock(bool pBlock)
this enables/disables block
proto native bool IsInWater()
proto native void WakeUp(int targetStance=-1)
proto native Transport GetTransport()
proto native bool IsGettingIn()
proto native void SetVehicleType(int pVehicleType)
proto native bool IsSwitchSeat()
proto native bool IsGettingOut()
proto native void LiftWeapon(bool pState)
command for lifting weapon near obstacled (works only when weapon is raised)
proto native EntityAI GetEntityInHands()
inventory for plain man/human
int m_StanceRotation[6]
6 stances -> all has movement mask, STANCEIDX_ ... is index
int m_iMovement
current stance (DayZPlayerConstants.STANCEIDX_ERECT, ...), only if the command has a stance
Client only - manage set up crafting on client.
proto native void SetHands(notnull EntityAI parent, EntityAI e)
sets current inventory location type to Hands
static string DumpToStringNullSafe(InventoryLocation loc)
proto native vector GetPos()
returns position of item in world if type is Ground
proto native int GetSlot()
returns slot id if current type is Attachment
proto native InventoryLocation CopyLocationFrom(notnull InventoryLocation rhs, bool copyFlip)
copies location to another location without m_item member
proto native void SetGround(EntityAI e, vector mat[4])
sets current inventory location type to Ground with transformation mat
proto native void SetCargoAuto(notnull CargoBase cargo, EntityAI e, int row, int col, bool flip)
based on Cargo.IsProxyCargo uses SetProxyCargo or SetCargo respectively
proto native int GetType()
returns type of InventoryLocation
bool ReadFromContext(ParamsReadContext ctx)
static proto native int GetSlotIdFromString(string slot_name)
converts string to slot_id
provides access to slot configuration
proto native float GetCurrentStepFOV()
returns fov value at current index, or 'OpticsInfo.opticsZoomInit' config value (non-zooming optics)
static const string NAME_FIRE
static bool IsSyncLogEnable()
ref MapNavigationBehaviour m_MapNavigationBehaviour
bool AnimCommandCheck(HumanMoveCommandID mask)
bool IsTargetInActiveRefresherRange(EntityAI target)
override void PredictiveTakeEntityToHands(EntityAI item)
float GetSimplifiedShockNormalized()
string m_UALastMessage
user actions & symptoms
ref PlayerSoundManagerServer m_PlayerSoundManagerServer
SymptomManager GetSymptomManager()
void UpdateHairSelectionVisibility(bool was_debug=false)
PlayerStat< float > GetStatSpecialty()
DayZPlayerCameraBase m_CurrentCamera
ref Param2< float, float > m_UAProgressParam
void SetNVGWorking(bool state)
Deprecated.
bool GetLiquidTendencyDrain()
bool IsAntibioticsActive()
PlayerStat< float > GetStatToxicity()
PlayerBase m_CheckPulseLastTarget
override bool IsUnconsciousStateOnly()
float GetSingleAgentCountNormalized(int agent_id)
override bool IsRefresherSignalingViable()
ref BleedingSourcesManagerRemote m_BleedingManagerRemote
ref array< int > m_ProcessAddGlassesEffects
override bool PredictiveTakeEntityToTargetCargoEx(notnull CargoBase cargo, notnull EntityAI item, int row, int col)
void SetPlayerLoad(float load)
void AddToEnvironmentTemperature(float pTemperature)
override void ProcessLiftWeapon()
ref CraftingManager m_CraftingManager
void FixAllInventoryItems()
override bool IsLanded(int pCurrentCommandID)
void ReloadWeapon(EntityAI weapon, EntityAI magazine)
override void GetActions(typename action_input_type, out array< ActionBase_Basic > actions)
void AddPossibleCoverFaceForShave()
DEPRECATED!
void RefreshHandAnimationState(int delay=0)
void ImmuneSystemTick(float value, float deltaT)
override void OnReceivedHit(ImpactEffectsData hitData)
override void OnVariablesSynchronized()
ref array< int > m_ProcessRemoveEffectWidgets
void OnUnconsciousStart()
void SetCraftingRecipeID(int recipeID)
PlayerSoundManagerServer GetPlayerSoundManagerServer()
void UpdateQuickBarEntityVisibility(EntityAI entity)
override bool CanStartConsumingStamina(EStaminaConsumers consumer)
override bool NeedInventoryJunctureFromServer(notnull EntityAI item, EntityAI currParent, EntityAI newParent)
ItemBase GetItemOnSlot(string slot_type)
Returns item that's on this player's attachment slot. Parameter slot_type should be a string from con...
override void OnThrowingModeChange(bool change_to_enabled)
override bool CanSwapItemInCargo(EntityAI child_entity, EntityAI new_entity)
override void OnStoreSave(ParamsWriteContext ctx)
bool TakeEntityToInventoryImpl(InventoryMode mode, FindInventoryLocationType flags, notnull EntityAI item)
void MessageAction(string text)
void ClearLastUAMessage()
void OnCommandHandlerTick(float delta_time, int pCurrentCommandID)
ref SymptomManager m_SymptomManager
void SetImmunityBoosted(bool boosted)
bool CheckAndExecuteStackSplit(FindInventoryLocationType flags, notnull EntityAI item, notnull EntityAI target)
override SoundOnVehicle PlaySound(string sound_name, float range, bool create_local=false)
void SetActivePrimarySymptomID(SymptomIDs id)
override void OnCommandClimbStart()
void SwitchItemTypeDetach(EntityAI item, string slot)
void RadialQuickBarCombine(int slotClicked)
void SetBloodType(int blood_type)
void Message(string text, string style)
void RemoveCurrentEffectTrigger()
void MapNavigationItemInPossession(EntityAI item)
void SetBloodTypeVisible(bool show)
void SetMixedSoundState(eMixedSoundStates state)
ref map< EEffectAreaType, float > m_EffectAreaTimeToTick
const int SIMPLIFIED_SHOCK_CAP
PlayerStat< float > m_StatEnergy
void PlacingCancelServer()
bool m_MeleeDebug
melee stats
void IncreaseContaminatedAreaCount()
float GetImmunity()
returns player's immunity strength between 0..1
override bool IsLiftWeapon()
ItemBase CreateCopyOfItemInInventoryOrGroundEx(ItemBase src, bool markItemAsSplitResult=false)
void SendLiftWeaponSync(bool state)
Client-side only.
static ref array< string > m_BleedingSourcesLow
vector m_DirectionToCursor
void ProcessADSSyncResetRequest()
void OnBleedingSourceAdded()
DamageDealtEffect GetDamageDealtEffect()
ref TInputActionMap m_InputActionMap
ref PlayerStats m_PlayerStats
void SendSoundEventEx(EPlayerSoundEventID id, int param=0)
void ResetPlayer(bool set_max)
override void OnCommandDeathStart()
EntityAI SpawnAI(string object_name, vector pos)
override void OnPlayerRecievedHit()
PluginPlayerStatus m_ModulePlayerStatus
void EndSurrenderRequest(SurrenderData data=null)
ends surrender, originally intended for surrender->restrained transitioning
ItemBase GetItemOnHead()
Returns item on player's head. For an example, a headtorch.
override bool CanReleaseFromHands(EntityAI handheld)
void OnInventoryMenuClose()
bool CanSpawnBreathVaporEffect()
void CloseMapEx(bool cancelled)
TransferValues GetTransferValues()
int m_SyncedModifiersPrev
override bool OnStoreLoad(ParamsReadContext ctx, int version)
ref array< int > m_Recipes
void UpdateBrokenLegs(int stateId)
override bool IsUnconscious()
override void SpawnDamageDealtEffect()
DebugMonitorValues GetDebugMonitorValues()
bool m_MapCloseRequestProcessed
ref EffectParticle m_FliesEff
ref array< int > m_ProcessRemoveGlassesEffects
ref ArrowManagerPlayer m_ArrowManager
PlayerStat< float > m_StatHeatComfort
ref PlayerAgentPool m_AgentPool
void QueueRemoveEffectWidget(array< int > effects)
bool m_LiquidTendencyDrain
EPulseType GetPulseType()
EEffectAreaType m_InEffectAreaType
override bool PredictiveDropEntity(notnull EntityAI item)
void SetPersistentFlag(PersistentFlag bit, bool enable)
void SetStaminaState(eStaminaState state)
override void OnRollFinish()
void SetHeatBufferDynamicMax(float value)
int GetBreathVapourLevel()
bool IsSwapBetweenHandsAndGroundLargeItem(notnull EntityAI item1, notnull EntityAI item2, out EntityAI item_hands, out EntityAI item_ground)
ref UndergroundHandlerClient m_UndergroundHandler
vector GetLocalProjectionOrientation()
const int ACT_STORE_SAVE_VERSION
void SetStamina(int value, int range)
void SetActionEndInput(ActionBase action)
float GetStatBordersWater()
bool TakeEntityToTargetAttachmentImpl(InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
void dmgDebugPrint(TotalDamageResult damageResult, int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos, float speedCoef)
float GetTemporaryResistanceToAgent(int agent)
override void OnLadder(float delta_time, HumanMovementState pState)
called every command handler tick when player is on ladder
override bool OnInputUserDataProcess(int userDataType, ParamsReadContext ctx)
void OnPlayerReceiveFlashbangHitStart(bool visual)
override array< string > GetSuitableFinisherHitComponents()
returns list of suitable finisher hit components (defined on base entity/entity type)
string GetLastUAMessage()
UA Last Message.
eMixedSoundStates GetMixedSoundStates()
void SpawnShockEffect(float intensity_max)
void MessageFriendly(string text)
bool IsMapCallbackCancelInput()
override bool OnAction(int action_id, Man player, ParamsReadContext ctx)
override int GetQuickBarBonus()
ref Hologram m_HologramServer
override void EEHitBy(TotalDamageResult damageResult, int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos, float speedCoef)
BleedingSourcesManagerServer GetBleedingManagerServer()
vector m_LocalProjectionOrientation
override bool PredictiveSwapEntities(notnull EntityAI item1, notnull EntityAI item2)
bool IsInEffectArea(EEffectAreaType area)
void OnPlayerIsNowInsideEffectAreaEndServer()
void OnBleedingSourceRemovedEx(ItemBase item)
static Particle m_ContaminatedAroundPlayerTiny
override void EEKilled(Object killer)
void SetBloodyHands(bool show)
float GetStatBordersEnergy()
override bool CanReleaseAttachment(EntityAI attachment)
void RadialQuickBarSingleUse(int slotClicked)
override void EEItemOutOfHands(EntityAI item)
float GetBordersImmunity()
int m_ActivePrimarySymptomID
SymptomIDs GetActivePrimarySymptomID()
void QuickReloadWeapon(EntityAI weapon)
void PreloadDecayTexture()
void DecreaseHealingsCount()
bool CanConsumeFood(ConsumeConditionData data=null)
VirtualHud GetVirtualHud()
EffectSound m_AmbientContamination
override void EEItemIntoHands(EntityAI item)
void MapNavigationItemNotInPossession(EntityAI item)
void UpdateShoulderProxyVisibility(EntityAI item, string slot_name)
int GetCraftingRecipeID()
override bool IsRestrained()
void OnSpawnedFromConsole()
ref Param2< int, int > m_UAParam
void ShowUnconsciousScreen(bool show)
override bool PredictiveTakeEntityToTargetAttachment(notnull EntityAI target, notnull EntityAI item)
ref array< int > m_ProcessAddEffectWidgets
override void SwitchItemSelectionTexture(EntityAI item, string slot_name)
bool m_InsideEffectAreaPrev
bool ReadLiftWeaponRequest(int userDataType, ParamsReadContext ctx)
EStatLevels GetStatLevelEnergy()
bool m_AllowQuickRestrain
override bool IsFighting()
ref EffectRadial m_EffectRadial
ref Environment m_Environment
void SetNVGLowered(bool state)
void SetLocalProjectionOrientation(vector local_orientation)
bool IsPersistentFlag(PersistentFlag bit)
override void EOnFrame(IEntity other, float timeSlice)
int m_ContaminatedAreaCount
PlayerStat< float > GetStatEnergy()
void OnUnconsciousUpdate(float pDt, int last_command)
override void OnCommandLadderStart()
int m_PerformedAnimActionID
GameplayEffectWidgets_base m_EffectWidgets
effect widgets
void DecreaseEffectAreaCount()
override void RemoveAgent(int agent_id)
override vector GetDefaultHitPosition()
float m_OriginalSlidePoseAngle
float m_UnconsciousEndTime
override EntityAI SpawnEntityOnGroundPos(string object_name, vector pos)
PlayerStomach GetStomach()
ref PlayerStomach m_PlayerStomach
void OnQuickbarSetEntityRequest(ParamsReadContext ctx)
void IncreaseDiseaseCount()
void SetMapOpen(bool state)
CraftingManager GetCraftingManager()
void AdjustBandana(EntityAI item, string slot_name)
void SetLastMapInfo(float scale, vector pos)
override string GetDefaultHitComponent()
returns default hit component (fallback)
void SwitchItemTypeAttach(EntityAI item, string slot)
bool m_BrokenLegsJunctureReceived
override void CommandHandler(float pDt, int pCurrentCommandID, bool pCurrentCommandFinished)
override WeaponManager GetWeaponManager()
ModifiersManager GetModifiersManager()
void IncreaseAntibioticsCount()
float GetStatLevelBorders(float stat_value, float critical, float low, float normal, float high, float max)
void RequestUnconsciousness(bool enable)
UndergroundHandlerClient GetUndergroundHandler()
string m_CachedPlayerName
override void EEItemDetached(EntityAI item, string slot_name)
void RemoveAction(typename actionName, out TInputActionMap InputActionMap)
bool ResetADSPlayerSync(int userDataType, ParamsReadContext ctx)
server only
void SetHairLevelToHide(int level, bool state, bool was_debug=false)
Dynamic hair hiding.
void SpawnDrowningBubbles()
void IncreaseHealingsCount()
void SetActionsRemoteTarget(out TInputActionMap InputActionMap)
override bool CanChangeStance(int previousStance, int newStance)
void SetSoundCategoryHash(int hash)
override bool CanDropEntity(notnull EntityAI item)
ref SoundObject m_SaySoundObject
EffectTrigger m_CurrentEffectTrigger
ItemBase m_CheckMeleeItem
void HandleBrokenLegsSync()
void OnVoiceEventPlayback(PlayerSoundEventBase voice_event, AbstractWave callback, float playback_time)
called every cmd handler tick during a playback of PlayerSoundEvent, m_ProcessPlaybackEvent needs to ...
void TogglePlacingLocal(ItemBase item=null)
ref ShockDealtEffect m_ShockDealtEffect
void OnJumpOutVehicleFinish(float carSpeed)
float GetHeatBufferDynamicMax()
void SetUnderground(EUndergroundPresence presence)
void QueueRemoveGlassesEffect(int id)
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)
bool m_IsRestrainStartedLocal
bool m_MapClosingSyncSent
bool m_CanPlayBrokenLegSound
override void OnStanceChange(int previousStance, int newStance)
void PlacingCancelLocal()
static ref array< CargoBase > SPREAD_AGENTS_PROXY_CARGOS
void SetInWater(bool pState)
water contact (driven by Environment)
void SetLastFirePointRot(float last_fire_point_rot)
void OnVoiceEvent(PlayerSoundEventBase voice_event)
void SetEnableQuickBarEntityShortcut(EntityAI entity, bool value)
EntityAI CreateInInventory(string item_name, string cargo_type="", bool full_quantity=false)
void AntibioticsAttack(float value)
ActionManagerBase GetActionManager()
bool IsItemInInventory(EntityAI entity)
void AddActiveNV(int type)
int m_RefreshAnimStateIdx
void SetLoadedQuickBarItemBind(EntityAI entity, int index)
void CheckSendSoundEvent()
int m_InventorySoftLockCount
void SetLifeSpanStateVisible(int show_state)
override void OnJumpStart()
void RemoveQuickBarEntityShortcut(EntityAI entity)
vector SetDefaultHitPosition(string pSelection)
override bool IsHoldingBreath()
void UpdateTranslatedSelections(SelectionTranslation stt)
ref DebugMonitorValues m_DebugMonitorValues
bool m_InventorySoftLocked
void MessageImportant(string text)
void SetHitPPEEnabled(bool enabled)
bool m_CanDisplayHitEffectPPE
int GetStoreLoadVersion()
SoftSkillsManager GetSoftSkillsManager()
ref Param3< float, float, bool > m_StaminaParam
bool Consume(ItemBase source, float amount, EConsumeType consume_type)
Hologram GetHologramLocal()
override void OnGameplayDataHandlerSync()
void OnQuickBarContinuousUseStart(int slotClicked)
float GetHealthRegenSpeed()
void SaveAreaPersistenceFlag(ParamsWriteContext ctx)
override bool PredictiveTakeEntityToTargetInventory(notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
void RemovePossibleCoverFaceForShave()
DEPRECATED!
void SetBloodyHandsEx(eBloodyHandsTypes type)
void UnsetMixedSoundState(eMixedSoundStates state)
void IncreaseEffectAreaCount()
void UpdateMaskBreathWidget(notnull MaskBase mask, bool is_start=false)
override void OnCommandMoveStart()
override void RequestSoundEvent(EPlayerSoundEventID id, bool from_server_and_client=false)
ref Hologram m_HologramLocal
int GetSingleAgentCount(int agent_id)
override bool PredictiveTakeEntityToInventory(FindInventoryLocationType flags, notnull EntityAI item)
ref array< string > m_DbgOptions
void QueueAddEffectWidget(array< int > effects)
void SetQuickFishing(bool enable)
override bool CanPickupHeavyItem(notnull EntityAI item)
PluginPresenceNotifier m_PresenceNotifier
void SetInColdArea(bool state)
void DecreaseContaminatedAreaCount()
void OnPlayerReceiveFlashbangHitEnd()
EmoteManager GetEmoteManager()
void RunFightBlendTimer()
void SetFlagTendencyRaise(bool state)
DEPRECATED.
void AddMedicalDrugsInUse(EMedicalDrugsType drugType)
float m_UnconsciousVignetteTarget
void CheckZeroSoundEvent()
ref EffectSound m_SoundFliesEffect
void HandleGlassesEffect()
void SendSoundEvent(EPlayerSoundEventID id)
float GetVisibilityCoef()
DayZPlayerCamera GetCurrentPlayerCamera()
EStatLevels GetStatLevelBlood()
override bool IsManagingArrows()
void OnPlayerIsNowInsideEffectAreaEndClient()
PlayerStat< float > m_StatTremor
EntityAI FindCargoByBaseType(string searched_item)
int m_FaceCoveredForShaveLayers
static set< int > GetFaceCoverageShaveValues()
returns a set of face covering values
vector m_DefaultHitPosition
override void OnCommandLadderFinish()
ref BleedingSourcesManagerServer m_BleedingManagerServer
override void JunctureDeleteItem(EntityAI item)
ScriptInvoker GetOnUnconsciousStart()
int GetBleedingSourceCount()
override void OnCommandMelee2Finish()
override void OnCommandSwimStart()
bool m_IsVehicleSeatDriver
void CloseInventoryMenu()
void ClearBloodyHandsPenaltyChancePerAgent(eAgents type)
int m_BleedingSourceCount
override void OnVehicleSeatDriverEnter()
bool CheckMeleeItemDamage(ItemBase item)
int FindQuickBarEntityIndex(EntityAI entity)
void SetToDelete(ParamsReadContext pCtx)
void OnUpdateEffectAreaServer(float timeSlice)
EMedicalDrugsType m_MedicalDrugsActive
override bool PredictiveTakeEntityToTargetAttachmentEx(notnull EntityAI target, notnull EntityAI item, int slot)
bool m_FlagRaisingTendency
float GetBloodyHandsPenaltyChancePerAgent(eAgents type)
bool IsStance(int stance, int stanceMask)
void SetModifiers(bool enable)
bool IsCurrentCameraAimedAtGround()
ref Timer m_UALastMessageTimer
override bool PredictiveTakeEntityToTargetCargo(notnull EntityAI target, notnull EntityAI item)
void OnVehicleSwitchSeat(int seatIndex)
ref InventoryActionHandler m_InventoryActionHandler
EStatLevels GetImmunityLevel()
ref TransferValues m_TrasferValues
EStatLevels GetStatLevelToxicity()
void ProcessHoldBreath(float dT)
void KillUndergroundHandler()
void UnsetInEffectAreaTypeFlag(EEffectAreaType flag)
PlayerStat< float > GetStatTremor()
bool m_HasBloodTypeVisible
bool Consume(PlayerConsumeData data)
void AddAction(typename actionName)
void SpawnBreathVaporEffect()
ref Param1< float > m_DeathDarkeningParam
void SetMapClosingSyncSet(bool state)
void OnPlayerIsNowInsideEffectAreaBeginClient()
bool TogglePlacingServer(int userDataType, ParamsReadContext ctx)
override bool PredictiveTakeToDst(notnull InventoryLocation src, notnull InventoryLocation dst)
ref VirtualHud m_VirtualHud
const int SHAKE_LEVEL_MAX
ref Timer m_AnalyticsTimer
void UpdateCorpseStateVisual()
bool IsRestrainPrelocked()
void AdjustShemag(EntityAI item, string slot_name)
override bool IsAlreadyInFallingCommand(int pCurrentCommandID)
ref TInputActionMap m_InputActionMapControled
override void OnCommandClimbFinish()
ref HiddenSelectionsData m_EmptyGloves
NotifiersManager GetNotifiersManager()
bool HasStaminaRemaining()
void SetLastFirePoint(vector last_fire_point)
eBloodyHandsTypes HasBloodyHandsEx()
float m_LastPostFrameTickTime
float GetStatBordersToxicity()
void DecreaseDiseaseCount()
void SetActions(out TInputActionMap InputActionMap)
float m_HeatBufferDynamicMax
void SetActionsRemoteTarget()
bool GetLastMapInfo(out float scale, out vector pos)
void ProcessADDModifier()
void SetRestrained(bool is_restrained)
void SetLocalProjectionPosition(vector local_position)
ref ScriptInvoker m_OnUnconsciousStop
ref SoftSkillsManager m_SoftSkillsManager
override string GetHitComponentForAI()
Melee helpers.
override vector GetCenter()
float GetWeightSpecialized(bool forceRecalc=false)
override void EEItemAttached(EntityAI item, string slot_name)
bool CheckAndExecuteStackSplitToInventoryLocation(InventoryLocation il, notnull EntityAI item)
BleedingSourcesManagerRemote GetBleedingManagerRemote()
PlayerStat< float > GetStatHeatComfort()
ref ScriptInvoker m_OnUnconsciousStart
invokers
bool TakeEntityToTargetInventoryImpl(InventoryMode mode, notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
override void OnCommandSwimFinish()
override void OnCommandVehicleStart()
bool IsSyncedModifierActive(eModifierSyncIDs modifier)
Checks whether modifier (which has syncing enabled) is currently active, works on both Client and Ser...
FlashbangEffect GetFlashbangEffect()
override bool PhysicalPredictiveDropItem(EntityAI entity, bool heavy_item_only=true)
float m_UnconRefillModifier
ref ModifiersManager m_ModifiersManager
ref map< EEffectAreaType, int > m_EffectAreaOverlap
void CloseMap()
DEPRECATED; terminates map animation callback and re-enables controls.
ShockDealtEffect GetShockEffect()
void PlacingStartServer(ItemBase item)
ref array< EntityAI > m_ItemsToDelete
override void DepleteStamina(EStaminaModifiers modifier, float dT=-1)
override void ProcessFeetDamageServer(int pUserInt)
override void InsertAgent(int agent, float count=1)
void SetQuickBarEntityShortcut(EntityAI entity, int index, bool force=false)
PlayerStat< float > m_StatToxicity
override void OnFreezeStateChangeClient()
bool m_PlayerDisconnectProcessed
bool GetDrowningWaterLevelCheck()
int m_AnimCommandStarting
bool m_IsRestrainPrelocked
int m_ForceInjuryAnimMask
ref EffectSound m_BrokenLegSound
void SetPlayerDisconnected(bool state)
PlayerStat< float > GetStatWater()
override void OnCommandVehicleFinish()
override bool PlaySoundEventType(ESoundEventType soundType, int soundEventID, int param=0)
PlayerStat< int > GetStatBloodType()
void SetLastUAMessage(string pMsg)
override void GetDebugActions(out TSelectableActionInfoArrayEx outputList)
override void OnVehicleSeatDriverLeft()
void SetShakesForced(int value)
bool CanManipulateInventory()
float GetLastFirePointRot()
void SpawnDamageDealtEffect2(Param param1=null, Param param2=null)
int m_DebugMonitorEnabled
EntityAI GetQuickBarEntity(int index)
StaminaHandler GetStaminaHandler()
override bool CanReceiveItemIntoCargo(EntityAI item)
ref SoundObjectBuilder m_SaySoundBuilder
static ref array< Man > m_ServerPlayers
ref NotifiersManager m_NotifiersManager
override bool PlaySoundEvent(EPlayerSoundEventID id, bool from_anim_system=false, bool is_from_server=false)
override void EOnPostFrame(IEntity other, int extra)
ref StanceIndicator m_StanceIndicator
float ConvertNonlethalDamage(float damage, DamageType damageType)
ItemBase GetItemInHands()
void OnUnconsciousStop(int pCurrentCommandID)
EntityAI SpawnEntityOnGroundRaycastDispersed(string object_name, float raycastDistance=DEFAULT_SPAWN_DISTANCE, float radius=UAItemsSpreadRadius.DEFAULT)
int GetLastFirePointIndex()
void SetCheckMeleeItem(ItemBase item=null)
static bool DEBUG_INVENTORY_ACCESS
void OnStoreSaveLifespan(ParamsWriteContext ctx)
void SetDecayEffects(int effect=-1)
PluginAdminLog m_AdminLog
bool CanRedirectToWeaponManager(notnull EntityAI item, out bool isActionPossible)
bool HasCoveredFaceForShave()
ref array< ref Param2< EntityAI, int > > m_aQuickBarLoad
void DealShock(float dmg)
void SetPulseType(EPulseType pulse_type)
void SetDrowning(bool enable)
void SetRestrainPrelocked(bool restrain_prelock)
PlayerStats GetPlayerStats()
void OnCameraChanged(DayZPlayerCameraBase new_camera)
override void OnCommandFallStart()
ref SoundParams m_SaySoundParams
PlayerSoundEventHandler GetPlayerSoundEventHandler()
EntityAI GetMagazineToReload(EntityAI weapon)
void QueueAddGlassesEffect(int id)
override bool IsInventoryVisible()
void CalculateVisibilityForAI()
void SetBloodyHandsPenalty()
RandomGeneratorSyncManager GetRandomGeneratorSyncManager()
void OnScheduledTick(float deltaTime)
void AddAction(typename actionName, out TInputActionMap InputActionMap)
void SetBloodyHandsPenaltyChancePerAgent(eAgents type, float amount)
increments the chances per agents
void SetLastFirePointIndex(int last_fire_point_index)
PluginRecipesManager m_ModuleRecipesManager
vector m_CraftingInitialPos
PlayerStat< int > GetStatWet()
override void HideClothing(ItemOptics optic, bool state)
state 'true' == hide
void RemoveMedicalDrugsInUse(EMedicalDrugsType drugType)
vector GetLocalProjectionPosition()
ItemBase CreateCopyOfItemInInventoryOrGround(ItemBase src)
ref array< int > m_ActiveNVTypes
Head_Default m_CharactersHead
override bool HeadingModel(float pDt, SDayZPlayerHeadingModel pModel)
EStatLevels GetStatLevelWater()
void SetPerformedActionID(int id)
void ToggleHeatBufferVisibility(int heatbufferStage)
PluginLifespan m_ModuleLifespan
void OnRestrainChangeClient()
PlayerStat< float > GetStatStamina()
override void AfterStoreLoad()
void OnQuickBarContinuousUseEnd(int slotClicked)
bool DropItem(ItemBase item)
void ProcessHandDamage(float delta_time, HumanMovementState pState)
float GetStatBordersHealth()
float GetTotalAgentCount()
override bool IsInventorySoftLocked()
void PlacingStartLocal(ItemBase item)
const string SOUND_BREAK_LEG
void ForceUpdateInjuredState()
update injured state immediately
void OnPlayerIsNowInsideEffectAreaBeginServer()
bool IsPlayerDisconnected()
ref WeaponManager m_WeaponManager
bool GetFlagTendencyRaise()
DEPRECATED.
void SetTemporaryResistanceToAgent(int agent, float time)
override void RequestSoundEventEx(EPlayerSoundEventID id, bool from_server_and_client=false, int param=0)
void OnQuickBarSingleUse(int slotClicked)
void MovingShock(float legHealth, float highShock, float midShock, float lowShock)
void BrokenLegWalkShock()
void OnBleedingSourceRemoved()
void OnInventoryMenuOpen()
ref StaminaHandler m_StaminaHandler
override void OnCommandMelee2Start()
ref DamageDealtEffect m_DamageDealtEffect
override void ClearInventory()
PlayerStat< float > m_StatWater
bool m_ContaminatedAreaEffectEnabled
override void RPC(int rpc_type, array< ref Param > params, bool guaranteed, PlayerIdentity recipient=NULL)
void ResetConstructionActionData()
ref ConstructionActionData m_ConstructionActionData
MapNavigationBehaviour GetMapNavigationBehaviour()
ItemBase CreateCopyOfItemInInventory(ItemBase src)
RandomGeneratorSyncManager m_RGSManager
override bool IsIgnoredByConstruction()
int m_HasBloodyHandsVisible
void DecreaseAntibioticsCount()
static Particle m_ContaminatedAroundPlayer
ref Timer m_DeathCheckTimer
ref Param1< float > m_UnconParam
override void OnSyncJuncture(int pJunctureID, ParamsReadContext pCtx)
static ref array< Object > SPREAD_AGENTS_OBJECTS
override void OnRPC(PlayerIdentity sender, int rpc_type, ParamsReadContext ctx)
array< int > GetNVTypesArray()
string m_SaySoundLastSetName
ConstructionActionData GetConstructionActionData()
float m_CameraSwayModifier
EntityAI SpawnEntityOnGroundOnCursorDir(string object_name, float distance)
override void TakeEntityToHandsImpl(InventoryMode mode, EntityAI item)
void SetLiftWeapon(bool state)
static ref TStringArray m_QBarItems
override bool OnLand(int pCurrentCommandID, FallDamageData fallDamageData)
ref HeatComfortAnimHandler m_HCAnimHandler
override void RemoveAllAgents()
override bool CanSaveItemInHands(EntityAI item_in_hands)
int GetLastShavedSeconds()
void SpreadAgentsEx(float distance=3, float chance=0.25)
chance between [0..1] , distance in meters
void SetLiftWeapon(int pJunctureID, ParamsReadContext ctx)
bool HandleRemoteItemManipulation(int userDataType, ParamsReadContext ctx)
void DamageAllLegs(float inputDmg)
void RequestResetADSSync()
void RemoveActiveNV(int type)
bool GetMapClosingSyncSent()
void SetInEffectAreaTypeFlag(EEffectAreaType flag)
void BrokenLegForceProne(bool forceOverride=false)
void UpdateQuickBarExtraSlots()
override bool CanBeTargetedByAI(EntityAI ai)
override bool CanPlaceItem(EntityAI item)
void DropAllItems()
Drops all clothes/wearables this character is carrying on themselves.
ref UndergroundBunkerHandlerClient m_UndergroundBunkerHandler
ScriptInvoker GetOnUnconsciousStop()
override bool PlaySoundEventEx(EPlayerSoundEventID id, bool from_anim_system=false, bool is_from_server=false, int param=0)
void SpawnFlashbangEffect(PlayerBase player, bool visual)
PluginConfigEmotesProfile m_ConfigEmotesProfile
void HideHairSelections(ItemBase item, bool state)
ref FlashbangEffect m_FlashbangEffect
override void CheckAnimationOverrides()
bool OnStoreLoadLifespan(ParamsReadContext ctx, int version)
void SetVisibilityCoef(float pVisibility)
EStatLevels GetStatLevelHealth()
float GetStatBordersBlood()
bool TakeEntityAsAttachmentImpl(InventoryMode mode, notnull EntityAI item)
int GetBloodyHandsPenaltyAgents()
override void OnParticleEvent(string pEventType, string pUserString, int pUserInt)
void OnContaminatedAreaExitServer()
void PlacingCompleteLocal()
EUndergroundPresence m_UndergroundPresence
override bool IsSelfAdjustingTemperature()
override void SetInventorySoftLock(bool status)
'soft lock' meaning inventory screen cannot be displayed, but mechanically, inventory operations are ...
bool TakeEntityToTargetCargoImpl(InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
AbstractWave SaySoundSet(string name)
void PlacingCompleteServer()
override bool IsInFBEmoteState()
void SetRestrainStarted(bool restrain_started)
QuickBarBase m_QuickBarBase
void ProcessDrowning(float dT)
override void OnRollStart(bool isToTheRight)
eBrokenLegs GetBrokenLegs()
void ShockRefill(float pDt)
functionality moved to ShockMdfr::OnTick
void TryHideItemInHands(bool hide, bool force=false)
tries to hide item in player's hands, some exceptions for various movement states
ref Param1< string > m_UAParamMessage
bool TakeEntityToCargoImpl(InventoryMode mode, notnull EntityAI item)
override void CheckLiftWeapon()
void SetQuickRestrain(bool enable)
void AddPlayerLoad(float addedload)
void RequestHandAnimationStateRefresh()
ActionManagerBase m_ActionManager
override void OnJumpEnd(int pLandType=0)
override void OnCommandFallFinish()
ref ShockHandler m_ShockHandler
int m_LocalRefreshAnimStateIdx
bool IsMapCallbackEndInput()
float GetFeetDamageMoveModifier()
bool HasBloodTypeVisible()
vector m_LocalProjectionPosition
void OnHoldBreathExhausted()
ref TInputActionMap m_InputActionMapAsTarget
override bool PredictiveForceSwapEntities(notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
PlayerStat< float > GetStatHeatBuffer()
void SetBleedingBits(int bits)
void ContaminatedParticleAdjustment()
void LockHandsUntilItemHeld()
void ResetActionEndInput()
void SetLiquidTendencyDrain(bool state)
void UpdateMovementInertia()
Update movement inertia based on stamina available.
UndergroundBunkerHandlerClient GetUndergroundBunkerHandler()
bool m_IsHeadingRestricted
override bool CanReceiveItemIntoHands(EntityAI item_to_hands)
override bool CanConsumeStamina(EStaminaConsumers consumer)
ref InjuryAnimationHandler m_InjuryHandler
void UpdatePlayerMeasures()
void OnContaminatedAreaEnterServer()
void ToggleHeatBufferVisibility(bool show)
void SetLastShavedSeconds(int last_shaved_seconds)
override void AddItemToDelete(EntityAI item)
override void EEHealthLevelChanged(int oldLevel, int newLevel, string zone)
override bool CanClimb(int climbType, SHumanCommandClimbResult climbRes)
ref PlayerSoundManagerClient m_PlayerSoundManagerClient
ref HeadingRestrictData m_HeadingRestrictData
override void EEHitByRemote(int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos)
ref EmoteManager m_EmoteManager
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 OnRestrainStartedChangeClient()
override ArrowManagerBase GetArrowManager()
ref map< eAgents, float > m_BloodyHandsPenaltyChancePerAgent
const string CONTAMINATED_AREA_AMBIENT
void GiveShock(float shock)
override void SetProcessUIWarning(bool state)
bool TakeToDstImpl(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)
void SetBrokenLegs(int stateId)
override void SimulateDeath(bool state)
int GetPerformedActionID()
int GetNoisePresenceInAI()
Return actual noise presence of player.
void CheckHairClippingOnCharacterLoad()
helper method for re-checking hairhiding on character load
void SetBloodyHandsBase(int type)
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)
override void EEDelete(EntityAI parent)
bool IsFacingTarget(Object target)
override void SetDeathDarknessLevel(float duration, float tick_time)
void StaminaHUDNotifier(bool show)
vector GetLastFirePoint()
static ref array< string > m_BleedingSourcesUp
Hologram GetHologramServer()
override void AddArrow(Object arrow, int componentIndex, vector closeBonePosWS, vector closeBoneRotWS)
void RemoveAction(typename actionName)
override bool CanReleaseCargo(EntityAI cargo)
EStatLevels GetStatLevel(float stat_value, float critical, float low, float normal, float high)
void MessageStatus(string text)
void PlayAttachmentDropSound()
PlayerStat< float > GetStatDiet()
void RemoveActiveInputRestriction(int restrictor)
array< vector > GetActiveRefresherLocations()
void AddDummyPlayerToScheduler(Man player)
void SetRespawnModeClient(int mode)
for client-side usage
void SetPlayerRespawning(bool state)
void OnPlayerRespawned(Man player)
void SyncRespawnModeInfo(PlayerIdentity identity)
server-side
void AddActiveInputExcludes(array< string > excludes)
GameplayEffectWidgets_base GetEffectWidgets()
void EnableAllInputs(bool bForceSupress=false)
void RemoveActiveInputExcludes(array< string > excludes, bool bForceSupress=false)
deprecated
static PPEManager GetPPEManager()
Returns the manager instance singleton.
Static component of PPE manager, used to hold the instance.
void Start(Param par=null)
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
Legacy way of using particles in the game.
static const int BREATH_VAPOUR_MEDIUM
static const int BREATH_VAPOUR_LIGHT
static const int DROWNING_BUBBLES
static const int CONTAMINATED_AREA_GAS_AROUND
static const int CONTAMINATED_AREA_GAS_TINY
static const int BREATH_VAPOUR_HEAVY
override void OnGameplayDataHandlerSync()
static const float HEALTH_REGEN_MAX
static const float SL_HEALTH_CRITICAL
static const int LAST_UA_MSG_LIFETIME
static const float BROKEN_LEGS_HIGH_HEALTH_THRESHOLD
static const float SL_WATER_HIGH
static const float SHOES_MOVEMENT_DAMAGE_PER_STEP
static const float IMMUNITY_THRESHOLD_LEVEL_CRITICAL
static const int CORPSE_STATE_MEDIUM
static const float THRESHOLD_HEAT_COMFORT_MINUS_WARNING
static const float SL_ENERGY_HIGH
static const float BROKEN_LEGS_SHOCK_SWIM
static const float BROKEN_LEGS_INITIAL_SHOCK
static const float FULL_SPRINT_DELAY_FROM_CROUCH
[seconds]
static const float SL_ENERGY_LOW
static const float THRESHOLD_HEAT_COMFORT_MINUS_CRITICAL
static const float SL_BLOOD_LOW
static const float BROKEN_LEGS_ROLL_SHOCK
static const int CORPSE_STATE_DECAYED
static const float BROKEN_LEGS_LOW_SHOCK_WALK
static const float SL_WATER_NORMAL
static const float SL_BLOOD_CRITICAL
static const float FULL_SPRINT_DELAY_FROM_PRONE
[seconds]
static const float SL_ENERGY_MAX
static const float SL_HEALTH_LOW
static const float GLOVES_DAMAGE_SLIDING_LADDER_PER_SEC
static const float UNCONSCIOUS_IN_WATER_TIME_LIMIT_TO_DEATH
static const float SL_HEALTH_NORMAL
static const float BROKEN_LEGS_STAND_SHOCK
static const float SL_WATER_LOW
static const float BROKEN_LEGS_MID_SHOCK_WALK
static const float BROKEN_CROUCH_MODIFIER
static const float SL_ENERGY_CRITICAL
static const float HEALTH_REGEN_MIN
static const int CHECK_EVERY_N_STEP
static const int DROWNING_BUBBLE_FREQUENCY_MIN
static const float IMMUNITY_THRESHOLD_LEVEL_LOW
static const float CHANCE_TO_BLEED_SLIDING_LADDER_PER_SEC
static const float IMMUNITY_THRESHOLD_LEVEL_HIGH
static const float DROWNING_DEFAULT_THRESHOLD
static const int DROWNING_BUBBLE_FREQUENCY_MAX
static const float BAREFOOT_MOVEMENT_BLEED_MODIFIER
static const float SL_BLOOD_NORMAL
static const float MELEE2_MOVEMENT_BLEND_DELAY
static const float SL_BLOOD_HIGH
static const float DROWNING_UNCONSCIOUS_THRESHOLD
static const int BLOOD_THRESHOLD_FATAL
static const float SL_ENERGY_NORMAL
static const float SL_WATER_CRITICAL
static const float IMMUNITY_THRESHOLD_LEVEL_NORMAL
static const float BROKEN_LEGS_LOW_HEALTH_THRESHOLD
static const float DROWNING_SWIMMING_THRESHOLD
static const float CAMERA_THRESHOLD_PITCH
static const float SL_WATER_MAX
static const float SL_HEALTH_HIGH
static const float BROKEN_LEGS_HIGH_SHOCK_WALK
proto string GetName()
nick (short) name of player
proto string GetId()
unique id of player (hashed steamID, database Xbox id...) can be used in database or logs
The class that will be instanced (moddable)
vector GetRandomSafePos3D(vector targetPos)
void OnRPC(PlayerBase player, int rpc_type, ParamsReadContext ctx)
void OnVariableSynchronized()
static int PlayInWorld(notnull Effect eff, vector pos)
Play an Effect.
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 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.
static bool IsEffectExist(int effect_id)
Checks whether an Effect ID is registered in SEffectManager.
static void DestroyEffect(Effect effect)
Unregisters, stops and frees the Effect.
Manager class for managing Effect (EffectParticle, EffectSound)
proto void Remove(func fn)
remove specific call from queue
proto void Call(func fn, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
proto void CallLater(func fn, int delay=0, bool repeat=false, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
ScriptInvoker Class provide list of callbacks usage:
void SetSelectionState(bool state)
ref array< int > GetTranslatedSelections()
proto bool Write(void value_out)
proto bool Read(void value_in)
string m_CharacterId
character ID
string m_Reason
reason of disconnect (quit, kick, ban, sign-out...)
vector m_PositionStart
player world position at the start of interval
int m_TimeInterval
amount of real time in seconds covered by this event
int m_DaytimeHour
current daytime in gameplay (hour in 24h format)
vector m_PositionEnd
player world position at the end of interval
string m_CharacterId
character ID
float m_DistanceOnFoot
traveled distance on foot (meters) during interval
static float GetParamFloat(string surface_name, string param_name)
static void SendEntityKilled(EntityAI victim, EntityAI killer, EntityAI source, bool is_headshot)
proto native float GetDamage(string zoneName, string healthType)
Base native class for all motorized wheeled vehicles.
proto native UIScriptedMenu GetMenu()
Returns most-top open menu.
proto native void ScreenFadeOut(float duration)
UIScriptedMenu FindMenu(int id)
Returns menu with specific ID if it is open (see MenuID)
bool CloseAll()
Close all opened menus.
proto native void CloseDialog()
proto native void ScreenFadeIn(float duration, string text, int backgroundColor, int textColor)
static const float HEAT_DAMAGE_TICK_TIME
static void ApplyEffects(PlayerBase player)
bool CanLoadBullet(Weapon_Base wpn, Magazine mag, bool reservationCheck=true)
bool CanAttachMagazine(Weapon_Base wpn, Magazine mag, bool reservationCheck=true)
bool CanSwapMagazine(Weapon_Base wpn, Magazine mag, bool reservationCheck=true)
void SetCalcDetails(string details)
float GetLiquidTypeEnviroTemperature(int liquidType)
void SetGlobalLighting(int lightingID)
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
proto string ToString(bool simple=true)
static proto native float DistanceSq(vector v1, vector v2)
Returns the square distance between tips of two 3D vectors.
proto native float LengthSq()
Returns squared length (magnitudeSqr)
proto float Normalize()
Normalizes vector. Returns length.
static proto native float Distance(vector v1, vector v2)
Returns the distance between tips of two 3D vectors.
const int SIMPLE_SELECTION_SHOULDER_RIFLE
const int SIMPLE_SELECTION_SHOULDER_MELEE
override string GetDebugName()
void SDayZPlayerHeadingModel()
cannot be created from script
DayZPlayerInstanceType
defined in C++
proto native DayZPlayerType GetDayZPlayerType()
returns appropriate DayZPlayerType
proto native DayZPlayerCamera GetCurrentCamera()
-------------— camera additional functions ----------------------—
proto native DayZPlayerInstanceType GetInstanceType()
DayZPlayerConstants
defined in C++
proto native void SendSyncJuncture(int pJunctureID, ParamsWriteContext ctx)
-------------— sync stuff ----------------------—
class SDayZPlayerAimingModel SIMPLE_SELECTION_MELEE_RIFLE
float GetCurrentWaterLevel()
const int SIMPLE_SELECTION_MELEE_MELEE
proto native bool IsPlayerInStance(int pStanceMask)
-------------— camera additiona functions ----------------------—
string GetDefaultHitPositionComponent()
class DayZPlayerCameraResult DayZPlayerCamera(DayZPlayer pPlayer, HumanInputController pInput)
proto native float GetMax()
Serializer ParamsReadContext
InventoryTraversalType
tree traversal type, for more see http://en.wikipedia.org/wiki/Tree_traversal
proto native CGame GetGame()
Serializer ParamsWriteContext
const int AGT_UACTION_CONSUME
const int AGT_AIRBOURNE_BIOLOGICAL
void Error(string err)
Messagebox with error message.
proto void Print(void var)
Prints content of variable to console/log.
proto native void SetPosition(vector position)
Set the world position of the Effect.
const int INVENTORY_ENTITY_DROP_OVERLAP_DEPTH
const float DZPLAYER_CAMERA_FOV_IRONSIGHTS
const float REFRESHER_RADIUS
const int DEFAULT_CHARACTER_MENU_ID
const float NL_DAMAGE_FIREARM_CONVERSION_PLAYERS
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
array< string > TStringArray
void PrintString(string s)
Helper for printing out string expression. Example: PrintString("Hello " + var);.
EntityEvent
Entity events for event-mask, or throwing event from code.
static const float ITEM_TEMPERATURE_NEUTRAL_ZONE_MIDDLE
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 void MatrixIdentity4(out vector mat[4])
Creates identity matrix.
static proto void MatrixOrthogonalize4(vector mat[4])
Orthogonalizes matrix.
static float RandomFloat01()
Returns a random float number between and min [inclusive] and max [inclusive].
static proto float Max(float x, float y)
Returns bigger of two given values.
static proto float Lerp(float a, float b, float time)
Linearly interpolates between 'a' and 'b' given 'time'.
static proto int AbsInt(int i)
Returns absolute value.
static proto float RandomFloat(float min, float max)
Returns a random float number between and min[inclusive] and max[exclusive].
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 Sin(float angle)
Returns sinus of angle in radians.
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...
static const float RAD2DEG
static proto float AbsFloat(float f)
Returns absolute value.
const int SAT_DEBUG_ACTION
proto native AbstractWave Play3D(SoundObject soundObject, SoundObjectBuilder soundBuilder)
proto native void SetSoundVolume(float vol, float time)
class AbstractSoundScene SoundObjectBuilder(SoundParams soundParams)
class JsonUndergroundAreaTriggerData GetPosition
class SoundObject SoundParams(string name)
proto native int Length()
Returns length of string.
proto void GetHourMinuteSecond(out int hour, out int minute, out int second)
Returns system time.
proto native bool IsModifierActive()
is modifier active
proto native int GetRunningAction()
returns -1 when no action is running or RELOAD,MECHANISM, ....
proto native bool IsInWater()
class HumanCommandMelee2 HumanCommandFall()
class HumanCommandWeapons HumanCommandAdditives()
class HumanItemBehaviorCfg OnItemInHandsChanged(bool pInstant=false)
signalization from script to engine that item in hands changed