9f42ba43-18bb-4b35-8e2b-e3268c38dfe7.js.map 12.5 KB
{"version":3,"sources":["assets/script/game/model/UnlockItemModelManager.ts"],"names":[],"mappings":"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","file":"","sourceRoot":"/","sourcesContent":["import { ConfigManager } from \"simba-config-manager\";\nimport { GameRecord } from \"../../avg/AVG\";\nimport { itemTbl } from \"../../config/ItemTbl\";\n\nclass UnlockItemModelManager1 {\n    /**存档Key */\n    private UnlockItems = 'UnlockItems';\n    /**存档Key */\n    private ClickedItems = 'ClickedItems';\n    /**存档Key */\n    private UnlockedIntroductionItems = 'UnlockedIntroductionItems';\n    /**解锁的物品ids */\n    private items: Array<number> = [];\n    /**点击过的物品ids */\n    private clickedItem: Array<number> = [];\n    /**已经解锁简介的物品ids */\n    private unlockedIntroductionItem: Array<number> = [];\n    /**配置掉落物品的剧情id和午评id的映射表 */\n    private _unlockPlotIds: Array<{ itemId: number, plotId: number }> = [];\n\n    /**获取配置掉落物品的剧情id和午评id的映射表 */\n    public get unlockPlotIds(): Array<{ itemId: number, plotId: number }> {\n        if (this._unlockPlotIds.length == 0) this.analysisItemCfg();\n        return this._unlockPlotIds\n    }\n\n    public get unlockItems(): Array<number> {\n        let items: Array<number> = [];\n        let itemsStr = GameRecord.globalVariables[this.UnlockItems];\n        if (itemsStr) {\n            let itemsIdStr: Array<string> = itemsStr.split(',');\n            itemsIdStr.forEach(id => {\n                try {\n                    items.push(Number(id));\n                } catch (error) {\n                    console.error(error);\n                }\n            });\n        }\n        return items;\n    }\n\n    public get clickedItems(): Array<number> {\n        this.clickedItem = [];\n        let itemsStr = GameRecord.globalVariables[this.ClickedItems];\n        if (itemsStr) {\n            let itemsIdStr: Array<string> = itemsStr.split(',');\n            itemsIdStr.forEach(id => {\n                try {\n                    this.clickedItem.push(Number(id));\n                } catch (error) {\n                    console.error(error);\n                }\n            });\n        }\n        return this.clickedItem;\n    }\n\n    public get unlockedIntroductionItems(): Array<number> {\n        this.unlockedIntroductionItem = [];\n        let itemsStr = GameRecord.globalVariables[this.UnlockedIntroductionItems];\n        if (itemsStr) {\n            let itemsIdStr: Array<string> = itemsStr.split(',');\n            itemsIdStr.forEach(id => {\n                try {\n                    this.unlockedIntroductionItem.push(Number(id));\n                } catch (error) {\n                    console.error(error);\n                }\n            });\n        }\n        return this.unlockedIntroductionItem;\n    }\n\n    /**\n     * 保存解锁了简介的物品id到存档\n     * @param id 点击过的物品id\n     */\n    saveUnlockedIntroductionItemIdToGameRecord(id: number): boolean {\n        this.unlockedIntroductionItem = [];\n        let itemsStr = GameRecord.globalVariables[this.UnlockedIntroductionItems];\n        if (itemsStr) {\n            let itemsIdStr: Array<string> = itemsStr.split(',');\n            itemsIdStr.forEach(id => {\n                try {\n                    this.unlockedIntroductionItem.push(Number(id));\n                } catch (error) {\n                    console.error(error);\n                }\n            });\n        }\n        if (this.unlockedIntroductionItem.indexOf(id) == -1) {\n            this.unlockedIntroductionItem.push(id);\n            GameRecord.globalVariables[this.UnlockedIntroductionItems] = this.unlockedIntroductionItem.toString();\n            GameRecord.saveRecord();\n            return true;\n        }\n        return false;\n    }\n\n    /**\n     * 保存点击过的物品id到存档\n     * @param id 点击过的物品id\n     */\n    saveClickedItemIdToGameRecord(id: number): boolean {\n        this.clickedItem = [];\n        let itemsStr = GameRecord.globalVariables[this.ClickedItems];\n        if (itemsStr) {\n            let itemsIdStr: Array<string> = itemsStr.split(',');\n            itemsIdStr.forEach(id => {\n                try {\n                    this.clickedItem.push(Number(id));\n                } catch (error) {\n                    console.error(error);\n                }\n            });\n        }\n        if (this.clickedItem.indexOf(id) == -1) {\n            this.clickedItem.push(id);\n            GameRecord.globalVariables[this.ClickedItems] = this.clickedItem.toString();\n            GameRecord.saveRecord();\n            return true;\n        }\n        return false;\n    }\n\n\n    /**\n     * 保存解锁的物品id到存档\n     * @param id 解锁的物品id\n     */\n    saveItemIdToGameRecord(id: number): boolean {\n        this.items = [];\n        let itemsStr = GameRecord.globalVariables[this.UnlockItems];\n        if (itemsStr) {\n            let itemsIdStr: Array<string> = itemsStr.split(',');\n            itemsIdStr.forEach(id => {\n                try {\n                    this.items.push(Number(id));\n                } catch (error) {\n                    console.error(error);\n                }\n            });\n        }\n        if (this.items.indexOf(id) == -1) {\n            this.items.push(id);\n            GameRecord.globalVariables[this.UnlockItems] = this.items.toString();\n            // GameRecord.autoSave();\n            return true;\n        }\n        return false;\n    }\n\n    /**\n     * 登录初始化已经解锁的items\n     */\n    loginInitUnlockItems() {\n        //获取已经存在的items\n        this.items = [];\n        let itemsStr = GameRecord.globalVariables[this.UnlockItems];\n        if (itemsStr) {\n            let itemsIdStr: Array<string> = itemsStr.split(',');\n            itemsIdStr.forEach(id => {\n                try {\n                    this.items.push(Number(id));\n                } catch (error) {\n                    console.error(error);\n                }\n            });\n        }\n        //当前剧情应该解锁的所有物品\n        let itemcfg: { itemId: number, plotId: number }[] = this.unlockPlotIds;\n        //获取当前的剧情id\n        let record = GameRecord.getPlotsInfo();\n        for (let i = 0; i < itemcfg.length; i++) {\n            let ele = itemcfg[i];\n            if (ele) {\n                if (record[`${ele.plotId}`] && record[`${ele.plotId}`].cnt >= 1) {\n                    if (this.items.indexOf(ele.itemId) == -1) {\n                        this.items.push(ele.itemId);\n                    }\n                }\n            }\n        }\n        GameRecord.globalVariables[this.UnlockItems] = this.items.toString();\n        // GameRecord.autoSave();\n    }\n\n    /**\n     * 解析item表结果\n     */\n    analysisItemCfg() {\n        let ret: { itemId: number, plotId: number }[] = [];\n        let cfg = ConfigManager.getAllConfig(itemTbl);\n        for (let id in cfg) {\n            ret.push({ itemId: Number(id), plotId: cfg[id].plot });\n        }\n        this._unlockPlotIds = ret;\n    }\n}\n\nexport let UnlockItemModelManager = new UnlockItemModelManager1();"]}