我在C#中收集了以下收集到的服務器(Firebase Remote Config)。Unity - 使用不同的值填充檢查器
我想在Unity檢查器本身而不是代碼中添加值。正如你所看到的,值可以是任何類型(bool,string,int等)。
System.Collections.Generic.Dictionary<string, object> defaults =
new System.Collections.Generic.Dictionary<string, object>();
defaults.Add("config_test_string", "default local string");
defaults.Add("config_test_int", 1);
defaults.Add("config_test_float", 1.0);
defaults.Add("config_test_bool", false);
基本上,我已經做到了這一點:
[Serializable]
public struct RemoteValueConfig {
public string key;
public object defaultValue;
}
public RemoteValueConfig[] valuesToFetch;
但它不工作,因爲在統一檢查「對象」類型將不會出現。如果我只需要字符串對象,我只需用一個字符串類型來代替defaultValue
這是對象類型,這將解決我的問題。但我可以有int,float,strings,bool等。
如何在此場景(以及使用什麼)中填充值,以使用Unity檢查器?
哦鴨的緣故,做我做的東西(見我的回答)時,爲什麼我沒有想到泛型。那麼,至少它是可重構的。 – Draco18s
嗯,有趣。我會看一看。謝謝。 – rootpanthera
@ Draco18s哈哈我其實不熟悉Unity,所以我的第一個直覺是'只是讓你的類型變得通用' - 但是一旦我搜索了一下,我意識到你不能在Unity中序列化泛型,所以這是我的中間路線 –