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

◆ IsExclusionFlagPresentRecursive()

bool Entity::IsExclusionFlagPresentRecursive ( set< int > values,
int targetSlot )
inlineprotected

Gets flag from what is effectively an owner.

См. определение в файле 3_Game/DayZ/Entities/EntityAI.c строка 4650

4651 {
4652 if (values && values.Count() != 0)
4653 {
4654 InventoryLocation lcn = new InventoryLocation();
4656 EntityAI parent = GetHierarchyParent();
4657 set<int> passThis;
4658 if (CheckExclusionAccessCondition(lcn.GetSlot(),targetSlot, values, passThis))
4659 {
4660 if (parent && parent != this) //we reached root if false
4661 {
4662 return parent.IsExclusionFlagPresentRecursive(passThis,lcn.GetSlot());
4663 }
4664 }
4665 return IsExclusionFlagPresent(passThis);
4666 }
4667
4668 return false;
4669 }
proto native EntityAI GetHierarchyParent()
Returns direct parent of current entity.
proto native GameInventory GetInventory()
void EntityAI()
cache blood infection chance (cfgVehicles-><entity>->Skinning->BloodInfectionSettings)
bool CheckExclusionAccessCondition(int occupiedSlot, int targetSlot, set< int > value, inout set< int > adjustedValue)
bool IsExclusionFlagPresent(set< int > values)
checks 'this' if the incoming flag is present for the current state (slot behavior and others)
proto native bool GetCurrentInventoryLocation(out notnull InventoryLocation loc)
returns information about current item location
proto native int GetSlot()
returns slot id if current type is Attachment

Перекрестные ссылки CheckExclusionAccessCondition(), EntityAI(), GetHierarchyParent(), GetInventory(), InventoryLocation::GetSlot() и IsExclusionFlagPresent().

Используется в CheckAttachmentReceiveExclusion().