Removed second FilterStringKeyValue method and improved first

Second method was non-functional due to access modifier inconsistency, added IsNullOrEmpty and MaxLobbyKeyLength check to first method, added MaxLobbyKeyLength (and backing field) to SteamMAtchmaking, taken from https://partner.steamgames.com/doc/api/ISteamMatchmaking#constants
This commit is contained in:
thesupersoup 2019-06-23 22:12:21 -07:00
parent 6a0a46f495
commit 645e7bd91e
2 changed files with 16 additions and 14 deletions

View File

@ -12,6 +12,14 @@ namespace Steamworks
/// </summary>
public static class SteamMatchmaking
{
internal const int k_nMaxLobbyKeyLength = 255;
/// <summary>
/// Maximum number of characters a lobby metadata key can be
/// </summary>
public static int MaxLobbyKeyLength { get { return k_nMaxLobbyKeyLength; } }
static ISteamMatchmaking _internal;
internal static ISteamMatchmaking Internal

View File

@ -51,21 +51,14 @@ namespace Steamworks.Data
/// </summary>
public LobbyQuery FilterStringKeyValue( string nKey, string nValue )
{
stringFilter = new MatchMakingKeyValuePair_t
if ( !string.IsNullOrEmpty(nKey) && nKey.Length <= SteamMatchmaking.MaxLobbyKeyLength )
{
Key = nKey,
Value = nValue
};
return this;
}
/// <summary>
/// Filter by specified key/value pair; MatchMakingKeyValuePair_t parameter
/// </summary>
public LobbyQuery FilterStringKeyValue( MatchMakingKeyValuePair_t kv )
{
stringFilter = kv;
stringFilter = new MatchMakingKeyValuePair_t
{
Key = nKey,
Value = nValue
};
}
return this;
}
@ -99,6 +92,7 @@ namespace Steamworks.Data
#endregion
void ApplyFilters()
{
if ( distance.HasValue )