import { SysDefine } from "../config/SysDefine"; export default class UiHelper { /** * 寻找子节点 */ public static findChildInNode(nodeName: string, rootNode: cc.Node): cc.Node { if(rootNode.name == nodeName) { return rootNode; } for(let i=0; i$/); if(arr && arr.length > 0) { return arr[0].slice(1, -1); } return com.name; } ///////////////////////////////////////////////////////////////////////////////// /** * * @param target * @param repeat -1,表示永久执行 * @param tweens */ public static async runRepeatTweenAsync(target: any, repeat: number, ...tweens: cc.Tween[]) { return new Promise((resolve, reject) => { let selfTween = cc.tween(target); for(const tmpTween of tweens) { selfTween = selfTween.then(tmpTween); } if(repeat < 0) { cc.tween(target).repeatForever(selfTween).start(); }else { cc.tween(target).repeat(repeat, selfTween).start(); } }); } /** 同步的tween */ public static async runTweenAsync(target: any, ...tweens: cc.Tween[]): Promise { return new Promise((resolve, reject) => { let selfTween = cc.tween(target); for(const tmpTween of tweens) { selfTween = selfTween.then(tmpTween); } selfTween.call(() => { resolve(); }).start(); }); } /** 停止tween */ public stopTween(target: any) { cc.Tween.stopAllByTarget(target); } public stopTweenByTag(tag: number) { cc.Tween.stopAllByTag(tag); } }