protected void StartUpadating(string updateChannelName) { if (this.currentUpdateChannelName == updateChannelName) { return; } this.updateReceipt.Cancel(); this.currentUpdateChannelName = updateChannelName; var updateChannel = UpdateManager.Instance.GetChannel(updateChannelName); this.updateReceipt = updateChannel.RegisterCallback(this, this); }
public override void Initialize() { Bootloader.OnManagersReady += SetupUpdateChannel; this.delayedActions = new DelayedAction[this.initialCapacity]; this.count = 0; this.SetInstance(this); void SetupUpdateChannel() { var updateChannel = UpdateManager.Instance.GetChannel(ChannelName); if (updateChannel == null) { Debug.LogError($"{nameof(DelayExecuteManager)} couldn't find Update Channel \"{ChannelName}\". This manager will not work!", this); } else { this.updateReceipt = updateChannel.RegisterCallback(this, this); } } }