16 m_player.RequestHandAnimationStateRefresh();
215 for (
int i = 0; i < count; i++)
244 for (
int i = 0; i < count; ++i)
358 if (forcedEmoteQueuedClient)
364 bool uiGesture =
false;
365 if (!
g_Game.IsHeadlessOrDedicatedServer())
463 else if (
m_Player.IsSurrendered() && (
m_HIC.IsSingleUse() ||
m_HIC.IsContinuousUseStart() ||
m_HIC.IsWeaponRaised()))
512 if (!
m_Player.IsShootingFromCamera())
513 m_Player.OverrideShootFromCamera(
true);
525 bool guaranteed =
false;
527 if (!ctx.
Read(gestureID))
534 ctx.
Read(guaranteed);
535 if (ctx.
Read(random))
547 pCtx.
Write(gestureID);
548 pCtx.
Write(cancelID);
550 pCtx.
Write(guaranteed);
569 pCtx.
Read(gestureID);
572 pCtx.
Read(guaranteed);
680 ErrorEx(
"EmoteManager | DetermineEmoteData failed!");
703 else if (
m_Player.IsPlayerInStance(mask))
749 if (weapon.CanFire())
753 weapon.ProcessWeaponEvent(weapon_event);
758 if (helm &&
g_Game.IsServer())
760 float damage = helm.GetMaxHealth(
"",
"");
761 helm.AddHealth(
"",
"", -damage/2);
772 if (!weapon.IsDamageDestroyed())
774 weapon.ProcessWeaponEvent(weapon_event);
779 else if (
m_Player.GetItemInHands() &&
m_Player.GetItemInHands().ConfigIsExisting(
"suicideAnim"))
867 bool guaranteedLaunch =
false;
892 bool canProceed =
true;
904 ctx.
Write(guaranteedLaunch);
919 else if (!
g_Game.IsMultiplayer())
943 int id = launcher.GetID();
944 int forced = launcher.GetForced();
945 bool guaranteedLaunch = launcher.IsStartGuaranteed();
970 bool canProceed =
true;
982 ctx.
Write(guaranteedLaunch);
988 launcher.VerifySyncRequest();
1000 else if (!
g_Game.IsMultiplayer())
1048 if ((
m_Player.GetWeaponManager() &&
m_Player.GetWeaponManager().IsRunning()) || (
m_Player.GetActionManager() &&
m_Player.GetActionManager().GetRunningAction()))
1078 if (
m_Player.GetDayZPlayerInventory().IsProcessing())
1133 if (
g_Game.IsMultiplayer())
1140 m_Player.PhysicalPredictiveDropItem(item);
1170 m_Player.SetInventorySoftLock(state);
1198 m_Player.GetActionManager().EnableActions(
true);
1206 m_Player.GetActionManager().EnableActions(
false);
1214 if (!
m_Player.GetItemInHands() || (
m_Player.GetItemInHands() && !SurrenderDummyItem.Cast(
m_Player.GetItemInHands())))
1227 if (
m_Player.IsSurrendered() && data)
1255 [
Obsolete(
"1.30: Use PlayerBase::SetSurrenderState instead")]
1314 float waterLevel =
m_Player.GetCurrentWaterLevel();
1342 switch (Callback_ID)
1345 m_Player.GetBleedingManagerServer().AttemptAddBleedingSourceBySelection(
"Neck");
1349 m_Player.GetBleedingManagerServer().AttemptAddBleedingSourceBySelection(
"LeftForeArmRoll");
1353 m_Player.GetBleedingManagerServer().AttemptAddBleedingSourceBySelection(
"Spine2");
1357 m_Player.GetBleedingManagerServer().AttemptAddBleedingSourceBySelection(
"Spine2");
1361 m_Player.GetBleedingManagerServer().AttemptAddBleedingSourceBySelection(
"Head");
1365 m_Player.GetBleedingManagerServer().AttemptAddBleedingSourceBySelection(
"LeftForeArmRoll");
1404 old_item.GetTransform(mtx);
1407 OverrideNewLocation(gnd);
1412 if (PrepareLocations())
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
void DayZPlayerUtils()
cannot be instantiated
override void OnCallbackEnd()
void ChainedDropAndKillPlayerLambda(EntityAI old_item, string new_item_type, PlayerBase player)
bool m_DisconnectEmoteQueued
ref Timer m_ReservationTimer
ref array< int > m_EmoteInputIDs
bool ClearDeferredExecution()
const int CALLBACK_CMD_END
void ForceSurrenderState(bool state)
void RequestCommitSuicide()
int m_InterruptInputsCount
void CheckEmoteLockedState()
void EmoteManager(PlayerBase player)
void CreateEmoteCBFromMenu(int id, bool interrupts_same=false)
const int CALLBACK_CMD_INVALID
ref array< string > m_InterruptInputs
bool CanPlayEmoteClientCheck(int id)
ref array< int > m_EmoteIDs
bool CanPlayEmote(int id)
int m_DeferredEmoteExecution
bool m_DeferredEmoteLauncherCleanup
int m_DeferredGuaranteedEmoteId
PluginAdminLog m_AdminLog
ref InventoryLocation m_HandInventoryLocation
void InterruptCallbackCommand()
void SetPending(bool state)
void PostSurrenderRequestServer()
server only
void PlaySurrenderInOut(bool state)
int DetermineGestureIndex()
void CreateBleedingEffect(int Callback_ID)
void SendEmoteRequestSyncEx(notnull EmoteLauncher launcher)
To avoid mixing m_MenuEmote with exceptional sync commands.
map< int, ref EmoteBase > GetNameEmoteMap()
bool m_GestureInterruptInput
void ClearSurrenderState()
Surrender state cleared.
bool m_InventoryAccessLocked
bool OnInputUserDataProcess(int userDataType, ParamsReadContext ctx)
const int CALLBACK_CMD_INSTACANCEL
void SetClientLoggingOut(bool state)
void ServerRequestEmoteCancel()
void EndSurrenderRequest(SurrenderData data=null)
directly force-ends surrender state AND requests hard cancel
void SetEmoteLockState(bool state)
bool ClearEmoteLauncher(bool forced=false)
ref EmoteLauncher m_MenuEmote
void CreateEmoteCallback(typename callbacktype, int id, int mask, bool fullbody)
bool InterruptGestureCheck()
bool InterruptWaterCheck()
void OnSyncJuncture(int pJunctureID, ParamsReadContext pCtx)
void PickEmote(int gestureslot)
Deprecated.
bool DetermineEmoteData(EmoteBase emote, out int callback_ID, out int stancemask, out bool is_fullbody)
Also includes a stance check for FB callbacks.
SHumanCommandSwimSettings m_HumanSwimSettings
override void Execute(HumanInventoryWithFSM fsm_to_notify=null)
const int CALLBACK_CMD_GESTURE_INTERRUPT
ref map< int, ref EmoteBase > m_NameEmoteMap
HumanInputController m_HIC
ref array< ref EmoteBase > m_EmoteClassArray
void EndCallbackCommand()
bool m_MouseButtonPressed
bool m_InstantCancelEmote
EmoteLauncher GetEmoteLauncher()
bool m_bEmoteIsRequestPending
void SendEmoteRequestSync(int id)
ref array< UAIDWrapper > m_InterruptInputDirect
void hndDebugPrint(string s)
PluginBase GetPlugin(typename plugin_type)
drops weapon in hands to ground and then calls kill
Super root of all classes in Enforce script.
static const int SJ_GESTURE_REQUEST
bool EmoteFBStanceCheck(int stancemask)
Checks for valid stance mask.
bool CanBeCanceledNormally(notnull EmoteCB callback)
bool DetermineOverride(out int callback_ID, out int stancemask, out bool is_fullbody)
int GetAdditiveCallbackUID()
int GetFullbodyCallbackUID()
int GetStanceMaskAdditive()
bool EmoteStartOverride(typename callbacktype, int id, int mask, bool fullbody)
int GetStanceMaskFullbody()
bool EmoteCondition(int stancemask)
void OnBeforeStandardCallbackCreated(int callback_ID, int stancemask, bool is_fullbody)
bool GetHideItemInHands()
override void OnAnimationEvent(int pEventID)
override bool IsGestureCallback()
bool ConstructEmotes(PlayerBase player, out map< int, ref EmoteBase > emoteMap)
static const int FORCE_ALL
static const int FORCE_NONE
void SetStartGuaranteed(bool guaranted)
bool m_InterruptsSameIDEmote
static const int FORCE_DIFFERENT
void EmoteLauncher(int emoteID, bool interrupts_same)
const int c_InventoryReservationTimeoutMS
reservations
script counterpart to engine's class Inventory
proto native bool IsOnBack()
return true if prone is on back
proto native bool IsChangingStance()
returns true if character is changing stance
HumanInventory... with FSM (synchronous, no anims)
proto native void SetGround(EntityAI e, vector mat[4])
sets current inventory location type to Ground with transformation mat
static bool IsInventoryHFSMLogEnable()
The class that will be instanced (moddable)
base class for transformation operations (creating one item from another)
proto bool Write(void value_out)
proto bool Read(void value_in)
void End()
called on surrender end request end
signalize mechanism manipulation
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
DayZPlayerConstants
defined in C++
Serializer ParamsReadContext
const int EMOTE_SUICIDE_SIMULATION_END
const int EMOTE_SUICIDE_BLEED
const int EMOTE_SUICIDE_DEATH
const int ID_EMOTE_SURRENDER
const int ID_EMOTE_SUICIDE
const int ID_EMOTE_THUMBDOWN
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
void Obsolete(string msg="")
static proto int RandomInt(int min, int max)
Returns a random int number between and min [inclusive] and max [exclusive].