public void RequestCurrentAchievements(OnUserStatsReceived onUserStatsReceived, IEnumerable <string> requestedAchievements) { this._requestedAchievements = requestedAchievements; this._onUserStatsReceived = onUserStatsReceived; if (this._internalOnUserStatsReceived == null) { this._internalOnUserStatsReceived = new OnUserStatsReceivedFromSteam(this.OnUserStatsReceivedCallback); } if (this._gameserverStats != IntPtr.Zero) { CommunityExpress.Instance.AddGameServerUserStatsReceivedCallback(Achievements.SteamUnityAPI_SteamGameServerStats_RequestUserStats(this._gameserverStats, this._id.ToUInt64()), new OnUserStatsReceivedFromSteam(this.OnUserStatsReceivedCallback)); } else { Achievements.SteamUnityAPI_SteamUserStats_RequestCurrentStats(this._stats, Marshal.GetFunctionPointerForDelegate((Delegate)this._internalOnUserStatsReceived)); } }
internal void AddGameServerUserStatsReceivedCallback(ulong handle, OnUserStatsReceivedFromSteam callback) { this._gameserverUserStatsReceivedCallHandles.Add(handle); this._gameserverUserStatsReceivedCallbacks.Add(callback); }