GameFramework框架——ConfigComponent
ConfigComponent是一個載入解析配置表,並儲存解析後內容的框架類
載入並解析方法:
GameEntry.Config.ReadData("Assets/.../...", this); //第二個引數即ne.UserData, 用於識別
相關事件監聽:
GameEntry.Event.Subscribe(LoadConfigSuccessEventArgs.EventId, OnLoadConfigSuccess);
GameEntry.Event.Subscribe(LoadConfigFailureEventArgs.EventId, OnLoadConfigFailure);
回撥方法:
private void OnLoadConfigSuccess(object sender, GameEventArgs e)
{
LoadConfigSuccessEventArgs ne = (LoadConfigSuccessEventArgs)e;
if (ne.UserData != this)
{
return;
}
Log.Info("Load config '{0}' OK.", ne.ConfigAssetName);
}
private void OnLoadConfigFailure(object sender, GameEventArgs e)
{
LoadConfigFailureEventArgs ne = (LoadConfigFailureEventArgs)e;
if (ne.UserData != this)
{
return;
}
Log.Error("Can not load config '{0}' from '{1}' with error message '{2}'.", ne.ConfigAssetName, ne.ConfigAssetName, ne.ErrorMessage);
}
使用DefaultConfigHelper類解析DefaultConfig檔案
DefaultConfig檔案內容:
# 預設配置
# 配置項 策劃備註 配置值
Game.Id Star Force
Scene.Menu 1
Scene.Main 2
解析後將內容以鍵值對形式儲存在ConfigManager裡的 字典: private readonly Dictionary<string, ConfigData> m_ConfigDatas
ConfigData是一個類,有int, float, bool ,string 成員, 也就是說它只支援這四種型別的數值。
Lua形式表達就是解析成下面這樣子。
{
["Scene.Menu"] = 1,
["Scene.Main"] = 2,
}
根據key獲取內容,注意一定要選對方法!
GameEntry.Config.GetInt("Scene.Menu");//可傳第二個引數預設值
//GetBool , GetFloat, GetString
相關文章
- GameFramework食用指南GAMFramework
- Unity GameFramework丨(八)場景UnityGAMFramework
- Unity GameFramework丨(二十三)使用 AssetBundle 編輯工具UnityGAMFramework
- 2、資源編輯器篇 -- 資源分析器(ResourceAnalyzer) 讀取 資源依賴資訊 基於GF (EllanJiang / GameFramework)GAMFramework
- Android精通之OrmLite資料庫框架,Picasso框架,Okio框架,OKHttp框架AndroidORM資料庫框架HTTP
- bo 框架之 beego 框架 model curd框架Go
- 微服務框架-dubbo整合nacos框架微服務框架
- 最好的 Go 框架:沒有框架?Go框架
- golang web框架,golang版本laravel 框架GolangWeb框架Laravel
- 前端框架開發之Niu框架——從零學框架的小白前端框架
- Django框架,Flask框架和Tornado框架各有什麼優缺點Django框架Flask
- 執行時框架,編譯時框架框架編譯
- 【SSH框架】系列之 Spring 整合 Hibernate 框架框架Spring
- Spring框架 - Spring和Spring框架組成Spring框架
- HTML 框架HTML框架
- ForkJoin框架框架
- LayUI框架UI框架
- MVC框架MVC框架
- picasso框架框架
- Gorm框架GoORM框架
- express框架Express框架
- Hibernate框架框架
- SSM框架SSM框架
- 全新框架框架
- 前端框架前端框架
- Truffle框架框架
- cms 框架框架
- Mybatis框架MyBatis框架
- Scrapy框架框架
- 集合框架框架
- 基本框架框架
- 【JavaScript框架封裝】公共框架的封裝JavaScript框架封裝
- Scrapy框架的使用之Scrapy框架介紹框架
- java框架之Hibernate框架知識點整理。Java框架
- Django是同步框架還是非同步框架Django框架非同步
- 中介軟體增強框架之-CaptureFramework框架框架APTFramework
- Flutter框架分析(四)-- Flutter框架的執行Flutter框架
- wsgiref模組、web框架、django框架簡介Web框架Django