《我的來世是個(gè)包裹》更新日志0711:2Lto3L第七天
*補(bǔ)之前缺失的內(nèi)容:
二重層級(jí)結(jié)構(gòu)改進(jìn)成三重層級(jí)結(jié)構(gòu)·第七天:
然后是反向定位。就是根據(jù)玩家存檔進(jìn)度決定哪個(gè)節(jié)點(diǎn)顯示哪個(gè)節(jié)點(diǎn)不顯示。
首先需要先改寫玩家存檔之節(jié)點(diǎn)解鎖狀態(tài)。之前是一個(gè)字符串,每一個(gè)字節(jié)對(duì)應(yīng)于一個(gè)節(jié)點(diǎn)?,F(xiàn)在的話需要改成字符串List。List<string>的每一個(gè)元素對(duì)應(yīng)一條時(shí)間線。這樣的話就需要定義一個(gè)類來管理了。結(jié)構(gòu)體也不是不可以,但是沒有類方便。畢竟改寫存檔時(shí)需要同步修改其它全局變量。
然后我一想,既然都建新的類了,為什么還用List<string>呢……干脆List<List<int>>不就好了……定位和存取更方便。而且增加或刪除節(jié)點(diǎn)也很方便。
然后就能反向定位了。加載索引表的時(shí)候順便創(chuàng)建一個(gè)List<List<int>>,建立起“時(shí)間線#大段落號(hào)”到“節(jié)點(diǎn)圖標(biāo)總序號(hào)”的映射。這樣在更改存檔的時(shí)候,就能根據(jù)時(shí)間線和大段落號(hào)定位到節(jié)點(diǎn)圖標(biāo)決定它是否在劇情網(wǎng)界面中顯示。
這一塊就完成了。
標(biāo)簽: