public FireworksParticleController(IReadOnlyList <ParticleSystem> particles, IObservable <SlotProductionStatus> status) { //当たった瞬間から1500ms以内のランダムなタイミングで花火を何個か打ち上げる status.Where(s => s == SlotProductionStatus.Winning) .SelectMany(_ => ObservableEx.RandomTiming(0, 1500, particles.Count)) .Subscribe(index => particles[index].Play()); Observable.EveryUpdate().Count(); }