public static Type GetDataClass(CmsGameObject gameObject) { try { object[] attributes = gameObject.GetType().GetCustomAttributes(typeof(DataAttribute), true); if (attributes.Length > 0) { Type t = (attributes[0] as DataAttribute)?.linkedType; return(t); } } catch (Exception e) { Debug.Log("Error" + e.Message); } return(null); }
public bool TryAddModule(Type styleType, CmsGameObject cmsGameObject = null) { if (IsModulePresent(styleType)) { return(false); } CmsModuleData moduleData = Helpers.CreateModuleObject(styleType); if (cmsGameObject != null) { moduleData.Populate(cmsGameObject); } modules.Add(styleType, moduleData); return(true); }
public bool IsModulePresent(CmsGameObject cmsObject) { return(modules.ContainsKey(Helpers.GetDataClass(cmsObject))); }
public bool TryAddModule(CmsGameObject cmsGameObject) { return(TryAddModule(Helpers.GetDataClass(cmsGameObject), cmsGameObject)); }
public CmsModuleData GetModule(CmsGameObject cmsObject) { return(GetModule(Helpers.GetDataClass(cmsObject))); }