示例#1
0
 public void GetLeaderboardDataForUser(ulong leaderboardId, CSteamID userId, ISteamLeaderboardEntriesCallBack callBack)
 {
     if (!SteamManager.Initialized)
     {
         return;
     }
     if (steamLeaderboard == null)
     {
         steamLeaderboard = new SteamLeaderboardImpl();
     }
     steamLeaderboard.FindLeaderboardEntriesForUserList(leaderboardId, new CSteamID[] { userId }, callBack);
 }
示例#2
0
    /// <summary>
    /// 查询指定用户组所在的全球排名数据
    /// </summary>
    /// <param name="leaderboardId"></param>
    /// <param name="userList"></param>
    /// <param name="callBack"></param>
    public void FindLeaderboardEntriesForUserList(ulong leaderboardId, CSteamID[] userList, ISteamLeaderboardEntriesCallBack callBack)
    {
        this.mEntriesCallBack = callBack;
        SteamLeaderboard_t tempBean = new SteamLeaderboard_t
        {
            m_SteamLeaderboard = leaderboardId
        };
        CallResult <LeaderboardScoresDownloaded_t> callResult = CallResult <LeaderboardScoresDownloaded_t> .Create(OnLeaderboardScoresDownloadedForUserList);

        SteamAPICall_t handle = SteamUserStats.DownloadLeaderboardEntriesForUsers(tempBean, userList, userList.Length);

        //TODO  必须要延迟才能设置回调
        //Thread.Sleep(1000);
        callResult.Set(handle);
    }
示例#3
0
    /// <summary>
    /// 查询排行榜数据-全球
    /// </summary>
    /// <param name="leaderboardId"></param>
    /// <param name="startRange"></param>
    /// <param name="endRange"></param>
    /// <param name="type"></param>
    /// <param name="callBack"></param>
    public void FindLeaderboardEntries(ulong leaderboardId, int startRange, int endRange, ELeaderboardDataRequest type, ISteamLeaderboardEntriesCallBack callBack)
    {
        this.mEntriesCallBack = callBack;
        SteamLeaderboard_t tempBean = new SteamLeaderboard_t
        {
            m_SteamLeaderboard = leaderboardId
        };
        CallResult <LeaderboardScoresDownloaded_t> callResult = CallResult <LeaderboardScoresDownloaded_t> .Create(OnLeaderboardScoresDownloaded);

        SteamAPICall_t handle = SteamUserStats.DownloadLeaderboardEntries(tempBean, type, startRange, endRange);

        //TODO  必须要延迟才能设置回调
        //Thread.Sleep(1000);
        callResult.Set(handle);
    }
示例#4
0
 /// <summary>
 /// 查询全球排名
 /// </summary>
 /// <param name="leaderboardId"></param>
 /// <param name="startRank"></param>
 /// <param name="endRank"></param>
 public void GetLeaderboardDataForGlobal(ulong leaderboardId, int startRank, int endRank, ISteamLeaderboardEntriesCallBack callBack)
 {
     if (!SteamManager.Initialized)
     {
         return;
     }
     if (steamLeaderboard == null)
     {
         steamLeaderboard = new SteamLeaderboardImpl();
     }
     steamLeaderboard.FindLeaderboardEntries(leaderboardId, startRank, endRank, Steamworks.ELeaderboardDataRequest.k_ELeaderboardDataRequestGlobal, callBack);
 }