private static void OnServer(IntPtr thisptr, IntPtr pvParam) { Action <GCMessageAvailable_t> action = GCMessageAvailable_t.actionServer; if (action != null) { action(GCMessageAvailable_t.Fill(pvParam)); } else { } }
public static async Task <GCMessageAvailable_t?> GetResultAsync(SteamAPICall_t handle) { GCMessageAvailable_t?nullable; bool flag = false; while (!SteamUtils.IsCallComplete(handle, out flag)) { await Task.Delay(1); if ((SteamClient.IsValid ? false : !SteamServer.IsValid)) { nullable = null; return(nullable); } } if (!flag) { IntPtr intPtr = Marshal.AllocHGlobal(GCMessageAvailable_t.StructSize); try { if (!(!SteamUtils.Internal.GetAPICallResult(handle, intPtr, GCMessageAvailable_t.StructSize, 1701, ref flag) | flag)) { nullable = new GCMessageAvailable_t?(GCMessageAvailable_t.Fill(intPtr)); } else { nullable = null; } } finally { Marshal.FreeHGlobal(intPtr); } } else { nullable = null; } return(nullable); }