DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ DropEntity()

bool GameInventory::DropEntity ( InventoryMode mode,
EntityAI owner,
notnull EntityAI item )
inlineprotected

См. определение в файле 3_Game/DayZ/Systems/Inventory/Inventory.c строка 1223

1224 {
1225 if (LogManager.IsInventoryMoveLogEnable()) inventoryDebugPrint("[inv] I::Drop(" + typename.EnumToString(InventoryMode, mode) + ") item=" + item);
1226 InventoryLocation src = new InventoryLocation();
1227 if (item.GetInventory().GetCurrentInventoryLocation(src))
1228 {
1229 InventoryLocation dst = new InventoryLocation();
1230 if (!SetGroundPosByOwner(owner, item, dst))
1231 {
1232 OnInventoryFailure(InventoryCommandType.SYNC_MOVE, InventoryValidationReason.DROP_PREVENTED, src, dst);
1233 return false;
1234 }
1235
1236 return TakeToDst(mode, src, dst);
1237 }
1238
1239 Error("DropEntity - No inventory location");
1240 return false;
1241 }
void inventoryDebugPrint(string s)
InventoryCommandType
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
InventoryValidationReason
void OnInventoryFailure(InventoryCommandType type, InventoryValidationReason reason, InventoryLocation src, InventoryLocation dst)
bool TakeToDst(InventoryMode mode, notnull InventoryLocation src, notnull InventoryLocation dst)
move src to dst
static bool SetGroundPosByOwner(EntityAI owner, notnull EntityAI item, out InventoryLocation ground)
void Error(string err)
Messagebox with error message.
Определения EnDebug.c:90

Перекрестные ссылки Error(), inventoryDebugPrint(), LogManager::IsInventoryMoveLogEnable(), OnInventoryFailure(), SetGroundPosByOwner() и TakeToDst().

Используется в SetInactive() и ThrowEntityFromInventory().