• 注册后才能下载/购买插件!快来注册吧,注册即可免费下载 精翻插件 !【点我注册
  • RustSB.COM 三周年活动现已开始!
    全站插件8折折扣,入手插件的最佳时机!错过再等一年!
    活动期间 累计实付 每满 1000 元,即送【Rust腐蚀 · 幸存这十年】主题桌垫 ×1!
  • RustSB.COM向广大野生Rust插件作者发出入驻邀请!详情请见[原创作者条约]
【XMTimeAdjuster·时间系统】

原创 【XMTimeAdjuster·时间系统】 1.0.0

需要插件(必装)

插件概述​

允许玩家通过一个钟表 UI 自由调整个人可见的游戏时间,不影响服务器全局时间和其他玩家。
同时作为 API 插件,供其他需要判断玩家当前时间的插件调用。
  • 所需权限xmtimeadjuster.use
  • 打开指令/shijian

UI 操作说明​

打开后显示一个钟表面板,包含以下区域:

时钟表盘​

区域内容操作
外圈(蓝色高亮)24个小时按钮,0–23点击选择小时
内圈(绿色高亮)12个分钟按钮,00/05/10…55点击选择分钟(5分间隔)
黄色指针时针随选择自动旋转
绿色指针分针随选择自动旋转

精细分钟调整​

表盘下方的 ◄ -1分 / +1分 ► 按钮可以逐分微调,超过 59 分自动进/退小时。

底部操作按钮​

按钮效果
✓ 确认应用将当前选择的时间应用到玩家,立即生效
↺ 重置清除自定义时间,恢复为服务器当前时间
✕ 关闭关闭面板,不保存当前选择

时间生效机制​

  • 确认后修改为玩家设置时间,但时间依然会流逝,不会固定
  • 仅修改该玩家客户端显示的时间(environment.dateTime),服务器全局时间不受影响
  • 玩家下线后自动清除设置,不持久化

与其他插件的优先级​

XMTimeAdjuster 设置的时间优先级高于 VipLogo·服务器等级XMNewbieGuide·萌新管家 等自动时间插件。
重置后(↺ 重置)API_HasCustomTime 返回 false,VipLogo 等插件恢复接管。

1778770981615

API​

C#:
// 获取玩家当前游戏小时(有自定义时间则返回自定义,否则返回服务器时间)
float hour = (float)(XMTimeAdjuster?.Call("API_GetPlayerHour", player)
             ?? TOD_Sky.Instance.Cycle.Hour);

// 获取玩家所处时段:深夜(0–6) / 上午(6–12) / 下午(12–18) / 夜晚(18–24)
string period = (string)(XMTimeAdjuster?.Call("API_GetPlayerTimePeriod", player)
                ?? GetFallbackPeriod());   // GetFallbackPeriod 由调用方自行实现

// 判断玩家是否设置了自定义时间(未设置或已重置返回 false)
bool hasCustom = (bool)(XMTimeAdjuster?.Call("API_HasCustomTime", player)
                 ?? false);

Hook​

其他插件只需在自身代码中声明同名方法即可接收通知,无需引用或 PluginReference。

OnXMTimeSet(BasePlayer player, float hour)​

玩家点击「✓ 确认应用」后触发,hour 为 0–24 的浮点数(例如 13.5 = 13:30)。
C#:
void OnXMTimeSet(BasePlayer player, float hour)
{
    Puts($"{player.displayName} 将游戏时间设为 {hour:F1}h");
}

OnXMTimeReset(BasePlayer player)​

玩家点击「↺ 重置」后触发,此时该玩家已无自定义时间(API_HasCustomTime 返回 false)。
C#:
void OnXMTimeReset(BasePlayer player)
{
    Puts($"{player.displayName} 重置了个人游戏时间");
}
作者
pandaman
下载
0
类型
数字产品
有效期
无限
价格
10.00 CNY
查看
20
文件类型
cs
文件大小
20.1 KB
文件Hash
ce0563ac3c44b38865fdb9864249e36c
首次发布
最后更新
评分
0.00 星 0评价

来自pandaman的更多资源

分享资源

标签