kunpolibrary/docs/Condition.md
2025-02-26 17:30:40 +08:00

47 lines
1.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 条件显示节点
### 特点
* 用于在游戏中显示或隐藏特定UI元素。
* 一般用于红点提示
* 主要是解耦用,条件单独实现,节点关联单条件或者多个条件
### 使用
#### *定义条件*
```typescript
// 定义条件类型枚举
enum ConditionType {
condition1,
condition2,
condition3,
}
// 定义条件
@conditionClass(ConditionType.condition1)
export class Condition1 extends kunpo.ConditionBase {
protected onInit(): void {
// 监听条件发生变化, 则调用一次 this.tryUpdate();
kunpo.GlobalEvent.add("condition1", () => {
this.tryUpdate();
}, this);
}
protected evaluate(): boolean {
//TODO:: 根据条件数据返回true or false
return true;
}
}
```
#### *节点关联条件*
```typescript
/** 任意一个满足 显示节点 */
new kunpo.ConditionAnyNode(fgui.GObject, ConditionType.condition1, ConditionType.condition2);
/** 所有条件都满足 显示节点 */
new kunpo.ConditionAllNode(fgui.GObject, ConditionType.Condition1, ConditionType.Condition2, ConditionType.Condition3);
```