/// <summary>
        /// Test key, initialize numerical filter list if necessary, then add new numerical filter
        /// </summary>
        public void AddNumericalFilter(string key, int value, LobbyComparison compare)
        {
            if (string.IsNullOrEmpty(key))
            {
                throw new System.ArgumentException("Key string provided for LobbyQuery filter is null or empty", nameof(key));
            }

            if (key.Length > SteamMatchmaking.MaxLobbyKeyLength)
            {
                throw new System.ArgumentException($"Key length is longer than {SteamMatchmaking.MaxLobbyKeyLength}", nameof(key));
            }

            if (this.numericalFilters == null)
            {
                this.numericalFilters = new List <NumericalFilter>();
            }

            this.numericalFilters.Add(new NumericalFilter(key, value, compare));
        }
Example #2
0
 // void
 public void AddRequestLobbyListNumericalFilter(string pchKeyToMatch /*const char **/, int nValueToMatch /*int*/, LobbyComparison eComparisonType /*ELobbyComparison*/)
 {
     platform.ISteamMatchmaking_AddRequestLobbyListNumericalFilter(pchKeyToMatch, nValueToMatch, eComparisonType);
 }
Example #3
0
 // void
 public void AddRequestLobbyListStringFilter(string pchKeyToMatch /*const char **/, string pchValueToMatch /*const char **/, LobbyComparison eComparisonType /*ELobbyComparison*/)
 {
     platform.ISteamMatchmaking_AddRequestLobbyListStringFilter(pchKeyToMatch, pchValueToMatch, eComparisonType);
 }
 private static extern void _AddRequestLobbyListNumericalFilter(IntPtr self, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8StringToNative))] string pchKeyToMatch, int nValueToMatch, LobbyComparison eComparisonType);
 internal void AddRequestLobbyListNumericalFilter([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8StringToNative))] string pchKeyToMatch, int nValueToMatch, LobbyComparison eComparisonType)
 {
     _AddRequestLobbyListNumericalFilter(Self, pchKeyToMatch, nValueToMatch, eComparisonType);
 }
 public void AddRequestLobbyListNumericalFilter(string keyToMatch, int valueToMatch, LobbyComparison comparisonType)
 {
     CheckIfUsable();
     NativeMethods.MatchMaking_AddRequestLobbyListNumericalFilter(keyToMatch, valueToMatch, (int)comparisonType);
 }
Example #7
0
 internal NumericalFilter(string k, int v, LobbyComparison c)
 {
     Key      = k;
     Value    = v;
     Comparer = c;
 }
 internal void AddRequestLobbyListStringFilter(string pchKeyToMatch, string pchValueToMatch, LobbyComparison eComparisonType)
 {
     _AddRequestLobbyListStringFilter(Self, pchKeyToMatch, pchValueToMatch, eComparisonType);
 }
 internal void AddRequestLobbyListNumericalFilter(string pchKeyToMatch, int nValueToMatch, LobbyComparison eComparisonType)
 {
     _AddRequestLobbyListNumericalFilter(Self, pchKeyToMatch, nValueToMatch, eComparisonType);
 }
Example #10
0
 public NumericalFilter(string k, int v, LobbyComparison c)
 {
     this.Key      = k;
     this.Value    = v;
     this.Comparer = c;
 }
