1a5035b8-0a2e-4bde-8bd5-11fcd16d2ec5.js.map 8.28 KB
{"version":3,"sources":["assets/script/game/ui/presenter/ReviewPlotViewPresenter.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { PlotManager } from \"simba-avg-core\";\nimport { GameRecord } from \"../../../avg/AVG\";\nimport { Presenter } from \"../../../common/classbase/PresenterBase\";\nimport { GameModelManager } from \"../../model/GameModelManager\";\nimport { RegPresenter } from \"../PresenterCCViewFactory\";\nimport { ReviewPlotViewType, ReviewPlotViewProps, ReviewPlotView } from \"../view/type/ReviewPlotView\";\n\nexport interface ReviewPlotViewParam {\n    isReview: boolean,\n    plotString: string,\n    startPlotId: number,\n    currentPlotId: number,\n}\n\n@RegPresenter(ReviewPlotViewType)\nexport default class ReviewPlotViewPresenter extends Presenter<ReviewPlotViewParam, ReviewPlotView>{\n    static uuid = \"ReviewPlotViewPresenter\";\n    private _viewProps: ReviewPlotViewProps;\n    private _param: ReviewPlotViewParam;\n\n    constructor() {\n        super();\n        this._viewProps = {\n            onCloseButtonClickCallback: this.onCloseButtonClickCallback,\n        }\n    }\n\n    onOpen(param: ReviewPlotViewParam) {\n        super.onOpen(param);\n        this._param = param;\n        this.view.setProps(this._viewProps);\n        this.onShow();\n    }\n\n    onShow() {\n        super.onShow();\n        this.initViewDate();\n    }\n\n    onEnterBackground() {\n        super.onEnterBackground();\n    }\n\n    onEnterForeground() {\n        super.onEnterForeground();\n    }\n\n    onClose() {\n        super.onClose();\n    }\n\n    initViewDate() {\n        this.view.getPlotRichText().string = \"\";\n        this.view.getLoadingNode().active = true;\n        this.view.getPlotRichText().scheduleOnce(async () => {\n            if (this._param.isReview) {\n                this.view.getPlotRichText().string = this._param.plotString;\n            } else {\n                this.view.getPlotRichText().string = await this.getReviewPlotContent();\n            }\n            if (this.view.getPlotRichText().node.height >= this.view.getPlotScrollView().node.height) {\n                this.view.getPlotScrollView().scrollToBottom();\n            }\n            this.view.getLoadingNode().active = false;\n        });\n    }\n\n    async getReviewPlotContent(): Promise<string> {\n        let showWhileNotSelect: boolean = false;//未选择时是否展示选项列表\n        let showCurrentPlot: boolean = true;//是否展示当前剧情内容\n        let plotStr = \"\";\n        let startPlotId = this._param.startPlotId;\n        let currentPlotId = this._param.currentPlotId;\n        let currentRecordIndex = PlotManager.getCurrentRecordIndex();\n        let currentRecord = GameRecord.getRecords()[currentRecordIndex].d;\n        let startPlotIdIndex = 0;\n        let currentPlotIdIndex = 0;\n        for (let i = 0; i < currentRecord.length; i++) {\n            if (startPlotId == currentRecord[i].p[0]) {\n                startPlotIdIndex = i;\n            }\n            if (currentPlotId == currentRecord[i].p[0]) {\n                currentPlotIdIndex = i;\n            }\n        }\n        if (showCurrentPlot) {\n            currentPlotIdIndex += 1;\n        }\n        let newCurrentRecord = currentRecord.slice(startPlotIdIndex, currentPlotIdIndex);\n        for (let i = 0; i < newCurrentRecord.length; i++) {\n            let content = await GameModelManager.getPlotContent(newCurrentRecord[i].p[0]);\n            if (content) {\n                let roleData = GameModelManager.getRoleData(content.roleId)!;\n                let plotName = \"\";\n                let plotContent = \"\";\n                if (content.content.length === 0) {\n                    continue;\n                }\n                if (content.content.length > 1) {\n                    if (newCurrentRecord[i].s && newCurrentRecord[i].s?.length !== 0) {\n                        plotName = \"<color=#D36777>\" + \"选项\" + \":</c>\\n\"\n                        plotContent = content.content[newCurrentRecord[i].s![0]] + \"\\n\";\n                    } else {\n                        if (showWhileNotSelect) {\n                            for (let j = 0; j < content.content.length; j++) {\n                                plotContent = content.content[j] + \"\\n\";\n                            }\n                        }\n                    }\n                } else {\n                    plotName = \"<color=#EFDA91>\" + roleData.getConfig().name + \":</c>\\n\"\n                    plotContent = content.content[0] + \"\\n\";\n                }\n                plotStr += plotName + plotContent;\n            }\n        }\n        return plotStr;\n    }\n\n    onCloseButtonClickCallback = async () => {\n        this.view.close();\n    }\n}"]}