kunpolibrary/src/condition/node/ConditionNode.ts

37 lines
940 B
TypeScript
Raw Normal View History

2025-02-20 11:27:28 +08:00
/**
* @Author: Gongxh
* @Date: 2025-02-14
* @Description:
*/
import { ConditionManager } from "../ConditionManager";
import { ConditionMode } from "../ConditionMode";
export abstract class ConditionNode {
/** 条件类型 */
public _modeType: ConditionMode;
/**
*
* @param {GObject} node
* @param {...number[]} conditionTypes
*/
public constructor(modeType: ConditionMode, ...conditionTypes: number[]) {
this._modeType = modeType;
for (const conditionType of conditionTypes) {
ConditionManager._addConditionNode(this, conditionType);
}
}
/** 移除节点 */
public destroy(): void {
ConditionManager._removeConditionNode(this);
}
/**
*
* @param {boolean} visible
*/
public abstract notify(visible: boolean): void;
}