// Use this for initialization void Start() { DontDestroyOnLoad(this.gameObject); LoadData("EffectArray", Excel_EffectArray.Instance().LoadData); LoadData("Effect", Excel_Effect.Instance().LoadData); Debug.Log("DataManager add Finshed "); }
public static Excel_Effect Instance() { if (null == mInstance) { mInstance = new Excel_Effect(); } return(mInstance); }
public static void AddScripts(GameObject go, Data_EfffectArray data) { for (int i = 0; i < data.effects.Count; i++) { int eid = data.effects[i]; Data_Effect de = Excel_Effect.Instance().GetById(eid); Type t = Type.GetType(de.name); Component c = go.AddComponent(t); FieldInfo[] fis = t.GetFields(); foreach (FieldInfo fi in fis) { foreach (var item in de.effect) { if (fi.Name == item.Key) { fi.SetValue(c, item.Value); } } } } }