コード例 #1
0
        private void load(IAPIProvider api)
        {
            var req = new GetRoomScoresRequest();

            req.Success += v => { };
            req.Failure += _ => { };

            api.Queue(req);
        }
コード例 #2
0
ファイル: MatchLeaderboard.cs プロジェクト: zzzzzz-812/osu
        protected override APIRequest FetchScores(Action <IEnumerable <APIUserScoreAggregate> > scoresCallback)
        {
            if (roomId.Value == null)
            {
                return(null);
            }

            var req = new GetRoomScoresRequest(roomId.Value ?? 0);

            req.Success += r =>
            {
                scoresCallback?.Invoke(r);
                ScoresLoaded?.Invoke(r);
            };

            return(req);
        }
コード例 #3
0
ファイル: RoomInspector.cs プロジェクト: c0linw/osu
            private void updateParticipants()
            {
                var roomId = room?.RoomID.Value ?? 0;

                request?.Cancel();

                // nice little progressive fade
                int time = 500;

                foreach (var c in fill.Children)
                {
                    c.Delay(500 - time).FadeOut(time, Easing.Out);
                    time = Math.Max(20, time - 20);
                    c.Expire();
                }

                if (roomId == 0)
                {
                    return;
                }

                request          = new GetRoomScoresRequest(roomId);
                request.Success += scores =>
                {
                    if (roomId != room.RoomID.Value)
                    {
                        return;
                    }

                    fill.Clear();
                    foreach (var s in scores)
                    {
                        fill.Add(new UserTile(s.User));
                    }

                    fill.FadeInFromZero(1000, Easing.OutQuint);
                };

                api.Queue(request);
            }