372{
375}
376
378{
379 const string COLOR_LED_OFF =
"#(argb,8,8,3)color(0,0,0,1.0,co)";
380 const string COLOR_LED_LIT =
"#(argb,8,8,3)color(1,0,0,1.0,co)";
382
384
386 {
387 return true;
388 }
389
391 {
393
395 {
398 break;
399 default:
401 }
402
404 SetSynchDirty();
405 }
406
408 {
410
413 }
414}
415
417{
419
420 protected bool m_LED;
422
424 {
427
428 RegisterNetSyncVariableInt("m_RAIB.m_PairDeviceNetIdLow");
429 RegisterNetSyncVariableInt("m_RAIB.m_PairDeviceNetIdHigh");
431
433 }
434
435 override bool IsKit()
436 {
437 return false;
438 }
439
441 {
442 super.OnVariablesSynchronized();
443
445 {
446 m_RAIB.OnVariableSynchronized();
447 }
448
450 }
451
453 {
455
457 {
459 }
460 }
461
463 {
465 }
466
468 {
470
472 {
474 {
476
477 return;
478 }
479 }
480
482 }
483
485 {
487 }
488
490 {
493 }
494
496 {
498 {
499 if (
m_RAIB.IsPaired() && !IsRuined())
500 {
503 {
504 device.OnActivatedByItem(
this);
505 }
506 }
507 }
508 }
509
511 {
513 }
514
516 {
518 }
519
521 {
522 return m_RAIB.GetPairDevice();
523 }
524
526 {
527 string type = "RemoteDetonatorTrigger";
531 {
534 {
536 {
540 }
541 else
542 {
545 }
546
547
549 }
550 else
552
554 if (
player.GetItemInHands())
555 player.GetItemAccessor().OnItemInHandsChanged();
556 }
557
559 }
560
562 {
564 {
566 {
568 }
569 }
570 }
571
573 {
575
577
581 }
582
583#ifdef DIAG_DEVELOPER
585 {
591 }
592#endif
593}
594
596{
598 {
600 }
601
602 override bool IsKit()
603 {
604 return false;
605 }
606
608 {
610 }
611
613 {
615
617 }
618
620 {
622
625 }
626}
627
629{
631 {
633
635 }
636}
637
639{
641
643 {
645 }
646
648 {
650
653 {
654 ExplosivesBase
explosive = ExplosivesBase.Cast(m_PairDevice);
656 {
659 {
665 }
666 }
667 }
668 }
669
671 {
672 ExplosivesBase
explosive = ExplosivesBase.Cast(m_PairDevice);
674 {
677 }
678 }
679}
680
682{
684 {
686
689 {
690 if (
detonator.GetRemotelyActivatedItemBehaviour())
691 {
692 ExplosivesBase
explosive = ExplosivesBase.Cast(
detonator.GetRemotelyActivatedItemBehaviour().GetPairDevice());
694 {
696 }
697 }
698 }
699 }
700
702 {
704
707 {
708 if (
detonator.GetRemotelyActivatedItemBehaviour())
709 {
710 ExplosivesBase
explosive = ExplosivesBase.Cast(
detonator.GetRemotelyActivatedItemBehaviour().GetPairDevice());
712 {
714 }
715 }
716 }
717 }
718}
ActionAttachExplosivesTriggerCB ActionContinuousBaseCB ActionAttachExplosivesTrigger()
Definition ActionAttachExplosivesTrigger.c:11
ActionDisarmExplosiveWithRemoteDetonatorCB ActionDisarmExplosiveCB ActionDisarmExplosiveWithRemoteDetonator()
Definition ActionDisarmExplosiveWithRemoteDetonator.c:11
ActionDisarmExplosiveWithRemoteDetonatorUnpairedCB ActionDisarmExplosiveCB ActionDisarmExplosiveWithRemoteDetonatorUnpaired()
Definition ActionDisarmExplosiveWithRemoteDetonatorUnpaired.c:11
override void OnSuccess(EntityAI new_item)
Definition ActionRestrainTarget.c:221
void AddAction(typename actionName)
Definition AdvancedCommunication.c:220
void RemoveAction(typename actionName)
Definition AdvancedCommunication.c:252
void SetActions()
Definition AdvancedCommunication.c:213
override void EEKilled(Object killer)
Definition ExplosivesBase.c:93
const string COLOR_LED_OFF
Definition Land_Underground_Panel.c:21
void UpdateLED(string selection, string color)
Definition Land_Underground_Panel.c:331
string GetDebugText()
Definition ModifierBase.c:71
RemoteDetonatorTrigger RemoteDetonator RemoteDetonatorReceiver()
Definition RemoteDetonator.c:227
bool IsKit()
Definition RemoteDetonator.c:15
ERemoteDetonatorLEDState m_LastLEDState
Definition RemoteDetonator.c:13
override void OnAbort()
Definition RemoteDetonator.c:300
const string COLOR_LED_LIT
Definition RemoteDetonator.c:10
override void OnWasDetached(EntityAI parent, int slot_id)
Definition RemoteDetonator.c:237
const string SELECTION_NAME_LED
Definition RemoteDetonator.c:11
ReplaceDetonatorItemLambda ReplaceItemWithNewLambdaBase SetPairDevice(EntityAI device)
Definition RemoteDetonator.c:272
class JsonUndergroundAreaTriggerData GetPosition
Definition UndergroundAreaLoader.c:9
Definition ActionAttachOnTrap.c:2
Definition ActionTriggerRemotely.c:2
Definition BarbedBaseballBat.c:2
InventoryLocation.
Definition InventoryLocation.c:29
Definition InventoryItem.c:731
Definition ObjectTyped.c:2
Definition PlayerBaseClient.c:2
Definition RemoteDetonator.c:47
override void OnCEUpdate()
Definition RemoteDetonator.c:97
override bool IsKit()
Definition RemoteDetonator.c:65
const string ANIM_PHASE_TRIGGER
Definition RemoteDetonator.c:48
override RemotelyActivatedItemBehaviour GetRemotelyActivatedItemBehaviour()
Definition RemoteDetonator.c:92
override void PairRemote(notnull EntityAI trigger)
Definition RemoteDetonator.c:114
void SetControlledDevice(EntityAI pDevice)
Definition RemoteDetonator.c:140
EntityAI GetControlledDevice()
Definition RemoteDetonator.c:150
override void UnpairRemote()
Definition RemoteDetonator.c:119
override void EEItemLocationChanged(notnull InventoryLocation oldLoc, notnull InventoryLocation newLoc)
Definition RemoteDetonator.c:82
bool IsConnected()
Definition RemoteDetonator.c:145
static RemoteDetonatorTrigger SpawnInPlayerHands(notnull EntityAI pEntity, EntityAI deviceToPair=null)
Definition RemoteDetonator.c:155
override void OnActivatedByItem(notnull ItemBase item)
Definition RemoteDetonator.c:125
void RemoteDetonatorTrigger()
Definition RemoteDetonator.c:53
ref RemotelyActivatedItemBehaviour m_RAIB
Definition RemoteDetonator.c:51
override void OnVariablesSynchronized()
Definition RemoteDetonator.c:70
bool m_LED
Definition RemoteDetonator.c:50
override void OnAnimationPhaseStarted(string animSource, float phase)
Definition RemoteDetonator.c:191
override void SetActions()
Definition RemoteDetonator.c:202
Definition RemotelyActivatedItemBehaviour.c:2
override void CopyOldPropertiesToNew(notnull EntityAI old_item, EntityAI new_item)
Definition RemoteDetonator.c:260
Definition RemoteDetonator.c:312
override void OnSuccess(EntityAI new_item)
Definition RemoteDetonator.c:313
override void OnAbort()
Definition RemoteDetonator.c:331
base class for transformation operations (creating one item from another)
Definition ReplaceItemWithNewLambdaBase.c:5
EntityAI m_OldItem
Definition ReplaceItemWithNewLambdaBase.c:6
Definition ActionConstants.c:106
const float EXPLOSIVE_REMOTE_ACTIVATION
Definition ActionConstants.c:114
Definition EnConvert.c:106
static proto native float DistanceSq(vector v1, vector v2)
Returns the square distance between tips of two 3D vectors.
proto native CGame GetGame()
static proto float SqrFloat(float f)
Returns squared value.