GameDotMgr.js.map 19.3 KB
{"version":3,"sources":["assets/script/game/GameDotMgr.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { SDK, TimeManager } from \"simba-sdk\";\nimport { RoleType } from \"../avg/EditorEnums\";\nimport { GameRecord } from \"../avg/AVG\";\nimport { ConfigManager } from \"simba-config-manager\";\nimport { role } from \"../config/Role\";\nimport { channel, GameConfig } from \"../GameConfig\";\nimport { CostType, DotShopTotalType, DotShopType, EventLocation, EventOperationType, ExposureType, GuideLocation, GuideOperationType, LoadingState, MomentOptionType, PlotSessionState, ShareLocation, ShowType, SpecialDateContentStatus, SpecialDateContentType, TaskDotType, TutorialState, TutorialType } from \"./Enums\";\nimport { GameModelManager } from \"./model/GameModelManager\";\n\ninterface BaseDotElements {\n    energy: number,\n    gold: number,\n    silver: number,\n    grace: { roleId: number, grace: number }[],\n    user_register_version: string,\n    login_duration: number,\n    total_duration: number,\n    daily_duration: number,\n}\n\nexport default class GameDotMgr {\n    private static readonly _instance: GameDotMgr = new GameDotMgr();\n    private _majorIds: number[] = [];\n\n    public static getInstance(): GameDotMgr {\n        return GameDotMgr._instance;\n    }\n\n    public async dot(eventKey: string, data: any, category?: string) {\n        // if (channel === \"dummy\") return;\n        // category = category ? category : \"yybs_event\";\n        // let baseElements = this.getBaseElements();\n        // let biRet = await SDK.bi(category, eventKey, baseElements, data);\n    }\n\n    private getBaseElements(): BaseDotElements {\n        let regV = GameRecord.globalVariables[\"register_version\"];\n        if (!regV) {\n            regV = GameConfig.gameVersion;\n            GameRecord.globalVariables[\"register_version\"] = regV;\n            GameRecord.saveRecord();\n        }\n        let player = GameModelManager.getPlayerData();\n        let base: BaseDotElements = {\n            energy: player.getEnergy(),\n            gold: player.getGoldCoin(),\n            silver: player.getClothCoin(),\n            grace: [],\n            user_register_version: regV,\n            login_duration: TimeManager.getGameTime(),\n            total_duration: TimeManager.getTotalGameTime(),\n            daily_duration: TimeManager.getTodayGameTime(),\n        };\n        let gArr: { roleId: number, grace: number }[] = [];\n        if (!this._majorIds || 0 === this._majorIds.length) {\n            let r = ConfigManager.getAllConfig(role);\n            for (let id in r) {\n                let c = r[id];\n                if (c && c.RoleType === RoleType.Role_Major) {\n                    this._majorIds.push(c.id);\n                }\n            }\n        }\n        for (let i = 0; i < this._majorIds.length; i++) {\n            let rid = this._majorIds[i];\n            let role = GameModelManager.getRoleData(rid);\n            let gv = role?.getRoleLike();\n            gv = gv ? gv : 0;\n            let item: { roleId: number, grace: number } = {\n                roleId: rid,\n                grace: gv\n            }\n            gArr.push(item);\n        }\n        base.grace = gArr;\n        return base;\n    }\n\n    public async dotClickUI(uiName: string) {\n        let eventKey = \"click_ui\";\n        let recordKey = \"click_ui_count_\" + uiName + \"_t_\" + GameModelManager.getCurDayStr();\n        let clickCount = GameRecord.globalVariables[recordKey] as number;\n        if (undefined === clickCount) {\n            clickCount = 0;\n        }\n        clickCount += 1;\n        GameRecord.globalVariables[recordKey] = clickCount;\n        GameRecord.saveRecord();\n        // console.log(\"dotClickUI = \", { click_ui: clickCount, ui_location: uiName });\n        await this.dot(eventKey, { click_ui: clickCount, ui_location: uiName }, \"click_ui\");\n    }\n\n    public async dotLoading(state: LoadingState) {\n        let eventKey = \"loading\";\n        await this.dot(eventKey, { loading: state }, \"loading\");\n    }\n\n    /**\n     * \n     * @param playerId 玩家的PlayerId\n     * @param gameConstData 兑换码兑换的道具ID\n     */\n    public async dotExchangeCodeSuccess(playerId: string, gameConstData?: string) {\n        let eventKey = \"exchange_code_success\";\n        await this.dot(eventKey, { exchange_code_success: playerId, gameConstData: gameConstData }, \"exchange_code_success\");\n    }\n\n    public async dotCost(cType: CostType, cNum: number) {\n        // let eventKey = \"cost\";\n        // let recordKey = cType + GameModelManager.getCurDayStr();\n        // let count = GameRecord.globalVariables[recordKey] as number;\n        // if (undefined === count) {\n        //     count = 0;\n        // }\n        // count = count + cNum;\n        // GameRecord.globalVariables[recordKey] = count;\n        // GameRecord.saveRecord();\n        // let data = {};\n        // data[cType] = count;\n        // // console.log(\"dotCost = \", data);\n        // await this.dot(eventKey, data, \"cost\");\n    }\n\n    public async dotPlot(session: number, state: PlotSessionState) {\n        let eventKey = \"plot\";\n        let v = session + \"_\" + state;\n        // console.log(\"dotPlot = \", { plot_state: v });\n        await this.dot(eventKey, { plot_state: v }, \"plot\");\n    }\n\n    public async dotExposure(eType: ExposureType | string) {\n        // let eventKey = \"show\";\n        // // console.log(\"dotExposure = \", { show: eType });\n        // await this.dot(eventKey, { show: eType }, \"show\");\n    }\n\n    public async dotShop(sType: DotShopType, param?: any) {\n        // let eventKey = \"shop\";\n        // let data = {};\n\n        // switch (sType) {\n        //     case DotShopType.LuckyDraw:\n        //         {\n        //             data[sType] = param.location;\n        //         }\n        //         break;\n        //     case DotShopType.Clothes:\n        //         {\n        //             if (param.isWear) {\n        //                 data[sType] = \"wear_\" + param.sid + \"_\" + param.rid;\n        //             } else {\n        //                 data[sType] = \"have_\" + param.sid + \"_\" + param.rid;\n        //             }\n        //         }\n        //         break;\n        // }\n        // // console.log(\"dotShop = \", data);\n        // await this.dot(eventKey, data, \"shop\");\n    }\n\n    public async dotShopTotal(sType: DotShopTotalType, param?: any) {\n        // let eventKey = \"shop_total\";\n        // let data = {};\n        // switch (sType) {\n        //     case DotShopTotalType.ShowGift:\n        //         {\n        //             let rKey = \"g_i_t_show_c\" + GameModelManager.getCurDayStr();;\n        //             let total = GameRecord.globalVariables[rKey] as number;\n        //             total = total ? total : 0;\n        //             total++;\n        //             data[sType] = {\n        //                 show_id: \"show_item_\" + param.id,\n        //                 total_show: total\n        //             }\n        //             GameRecord.globalVariables[rKey] = total;\n        //         }\n        //         break;\n        //     case DotShopTotalType.BuyItem:\n        //         {\n        //             let rKey = \"g_i_t_buy_c\" + GameModelManager.getCurDayStr();;\n        //             let total = GameRecord.globalVariables[rKey] as number;\n        //             total = total ? total : 0;\n        //             total++;\n        //             data[sType] = {\n        //                 buy_id: \"buy_\" + param.id,\n        //                 total_buy: total\n        //             }\n        //             GameRecord.globalVariables[rKey] = total;\n        //         }\n        //         break;\n        //     case DotShopTotalType.SendGift:\n        //         {\n        //             let rKey = \"g_i_t_send_c\" + GameModelManager.getCurDayStr();;\n        //             let total = GameRecord.globalVariables[rKey] as number;\n        //             total = total ? total : 0;\n        //             total++;\n        //             data[sType] =\n        //             {\n        //                 send_id: param.gid,\n        //                 role_id: param.rid,\n        //                 total_send: total\n        //             };\n        //             GameRecord.globalVariables[rKey] = total;\n        //         }\n        //         break;\n        //     case DotShopTotalType.Popup:\n        //         {\n        //             data[sType] = param.popType;\n        //         }\n        //         break;\n        // }\n        // GameRecord.autoSave();\n        // // console.log(\"dotShopTotal = \", data);\n        // await this.dot(eventKey, data, \"shop_total\");\n    }\n\n    public async dotTask(taskDotType: TaskDotType, tId: number) {\n        // let eventKey = \"task\";\n        // let data = {};\n        // data[\"daily_task\"] = {};\n        // switch (taskDotType) {\n        //     case TaskDotType.CompleteTask:\n        //         {\n        //             data[\"daily_task\"] = \"completed_\" + tId;\n        //         }\n        //         break;\n        //     case TaskDotType.GetTaskRewards:\n        //         {\n        //             data[\"daily_task\"] = \"get_rewards_\" + tId;\n        //         }\n        //         break;\n        // }\n        // await this.dot(eventKey, data, \"task\");\n    }\n\n    public async dotMoment(id: number, optionType: MomentOptionType) {\n        // let eventKey = \"circle_of_friends\";\n        // let v = \"circle_\" + optionType;\n        // await this.dot(eventKey, { circle: v }, \"circle_of_friends\");\n    }\n\n    public async dotTutorial(tType: TutorialType, state: TutorialState, param: any) {\n        let eventKey = \"tutorial\";\n        let k = \"\" + tType;\n        let v = \"\" + param.session;\n        switch (state) {\n            case TutorialState.SelectSentence:\n                {\n                    v += state + param.plotId;\n                }\n                break;\n            case TutorialState.SelectSentenceRet:\n                {\n                    k += \"_plot_select\";\n                    v += TutorialState.SelectSentence + param.plotId + state + param.select;\n                }\n                break;\n            case TutorialState.Progress:\n                {\n                    k += \"_plot_progress\";\n                    v += state + param.progress;\n                }\n                break;\n        }\n        let data = {};\n        data[k] = v;\n        // console.log(\"dotTutorial = \", data);\n        await this.dot(eventKey, data, \"tutorial\");\n    }\n\n    public async dotShare(shareType: ShowType, shareLocation: ShareLocation | string) {\n        let eventKey = \"share\";\n        // console.log(\"dotShare = \", { share_type: shareType, share_location: shareLocation });\n        await this.dot(eventKey, { share_type: shareType, share_location: shareLocation }, \"share\");\n    }\n\n    public async dotVideo(videoType: ShowType, videoLocation: string) {\n        let eventKey = \"video\";\n        // console.log(\"dotVideo = \", { video_type: videoType, video_location: videoLocation });\n        await this.dot(eventKey, { video_type: videoType, video_location: videoLocation }, \"video\")\n    }\n\n    //todo\n    public async dotShareRes(location: ShareLocation, titleId: number, imgId: number) {\n        let eventKey = \"share_source\";\n        let v = location + \"_\" + titleId + \"_\" + imgId;\n        await this.dot(eventKey, { share_source: v }, \"share_source\");\n    }\n\n    public async dotGuide(oprType: GuideOperationType, location: GuideLocation) {\n        let eventKey = \"guide\";\n        let v = location + oprType;\n        // console.log(\"dotGuide = \",{ guide: v });\n        await this.dot(eventKey, { guide: v }, \"guide\");\n    }\n\n\n    public async dotEvent(oprType: EventOperationType, location: EventLocation) {\n        let eventKey = 'event';\n        let v = location;\n        let data = {};\n        data[oprType] = v;\n        // console.log(\"dotEvent = \",data);\n        await this.dot(eventKey, data, 'event');\n    }\n\n    public async dotSpecialPlot(sceneId: number, plotId: number, selectIndex: number, contenType: SpecialDateContentType, contentStatus: SpecialDateContentStatus) {\n        let eventKey = 'special_plot';\n        let data = {\n            scene: sceneId,\n            plot: plotId,\n            select: selectIndex,\n            contentype: contenType,\n            status: contentStatus\n        }\n        // console.log(\"dotSpecialPlot = \", data);\n        await this.dot(eventKey, data, 'special_plot');\n    }\n\n}"]}