鋼鐵雄心4 GUI教程 P3窗口類型與圖像資源(一)

上一P教程著重介紹了ui實(shí)現(xiàn)圖像文本變化的原理,這一期將會(huì)講解如何將Scripted gui關(guān)聯(lián)原版ui以及不同類型的圖像資源
鋼4自帶的gui大多無法直接修改,因?yàn)樗鼈?span id="s0sssss00s" class="color-pink-03">后端文件無法觸及,但幸運(yùn)的是,P社留下了Scripted gui這一個(gè)后門,理論上,原版任何“窗口”都可以作為載體,承接新建的Scripted gui
這一期將以KX的領(lǐng)導(dǎo)人擴(kuò)展顯示和TNO的城市介紹、緊張度動(dòng)畫為例子,講解父窗口、窗口類型、圖像資源

1.領(lǐng)袖拓展顯示
前端設(shè)計(jì)
依然是讓我們構(gòu)思這個(gè)界面,我們需要在外交面板附加一個(gè)按鈕,點(diǎn)擊這個(gè)按鈕就會(huì)切換顯示這個(gè)國家的“二把手”,將目前領(lǐng)袖更換為二號(hào)人物對(duì)應(yīng)的頭像
由于對(duì)應(yīng)素材都可以使用原版,那么我們就直接引用原版GFX文件
首先完成窗口的編寫:

后端編寫
首先是關(guān)聯(lián)對(duì)應(yīng)的前端窗口,此處使用selected_country_context

context_type(窗口類型)有以下幾種,它將改變與窗口互動(dòng)時(shí)的默認(rèn)scope(作用域)

player_context:玩家窗口,最基本也是最常用的類型,ROOT為該窗口展示給的國家selected_country/state_context:所選取國家/省份?窗口,多用于附著在外交/省份詳情 界面,此時(shí)THIS變更為選取中的國家/省份,而ROOT則是操作這個(gè)面板的國家
decision_category:決議GUI,可以在決議類型中添加到?jīng)Q議面板(參考原版美國國會(huì))

父窗口選項(xiàng)有以下幾種,將某個(gè)窗口關(guān)聯(lián)到父窗口時(shí),只有打開對(duì)應(yīng)的父窗口才會(huì)顯示新建窗口,并且新建窗口也會(huì)隨之關(guān)閉而消失

同樣的,也可以直接尋找對(duì)應(yīng)窗口的窗口名字,并且使用parent_window_name,將新加窗口直接附加在對(duì)應(yīng)界面,因此,在某種意義上,這兩種寫法是等效的

接下來繼續(xù)構(gòu)思,我們將為英國和意大利添加切換顯示為國王,因此我們需要讓我們的窗口在它們有國王的時(shí)候可見


然后完成按鈕效果,點(diǎn)擊時(shí)顯示國王,再次點(diǎn)擊切回原來的領(lǐng)袖,通過控制二號(hào)人物肖像是否可見來實(shí)現(xiàn)


注意這個(gè)地方對(duì)于THIS與ROOT的使用,當(dāng)前情況下THIS為所選國家,只有我們選中英國或者意大利時(shí)(通過idea來檢測),才會(huì)滿足相應(yīng)trigger并且顯示界面,而ROOT則為當(dāng)前操作界面的國家
最后就是為對(duì)應(yīng)國王分配對(duì)應(yīng)肖像與文本,參考P2




以下是完整的后端代碼:

最后進(jìn)入游戲測試


(本來預(yù)計(jì)1p全講完的,但是貌似內(nèi)容過多于是分三期了,絕對(duì)不是沒內(nèi)容水稿件