示例#1
0
        public void UpdateTournamentLeaders(PlanetVO planetVO, LeaderboardController.OnUpdateData callback)
        {
            if (planetVO == null)
            {
                Service.Logger.Error("Tournament leaderboard requested without setting planetVO");
                return;
            }
            PlayerLeaderboardRequest         request         = new PlayerLeaderboardRequest(planetVO.Uid, Service.CurrentPlayer.PlayerId);
            LeaderboardList <PlayerLBEntity> leaderboardList = null;
            LeaderboardList <PlayerLBEntity> value           = null;

            this.GetPlayerLists(PlayerListType.TournamentLeaders, planetVO.Uid, out leaderboardList, out value);
            Dictionary <string, object> dictionary = new Dictionary <string, object>();

            dictionary["callback"]   = callback;
            dictionary["list"]       = leaderboardList;
            dictionary["listnearby"] = value;
            GetTournamentLeaderboardPlayersCommand getTournamentLeaderboardPlayersCommand = new GetTournamentLeaderboardPlayersCommand(request);

            getTournamentLeaderboardPlayersCommand.Context = dictionary;
            getTournamentLeaderboardPlayersCommand.AddSuccessCallback(new AbstractCommand <PlayerLeaderboardRequest, LeaderboardResponse> .OnSuccessCallback(this.OnLeadersUpdated));
            getTournamentLeaderboardPlayersCommand.AddFailureCallback(new AbstractCommand <PlayerLeaderboardRequest, LeaderboardResponse> .OnFailureCallback(this.OnLeadersUpdateFailure));
            Service.ServerAPI.Sync(getTournamentLeaderboardPlayersCommand);
            leaderboardList.LastRefreshTime = Service.ServerAPI.ServerTime;
        }
示例#2
0
        public void UpdateLeaders(PlanetVO planetVO, LeaderboardController.OnUpdateData callback)
        {
            LeaderboardList <PlayerLBEntity> leaderboardList = null;
            LeaderboardList <PlayerLBEntity> value           = null;
            string planetId = (planetVO != null) ? planetVO.Uid : null;

            this.GetPlayerLists(PlayerListType.Leaders, planetId, out leaderboardList, out value);
            PlayerLeaderboardRequest     request = new PlayerLeaderboardRequest(planetId, Service.Get <CurrentPlayer>().PlayerId);
            GetLeaderboardPlayersCommand getLeaderboardPlayersCommand = new GetLeaderboardPlayersCommand(request);
            Dictionary <string, object>  dictionary = new Dictionary <string, object>();

            dictionary["callback"]               = callback;
            dictionary["list"]                   = leaderboardList;
            dictionary["listnearby"]             = value;
            getLeaderboardPlayersCommand.Context = dictionary;
            getLeaderboardPlayersCommand.AddSuccessCallback(new AbstractCommand <PlayerLeaderboardRequest, LeaderboardResponse> .OnSuccessCallback(this.OnLeadersUpdated));
            getLeaderboardPlayersCommand.AddFailureCallback(new AbstractCommand <PlayerLeaderboardRequest, LeaderboardResponse> .OnFailureCallback(this.OnLeadersUpdateFailure));
            Service.Get <ServerAPI>().Sync(getLeaderboardPlayersCommand);
            leaderboardList.LastRefreshTime = Service.Get <ServerAPI>().ServerTime;
        }