You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AdLike2048/assets/mx/module/ui/popAnim/IPopAnimService.ts

17 lines
956 B

3 weeks ago
import type { Node } from 'cc';
import type { IPopAnimSession, PopCenterPreset, PopMaskPreset } from './PopAnimTypes';
/** 弹窗入场/退场动效服务(由 UIManager.popAnim 持有实例) */
export interface IPopAnimService {
resolveMaskNode(root: Node): Node | null;
resolveCenterNode(root: Node): Node | null;
snapCenterOpen(root: Node): void;
prepareOpen(root: Node, mask: PopMaskPreset, center: PopCenterPreset): void;
openMask(root: Node, preset: PopMaskPreset): boolean;
closeMask(root: Node, preset: PopMaskPreset, done?: () => void): void;
openCenter(center: Node, preset: PopCenterPreset, done?: () => void): boolean;
closeCenter(center: Node, preset: PopCenterPreset, done?: () => void): boolean;
playOpen(root: Node, mask: PopMaskPreset, center: PopCenterPreset, done?: () => void): IPopAnimSession;
playClose(root: Node, session: IPopAnimSession, tweenType: 1 | 2 | 3, done: () => void): void;
}