38 RegisterNetSyncVariableInt(
"m_RAIB.m_PairDeviceNetIdLow");
39 RegisterNetSyncVariableInt(
"m_RAIB.m_PairDeviceNetIdHigh");
44 if (!
g_Game.IsMultiplayer())
82 if (!
super.OnStoreLoad(
ctx, version))
93 GetInventory().SetSlotLock(
slotId,
false);
111 super.OnVariablesSynchronized();
114 m_RAIB.OnVariableSynchronized();
156 return m_RAIB.GetPairDevice();
186 GetInventory().GetCurrentInventoryLocation(
il);
318 if (
attachment4.IsAnyInherited({RemoteDetonator, ClockBase}))
424 if (
entity.IsInherited(ClockBase))
441 if (
entity.IsInherited(RemoteDetonator))
474 return "placeImprovisedExplosive_SoundSet";
479 return "improvisedexplosive_deploy_SoundSet";
InventoryMode
NOTE: PREDICTIVE is not to be used at all in multiplayer.
void AddAction(typename actionName)
PlayerSpawnPreset slotName
void SetArmed(bool state)
const string ANIM_PHASE_VISIBILITY
override void UnpairRemote()
InventoryLocationType
types of Inventory Location
override void SetTakeable(bool pState)
RemoteDetonatorTrigger RemoteDetonator RemoteDetonatorReceiver()
const string ANIM_PHASE_TRIGGER_REMOTE
override void OnBeforeDisarm()
override void UnlockExplosivesSlots()
const float TIME_TRIGGER_DELAY_SECS
const int SLOT_EXPLOSIVE_COUNT
override void LockExplosivesSlots()
void OnTriggerDetached(EntityAI entity)
const string ANIM_PHASE_TRIGGER_CLOCK
override void SetActions()
static const string SLOT_TRIGGER_ALARM_CLOCK
override bool HasLockedTriggerSlots()
static const string SLOT_EXPLOSIVE_A
static const string SLOT_TRIGGER_KITCHEN_TIMER
void UpdateVisuals(EntityAI entity)
const float TIME_TRIGGER_INITIAL_DELAY_SECS
override void OnVariablesSynchronized()
override bool IsDeployable()
override void EEHealthLevelChanged(int oldLevel, int newLevel, string zone)
const float TIME_TRIGGER_TIMER_BASED_DELAY_SECS
const string SLOT_EXPLOSIVES[SLOT_EXPLOSIVE_COUNT]
override void PairRemote(notnull EntityAI trigger)
const string SLOT_TRIGGERS[SLOT_TRIGGERS_COUNT]
override void EEItemDetached(EntityAI item, string slot_name)
override void EEItemAttached(EntityAI item, string slot_name)
const int SLOT_TRIGGERS_COUNT
override bool CanReceiveAttachment(EntityAI attachment, int slotId)
const string ANIM_PHASE_TRIGGER_EMPTY
override void UnlockTriggerSlots()
override void EEItemLocationChanged(notnull InventoryLocation oldLoc, notnull InventoryLocation newLoc)
override string GetLoopDeploySoundset()
override void OnPlacementComplete(Man player, vector position="0 0 0", vector orientation="0 0 0")
override void EOnInit(IEntity other, int extra)
static const string SLOT_EXPLOSIVE_B
const string ANIM_PHASE_TRIGGER_TIMER
static const string SLOT_TRIGGER_REMOTE
void ImprovisedExplosive()
ref RemotelyActivatedItemBehaviour m_RAIB
override bool IsTimerDetonable()
void InitiateExplosion()
not exploding itself, rely on attached explosives
override void LockTriggerSlots()
override bool CanDisplayAttachmentSlot(int slot_id)
override RemotelyActivatedItemBehaviour GetRemotelyActivatedItemBehaviour()
override bool IsTakeable()
override void OnStoreSave(ParamsWriteContext ctx)
override string GetDeploySoundset()
override bool CanBeArmed()
void OnTriggerAttached(EntityAI entity)
override void OnDisarmed(bool pWithTool)
override void UpdateLED(int pState)
override bool OnStoreLoad(ParamsReadContext ctx, int version)
override void OnActivatedByItem(notnull ItemBase item)
override bool CanBeDisarmed()
override EntityAI GetPairDevice()
provides access to slot configuration
static proto native owned string GetSlotName(int id)
converts slot_id to string
static proto native int GetSlotIdFromString(string slot_name)
converts string to slot_id
Serialization general interface. Serializer API works with:
proto native CGame GetGame()