mirror of
https://github.com/JogmansonReal/Radicade.git
synced 2026-10-25 15:09:26 -07:00
Radicade Public Code
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
using System.Text.Json;
|
||||
using RadicadeServer.RecNet.Enums.Messages;
|
||||
|
||||
namespace RadicadeServer.RecNet.Messages;
|
||||
|
||||
public sealed class RoomInviteDetails
|
||||
{
|
||||
public long InviteId { get; set; }
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public int InviteMode { get; set; }
|
||||
public long RoomInstanceId { get; set; }
|
||||
|
||||
public static long? GetInstanceId(Message message)
|
||||
{
|
||||
if (message.Type == MessageType.GameInvite)
|
||||
return long.TryParse(message.Data, out var id) && id > 0 ? id : null;
|
||||
if (message.Type != MessageType.GameInviteV2) return null;
|
||||
try
|
||||
{
|
||||
var details = JsonSerializer.Deserialize<RoomInviteDetails>(message.Data);
|
||||
return details?.RoomInstanceId > 0 ? details.RoomInstanceId : null;
|
||||
}
|
||||
catch (JsonException) { return null; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user