class HumanInventory
HumanInventory › GameInventory
inventory for plain man/human
HumanInventory has simple synchronous operations only, i.e. no animations are involved while adding/removing/swapping to/from hands.
Animations are added on higher level of hierarchy (DayZPlayerInventory for example)
Members 1
int m_syncClearUserReservationindex = -1Referenced by ClearUserReservedLocationAtIndexSynced(), ClearUserReservedLocationSynced(), and Update()
Methods 50
proto native EntityAI GetEntityInHands()Returns: entity in hands
Referenced by AnalyticsManagerClient.OnItemAttachedAtPlayer(), DayZPlayerImplement.OnDrawOptics2D(), DayZPlayerInventory.AbortWeaponEvent()
Show 11 more
, DayZPlayerInventory.DeferredWeaponFailed(), DayZPlayerInventory.HandEvent(), DayZPlayerInventory.HandleInventory(), DayZPlayerInventory.HandleWeaponEvents(), DayZPlayerInventory.OnEventForRemoteWeapon(), DayZPlayerInventory.SendRepairToClientDst(), HasEntityInHands(), ReplaceItemInElsewhereWithNewinHandsImpl(), ReplaceItemInHandsWithNewImpl(), ReplaceItemWithNew(), and HumanInventoryWithFSM.CheckFSMState()alternative for TestAddEntityInHands(e, true, true, true);
Referenced by AttachmentCategoriesRow.DoubleClick(), AttachmentCategoriesRow.Select(), Attachments.Select()
Show 12 more
, CargoContainer.Select(), ContainerWithCargoAndAttachments.DoubleClick(), HandsContainer.DoubleClick(), HandsContainer.OnPerformCombination(), HandsPreview.Select(), Icon.DoubleClick(), PlayerContainer.DoubleClick(), PlayerContainer.Select(), VicinitySlotsContainer.DoubleClick(), VicinitySlotsContainer.Select(), ZombieContainer.DoubleClick(), and ZombieContainer.Select()proto native bool TestAddEntityInHands(EntityAI e, bool do_resevation_check, bool do_item_check, bool do_lock_check, bool do_occupancy_test, bool do_script_check)- in
e - entity to test for taking in hands
- in
do_item_check - deny if entity is not InventoryItem
- in
do_occupancy_test - deny if there is item in hands already
- in
do_script_check - deny if script conditions fail
Returns: true if item passed all tests
proto native bool CanRemoveEntityInHands()Returns: true if entity can be removed from hands
proto native bool CanOpenInventory()Referenced by MissionGameplay.ShowInventory()
creates new entity in hands
- in
typeName - type name of the entity to be created
Returns: new entity or null otherwise
proto native int GetUserReservedLocationCount()Referenced by EntityAI.IsSlotReserved()
Referenced by CargoContainer.SetLock(), FirearmActionDetachMagazine.InventoryReservation(), ClearUserReservedLocationSynced()
Show 12 more
, RedirectToHandEvent(), Icon.DoubleClick(), Icon.DraggingOverSwap(), Icon.DropReceivedFromMain(), Icon.Swap(), Inventory.DraggingOverCenterPanel(), Inventory.OnCenterPanelDropReceived(), InventoryQuickbar.GetQuickbarItemColor(), ItemBase.~ItemBase(), ItemBase.EEDelete(), ItemBase.EEItemLocationChanged(), and PlayerBase.OnQuickBarSingleUse()proto native int FindCollidingUserReservedLocationIndex(notnull EntityAI e, notnull InventoryLocation dst)Referenced by ItemBase.EEItemLocationChanged()
proto native void GetUserReservedLocation(int index, out notnull InventoryLocation dst)Referenced by CargoContainer.SetLock(), EntityAI.IsSlotReserved(), FirearmActionDetachMagazine.InventoryReservation()
Show 13 more
, ClearUserReservedLocationAtIndexSynced(), RedirectToHandEvent(), Update(), Icon.DoubleClick(), Icon.DraggingOverSwap(), Icon.DropReceivedFromMain(), Icon.Swap(), Inventory.DraggingOverCenterPanel(), Inventory.OnCenterPanelDropReceived(), ItemBase.~ItemBase(), ItemBase.EEDelete(), ItemBase.EEItemLocationChanged(), and PlayerBase.OnQuickBarSingleUse()Referenced by EntityAI.IsSlotReserved()
proto native void SetUserReservedLocation(notnull EntityAI eai, notnull InventoryLocation dst)Referenced by ItemBase.EEItemLocationChanged()
proto native void ClearUserReservedLocation(notnull EntityAI eai)Referenced by ClearUserReservedLocationSynced(), Icon.DropReceivedFromMain(), and ItemBase.~ItemBase()
proto native void ClearUserReservedLocationForContainer(notnull EntityAI eai)Referenced by ItemBase.OnInventoryExit()
proto native bool GetDebugFlag()creates entity somewhere in inventory
- in
type itemtype to be placed in inventory
Returns: created entity
void ClearUserReservedLocationSynced(notnull EntityAI eai)void ClearUserReservedLocationAtIndexSynced(int index)Man GetManOwner()Referenced by DayZPlayerInventory.ExecuteHandEventCommandClient(), DayZPlayerInventory.ExecuteHandEventCommandRemote(), DayZPlayerInventory.ExecuteHandEventCommandServer()
Show 29 more
, DayZPlayerInventory.HandleInventory(), DayZPlayerInventory.Init(), DayZPlayerInventory.PlayerCheckDropRequest(), DayZPlayerInventory.PlayerCheckRequestDst(), DayZPlayerInventory.PlayerCheckRequestSrc(), DayZPlayerInventory.PlayerCheckSwapItemsRequest(), DayZPlayerInventory.TakeToDst(), DayZPlayerInventory.ValidateHandEvent(), DayZPlayerInventory.ValidateHandEventServer(), DayZPlayerInventory.ValidateSwap(), DayZPlayerInventory.ValidateSwapServer(), DayZPlayerInventory.ValidateSyncMove(), DayZPlayerInventory.ValidateSyncMoveServer(), DropEntity(), ForceSwapEntities(), LocalDestroyEntity(), OnEntityInHandsCreated(), OnEntityInHandsDestroyed(), ReplaceItemElsewhereWithNewInHands(), ReplaceItemInHandsWithNew(), ReplaceItemInHandsWithNewElsewhere(), SwapEntities(), TakeToDst(), ThrowEntity(), HumanInventoryWithFSM.CreateStableStates(), HumanInventoryWithFSM.Init(), HumanInventoryWithFSM.ProcessHandAbortEvent(), HumanInventoryWithFSM.ProcessHandEvent(), and ReplaceItemWithNewLambdaBase.Execute()References GetEntityInHands()
bool ProcessHandEvent(HandEventBase e)void OnHandsStateChanged(HandStateBase src, HandStateBase dst)void OnHandsExitedStableState(HandStateBase src, HandStateBase dst)Referenced by DayZPlayerInventory.OnHandsExitedStableState()
void OnHandsEnteredStableState(HandStateBase src, HandStateBase dst)Referenced by DayZPlayerInventory.OnHandsEnteredStableState()
void OnEntityInHandsCreated(InventoryLocation src)Referenced by GameInventory.EEInit()
void OnEntityInHandsDestroyed(InventoryLocation src)bool HandEvent(InventoryMode mode, HandEventBase e)override bool DropEntity(InventoryMode mode, EntityAI owner, notnull EntityAI item)References Class.Cast(), DropEntity(), Error()
Show 15 more
, GameInventory.GetCurrentInventoryLocation(), EntityAI.GetHierarchyParent(), EntityAI.GetHierarchyRootPlayer(), EntityAI.GetInventory(), GetManOwner(), InventoryLocation.GetType(), HandEvent(), new HandEventThrow(), hndDebugPrint(), new InventoryLocation(), LogManager.IsInventoryHFSMLogEnable(), CGame.IsMultiplayer(), CGame.IsServer(), Man.NeedInventoryJunctureFromServer(), and HandEventThrow.SetForce()Referenced by DayZPlayerImplementThrowing.HandleThrowing()
bool RedirectToHandEvent(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)References Class.Cast(), ClearUserReservedLocationAtIndex(), FindUserReservedLocationIndex()
Show 22 more
, Man.GetHumanInventory(), Man.GetHumanInventory(), InventoryLocation.GetItem(), EntityAI.GetOnAttachmentReleaseLock(), EntityAI.GetOnReleaseLock(), InventoryLocation.GetParent(), InventoryLocation.GetParent(), InventoryLocation.GetParent(), InventoryLocation.GetSlot(), InventoryLocation.GetType(), InventoryLocation.GetType(), InventoryLocation.GetType(), GetUserReservedLocation(), HandEvent(), HandEvent(), new HandEventMoveTo(), new HandEventTake(), hndDebugPrint(), new InventoryLocation(), ScriptInvoker.Invoke(), ScriptInvoker.Invoke(), and LogManager.IsInventoryHFSMLogEnable()override bool TakeToDst(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)Referenced by DayZPlayerInventory.TakeToDst(), Man.PredictiveMoveItemFromHandsToInventory(), Man.TakeEntityToHandsImpl()
Show 1 more
, Man.TakeToDstImpl()override bool TakeEntityToInventory(InventoryMode mode, FindInventoryLocationType flags, notnull EntityAI item)override bool SwapEntities(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2)override bool ForceSwapEntities(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)returns item to previous location, if available
References InventoryLocation.DumpToStringNullSafe(), typename.EnumToString(), Error()
Show 12 more
, GameInventory.ForceSwapEntities(), EntityAI.GetInventory(), GetManOwner(), InventoryLocation.GetType(), GetType(), HandEvent(), new HandEventForceSwap(), hndDebugPrint(), LogManager.IsInventoryHFSMLogEnable(), GameInventory.MakeSrcAndDstForForceSwap(), HandEventBase.ReserveInventory(), and SwappingToPreviousLocation()Referenced by DayZPlayerInventory.ForceSwapEntities(), Man.ForceSwapEntitiesImpl(), PlayerContainer.Select()
Show 1 more
, ZombieContainer.Select()returns item to previous location, if available
override bool ReplaceItemWithNew(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)References GetEntityInHands(), ReplaceItemInHandsWithNew(), GameInventory.ReplaceItemWithNew()
Show 1 more
, ReplaceItemWithNewLambdaBase.m_OldItemReferenced by Man.ReplaceItemWithNewImpl()
bool ReplaceItemElsewhereWithNewInHands(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)References GetManOwner(), new HandEventDestroyElsewhereAndReplaceWithNewInHands(), and ReplaceItemInElsewhereWithNewinHandsImpl()
Referenced by Man.ReplaceItemElsewhereWithNewInHandsImpl()
protected bool ReplaceItemInElsewhereWithNewinHandsImpl(InventoryMode mode, HandEventBase e)Referenced by ReplaceItemElsewhereWithNewInHands()
protected bool ReplaceItemInHandsWithNewImpl(InventoryMode mode, HandEventBase e)bool ReplaceItemInHandsWithNew(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)bool ReplaceItemInHandsWithNewElsewhere(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)References GetManOwner(), new HandEventDestroyAndReplaceWithNewElsewhere(), and ReplaceItemInHandsWithNewImpl()
Referenced by Man.ReplaceItemInHandsWithNewElsewhereImpl()
bool SwappingToPreviousLocation(EntityAI item1, EntityAI item2, out InventoryLocation dst)References GameInventory.CanSwapEntitiesEx(), InventoryLocation.CollidesWith(), InventoryLocation.Copy()
Show 15 more
, GameInventory.GetCurrentInventoryLocation(), GameInventory.GetCurrentInventoryLocation(), EntityAI.GetHierarchyRootPlayer(), EntityAI.GetInventory(), EntityAI.GetInventory(), EntityAI.GetInventory(), InventoryLocation.GetParent(), InventoryLocation.GetSlot(), GameInventory.GetSlotId(), GameInventory.GetSlotIdCount(), InventoryLocation.GetType(), new InventoryLocation(), InventoryLocation.IsValid(), GameInventory.LocationCanAddEntity(), and EntityAI.m_OldLocationvoid HandleInventoryManipulation()void Update(float delta_time)References ScriptInputUserData.CanStoreInputUserData(), ClearUserReservedLocationAtIndex(), InventoryLocation.GetItem()
Referenced by DayZPlayerImplement.CommandHandler()
bool ValidateUserReservationCancel(inout Serializer ctx, InventoryValidation validation)bool ExecuteUserReservationCancelRemote(inout Serializer ctx)TODO(kumarjac): It returned true and claimed success before, is this correct?
Referenced by DayZPlayerInventory.ExecuteInventoryCommandRemote()
bool PostDeferredEventTakeToDst(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)bool PostDeferredForceSwapEntities(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation dst1, notnull InventoryLocation dst2)bool OnInventoryCheck(int userDataType, ParamsReadContext ctx)Referenced by PlayerBase.OnInputUserDataProcess()