Example #11
0
 public void AddRequestLobbyListStringFilter([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8StringToNative))] string pchKeyToMatch, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8StringToNative))] string pchValueToMatch, LobbyComparison eComparisonType)
 {
     _AddRequestLobbyListStringFilter(Self, pchKeyToMatch, pchValueToMatch, eComparisonType);
 }
 public void AddRequestLobbyListNumericalFilter(string keyToMatch, int valueToMatch, LobbyComparison comparisonType)
 {
     CheckIfUsable();
     NativeMethods.MatchMaking_AddRequestLobbyListNumericalFilter(keyToMatch, valueToMatch, (int)comparisonType);
 }
        // public unsafe static void AddRequestLobbyListStringFilter(string keyToMatch, string valueToMatch, LobbyComparison comparisonType)
        // {
        //     byte[] keyPtr_11_cp_0 = Encoding.UTF8.GetBytes(keyToMatch);
        //     int keyPtr_11_cp_1 = 0;
        //     byte[] valuePtr_23_cp_0 = Encoding.UTF8.GetBytes(valueToMatch);
        //     int valuePtr_23_cp_1 = 0;
        //     ISteamMatchmaking* keyToMatch2 = <Module>.SteamMatchmaking();
        //     calli(System.Void modopt(System.Runtime.CompilerServices.CallConvCdecl)(System.IntPtr,System.SByte modopt(System.Runtime.CompilerServices.IsSignUnspecifiedByte) modopt(System.Runtime.CompilerServices.IsConst)*,System.SByte modopt(System.Runtime.CompilerServices.IsSignUnspecifiedByte) modopt(System.Runtime.CompilerServices.IsConst)*,ELobbyComparison), keyToMatch2, ref keyPtr_11_cp_0[keyPtr_11_cp_1], ref valuePtr_23_cp_0[valuePtr_23_cp_1], comparisonType, *(*(long*)keyToMatch2 + 40L));
        // }

         public unsafe static void AddRequestLobbyListNumericalFilter(string keyToMatch, int valueToMatch, LobbyComparison comparisonType)
         {
             // TODO [vicent] current stub implementation
             return;
        //     byte[] keyPtr_11_cp_0 = Encoding.UTF8.GetBytes(keyToMatch);
        //     int keyPtr_11_cp_1 = 0;
        //     ISteamMatchmaking* keyToMatch2 = <Module>.SteamMatchmaking();
        //     calli(System.Void modopt(System.Runtime.CompilerServices.CallConvCdecl)(System.IntPtr,System.SByte modopt(System.Runtime.CompilerServices.IsSignUnspecifiedByte) modopt(System.Runtime.CompilerServices.IsConst)*,System.Int32,ELobbyComparison), keyToMatch2, ref keyPtr_11_cp_0[keyPtr_11_cp_1], valueToMatch, comparisonType, *(*(long*)keyToMatch2 + 48L));
         }
Example #14
0
        // public unsafe static void AddRequestLobbyListStringFilter(string keyToMatch, string valueToMatch, LobbyComparison comparisonType)
        // {
        //     byte[] keyPtr_11_cp_0 = Encoding.UTF8.GetBytes(keyToMatch);
        //     int keyPtr_11_cp_1 = 0;
        //     byte[] valuePtr_23_cp_0 = Encoding.UTF8.GetBytes(valueToMatch);
        //     int valuePtr_23_cp_1 = 0;
        //     ISteamMatchmaking* keyToMatch2 = <Module>.SteamMatchmaking();
        //     calli(System.Void modopt(System.Runtime.CompilerServices.CallConvCdecl)(System.IntPtr,System.SByte modopt(System.Runtime.CompilerServices.IsSignUnspecifiedByte) modopt(System.Runtime.CompilerServices.IsConst)*,System.SByte modopt(System.Runtime.CompilerServices.IsSignUnspecifiedByte) modopt(System.Runtime.CompilerServices.IsConst)*,ELobbyComparison), keyToMatch2, ref keyPtr_11_cp_0[keyPtr_11_cp_1], ref valuePtr_23_cp_0[valuePtr_23_cp_1], comparisonType, *(*(long*)keyToMatch2 + 40L));
        // }

        public unsafe static void AddRequestLobbyListNumericalFilter(string keyToMatch, int valueToMatch, LobbyComparison comparisonType)
        {
            // TODO [vicent] current stub implementation
            return;
            //     byte[] keyPtr_11_cp_0 = Encoding.UTF8.GetBytes(keyToMatch);
            //     int keyPtr_11_cp_1 = 0;
            //     ISteamMatchmaking* keyToMatch2 = <Module>.SteamMatchmaking();
            //     calli(System.Void modopt(System.Runtime.CompilerServices.CallConvCdecl)(System.IntPtr,System.SByte modopt(System.Runtime.CompilerServices.IsSignUnspecifiedByte) modopt(System.Runtime.CompilerServices.IsConst)*,System.Int32,ELobbyComparison), keyToMatch2, ref keyPtr_11_cp_0[keyPtr_11_cp_1], valueToMatch, comparisonType, *(*(long*)keyToMatch2 + 48L));
        }