mirror of
https://gitee.com/dgflash/oops-plugin-framework.git
synced 2026-06-03 18:49:23 +08:00
优化
This commit is contained in:
28
assets/module/common/ModuleUtil.ts
Normal file
28
assets/module/common/ModuleUtil.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
import { Node, __private } from "cc";
|
||||
import { oops } from "../../core/Oops";
|
||||
import { UICallbacks } from "../../core/gui/layer/Defines";
|
||||
import { ecs } from "../../libs/ecs/ECS";
|
||||
import { CCComp } from "./CCComp";
|
||||
import { CCVMParentComp } from "./CCVMParentComp";
|
||||
import { CompType } from "../../libs/ecs/ECSModel";
|
||||
|
||||
export class ModuleUtil {
|
||||
public static addView<T extends CCVMParentComp | CCComp>(
|
||||
ent: ecs.Entity,
|
||||
ctor: __private._types_globals__Constructor<T> | __private._types_globals__AbstractedConstructor<T>,
|
||||
uiId: number,
|
||||
uiArgs: any = null) {
|
||||
var uic: UICallbacks = {
|
||||
onAdded: (node: Node, params: any) => {
|
||||
var comp = node.getComponent(ctor) as ecs.Comp;
|
||||
ent.add(comp);
|
||||
}
|
||||
};
|
||||
oops.gui.open(uiId, uiArgs, uic);
|
||||
}
|
||||
|
||||
public static removeView(ent: ecs.Entity, ctor: CompType<ecs.IComp>, uiId: number, isDestroy: boolean = true) {
|
||||
ent.remove(ctor);
|
||||
oops.gui.remove(uiId, isDestroy);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user