public static void ChangeFrequency( int oldFrequency, int newFrequency, IRFObject obj, bool isListener, bool isOn = true) { newFrequency = RFManager.ClampFrequency(newFrequency); if (isListener) { RFManager.RemoveListener(oldFrequency, obj); if (!isOn) { return; } RFManager.AddListener(newFrequency, obj); } else { RFManager.RemoveBroadcaster(oldFrequency, obj); if (!isOn) { return; } RFManager.AddBroadcaster(newFrequency, obj); } }
internal void InternalSetPressed(bool pressed) { base.SetFlag(BaseEntity.Flags.On, pressed, false, true); if (pressed) { RFManager.AddBroadcaster(this.frequency, this); return; } RFManager.RemoveBroadcaster(this.frequency, this); }
internal void InternalSetPressed(bool pressed) { this.SetFlag(BaseEntity.Flags.On, pressed, false, true); if (pressed) { RFManager.AddBroadcaster(this.frequency, (IRFObject)this); } else { RFManager.RemoveBroadcaster(this.frequency, (IRFObject)this); } }
public override void IOStateChanged(int inputAmount, int inputSlot) { if (inputAmount <= 0) { base.Invoke(new Action(this.StopBroadcasting), Mathf.Clamp01(this.nextStopTime - UnityEngine.Time.time)); return; } base.CancelInvoke(new Action(this.StopBroadcasting)); RFManager.AddBroadcaster(this.frequency, this); base.SetFlag(BaseEntity.Flags.Reserved3, true, false, true); this.nextStopTime = UnityEngine.Time.time + 1f; }
internal void InternalSetPressed(bool pressed) { SetFlag(Flags.On, pressed); if (pressed) { RFManager.AddBroadcaster(frequency, this); } else { RFManager.RemoveBroadcaster(frequency, this); } }
public override void IOStateChanged(int inputAmount, int inputSlot) { if (inputAmount > 0) { this.CancelInvoke(new Action(this.StopBroadcasting)); RFManager.AddBroadcaster(this.frequency, (IRFObject)this); this.SetFlag(BaseEntity.Flags.Reserved3, true, false, true); this.nextStopTime = Time.get_time() + 1f; } else { this.Invoke(new Action(this.StopBroadcasting), Mathf.Clamp01(this.nextStopTime - Time.get_time())); } }