mirror of
https://github.com/chylex/Minecraft-Phantom-Panel.git
synced 2026-04-21 07:05:57 +02:00
21 lines
773 B
C#
21 lines
773 B
C#
using MemoryPack;
|
|
|
|
namespace Phantom.Common.Data.Agent.Instance.Backups;
|
|
|
|
[MemoryPackable]
|
|
[MemoryPackUnion(tag: 0, type: typeof(InstancePlayerCountDetectionStrategy.MinecraftStatusProtocol))]
|
|
public partial interface IInstancePlayerCountDetectionStrategy {
|
|
IInstancePlayerCountDetector CreateDetector(IInstancePlayerCountDetectorFactory factory);
|
|
}
|
|
|
|
public static partial class InstancePlayerCountDetectionStrategy {
|
|
[MemoryPackable(GenerateType.VersionTolerant)]
|
|
public sealed partial record MinecraftStatusProtocol(
|
|
[property: MemoryPackOrder(0)] ushort Port
|
|
) : IInstancePlayerCountDetectionStrategy {
|
|
public IInstancePlayerCountDetector CreateDetector(IInstancePlayerCountDetectorFactory factory) {
|
|
return factory.MinecraftStatusProtocol(Port);
|
|
}
|
|
}
|
|
}
|