65enum FindInventoryReservationMode
99 proto native
void DumpInventoryDebug();
105 static proto native
void DumpStaticInventoryDebug();
157 proto native
bool TestAddEntityInCargoEx(notnull
EntityAI e,
int idx,
int row,
int col,
bool flip,
bool do_resevation_check,
bool do_item_check,
bool do_lock_check,
bool do_occupancy_test,
bool do_script_check,
bool do_script_load_check);
191 for (
int i = 0; i < count; i++)
360 static proto native
bool LocationTestAddEntity(notnull
InventoryLocation inv_loc,
bool do_resevation_check,
bool do_item_check,
bool do_lock_check,
bool do_occupancy_test,
bool do_script_check,
bool do_script_load_check);
429 if (ent.GetInventory().GetCurrentInventoryLocation(lcn) && lcn.
IsValid())
435 ent = ent.GetHierarchyParent();
446 return ent.AreChildrenAccessible();
449 ErrorEx(
"no inventory owner found!");
493 Error(
"[syncinv] ServerInventoryCommand (cmd=SYNC_MOVE) dropped, item not in bubble");
506 if (!e.GetSrcEntity())
508 Error(
"[syncinv] ServerInventoryCommand (cmd=HAND_EVENT) dropped, item not in bubble");
511 e.m_Player.GetHumanInventory().ProcessHandEvent(e);
636 item2.GetInventory().GetCurrentInventoryLocation(il2);
639 if (item1.CanBeSplit() && item1.GetQuantity() > item1.GetTargetQuantityMax(slot))
642 item1.GetInventory().GetCurrentInventoryLocation(il1);
645 if (item2.CanBeSplit() && item2.GetQuantity() > item2.GetTargetQuantityMax(slot))
648 if (!item1.CanSwapEntities(item2, il2, il1) || !item2.CanSwapEntities(item1, il1, il2))
674 if (!item1.CanBeFSwaped())
677 if ( item1_dst == null)
679 item2.GetInventory().GetCurrentInventoryLocation(il);
687 if ( item1.GetQuantity() > item1.GetTargetQuantityMax(slot) )
690 if ( item2_dst == null)
692 item1.GetInventory().GetCurrentInventoryLocation(il);
697 slot = item2_dst.GetSlot();
700 if (!item1.CanSwapEntities(item2, item2_dst, item1_dst) || !item2.CanSwapEntities(item1, item1_dst, item2_dst))
705 if ( item2.GetQuantity() > item2.GetTargetQuantityMax(slot) )
724 #ifdef ENABLE_LOGGING
747 #ifdef ENABLE_LOGGING
770 #ifdef ENABLE_LOGGING
856 man.GetHumanInventory().OnEntityInHandsCreated(src);
865 Man player = item.GetHierarchyRootPlayer();
867 player.GetInventory().ClearInventoryReservationEx(item, null);
884 return loc.
GetParent().GetInventory().CreateAttachmentEx(type, loc.
GetSlot());
888 Error(
"CreateInInventory: unknown location for item");
1017 if (item.GetInventory().GetCurrentInventoryLocation(src))
1026 Error(
"[inv] I::Take2Inv(" +
typename.EnumToString(
InventoryMode, mode) +
") item=" + item +
" Error - src has no inventory location");
1036 if (item.GetInventory().GetCurrentInventoryLocation(src))
1040 if (target.GetInventory().FindFreeLocationFor(item, flags, dst))
1046 Error(
"[inv] I::Take2Target(" +
typename.EnumToString(
InventoryMode, mode) +
") target=" + target +
" item=" + item +
" Error - src has no inventory location");
1063 if (ret && dst.IsValid())
1110 Error(
"[inv] I::Take2Cgo(" +
typename.EnumToString(
InventoryMode, mode) +
") item=" + item +
" row=" + row +
" col=" + col +
" Error - src has no inventory location");
1119 if (item.GetInventory().GetCurrentInventoryLocation(src))
1122 dst.
SetCargoAuto(cargo, item, row, col, item.GetInventory().GetFlipCargo());
1126 Error(
"[inv] I::Take2TargetCgoEx(" +
typename.EnumToString(
InventoryMode, mode) +
") item=" + item +
"to cargo of target=" + cargo.GetCargoOwner() +
" row=" + row +
" col=" + col);
1141 if (item.GetInventory().GetCurrentInventoryLocation(src))
1143 EntityAI att = target.GetInventory().FindAttachment(slot);
1148 att.CombineItemsEx(item,
true);
1152 att.CombineItemsClient(item,
true);
1156 else if (item.CanBeSplit() && item.GetTargetQuantityMax(slot) < item.GetQuantity())
1160 item.SplitIntoStackMaxEx(target, slot);
1164 item.SplitIntoStackMaxClient(target,slot);
1175 Error(
"[inv] I::Take2AttEx(" +
typename.EnumToString(
InventoryMode, mode) +
") item=" + item +
" Error - src has no inventory location");
1198 dst1.CopyLocationFrom(src2,
false);
1199 dst1.SetFlip(src1.GetItem().GetInventory().GetFlipCargo());
1205 dst2.CopyLocationFrom(src1,
false);
1206 dst2.SetFlip(src2.GetItem().GetInventory().GetFlipCargo());
1217 if (item1.GetInventory().GetCurrentInventoryLocation(src1) && item2.GetInventory().GetCurrentInventoryLocation(src2))
1230 if (item1.GetInventory().GetCurrentInventoryLocation(src1) && item2.GetInventory().GetCurrentInventoryLocation(src2))
1237 dst1.CopyLocationFrom(src2,
false);
1238 dst1.SetFlip(dst1.GetItem().GetInventory().GetFlipCargo());
1262 ground.SetGround(item, m4);
1270 if (item.GetInventory().GetCurrentInventoryLocation(src))
1282 Error(
"DropEntity - No inventory location");
1289 ground.SetGround(item, transform);
1297 if (item.GetInventory().GetCurrentInventoryLocation(src))
1305 Error(
"DropEntityWithTransform - No inventory location");
1312 owner.GetTransform(m4);
1317 float dist = randomPos[0] * m4[1][0] + randomPos[1] * m4[1][1] + randomPos[2] * m4[1][2];
1319 m4[3][0] = m4[3][0] + randomPos[0];
1320 m4[3][1] = m4[3][1] - dist + halfExtents[1];
1321 m4[3][2] = m4[3][2] + randomPos[2];
1323 item.PlaceOnSurfaceRotated(m4,
Vector(m4[3][0], m4[3][1], m4[3][2]));
1325 ground.SetGround(item, m4);
1333 if (item.GetInventory().GetCurrentInventoryLocation(src))
1342 Error(
"DropEntityInBounds - No inventory location");
1350 if (item.GetInventory().GetCurrentInventoryLocation(src))
1353 Error(
"[inv] Source location == HANDS, player has to handle this");
1359 Error(
"LocalDestroyEntity: No inventory location");
1366 if (lambda.
m_OldItem.GetInventory().GetCurrentInventoryLocation(src))
1373 Error(
"[inv] I::ReplaceItemWithNew - no inventory location");
void syncDebugPrint(string s)
void inventoryDebugPrint(string s)
@ USER_RESERVATION_CANCEL
Clear user reserved inventory space.
@ SYNC_MOVE
synchronous move. action is finished immeadiately, no animations involved
@ HAND_EVENT
event for hands
enum InventoryCheckContext EQUAL
Find an exact reservation for item and dst, item and dst required.
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
@ SERVER
'Server' mode operation is required if and only if the operation runs only on server (creates and/or ...
@ PREDICTIVE
'Predictive' means that the operation uses Client-Side Prediction, i.e. the action runs the same code...
enum InventoryCheckContext DST
Find a reservation for the dst EXCLUDING the item, item and dst required.
InventoryValidationResult
@ JUNCTURE
'Juncture' operation is used whenever there is possibility of race condition, i.e....
InventoryValidationReason
enum InventoryCheckContext ITEM
Find a reservation for the item EXCLUDING the dst, item and dst required.
@ UNKNOWN
24 - Any other error. Can be returned from any call.
PlayerSpawnPreset slotName
represents base for cargo storage for entities
static void InventoryReservationLog(string message=LOG_DEFAULT, string plugin=LOG_DEFAULT, string author=LOG_DEFAULT, string label=LOG_DEFAULT, string entity=LOG_DEFAULT)
script counterpart to engine's class Inventory
bool TakeEntityToTargetCargoEx(InventoryMode mode, notnull CargoBase cargo, notnull EntityAI item, int row, int col)
Put item into into cargo on specific cargo location of another entity.
proto native bool IsInventoryLockedForLockType(int lockType)
static proto native bool ServerHandEvent(notnull Man player, notnull EntityAI item, ParamsWriteContext ctx)
proto native bool GetCurrentInventoryLocation(out notnull InventoryLocation loc)
proto native CargoBase GetCargoFromIndex(int index)
bool DropEntity(InventoryMode mode, EntityAI owner, notnull EntityAI item)
static proto native EntityAI LocationCreateEntity(notnull InventoryLocation inv_loc, string type, int iSetupFlags, int iRotation)
static proto native bool CanSwapEntities(notnull EntityAI item1, notnull EntityAI item2)
proto native bool CanUnlockInventoryWithKey(notnull EntityAI key)
proto native bool CanAddSwappedEntity(notnull InventoryLocation src1, notnull InventoryLocation src2, notnull InventoryLocation dst1, notnull InventoryLocation dst2)
static proto native EntityAI LocationCreateLocalEntity(notnull InventoryLocation inv_loc, string type, int iSetupFlags, int iRotation)
bool OnInventoryJunctureFromServer(ParamsReadContext ctx)
static bool CanForceSwapEntitiesEx(notnull EntityAI item1, InventoryLocation item1_dst, notnull EntityAI item2, out InventoryLocation item2_dst)
bool IsCargoInHiearchy()
Returns true if inventory owner or his hiearchy parents are in cargo.
bool SwapEntities(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2)
static bool MakeSrcAndDstForSwap(notnull EntityAI item1, notnull EntityAI item2, out InventoryLocation src1, out InventoryLocation src2, out InventoryLocation dst1, out InventoryLocation dst2)
helper function for swap
proto native bool GetFlipCargo()
proto native bool HasAttachmentEx(notnull EntityAI e, int slot)
bool ForceSwapEntities(InventoryMode mode, notnull EntityAI item1, notnull EntityAI item2, notnull InventoryLocation item2_dst)
static proto native bool HasInventoryReservation(EntityAI item, InventoryLocation dst)
Internally: HasInventoryReservationEx(item, dst, FindInventoryReservationMode.LEGACY,...
proto native int GetAnyInventoryReservationCount()
void Init()
script functions
proto native bool CanRemoveEntityInCargo(notnull EntityAI e)
void EEDelete(EntityAI parent)
static proto native bool ServerLocationSwap(notnull InventoryLocation src1, notnull InventoryLocation src2, notnull InventoryLocation dst1, notnull InventoryLocation dst2, ParamsWriteContext ctx)
bool CanRemoveEntity()
Returns if entity can be removed from its current location.
bool TakeEntityToCargoEx(InventoryMode mode, notnull EntityAI item, int idx, int row, int col)
const int c_InventoryReservationTimeoutMS
reservations
proto native bool IsPlaceholderEntity(notnull Object e)
bool TakeEntityAsAttachmentEx(InventoryMode mode, notnull EntityAI item, int slot)
proto native void UnlockInventoryWithKey(notnull EntityAI key)
static proto native bool LocationCanAddEntity(notnull InventoryLocation inv_loc)
proto native bool IsInventoryLocked()
proto native bool CanAddEntityInCargo(notnull EntityAI e, bool flip)
static proto native bool ClearInventoryReservation(EntityAI item, InventoryLocation dst)
proto native EntityAI CreateEntityInCargo(string typeName)
Create Entity of specified type in cargo of entity.
bool TakeEntityToCargo(InventoryMode mode, notnull EntityAI item)
static void SetGroundPosByOwnerBounds(EntityAI owner, notnull EntityAI item, out InventoryLocation ground, vector halfExtents, float angle, float cosAngle, float sinAngle)
const float c_MaxItemDistanceRadius
anti-cheats
proto native bool CanAddEntityInCargoEx(notnull EntityAI e, int idx, int row, int col, bool flip)
proto native bool CanLockInventoryWithKey(notnull EntityAI key)
locks
proto native int GetAttachmentSlotsCount()
bool OnInputUserDataProcess(ParamsReadContext ctx)
synchronization
static proto native bool HasInventoryReservationCanAdd(EntityAI item, InventoryLocation dst)
Internally: !HasInventoryReservationEx(item, dst, FindInventoryReservationMode.ITEM,...
proto native bool TestAddEntityInCargoEx(notnull EntityAI e, int idx, int row, int col, bool flip, bool do_resevation_check, bool do_item_check, bool do_lock_check, bool do_occupancy_test, bool do_script_check, bool do_script_load_check)
proto native bool SetSlotLock(int slot, bool locked)
proto native bool CanAddAttachment(notnull EntityAI e)
bool AddEntityToInventory(notnull EntityAI item)
proto native bool CanAddEntityInCargoExLoc(InventoryLocation loc)
bool DropEntityInBounds(InventoryMode mode, EntityAI owner, notnull EntityAI item, vector halfExtents, float angle, float cosAngle, float sinAngle)
EntityAI CreateInInventory(string type)
const int c_InventoryReservationTimeoutShortMS
proto native EntityAI GetAttachmentFromIndex(int index)
bool ClearInventoryReservationEx(EntityAI item, InventoryLocation dst)
static proto native bool HasInventoryReservationEx(EntityAI item, InventoryLocation dst, FindInventoryReservationMode itemMode, FindInventoryReservationMode parentMode)
itemMode will iterate over item reservations, parentMode will iterate over parent reservations
proto native int FindFreeLocationsFor(notnull EntityAI item, FindInventoryLocationType flags, out notnull array< ref InventoryLocation > locs)
void OnServerInventoryCommand(ParamsReadContext ctx)
static bool SetGroundPosByOwner(EntityAI owner, notnull EntityAI item, out InventoryLocation ground)
proto native bool EnumerateInventory(InventoryTraversalType tt, out array< EntityAI > items)
static proto native bool CheckTakeItemRequest(notnull Man requestingPlayer, notnull InventoryLocation src, notnull InventoryLocation dst, float radius)
bool AddInventoryReservationEx(EntityAI item, InventoryLocation dst, int timeout_ms)
proto native bool HasInventorySlot(int slotId)
static void OnServerInventoryCommandStatic(ParamsReadContext ctx)
proto native void ResetFlipCargo()
static int GetInventoryCheckContext()
bool TakeEntityAsTargetAttachment(InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
proto native bool IsInventoryUnlocked()
proto native bool HasEntityInCargo(notnull EntityAI e)
proto native bool TestAddEntityInCargoExLoc(notnull InventoryLocation loc, bool do_resevation_check, bool do_item_check, bool do_lock_check, bool do_occupancy_test, bool do_script_check, bool do_script_load_check)
static proto native bool LocationSwap(notnull InventoryLocation src1, notnull InventoryLocation src2, notnull InventoryLocation dst1, notnull InventoryLocation dst2)
proto native void SetFlipCargo(bool flip)
bool ReplaceItemWithNew(InventoryMode mode, ReplaceItemWithNewLambdaBase lambda)
bool TakeEntityAsAttachment(InventoryMode mode, notnull EntityAI item)
static proto native bool CheckMoveToDstRequest(notnull Man requestingPlayer, notnull InventoryLocation src, notnull InventoryLocation dst, float radius)
proto native int GetSlotIdCount()
proto native bool HasKeys()
proto native bool FindFreeLocationForEx(notnull EntityAI item, FindInventoryLocationType flags, notnull InventoryLocation exclude, out notnull InventoryLocation loc)
FindFreeLocationForEx.
static bool CanSwapEntitiesEx(notnull EntityAI item1, notnull EntityAI item2)
static bool MakeSrcAndDstForForceSwap(notnull EntityAI item1, notnull EntityAI item2, out InventoryLocation src1, out InventoryLocation src2, out InventoryLocation dst1, notnull InventoryLocation dst2)
helper function for ForceSwap
static proto native bool LocationCanMoveEntity(notnull InventoryLocation src, notnull InventoryLocation dst)
proto native bool FindFreeLocationFor(notnull EntityAI item, FindInventoryLocationType flags, out notnull InventoryLocation loc)
FindFreeLocationFor.
static proto native bool AddInventoryReservation(EntityAI item, InventoryLocation dst, int timeout_ms)
static proto native bool LocationCanRemoveEntity(notnull InventoryLocation inv_loc)
static proto native bool LocationAddEntity(notnull InventoryLocation inv_loc)
proto native EntityAI GetInventoryOwner()
Engine native functions.
proto native EntityAI FindAttachmentByName(string slotName)
Returns attached entity in slot (you can use EntityAI.GetActionComponentName to get slot id).
proto native bool HasAttachment(notnull EntityAI e)
proto native void FlipCargo()
static proto native bool CheckRequestSrc(notnull Man requestingPlayer, notnull InventoryLocation src, float radius)
proto native CargoBase GetCargo()
cargo
proto native int GetAttachmentSlotId(int index)
static int m_inventory_check_context
static proto native bool CheckDropRequest(notnull Man requestingPlayer, notnull InventoryLocation src, float radius)
proto native EntityAI CreateAttachment(string typeName)
static proto native bool ServerLocationMoveEntity(notnull EntityAI item, ParamsWriteContext ctx)
static bool LocationCanAddEntityEx(notnull InventoryLocation inv_loc)
proto native bool CanRemoveAttachment(EntityAI attachment)
proto native int AttachmentCount()
Returns count of attachments attached to this item.
proto native bool HasEntityInCargoEx(notnull EntityAI e, int idx, int row, int col)
static proto native bool GetInventoryReservationCount(EntityAI item, InventoryLocation dst)
proto native void LockInventoryWithKey(notnull EntityAI key)
bool CanAddEntityIntoInventory(notnull EntityAI item)
Test if entity can be put to the inventory (Cargo, ProxyCargo, Attachment).
static proto native bool TestDropEntityPos(EntityAI owner, notnull EntityAI item, out vector mat[4], bool useValuesInMatrix=false, int conflictCheckDepth=-1)
proto native int GetSlotId(int index)
proto native EntityAI FindPlaceholderForSlot(int slot)
Returns placeholder entity for slot (naked arms, legs etc).
static proto native bool PrepareDropEntityPos(EntityAI owner, notnull EntityAI item, out vector mat[4], bool useValuesInMatrix=false, int conflictCheckDepth=-1)
proto native bool FindFirstFreeLocationForNewEntity(string item_type, FindInventoryLocationType flags, out notnull InventoryLocation loc)
FindFirstFreeLocationForNewEntity.
static proto native bool ExtendInventoryReservation(EntityAI item, InventoryLocation dst, int timeout_ms)
proto native EntityAI FindAttachment(int slot)
Returns attached entity in slot (you can use InventorySlots.GetSlotIdFromString(name) to get slot id)...
proto native bool CanRemoveEntityInCargoEx(notnull EntityAI e, int idx, int row, int col)
bool OnStoreLoad(ParamsReadContext ctx, int version)
db load hooks
proto native bool GetSlotLock(int slot)
proto native bool CanAddAttachmentEx(notnull EntityAI e, int slot)
proto native bool HasEntityInInventory(notnull EntityAI item)
proto native void UnlockInventory(int lockType)
proto native int CountInventory()
almost identical to EnumerateInventory except it does not return items
static proto native bool LocationMoveEntity(notnull InventoryLocation src_loc, notnull InventoryLocation dst_loc)
static proto native bool LocationSyncMoveEntity(notnull InventoryLocation src_loc, notnull InventoryLocation dst_loc)
static proto native bool LocationTestAddEntity(notnull InventoryLocation inv_loc, bool do_resevation_check, bool do_item_check, bool do_lock_check, bool do_occupancy_test, bool do_script_check, bool do_script_load_check)
proto native int GetScriptLockCount()
bool TakeToDst(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)
static proto native bool CheckManipulatedObjectsDistances(notnull EntityAI e0, notnull EntityAI e1, float radius)
static proto native bool ServerLocationSyncMoveEntity(Man player, notnull EntityAI item, ParamsWriteContext ctx)
bool LocalDestroyEntity(notnull EntityAI item)
bool TakeEntityToTargetCargo(InventoryMode mode, notnull EntityAI target, notnull EntityAI item)
Put item into into cargo of another entity.
bool AreChildrenAccessible()
Returns true if item is considered reachable within inventory.
void OnInventoryFailure(InventoryCommandType type, InventoryValidationReason reason, InventoryLocation src, InventoryLocation dst)
proto native bool CanRemoveAttachmentEx(EntityAI attachment, int slot)
proto native EntityAI CreateEntityInCargoEx(string typeName, int idx, int row, int col, bool flip)
Create Entity of specified type in cargo of entity at coordinates (row, col).
bool TakeEntityToInventory(InventoryMode mode, FindInventoryLocationType flags, notnull EntityAI item)
static proto native bool CheckSwapItemsRequest(notnull Man requestingPlayer, notnull InventoryLocation src1, notnull InventoryLocation src2, notnull InventoryLocation dst1, notnull InventoryLocation dst2, float radius)
bool HasAttachmentSlot(int slotId)
bool IsInCargo()
Returns true if this Inventory owner is in cargo of something.
static bool SetGroundPosByTransform(EntityAI owner, notnull EntityAI item, out InventoryLocation ground, vector transform[4])
bool TakeEntityToTargetInventory(InventoryMode mode, notnull EntityAI target, FindInventoryLocationType flags, notnull EntityAI item)
helper that finds location first, then moves the entity into it
bool CanAddEntityIntoHands(notnull EntityAI item)
Test if entity can be put into hands.
void OnStoreSave(ParamsWriteContext ctx)
db store hook
static bool MakeDstForSwap(notnull InventoryLocation src1, notnull InventoryLocation src2, out InventoryLocation dst1, out InventoryLocation dst2)
helper function for swap
bool GetCurrentAttachmentSlotInfo(out int slot_id, out string slot_name)
Returns true if the item is currently attached and outputs attachment slot id and name.
void OnInventoryJunctureFailureFromServer(ParamsReadContext ctx)
bool DropEntityWithTransform(InventoryMode mode, EntityAI owner, notnull EntityAI item, vector transform[4])
bool TakeEntityAsTargetAttachmentEx(InventoryMode mode, notnull EntityAI target, notnull EntityAI item, int slot)
put item as attachment of target
static proto native bool LocationRemoveEntity(notnull InventoryLocation inv_loc)
bool CanAddEntityToInventory(notnull EntityAI item, int flag=FindInventoryLocationType.ANY)
proto native EntityAI CreateAttachmentEx(string typeName, int slotId)
proto native void LockInventory(int lockType)
static proto native EntityAI LocationGetEntity(notnull InventoryLocation inv_loc)
static bool LocationCanMoveEntitySyncCheck(notnull InventoryLocation src, notnull InventoryLocation dst)
static proto native bool CanForceSwapEntities(notnull EntityAI item1, InventoryLocation item1_dst, notnull EntityAI item2, out InventoryLocation item2_dst)
bool IsAttachment()
Returns true if this Inventory owner is an attachment of something.
bool CanAddEntityInto(notnull EntityAI item, FindInventoryLocationType flags=FindInventoryLocationType.ANY)
bool ExtendInventoryReservationEx(EntityAI item, InventoryLocation dst, int timeout_ms)
Abstracted event, not to be used, only inherited.
override string DumpToString()
proto native int GetSlot()
returns slot id if current type is Attachment
proto native bool GetFlip()
returns flip status of cargo
proto native EntityAI GetParent()
returns parent of current inventory location
proto native bool IsValid()
verify current set inventory location
proto native int GetType()
returns type of InventoryLocation
proto native void SetCargoAuto(notnull CargoBase cargo, EntityAI e, int row, int col, bool flip)
proto native int GetRow()
returns row of cargo if current type is Cargo / ProxyCargo
proto native int GetIdx()
returns index of cargo if current type is Cargo / ProxyCargo
proto native void SetAttachment(notnull EntityAI parent, EntityAI e, int slotId)
bool ReadFromContext(ParamsReadContext ctx)
proto native EntityAI GetItem()
returns item of current inventory location
proto native void SetCargo(notnull EntityAI parent, EntityAI e, int idx, int row, int col, bool flip)
static string DumpToStringNullSafe(InventoryLocation loc)
proto native int GetCol()
returns column of cargo if current type is Cargo / ProxyCargo
provides access to slot configuration
static proto native owned string GetSlotName(int id)
const int INVALID
Invalid slot (-1).
InventoryValidationResult m_Result
InventoryValidationReason m_Reason
static bool IsInventoryMoveLogEnable()
static bool IsInventoryReservationLogEnable()
static bool IsSyncLogEnable()
base class for transformation operations (creating one item from another)
void Execute(HumanInventoryWithFSM fsm_to_notify=null)
proto bool Read(void value_in)
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
static vector RotateAroundZero(vector pos, vector axis, float cosAngle, float sinAngle)
Rotate a vector around 0,0,0.
Serializer ParamsReadContext
InventoryTraversalType
tree traversal type, for more see http://en.wikipedia.org/wiki/Tree_traversal
Serializer ParamsWriteContext
enum ChatChannelType LEGACY
Legacy version, UNDER but without proxy support.
void Error(string err)
Messagebox with error message.
const int INVENTORY_ENTITY_DROP_OVERLAP_DEPTH
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
static void MatrixIdentity4(out vector mat[4])
Creates identity matrix.
static proto float RandomFloat(float min, float max)
Returns a random float number between and min[inclusive] and max[exclusive].
@ SWAP
swapping from ground
void ClearInventoryReservation()
FindInventoryLocationType
flags for searching locations in inventory
InventoryLocationType
types of Inventory Location