KCP gameserver with packet dispatch, scene streaming, combat, gacha and the shop, plus a small HTTP server for the login flow and the wish history page. Game data under assets is pulled out of the client instead of being typed by hand. The excel tables come from the packed bin container and the spawn points from the compiled scene scripts.
30 lines
1.1 KiB
C#
30 lines
1.1 KiB
C#
namespace Yuanshen.Kcp
|
|
{
|
|
/// <summary>
|
|
/// Options for customized keep-alive functionality.
|
|
/// </summary>
|
|
public sealed class KcpKeepAliveOptions
|
|
{
|
|
/// <summary>
|
|
/// Create an instance of option object for customized keep-alive functionality.
|
|
/// </summary>
|
|
/// <param name="sendInterval">The minimum interval in milliseconds between sending keep-alive messages.</param>
|
|
/// <param name="gracePeriod">When no packets are received during this period (in milliseconds), the transport is considered to be closed.</param>
|
|
public KcpKeepAliveOptions(int sendInterval, int gracePeriod)
|
|
{
|
|
if (sendInterval <= 0)
|
|
{
|
|
throw new ArgumentOutOfRangeException(nameof(sendInterval));
|
|
}
|
|
if (gracePeriod <= 0)
|
|
{
|
|
throw new ArgumentOutOfRangeException(nameof(gracePeriod));
|
|
}
|
|
SendInterval = sendInterval;
|
|
GracePeriod = gracePeriod;
|
|
}
|
|
|
|
internal int SendInterval { get; }
|
|
internal int GracePeriod { get; }
|
|
}
|
|
}
|