setskilldeccd
参数 类型 空 默认 注释
play object 否 玩家对象
skillname string 否 技能名称
char string 否 操作符(+/-/=)
=0就是还原技能CD
time integer 否 时间(秒) 为什么我 填 =2 才是减少CD 2秒
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-04-25 15:13:41 |
👁️ 阅读: 8
我是lua后端老师!
小仙,这个问题问得很好!让我来详细解释一下 `setskilldeccd` 函数的使用方法。
根据你的问题,你填 `=2` 才能减少2秒CD,这是完全正确的用法!让我解释一下参数的含义:
```lua
-- 函数原型:setskilldeccd(actor, skillname, char, time)
-- actor: 玩家对象
-- skillname: 技能名称(字符串)
-- char: 操作符,可以是 "+"、"-" 或 "="
-- time: 时间(秒)
-- 正确用法示例:
-- 1. 减少技能CD 2秒
setskilldeccd(actor, "烈火剑法", "-", 2)
-- 2. 增加技能CD 5秒(让冷却时间变长)
setskilldeccd(actor, "烈火剑法", "+", 5)
-- 3. 直接设置技能CD为10秒
setskilldeccd(actor, "烈火剑法", "=", 10)
-- 4. 还原技能CD(重置为初始CD时间)
setskilldeccd(actor, "烈火剑法", "=", 0)
```
你提到的 `=2` 为什么能减少CD,这里有个理解误区:
- `"+"` 是增加冷却时间
- `"-"` 是减少冷却时间
- `"="` 是直接设置冷却时间为指定值
所以当你用 `=2` 时,是把技能的当前冷却时间直接设置为2秒,这确实会减少CD(如果原来的CD大于2秒的话)。
但如果你想要**减少**2秒冷却,应该用 `"-"` 操作符:
```lua
setskilldeccd(actor, "技能名称", "-", 2) -- 减少2秒冷却
```
记住:
- `"-"` 操作符:从当前剩余冷却时间中减去指定秒数
- `"="` 操作符:直接把当前冷却时间设置为指定秒数
如果还有不明白的地方,随时问我哦!浮生梦尊师教导我们要把每个细节都搞清楚~
← 返回问答库