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

◆ ActionCondition()

override bool ActionTakeItem::ActionCondition ( PlayerBase player,
ActionTarget target,
ItemBase item )
inlineprivate

Special handling for digital code lock

См. определение в файле ActionTakeItem.c строка 33

34 {
35 ItemBase tgtItem = ItemBase.Cast(target.GetObject());
36 if (tgtItem && !tgtItem.IsTakeable())
37 return false;
38 if (tgtItem && tgtItem.IsBeingPlaced())
39 return false;
40
41 EntityAI tgtParent = EntityAI.Cast(target.GetParent());
42 EntityAI tgtEntity = EntityAI.Cast(target.GetObject());
43
44 if (tgtEntity && (!tgtParent || tgtParent.CanUseConstruction()))
45 {
46 if (tgtEntity && tgtEntity.IsItemBase() && player.GetInventory().CanAddEntityIntoInventory(tgtEntity) && tgtEntity.GetHierarchyRootPlayer() != player)
47 {
48 if (tgtParent && (!tgtItem.CanDetachAttachment(tgtParent) || !tgtParent.CanReleaseAttachment(tgtItem)))
49 return false;
50
52 DigitalCodeLock codeLock = DigitalCodeLock.Cast(tgtItem);
53 if (codeLock && !codeLock.CanDetachCodeLock(player, target.GetComponentIndex()))
54 return false;
55
56 return true;
57 }
58 }
59 return false;
60 }
class LogManager EntityAI
void DigitalCodeLock()
Определения CodeLock.c:590
class GP5GasMask extends MaskBase ItemBase
bool CanDetachCodeLock(notnull PlayerBase player, int componentIndex)
Condition check called from ActionTakeItem and ActionTakeItemToHands.
Определения CodeLock.c:216
override bool CanDetachAttachment(EntityAI parent)
Определения GardenLime.c:42
override bool IsTakeable()
Определения BaseBuildingBase.c:909

Перекрестные ссылки ActionTarget(), ItemBase::CanDetachAttachment(), DigitalCodeLock::CanDetachCodeLock() и ItemBase::IsTakeable().