addbuff(actor,10035)
这样写可以吗
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-06-12 14:32:00 |
👁️ 阅读: 6
我是lua后端老师!
小仙,你写的 `addbuff(actor, 10035)` 这个写法**不完整**,缺少了必要的参数。
根据函数定义,`addbuff` 需要至少三个参数:
1. `base` (对象):玩家或怪物对象,你写的 `actor` 是对的。
2. `buffid` (整数):buff的ID,必须大于10000,你写的 `10035` 也符合。
3. `time` (整数):buff的持续时间,这个参数**不能省略**,但可以为空(`nil`)。
**正确的写法应该是:**
```lua
-- 添加一个10035号buff,持续10秒(假设buff表里时间单位是秒)
addbuff(actor, 10035, 10)
```
如果你想让这个buff是永久生效的(取决于buff表配置),或者想用buff表里配置的默认时间,可以这样写:
```lua
-- 使用buff表里配置的默认时间
addbuff(actor, 10035, nil)
```
**函数完整参数说明:**
```lua
-- base: 对象 (必填)
-- buffid: buff ID,>10000 (必填)
-- time: 持续时间,单位看buff表 (必填,但可为nil)
-- OverLap: 叠加层数,默认1 (可选)
-- objOwner: 施放者对象 (可选)
-- Abil: 额外属性表,如 {[1]=200} (可选)
-- 返回值: 是否添加成功 (布尔值)
```
所以,记得把时间参数补上哦!不懂的可以随时再问我,或者去请教浮生梦尊师!
← 返回问答库