public override void GetGameStats(IRpcController controller, GetGameStatsRequest request, Action <GetGameStatsResponse> done) { var builder = new GetGameStatsResponse.Builder { }; builder.AddStatsBucket(new GameStatsBucket.Builder { ActiveGames = 1, BucketMax = 100, BucketMin = 0, ActivePlayers = 1, FormingGames = 1, GamesPerHour = 100, WaitMilliseconds = 20, WaitingPlayers = 0, }); done(builder.Build()); }
public override void GetGameStats(IRpcController controller, GetGameStatsRequest request, Action<GetGameStatsResponse> done) { var response = GetGameStatsResponse.CreateBuilder() .AddStatsBucket(GameCreatorManager.GetGameStats(request).Build()) .Build(); done(response); }
public override void GetGameStats(IRpcController controller, GetGameStatsRequest request, Action<GetGameStatsResponse> done) { var builder = new GetGameStatsResponse.Builder { }; builder.AddStatsBucket(new GameStatsBucket.Builder { ActiveGames = 1, BucketMax = 100, BucketMin = 0, ActivePlayers = 1, FormingGames = 1, GamesPerHour = 100, WaitMilliseconds = 20, WaitingPlayers = 0, }); done(builder.Build()); }
public override void GetGameStats(IRpcController controller, GetGameStatsRequest request, Action<GetGameStatsResponse> done) { throw new NotImplementedException(); }
public override void GetGameStats(IRpcController controller, GetGameStatsRequest request, Action<GetGameStatsResponse> done) { ProtoOutputBuffer.Write(request.GetType(), request.ToString()); }
public override void GetGameStats(Google.ProtocolBuffers.IRpcController controller, GetGameStatsRequest request, Action <GetGameStatsResponse> done) { var response = GetGameStatsResponse.CreateBuilder(); var stats_bucket = GameStatsBucket.CreateBuilder(); stats_bucket.SetBucketMin(0) .SetBucketMax(4294967296) .SetWaitMilliseconds(1354) .SetGamesPerHour(0) .SetActiveGames(69) .SetActivePlayers(75) .SetFormingGames(0) .SetWaitingPlayers(0); response.AddStatsBucket(stats_bucket); done(response.Build()); }
public override void GetGameStats(IRpcController controller, GetGameStatsRequest request, Action <GetGameStatsResponse> done) { ProtoOutputBuffer.Write(request.GetType(), request.ToString()); }
//FIXME: MATCH_ALL_MOST_SPECIFIC not implemented /dustinconrad public static GameStatsBucket.Builder GetGameStats(GetGameStatsRequest request) { String version = String.Empty; int difficulty = 0; int currentQuest = 0; foreach (bnet.protocol.attribute.Attribute attribute in request.Filter.AttributeList) { switch (attribute.Name) { case "version": version = attribute.Value.StringValue; break; case "Game.Difficulty": difficulty = (int)attribute.Value.IntValue; break; case "Game.CurrentQuest": currentQuest = (int)attribute.Value.IntValue; break; } } Func<bool, bool, bool, bool> matchOp; switch (request.Filter.Op) { case bnet.protocol.attribute.AttributeFilter.Types.Operation.MATCH_ANY: matchOp = (bool b1, bool b2, bool b3) => b1 || b2 || b3; break; case bnet.protocol.attribute.AttributeFilter.Types.Operation.MATCH_NONE: matchOp = (bool b1, bool b2, bool b3) => !b1 && !b2 && !b3; break; case bnet.protocol.attribute.AttributeFilter.Types.Operation.MATCH_ALL: default://default to match all, fall through is on purpose matchOp = (bool b1, bool b2, bool b3) => b1 && b2 && b3; break; } uint games = 0; int players = 0; foreach(GameCreator game in GameCreators.Values) { if (game.InGame != null && !game.GameCreateParams.IsPrivate) { if (matchOp(version == game.Version, difficulty == game.GameCreateParams.Coop.DifficultyLevel, currentQuest == game.GameCreateParams.Coop.SnoQuest)) { games++; players += game.InGame.Players.Count; } } } var bucket = GameStatsBucket.CreateBuilder() .SetWaitMilliseconds(200) .SetActiveGames(games) .SetActivePlayers((uint)players) .SetFormingGames(0) .SetWaitingPlayers(0); return bucket; }
public override void GetGameStats(IRpcController controller, GetGameStatsRequest request, Action <GetGameStatsResponse> done) { throw new NotImplementedException(); }