public unsafe static bool GetSessionState(ulong remoteUser, ref P2PSessionState state) { // ISteamNetworking* remoteUser2 = Peer2Peer.GetSteamNetworking(); // CSteamID cSteamID = remoteUser; // P2PSessionState_t nativeState; // bool result = calli(System.Byte modopt(System.Runtime.CompilerServices.CompilerMarshalOverride) modopt(System.Runtime.CompilerServices.CallConvCdecl)(System.IntPtr,CSteamID,P2PSessionState_t*), remoteUser2, cSteamID, ref nativeState, *(*(long*)remoteUser2 + 48L)); // state.BytesQueuedForSend = *(ref nativeState + 4); // byte connecting = (*(ref nativeState + 1) != 0) ? 1 : 0; // state.Connecting = (connecting != 0); // byte connectionActive = (nativeState != 0) ? 1 : 0; // state.ConnectionActive = (connectionActive != 0); // state.LastSessionError = (P2PSessionErrorEnum)(*(ref nativeState + 2)); // state.PacketsQueuedForSend = *(ref nativeState + 8); // state.RemoteIP = (uint)(*(ref nativeState + 12)); // state.RemotePort = *(ref nativeState + 16); // byte state2 = (*(ref nativeState + 3) != 0) ? 1 : 0; // state.UsingRelay = (state2 != 0); // return result; return(false); }
public unsafe static bool GetSessionState(ulong remoteUser, ref P2PSessionState state) { // ISteamNetworking* remoteUser2 = Peer2Peer.GetSteamNetworking(); // CSteamID cSteamID = remoteUser; // P2PSessionState_t nativeState; // bool result = calli(System.Byte modopt(System.Runtime.CompilerServices.CompilerMarshalOverride) modopt(System.Runtime.CompilerServices.CallConvCdecl)(System.IntPtr,CSteamID,P2PSessionState_t*), remoteUser2, cSteamID, ref nativeState, *(*(long*)remoteUser2 + 48L)); // state.BytesQueuedForSend = *(ref nativeState + 4); // byte connecting = (*(ref nativeState + 1) != 0) ? 1 : 0; // state.Connecting = (connecting != 0); // byte connectionActive = (nativeState != 0) ? 1 : 0; // state.ConnectionActive = (connectionActive != 0); // state.LastSessionError = (P2PSessionErrorEnum)(*(ref nativeState + 2)); // state.PacketsQueuedForSend = *(ref nativeState + 8); // state.RemoteIP = (uint)(*(ref nativeState + 12)); // state.RemotePort = *(ref nativeState + 16); // byte state2 = (*(ref nativeState + 3) != 0) ? 1 : 0; // state.UsingRelay = (state2 != 0); // return result; return false; }