前言:
??? 市場很多RGP游戲,無論是手游還是網(wǎng)游赊锚,而RGP游戲重要的一部分就是劇情成箫,玩家與NPC的對話系統(tǒng),今天就來給大家講解一下Unity的XML解析之NPC對話系統(tǒng)腹殿。下面我們來看一個(gè)案例独悴。
第一步:
? 我們來寫一個(gè)XML文件:如下????????
第二步:
?我們對上面的XML文檔根據(jù)ID進(jìn)行解析:首先我們做了一個(gè)單例例书,方面NPC對話類,對解析內(nèi)容的調(diào)用刻炒。然后我們創(chuàng)建兩個(gè)List集合决采,分別用來存儲(chǔ)解析出來的玩家和NPC對話的內(nèi)容文本。
解析方法:我們根據(jù)NPC的id坟奥,在這里我們可以理解為NPC的“等級(jí)”,因?yàn)楹竺嫖視?huì)講解到當(dāng)玩家等級(jí)和NPC的ID相等時(shí)树瞭,顯示出與玩家等級(jí)相對應(yīng)的對話(一個(gè)NPC有多段對話時(shí))
第三步:我們來寫NPC對話類
當(dāng)我們的玩家與NPC觸發(fā)時(shí),我們判斷玩家與NPC的等級(jí)爱谁,如果等級(jí)相等的話晒喷,我們首先調(diào)用XML解析方法,然后把NPC的對話面板顯示出來访敌,激活對話厨埋。為了防止多次觸發(fā)捐顷,當(dāng)?shù)燃?jí)相等時(shí),我們把玩家的導(dǎo)航停止迅涮。對話完成時(shí),在激活導(dǎo)航叮姑。如果不相等當(dāng)然不能對話了唉地。(在此小郭我沒有做任何處理)
第四部:UI相關(guān)設(shè)置展示
第五步:我們來看一下運(yùn)行成果吧
第六步:注意事項(xiàng)
注意事項(xiàng):一:此演示是玩家行走用的導(dǎo)航耘沼。
????????????????? 二:玩家有Rigidbody和Collider屬性
????????????????? 三:玩家要有觸發(fā)器哦