40 if ( target_IB.IsLockedInSlot() )
42 else if ( target_IB.IsAlive() )
65 if ( target_IB && parent_EAI )
73 bool isPresent = targetDoor.GetInventory().GetCurrentInventoryLocation( loc );
75 if ( !isPresent || loc.
GetSlot() == -1 )
85 bool hasConstruction = parent_EAI.CanUseConstruction();
86 bool isPlayerInside = parent_EAI.IsPlayerInsideEx(player,
"");
87 if (hasConstruction && !isPlayerInside)
95 codeLock.GetActionComponentNameList(target.GetComponentIndex(), selections);
97 foreach (
string selectionName : selections)
104 if ( target_IB.IsLockedInSlot() )
106 else if ( target_IB.IsAlive() )
108 else if ( !target_IB.IsLockedInSlot() )
111 targetType = target_IB.GetLockType();
113 for (
int i = 0; i < compLock.Count(); i++)
115 if ( targetType == compLock[i] && targetType !=
eLockTypes.NONE)
126 super.OnStartAnimationLoop( action_data );
132 g_Game.RPCSingleParam( target_IB,
ERPCs.RPC_SOUND_LOCK_ATTACH, play,
true );
142 g_Game.RPCSingleParam( target_IB,
ERPCs.RPC_SOUND_LOCK_ATTACH, play,
true );
148 super.OnEndAnimationLoop( action_data );
154 g_Game.RPCSingleParam( target_IB,
ERPCs.RPC_SOUND_LOCK_ATTACH, play,
true );
162 MiscGameplayFunctions.DealAbsoluteDmg(action_data.
m_MainItem, 5);
164 if (target_IB.IsLockedInSlot())
166 target_IB.UnlockFromParent();
170 target_IB.LockToParent();
ref CCIBase m_ConditionItem
ref CCTBase m_ConditionTarget
void ActionTarget(Object object, Object parent, int componentIndex, vector cursorHitPos, float utility, string surfaceName="")
PlayerSpawnPreset slotName
void CreateActionComponent()
void ActionContinuousBase()
ref ActionTarget m_Target
override void CreateConditionComponents()
override void OnStartAnimationLoop(ActionData action_data)
const string CODE_LOCK_SELECTION_BACK
override void OnActionInfoUpdate(PlayerBase player, ActionTarget target, ItemBase item)
const string UNLOCK_VERSION
void ActionLockAttachment()
override void OnFinishProgressServer(ActionData action_data)
override void OnEnd(ActionData action_data)
const string LOCK_VERSION
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override void OnEndAnimationLoop(ActionData action_data)
override int GetCarDoorsState(string slotType)
proto native int GetSlot()
returns slot id if current type is Attachment
static proto native owned string GetSlotName(int id)
converts slot_id to string
provides access to slot configuration
ref TIntArray m_CompatibleLocks
const float BASEBUILDING_REPAIR_FAST
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
DayZPlayerConstants
defined in C++
@ NONE
body is not in simulation, nor in collision world