# Class: Buff
• Buff()
(可用的) Buff 增益
# Accessors
# associatedEvent
• get associatedEvent(): AssociatedEvent
(增益)关联的事件
# 返回值:
# buffCompositionType
• get buffCompositionType(): BuffCompositionType
(同 ID) 增益叠加方式
# 返回值:
# buffCount
• get buffCount(): number | undefined
增益影响次数
description
当且仅当该增益配置了使用次数限制时有效,未配置时为 undefined
。
# 返回值:
number | undefined
# buffEffectCompositionType
• get buffEffectCompositionType(): BuffEffectCompositionType
增益效果叠加方式
# 返回值:
# buffTime
• get buffTime(): number | undefined
增益持续时长(单位为秒)
description
当且仅当该增益配置了时常限制时有效,未配置时为 undefined
。
# 返回值:
number | undefined
# effectId
• get effectId(): number
增益对应效果 ID
# 返回值:
number
# effectValue
• get effectValue(): Long
增益效果数据
# 返回值:
Long
# id
• get id(): number
当前增益 ID
# 返回值:
number
# param1
• get param1(): number | undefined
自定义参数1
# 返回值:
number | undefined
# param2
• get param2(): number | undefined
自定义参数2
# 返回值:
number | undefined
# param3
• get param3(): number | undefined
自定义参数3
# 返回值:
number | undefined
# 事件监听
# offActiveBuffInfoChange
▸ offActiveBuffInfoChange(handler?
: ActiveBuffInfoChangeEventHandler): void
取消注册 (当前增益项目)状态信息改变 事件处理函数
example
import { buffSystem } from '@timi/mogs-sdk';
// 根据自定条件找到一个 Buff
const someBuff = buffSystem.buffs.find(buff => buff.id === 0);
if (!someBuff) {
throw new Error('someBuff not found');
}
const handler: buffSystem.ActiveBuffInfoChangeEventHandler = (event) => {};
someBuff.onActiveBuffInfoChange(handler);
// ...
someBuff.offActiveBuffInfoChange(handler);
2
3
4
5
6
7
8
9
10
11
12
13
# 参数:
属性 | 类型 |
---|---|
handler? | ActiveBuffInfoChangeEventHandler |
# 返回值:
void
# onActiveBuffInfoChange
▸ onActiveBuffInfoChange(handler
: ActiveBuffInfoChangeEventHandler): void
注册 (当前增益项目)状态信息改变 事件处理函数
example
import { buffSystem } from '@timi/mogs-sdk';
// 根据自定条件找到一个 Buff
const someBuff = buffSystem.buffs.find(buff => buff.id === 0);
if (!someBuff) {
throw new Error('someBuff not found');
}
// 监听特定的 Buff 的生效/失效/信息改变的事件
someBuff.onActiveBuffInfoChange((event) => {
switch (event.type) {
case buffSystem.ActiveBuffInfoChangeEventType.Add:
console.log(
'当前 Buff 生效:',
event.previousValue === null,
event.currentValue,
);
break;
case buffSystem.ActiveBuffInfoChangeEventType.Remove:
console.log(
'当前 Buff 失效:',
event.previousValue,
event.currentValue === null,
);
break;
case buffSystem.ActiveBuffInfoChangeEventType.Update:
console.log(
'(已生效的)当前 Buff 信息更新:',
event.previousValue,
event.currentValue,
);
break;
}
});
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# 参数:
属性 | 类型 |
---|---|
handler | ActiveBuffInfoChangeEventHandler |
# 返回值:
void
# 操作触发
# addBuff
▸ addBuff(params?
: Omit‹AddBuffParams, "buffId"›): Promise‹AddBuffRes›
添加(当前)添加增益
# 参数:
属性 | 类型 |
---|---|
params? | Omit‹AddBuffParams, "buffId"› |
# 返回值:
Promise‹AddBuffRes›