「GameMenu」修訂間的差異
(创建页面,内容为“[https://docs.bannerlordmodding.com/_csharp-api/campaignsystem/gamemenu.html <big>访问源文档</big>]<br> 骑马与砍杀2:霸主 MOD API|<big>返回目录</b…”) |
小 (已保护“GameMenu”([编辑=仅允许管理员](无限期)[移动=仅允许管理员](无限期))) |
(無差異)
|
於 2020年4月24日 (五) 17:33 的修訂
訪問源文檔
返回目錄
戰役中的所有菜單都由 GameMenuManager 管理,要添加菜單你必須使用 Campaign 類提供的方法。
添加新菜單使用:
CampaignGameStarter.AddGameMenu(string menuId, string menuText, OnInitDelegate initDelegate, MenuOverlayType overlay = MenuOverlayType.None, MenuFlags menuFlags = GameMenu.MenuFlags.none, object relatedObject = null) delegate void OnInitDelegate(MenuCallbackArgs args);
這個覆蓋定義了右上角的字符列表是否可見。
給菜單添加一個新設置使用:
CampaignGameStarter.AddGameMenuOption(string menuId, string optionId, string optionText, OnConditionDelegate condition, OnConsequenceDelegate consequence, bool isLeave = false, int index = -1) bool OnConditionDelegate(MenuCallbackArgs args); void OnConsequenceDelegate(MenuCallbackArgs args);
你可以將選項添加到現有菜單中,對此索引下標(Index)可以準確地將其插入到其它選項前(默認情況下是插入到最後)。
所提供的條件方法有兩重功能:
- 啟動、關閉選項(通過返回值)
- 更改圖標(通過傳遞參數)