您的位置:首页 > 游戏攻略 > Scrap Mechanic如何制作数字时钟

Scrap Mechanic如何制作数字时钟

作者:互联网  时间: 2026-06-17 13:53:00  

在Scrap Mechanic中需通过手动校准初始值+1.00秒脉冲累加计数器(Max 86400、Wrap Around)模拟时间,再经除法与取模拆分小时分钟的十位个位,最后驱动七段数码管或文本显示器显示,全程依赖精度设置与同步连线。

在Scrap Mechanic中制作一个能实时显示当前系统时间的数字时钟,需绕过游戏原生不支持“获取本地时间”的限制,转而用玩家手动校准+计时器累加的方式模拟真实时间流,同时借助七段数码管或文本显示器实现数字可视化输出。

搭建基础计时核心:高精度秒级累加器

第一步:放置一个【脉冲发生器】→右键设置为“Pulse”模式→周期设为1.00秒(必须精确到小数点后两位,否则每小时误差将超30秒)→输出端连至【计数器】的Clock输入口。

第二步:右键点击计数器→Edit→将“Max Count”设为86400(即24小时总秒数),勾选“Wrap Around”;此时计数器每满一天自动归零,避免整数溢出锁死逻辑。

第三步:把计数器的Output输出口连到【除法器】的A端,B端固定填入60→除法器输出即为当前“分钟数”;再将同一计数器Output连到另一个除法器A端,B端填3600→输出即为“小时数”。【两个除法器必须共用同一个计数器Output,不可分别接独立计数器,否则三者数值不同步】

这一步操作起来很简单,直接把线拖过去就行。但若除法器B端输错数字,比如把3600写成360,小时值会变成实际的10倍,整个时钟就彻底跑飞。

生成可读数字:拆解十位与个位

方法一:用【取模运算器】提取个位数
将“分钟数”输出接入取模运算器A端,B端填10→输出即为分钟个位;再将该分钟数接入【除法器】A端,B端填10→输出即为分钟十位。

方法二:用【比较器】+【开关】组合硬编码(适合只显示固定范围)
例如判断小时是否≥10:将小时输出接入比较器A端,B端填10,当真时触发开关输出1(表示十位为1),否则输出0;再用另一组比较器判断是否≥20,输出叠加——但此法最多支持23小时,且扩展性差,不推荐主用。

注意:取模运算器对负数结果异常,务必确保输入始终为非负整数——计数器已设Wrap Around,这点有保障。

驱动数码管或文本屏显示

第一步:若使用七段数码管(Seven Segment Display),需将每个数字位(小时十位、小时个位、分钟十位、分钟个位)分别接入对应数码管的0~9输入端口。例如小时十位输出值为1,就激活数码管的“1”段信号线;值为0则激活“0”段。每块数码管只能显示一位,四位时间需四块并排摆放。

第二步:若使用【文本显示器】(Text Display),更简洁:将其Input口接入一个【字符串拼接器】,拼接顺序为“小时十位 + 小时个位 + ‘:’ + 分钟十位 + 分钟个位”;字符串拼接器各输入端分别接对应数字位的输出(数字需先经【数字转字符串】模块转换)。

第三步:右键文本显示器→Edit→字体大小调至48,启用“Auto Resize”并勾选“Center Text”,避免数字贴边裁切。

手动校准初始时间

步骤一:启动前,先记下你电脑系统当前真实时间(如12:08)→换算成秒数:12×3600+8×60=43680秒。

步骤二:右键计数器→Edit→找到“Initial Value”字段→手动填入43680→关闭编辑面板。

步骤三:通电运行,观察首屏显示是否为“12:08”。若偏差1秒,说明脉冲发生器周期未严格设为1.00秒;若偏差整分钟,大概率是Initial Value算错或未生效。

这一步不能跳过,也没有自动同步机制——Scrap Mechanic没有访问操作系统时间的API,所有“当前时间”都源于你手输的那个初始值和后续精准累加。

最新游戏

更多

Copyright©2010-2019. All rights reserved | 波波三国游戏官网|[email protected]

备案编号:湘ICP备2022015115号-4