找回密码
 点一下
查看: 804|回复: 3

如何判断一个技能是否在冷却中?

[复制链接]
发表于 2013-3-23 19:19:23 | 显示全部楼层 |阅读模式
做技能用啊.求帮助求教育求成全!
发表于 2013-3-23 20:14:59 | 显示全部楼层
有一个非常非常愚蠢的方法。
在触发事件时对单位放一次技能。
另一个触发内写好任意单位施放技能就设置一个布尔值为True然后对单位发布停止命令
然后在命令单位后等待1秒,如果布尔值为true则不在CD时间,如果在则在CD时间。。

BUG多多。

点评

看楼上的意思应该是无法获得真实的技能CD状态,只能用模拟了.  详情 回复 发表于 2013-3-23 21:49
回复

使用道具 举报

 楼主| 发表于 2013-3-23 21:49:09 | 显示全部楼层
asd8645123123 发表于 2013-3-23 20:14
有一个非常非常愚蠢的方法。
在触发事件时对单位放一次技能。
另一个触发内写好任意单位施放技能就设置一 ...

看楼上的意思应该是无法获得真实的技能CD状态,只能用模拟了.
回复

使用道具 举报

发表于 2013-3-24 01:44:06 | 显示全部楼层
对于英雄技能,可以利用“再训练之书”这个物品所附带的物品技能
技能的效果是重置所有的技能的等级,但是对于处于冷却状态中的技能是无效的
利用这个特性,使用之后判定所想要的技能等级是否为0,不为0那么就是处于冷却状态了
接着再将那些被重置了的技能添加回去,设置回技能等级即可

对于非英雄技能的话,可以尝试发布命令的返回值是否为TRUE,不过这个方法并不保险,如果遇上一些同样会让技能无法释放的情况(不满足释放条件、魔法不足,被沉默、眩晕等)会导致误判
或者可以在释放技能时候开启一个具有相同计时时间的计时器,需要时判定计时器的余剩时间是否为0即可得知(如果有刷新技能的效果的话可能需要做一些回避措施防止误判)。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-12-23 19:33 , Processed in 0.151249 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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