NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/Gameplay/Debug/SROption.CheckCrossDay.cs

57 lines
1.8 KiB
C#
Raw Normal View History

2024-12-13 17:36:35 +08:00
using System;
using Framework;
using System.ComponentModel;
public partial class SROptions
{
[Category("跨天检测"), DisplayName("检查节点-小时")]
public string Hours { get; set; }
[Category("跨天检测"), DisplayName("检查节点-分钟")]
public string Minutes { get; set; }
[Category("跨天检测"), DisplayName("检查节点-秒")]
public string Seconds { get; set; }
[Category("跨天检测"), DisplayName("设置检测时间")]
public void SetCheckTime()
{
if (!int.TryParse(Hours, out var hours) || hours is < 0 or >= 24)
{
DebugUtil.LogError("GM设置检查时间单位小时错误,范围在0-23");
return;
}
if (!int.TryParse(Minutes, out var minutes) || minutes is < 0 or >= 60)
{
DebugUtil.LogError("GM设置检查时间单位分钟错误,范围在0-59");
return;
}
if (!int.TryParse(Seconds, out var seconds) || seconds is < 0 or >= 60)
{
DebugUtil.LogError("GM设置检查时间单位秒错误,范围在0-59");
return;
}
CrossDayChecker.Instance.SetCheckTime(new TimeSpan(hours, minutes, seconds));
}
[Category("跨天检测"), DisplayName("发送跨天事件")]
public void SendCrossDay()
{
EventManager.Instance.Send(EventManager.EventName.CrossDay);
}
[Category("跨天检测"), DisplayName("直接发送跨周事件")]
public void SendCrossWeek()
{
EventManager.Instance.Send(EventManager.EventName.CrossWeek);
}
[Category("跨天检测"), DisplayName("直接发送跨月事件")]
public void SendCrossMonth()
{
EventManager.Instance.Send(EventManager.EventName.CrossMonth);
}
}