cc2ae273-cdb2-44c9-bdb2-c7cc3d991f47.js.map 25.7 KB
{"version":3,"sources":["assets/script/game/ui/presenter/ChatListViewPresenter.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { CompositeDisposable } from \"simba-eventkit\";\nimport { DeepReadonly, delay } from \"simba-utils\";\nimport { ActionManager } from \"../../../avg/ActionManager\";\nimport { RoleType } from \"../../../avg/EditorEnums\";\nimport { GameRecord } from \"../../../avg/game-data/GameRecord\";\nimport { getPlot } from \"../../../avg/game-data/PlotsData\";\nimport { ReadonlyPlot, ReadonlyPlots, SentenceSelectContent, SentenceType } from \"../../../avg/model/PlotModel\";\nimport { PlotManager } from \"../../../avg/PlotManager\";\nimport { Presenter } from \"../../../common/classbase/PresenterBase\";\nimport { UIManager } from \"../../../common/gameplay/managers/UIManager\";\nimport { PlotSceneType } from \"../../Enums\";\nimport { GameModelManager } from \"../../model/GameModelManager\";\nimport { MessageSceneModel } from \"../../model/MessageSceneModel\";\nimport { RegPresenter } from \"../PresenterCCViewFactory\";\nimport { ChatListAutoNextPlot, ChatListItemProps, ChatListView, ChatListViewProps, ChatListViewType } from \"../view/type/ChatListView\";\nimport { SentenceSelectorViewProps } from \"../view/type/SentenceSelectorView\";\nimport SentenceSelectorViewPresenter from \"./SentenceSelectorViewPresenter\";\n\nconst MAX_HISTORY = 50;\n@RegPresenter(ChatListViewType)\nexport class ChatListViewPresenter extends Presenter<MessageSceneModel, ChatListView> {\n    static uuid = \"ChatListViewPresenter\";\n    private _chatList: ChatListItemProps[];\n    private _sceneModel: MessageSceneModel;\n    get sceneModel() { return this._sceneModel; }\n    private _historyMessages: { [id: number]: ChatListItemProps[] } = {};\n    private _currPlot?: ReadonlyPlot;\n    private _currPlotShowed = false;\n    private _itemKey = 0;\n    private _plotExecuting = false;\n    private _excutedPlots: { [key: number]: boolean } = {};\n    private _selectIndex?: number;\n    private _plotChangeLike?: number;\n\n    private _viewProps: ChatListViewProps;\n\n    constructor() {\n        super();\n        PlotManager.PlotsRollbackEvent.on(() => {\n            this._excutedPlots = {};\n        })\n    }\n\n    getRoleId() {\n        if (this.sceneModel.config.roles.length == 1)\n            return this.sceneModel.config.roles[0];\n        return 1;\n    }\n\n    onSelectIndexCallback = (index: number) => {\n        this.selectSentence(index);\n    }\n\n    onSetContent = (content: DeepReadonly<SentenceSelectContent>) => {\n        if (content != undefined) {\n            let props: SentenceSelectorViewProps =\n            {\n                sentence: content,\n                backgroundpath: \"textures/message/selector_bg\",\n                clickcausehide: false,\n                onSelectIndexCallback: this.onSelectIndexCallback\n            };\n            UIManager.pushPresenter(SentenceSelectorViewPresenter, props);\n        }\n    }\n\n    isSentenceSelectVisible = (): boolean => {\n        let preset = UIManager.getTopPresenter();\n        if (preset instanceof SentenceSelectorViewPresenter) {\n            let selectorPresenter = preset as SentenceSelectorViewPresenter;\n            return !selectorPresenter.view.isHidden;\n        }\n        return false;\n    }\n\n    async onOpen(scene: MessageSceneModel) {\n        this._sceneModel = scene;\n        super.onOpen(scene);\n        this._disposable.add(PlotManager.PlotStartEvent.on(this.handlePlotsStart));\n        this._currPlot = PlotManager.getCurrentPlots().find(v => v.plotSceneType === PlotSceneType.Message && v.plotSceneTypeId === scene.id);\n        //@ts-ignore\n        delete this._chatList;\n        if (this._historyMessages[scene.id]) {\n            this._chatList = this._historyMessages[scene.id];\n        }\n\n        if (this._chatList && this._chatList.length) {\n            if (this._chatList[this._chatList.length - 1].type === \"end\") { // 上一次的结束改为历史\n                let item = this._chatList.pop();\n                this._chatList.push({ key: item!.key, type: \"history\" });\n\n                for (let i = this._chatList.length - 2; i >= 0; i--) { // 删除之前的历史分割,只保留最后一个\n                    let item = this._chatList[i];\n                    if (item.type === \"history\") {\n                        this._chatList.splice(i, 1);\n                        break;\n                    }\n                }\n            }\n            this._viewProps = {\n                msgSceneId: scene.id, title: GameModelManager.getConfigLanguageTxt(scene.config.title),\n                items: this._chatList, historyMsgCount: this._chatList.length,\n                onCloseBtnClick: this.closeAction,\n                onSelectChapter: this.selectChapter,\n                onCompletePlot: this.completePlot,\n                onSelectSentence: this.selectSentence,\n                onSetContent: this.onSetContent,\n                isSentenceSelectVisible: this.isSentenceSelectVisible,\n                backRedDot: !this._currPlot\n            };\n            this._view.setProps(this._viewProps);\n        } else {\n            this._viewProps = {\n                msgSceneId: scene.id, title: GameModelManager.getConfigLanguageTxt(scene.config.title), \n                items: [], historyMsgCount: 0,\n                onCloseBtnClick: this.closeAction,\n                onSelectChapter: this.selectChapter,\n                onCompletePlot: this.completePlot,\n                onSelectSentence: this.selectSentence,\n                onSetContent: this.onSetContent,\n                isSentenceSelectVisible: this.isSentenceSelectVisible,\n                backRedDot: !this._currPlot\n            };\n            this._view.setProps(this._viewProps);\n            await this.loadChatList();\n        }\n\n        if (this._currPlot) {\n            this._currPlotShowed = false;\n            await this.showCurrPlot();\n            if (this._plotChangeLike) {\n                let item = { ...this._chatList.pop()! };\n                if (item.type === \"plot\") { // 理论上肯定成立\n                    item.addLike = this._plotChangeLike;\n                }\n                this._chatList.push(item);\n                this.view.updateProps({ items: this._chatList });\n            }\n        }\n    }\n\n    closeAction = () => {\n        if (this._plotExecuting) return;\n        UIManager.popToPresenter(this);\n        this._view.closeAnimation().then(() => {\n            this._view.close();\n        });\n    }\n\n    selectChapter = () => {\n\n    }\n\n    selectSentence = (index: number) => {\n        if (!this._currPlot) throw new Error(\"ChatList: ePlot error! No currnt plot!\");\n        this.completePlot(index, ChatListAutoNextPlot);\n    }\n\n    showCurrPlot = async () => {\n        if (this._currPlot && !this._excutedPlots[this._currPlot.id] && !this._plotExecuting && !this._currPlotShowed) {\n            let item = this.convertPlotToViewModel(this._currPlot);\n            this._excutedPlots[this._currPlot.id] = true;\n            this._plotExecuting = true;\n            let disposable = new CompositeDisposable;\n            this._plotChangeLike = undefined;\n            GameRecord.onRecordVariableChange(\"like\" + this._currPlot!.sentences[0].roleId, (scope, varName, preValue, value) => {\n                this._plotChangeLike = (value as number) - (preValue as number);\n            });\n            await ActionManager.executeActions(this._currPlot!.sentences[0].actions); // TODO 处理加好感\n            disposable.dispose();\n            this._plotExecuting = false;\n            if (item) {\n                if (this._chatList.length >= MAX_HISTORY) {\n                    this._chatList.shift();\n                }\n                this._chatList.push(item);\n                if (item.type === \"plot\" && this._plotChangeLike) {\n                    item.addLike = this._plotChangeLike;\n                }\n                this._view.updateProps({ items: this._chatList });\n            }\n            this._currPlotShowed = true;\n        } else if (this._currPlot && this._excutedPlots[this._currPlot.id]) {\n            this._currPlotShowed = true;\n        }\n    }\n\n    completePlot = async (index?: number, proceedNext = true) => {\n        if (!this._currPlot) return;\n        if (!this._currPlotShowed) { this.showCurrPlot(); return; }\n        if (index !== undefined) { // 刷新界面剧情选择\n            let lastItem = this._chatList.pop()!;\n            if (lastItem.type === \"plot\") {\n                this._chatList.push({ ...lastItem, select: index });\n            } else {\n                throw new Error(\"ChatList: Plot error!\");\n            }\n            this._view.updateProps({ items: this._chatList });\n        }\n        // await this.execCurrPlot(); // 改为开始的时候执行\n        if (proceedNext) {\n            this.sceneModel.lastPlot = this._currPlot;\n            if (this._selectIndex !== undefined) {\n                index = this._selectIndex;\n                this._selectIndex = undefined;\n            }\n            if (ChatListAutoNextPlot) await delay(0.5);\n            await this.nextPlot(index);\n        } else {\n            this._selectIndex = index;\n        }\n    }\n\n    private nextPlot = async (index?: number) => {\n        if (this.isClosed()) return;\n        if (this._currPlot) {\n            await PlotManager.completePlot(this._currPlot!, index, this._plotChangeLike ? { addlike: this._plotChangeLike } : undefined);\n        } else {\n            console.error(\"ChatList: Plot error! No current plot!\");\n        }\n    }\n\n    private async loadChatList() {\n        // if (chapter === -1) {\n        //     chapter = GameModelManager.getCurrentChapterId();\n        // }\n\n        if (this._historyMessages[this._sceneModel.id] && this._historyMessages[this._sceneModel.id]) {\n            this._view.updateProps({ items: this._chatList });\n            return;\n        }\n        this._historyMessages[this._sceneModel.id] = [];\n\n        let historyPlots: ChatListItemProps[] = [];\n        let records = GameRecord.getCurrentRecordItems();\n        let pushHistory = false;\n        let hasHistory = false;\n        let lastPlotId: number = Number.MAX_SAFE_INTEGER;\n        for (let i = records.length - 1; i >= 0; i--) {\n            let item = records[i];\n            for (let j = 0; j < item.p.length; j++) {\n                let plotId = item.p[j];\n                if (plotId === lastPlotId) break;\n                let plot = (await getPlot(plotId))! as ReadonlyPlot;\n                if (!plot) continue;\n                if (plot.plotSceneType === PlotSceneType.Message && plot.plotSceneTypeId === this._sceneModel.id) {\n                    lastPlotId = plotId;\n                    if (i === records.length - 1) continue;\n                    if (pushHistory && !hasHistory) {\n                        historyPlots.unshift({ key: (this._itemKey++).toString(), type: \"history\" });\n                        hasHistory = true;\n                    }\n                    let select: number | undefined = undefined;\n                    if (item.s) select = item.s[j];\n                    let customData: object | undefined = undefined;\n                    if (item.c) customData = item.c[j];\n                    let vm = this.convertPlotToViewModel(plot, select, customData);\n                    if (vm) historyPlots.unshift(vm);\n                } else { // TODO process branch plots if needed.\n                    if (!pushHistory && !hasHistory) {\n                        pushHistory = true;\n                    }\n                }\n                if (plot.id === this._sceneModel.firstPlot.id) {\n                    break;\n                }\n            }\n            if (historyPlots.length >= MAX_HISTORY) {\n                break;\n            }\n        }\n        this._chatList = historyPlots;\n        this._view.updateProps({ items: historyPlots, historyMsgCount: this._chatList.length });\n        this._historyMessages[this._sceneModel.id] = this._chatList;\n    }\n\n    private convertPlotToViewModel = (plot: ReadonlyPlot, select?: number, customData?: object): ChatListItemProps | undefined => {\n        let role = GameModelManager.getRoleData(plot.sentences[0].roleId)!;\n        let content = plot.sentences[0].content;\n        if (plot.id >= 0) {\n            if (!content) return undefined;\n            return { key: (this._itemKey++).toString(), type: \"plot\", name: role.getConfig().RoleType === RoleType.Role_Blank ? \"\" : role.getConfig().name, icon: role.getHeadIcon(true), isSelf: role.getConfig().RoleType === RoleType.Role_Player, content, select, addLike: customData ? customData[\"addlike\"] : undefined };\n        } else { \n            // // custom plot\n            // let giftId = plot.customData?.giftId;\n            // if (giftId) {// 送礼\n            //     let giftItem = ConfigManager.getConfig(itemConfig, giftId);\n            //     return { key: (this._itemKey++).toString(), type: \"customplot\", name: role.getConfig().name, icon: role.getHeadIcon(true), isSelf: true, gift: { icon: GameResData.GAME_ICON_BASE_PATH + giftItem.icon, text: \"送你一个\" + giftItem.name } };\n            // } else {\n            //     if (content && content.type !== SentenceType.SELECT) {\n            //         let addLike = plot.customData?.addLike;\n            //         return { key: (this._itemKey++).toString(), type: \"customplot\", name: role.getConfig().name, icon: role.getHeadIcon(true), isSelf: false, content, addLike }\n            //     } else {\n            //         throw new Error(\"This cannot happen!\");\n            //     }\n            // }\n        }\n    }\n\n    private handlePlotsStart = async (plots: ReadonlyPlots) => {\n        let plot = plots.find(v => v.plotSceneType === PlotSceneType.Message && v.plotSceneTypeId === this._sceneModel.id);\n        if (plot) {\n            if (this._currPlot && plot === this._currPlot) return; // 有分支剧情的情况\n            this._currPlot = plot;\n            this._currPlotShowed = false;\n\n            await this.showCurrPlot();\n        } else if (this._currPlot && this._currPlot.id >= 0) {\n            this._currPlot = undefined;\n            this._chatList.push({ key: (this._itemKey++).toString(), type: \"end\" });\n            if (this._chatList.length >= MAX_HISTORY) {\n                this._chatList.shift();\n            }\n            this._view.updateProps({ items: this._chatList, backRedDot: true });\n        }\n    }\n\n    private isClosed() {\n        return !this._disposable;\n    }\n}"]}