public override void AlwaysStart() { UniRx.IObservable <PerkUnlockedInfo> observable = Observable.Never <PerkUnlockedInfo>(); foreach (HeroRunner item in Singleton <HeroTeamRunner> .Instance.Companions()) { observable = observable.Merge(item.PerkUnlockTriggered); } observable.TakeWhile((PerkUnlockedInfo _) => this != null).Subscribe(delegate(PerkUnlockedInfo perk) { ShowPerkUnlock(perk.HeroIndex, perk.PerkIndex); }).AddTo(this); }