找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 196|回复: 4

[教程] GMS083 技能 Buff 倒计时

[复制链接]

33

主题

11

回帖

98

积分

管理员

积分
98
发表于 2025-3-13 01:11:37 | 显示全部楼层 |阅读模式

本教程分两部分,原理部分可以直接阅读,只要读懂了自己动动手就可以实现了,蘑菇币部分会放出具体的代码以及相关的图片资源。

首先,这个并不是使用原生的方法直接在客户端画出数字,而是借用了一点小技巧实现的。

我们在浏览 wz 资源的时候可以知道右上角的技能冷却时间的阴影并不是用API绘制的一个阴影图层而是直接拿图片盖在上面的。

这些阴影图片的位置位于 UI/UIWindow.img/Skill/CoolTime

你可以通过 StringPool 很容易查找到这个字符串的 StringPool ID 然后用 IDA 在客户端中定位到相关代码

简单读一下伪代码加上阴影图片总共就15张,再加上客户端实际的效果,基于这三点我们可以很容易猜出客户端的逻辑就是:通过计算剩余时间来获得实际的阴影图片路径,然后贴在 buff 上。

那么我们可以获取的信息有两点
  • 计算剩余时间 这一段我们可以串改,按我们的需要来计算
  • 我们可以篡改 StringPool 的返回值来篡改图片路径

那我们只需要自己创建 60 张阴影图片,给每张图片加上 1~60 的数字表示倒计时的1~60秒,然后基于上述两点对客户端进行修改就可以实现 buff 的倒计时效果了,下面是效果图

[attach]51[/attach]

我这是让群友用 AI 帮我画的 120 张图,当时间大于 1 分钟时,会在左下角显示分钟倒计时,此时无阴影,当时间进入 60 秒倒计时的时候,时间会显示在中间,并附带阴影效果。

购买主题 本主题需向作者支付 30 蘑菇币 才能浏览
我尽可能地不设置回复可见,希望让跟帖更有质量,有问题欢迎跟帖提问。

4

主题

12

回帖

109

积分

注册会员

积分
109
发表于 2025-3-13 12:39:02 | 显示全部楼层
666  支持啊!

0

主题

6

回帖

36

积分

新手上路

积分
36
发表于 2025-3-13 22:20:18 | 显示全部楼层
攒积分学习

0

主题

4

回帖

6

积分

新手上路

积分
6
发表于 2025-3-22 02:04:48 | 显示全部楼层
太强了。

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 7 天前 | 显示全部楼层
66666666666666
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|蘑菇物语

GMT+8, 2025-4-19 12:43 , Processed in 0.055182 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表