import { UI_Dialog } from "../UI_Dialog"; import { aa, UIController, UIElement } from "db://assets/scripts/aa"; import { Transmission } from "db://assets/scripts/Component/data/Transmission"; import { rootMgr } from "../../../scene/RootMgr"; import { Player, RankType } from "../../../data/player/Player"; type TransmissionType = { getRankByType:(type: number, cb?: (data: any, me: any) => void)=>void getNickName:(data: any)=>string } @UIController({ bundleName: 'dialog', path: 'rank/UI_Rank' }) export class UI_Rank extends UI_Dialog { @UIElement(Transmission) transmission: Transmission protected onCreated(): void { super.onCreated() let player = rootMgr.dataControl.getCompent(Player) this.transmission.save({getRankByType:this.getRankByType.bind(this),getNickName:player.getNickName.bind(player)}) } getRankByType(type: number,cb?:(data:any,me:any)=>void) { let palyer = rootMgr.dataControl.getCompent(Player) if (type == 2) { palyer.get_rank_list(RankType.stage, chsdk.updateType.none, (data, me) => { cb?.(data, me) }, this); } else { palyer.get_rank_province((data, me) => { cb?.(data, me) }, this); } } }