cc2ae273-cdb2-44c9-bdb2-c7cc3d991f47.js.map 41 KB
{"version":3,"sources":["assets/script/game/ui/presenter/ChatListViewPresenter.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { AudioManager } from \"simba-cc-audio-manager\";\nimport { ConfigManager } from \"simba-config-manager\";\nimport { CompositeDisposable } from \"simba-eventkit\";\nimport { DeepReadonly, delay } from \"simba-utils\";\nimport { ActionManager, GameRecord, getPlot, PlotManager, ReadonlyPlot, ReadonlyPlots, SentenceSelectContent, SentenceType } from \"../../../avg/AVG\";\nimport { RoleType } from \"../../../avg/EditorEnums\";\nimport { Presenter } from \"../../../common/classbase/PresenterBase\";\nimport { GameTextData } from \"../../../common/gameplay/gamedata/GameTextData\";\nimport { UIManager } from \"../../../common/gameplay/managers/UIManager\";\nimport { StringUtils } from \"../../../common/utils/StringUtils\";\nimport { relationLevelConfig } from \"../../../config/RelationLevelConfig\";\nimport { role } from \"../../../config/Role\";\nimport { GuideLocation, GuideOperationType, GuideState, PlotSceneType, TutorialState, TutorialType } from \"../../Enums\";\nimport GameDotMgr from \"../../GameDotMgr\";\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 GuideViewPresenter from \"./GuideViewPresenter\";\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    private _gLevelMax: number = -1;\n\n    private _cachePId: number = NaN;\n\n    constructor() {\n        super();\n        PlotManager.PlotsRollbackEvent.on(() => {\n            this._excutedPlots = {};\n            this.onResumeChatListView();\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            let t = GameModelManager.checkIsDotTutorial();\n            if (t) {\n                let plotScenTypeSession = GameRecord.globalVariables[\"p_s_t_s\" + PlotSceneType.Message] as number;\n                GameDotMgr.getInstance().dotTutorial(TutorialType.Message, TutorialState.SelectSentence, { session: plotScenTypeSession, plotId: this._currPlot!.id });\n            }\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        super.onOpen(scene);\n        this._sceneModel = 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\n        if (this._historyMessages[scene.id]) {\n            this._chatList = this._historyMessages[scene.id];\n        } else {\n            this._chatList = [];\n        }\n\n        let canSendGift = false;\n        let isMajor = false;\n        if (scene.config.roles.length === 1) {\n            let roleConfig = ConfigManager.getConfig(role, scene.config.roles[0]);\n            if (roleConfig.RoleType === RoleType.Role_Major) {\n                isMajor = true;\n            }\n        }\n        canSendGift = isMajor;\n        if (this._chatList && this._chatList.length) {\n            this.organizeViewProps(scene, isMajor);\n            this._view.setProps(this._viewProps);\n        }\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                onNameTitleClick: this.onNameTitleClick,\n                backRedDot: !this._currPlot\n            };\n            this._view.setProps(this._viewProps);\n            await this.loadChatList();\n            this.organizeViewProps(scene, isMajor);\n            this._view.setProps(this._viewProps);\n        }\n\n        if (this._currPlot) {\n            if (GameModelManager.isChangePlotSceneType()) {\n                GameModelManager.dotMainLinePlotStart();\n            }\n            this._currPlotShowed = false;\n            let item = this.convertPlotToViewModel(this._currPlot);\n            await this.showCurrPlot();\n            if (this._plotChangeLike) {\n                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            if (item) {\n                if (this._cachePId !== this._currPlot.id && !this._excutedPlots[this._currPlot.id] && !this._plotExecuting && !this._currPlotShowed) {\n                    this._chatList.push(item);\n                    this._cachePId = this._currPlot.id;\n                    this.view.updateProps({ items: this._chatList });\n                }\n            }\n\n        }\n    }\n\n    organizeViewProps(scene: MessageSceneModel, isMajor: boolean) {\n        let canSendGift = false;\n        if (scene.config.roles.length === 1) {\n            let roleConfig = ConfigManager.getConfig(role, scene.config.roles[0]);\n            if (roleConfig.RoleType === RoleType.Role_Major) {\n                isMajor = true;\n            }\n        }\n        canSendGift = isMajor;\n        if (this._chatList!.length !== 0) {\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                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        }\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            onNameTitleClick: this.onNameTitleClick,\n            backRedDot: !this._currPlot\n        };\n    }\n\n    closeAction = () => {\n        if (this._plotExecuting) return;\n        UIManager.popToPresenter(this);\n        this._view.closeAnimation().then(() => {\n            this._view.close();\n            GameModelManager.CheckMainTabGuide.emit();\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            if (item && this._currPlot.sentences[0].roleId !== 1 && item.type !== \"customplot\") { // 除了旁白,扣体力\n                if (!this._currPlot) return;\n            }\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                let exist = false;\n                for (let i = 0; i < this._chatList.length; i++) {\n                    if (this._chatList[i][\"id\"] === item[\"id\"]) {\n                        exist = true;\n                        break;\n                    }\n                }\n                if (!exist) {\n                    this._chatList.push(item);\n                }\n\n                if ((item.type === \"plot\" || item.type === \"customplot\") && this._plotChangeLike && this._plotChangeLike !== NaN) {\n                    item.addLike = this._plotChangeLike;\n                }\n                this._view.updateProps({ items: this._chatList });\n            }\n            this._currPlotShowed = true;\n            let effectName = \"se_npc_send\";\n            if (this._currPlot && this._currPlot.sentences[0].roleId === GameModelManager.getPlayerData().getConfig().id) {\n                effectName = \"se_player_send\";\n            }\n            AudioManager.playEffect(effectName);\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        GameModelManager.setIsMainPlotSceneType(true);\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            GameModelManager.dotPlotProgress();\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 (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            let nameSpr = role.getNameIcon();\n            if (role.getConfig().id === 3) {\n                nameSpr = \"/textures/name_icon/laoda\";\n            }\n            return { id: plot.id, key: (this._itemKey++).toString(), type: \"plot\", nameSpr: nameSpr, name: role.getConfig().RoleType === RoleType.Role_Blank ? \"\" : role.getConfig().name, icon: role.getHeadIcon(), isSelf: role.getConfig().RoleType === RoleType.Role_Player, content, select, addLike: customData ? customData[\"addlike\"] : undefined };\n        } else { // custom plot\n            let giftId = plot.customData?.giftId;\n            if (giftId) {// 送礼\n            } else {\n                if (content && content.type !== SentenceType.SELECT && content.type !== SentenceType.EMPTY) {\n                    let addLike = plot.customData?.addLike;\n                    return { id: plot.id, key: (this._itemKey++).toString(), type: \"customplot\", name: role.getConfig().name, icon: role.getHeadIcon(), 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            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            // this.checkGuideBack();\n            GameModelManager.dotMainLinePlotEnd();\n        }\n    }\n\n    checkGuideBack = () => {\n        let r = GameRecord.globalVariables[\"guide_chat_back\"] as number;\n        r = r ? r : GuideState.Open;\n        if (r !== GuideState.Open) {\n            return;\n        }\n        let m = this._view.getGuideBackParam();\n        if (m) {\n            let location = GuideLocation.ChatBack;\n            m.call = () => {\n                GameRecord.globalVariables[\"guide_chat_back\"] = GuideState.Complete;\n                GameRecord.saveRecord();\n                this.closeAction();\n                GameDotMgr.getInstance().dotGuide(GuideOperationType.Click, location);\n            }\n            UIManager.pushPresenter(GuideViewPresenter, m);\n            GameDotMgr.getInstance().dotGuide(GuideOperationType.Show, location);\n        }\n    }\n\n    private isClosed() {\n        return !this._disposable;\n    }\n\n    onNameTitleClick = () => {\n        if (!this._sceneModel) {\n            return;\n        }\n        let rids = this._sceneModel.config.roles;\n        if (!rids.length || rids!.length !== 1) {\n            return;\n        }\n        let r = GameModelManager.getRoleData(rids[0]);\n        if (!r || r!.getConfig().RoleType !== RoleType.Role_Major) {\n            return;\n        }\n        let l = r.getRoleLikeLevel();\n        if (this._gLevelMax < 0) {\n            this._gLevelMax = this.getGraceLevelMax();\n        }\n        if (this._gLevelMax === l.level) {\n            UIManager.showToast(GameModelManager.getLanguageTxt(GameTextData.GAME_TEXT_GRACE_LEVEL_MAX_VALUE));\n        }\n        else {\n            let v = l.nextLevelLike - l.currLike;\n            UIManager.showToast(StringUtils.format(GameModelManager.getLanguageTxt(GameTextData.GAME_TEXT_GRACE_LEVEL_UP_TIP_VALUE), v));\n        }\n\n    }\n\n    getGraceLevelMax(): number {\n        let m: number = -1;\n        let t = ConfigManager.getAllConfig(relationLevelConfig);\n        for (let id in t) {\n            let c = t[id];\n            m = m < c.id ? c.id : m;\n        }\n        return m;\n    }\n\n    // async updateHistoryMessages() {\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    onResumeChatListView = () => {\n        this._chatList = [];\n        // this._sceneModel = undefined;\n        this._historyMessages = {};\n        this._currPlot = undefined;\n        this._currPlotShowed = false;\n        this._itemKey = 0;\n        this._plotExecuting = false;\n        this._excutedPlots = {};\n        this._selectIndex = undefined;\n        this._plotChangeLike = 0;\n        this._viewProps = {\n            msgSceneId: -1, 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            onNameTitleClick: this.onNameTitleClick,\n            backRedDot: !this._currPlot\n        };\n        this._view.setProps(this._viewProps);\n\n        // this._viewProps = [];\n\n        this._gLevelMax = -1;\n\n        this._cachePId = NaN;\n        this.view.resumeAll();\n    }\n}"]}