public void Init(ViewConfig elementConfig) { if (elementConfig is ElementConfig) { this.elementConfig = elementConfig as ElementConfig; name = elementConfig.Name; foreach (var attribute in BeforeInitAttribute(this.elementConfig.Attributes)) { MB2CustomEditorView view; if (!ElementViewManager.GetView(attribute.Type, out view)) { view = new NotSupportView(); } view.Init(attribute); attributeViews.Add(attribute.Name, view); } AfterInitAttribute(attributeViews); foreach (var element in BeforeInitNestedElement(this.elementConfig.NestedElements)) { MB2CustomEditorView view; if (!ElementViewManager.GetView(element.Name, out view)) { view = new ElementView(); } view.Init(element); nestedElementExpanded.Add(element.Name, true); nestedElementViews.Add(element.Name, view); } AfterInitNestedElement(nestedElementViews); } }
public void CreateElement() { ElementConfig element = ElementList?.GetElementById(_cellValue) ?? null; if (element != null) { CreateDot(element); } }
public void Init(ViewConfig config) { if (config is ElementConfig && (config as ElementConfig).IsContainer) { elementConfig = config as ElementConfig; string nameSpace = elementConfig.DataSetConfig.NameSpace; var filters = elementConfig.NestedElements.Select((element) => "l: " + element.Name + "@" + nameSpace); if (filters.Any()) { filter = string.Join(" ", filters); } else { filter = null; } } ForceUpdate(); }
private void CreateDot(ElementConfig element) { _dot = Instantiate(dotPrefab, transform); _dot.transform.localScale = new Vector3(0.5f, 0.5f, 0.5f); _dot.SetConfig(element); }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// 加载 /// </summary> public void load() { if (_strModelID.Length == 0) { return; } _pObjModelData = PlayerManager.ModelData.getGameModelData(_strModelID); if (_pObjModelData == null) { //Utils.LogSys.LogWarning("Model config data is missed. " + _strModelID); return; } //获取数据 _listBindPoints = _pObjModelData._listModelBps; _listAnimEvent = _pObjModelData._listAnimEvents; _listAnimations = _pObjModelData._listAnimations; //获取模型部件列表 //模型 = 部件加载 + 部件组装 + 材质 ElementConfig cfg = (ElementConfig)ConfigDataMgr.getInstance().GetData(ConfigDataType.ModelElementConfig); ElementConfigItem modelData = cfg.GetDataByKey(_strModelID); if (modelData == null) { Utils.LogSys.LogWarning(" ElementConfigItem is null " + _strModelID); } string strLev = levToWeaponAndMaterialIdx(); List <string> listTemp = new List <string>(); for (int i = 0; i < modelData.getKeys().Count; i++) { var strKey = modelData.getKeys()[i]; if (strKey == "key") { continue; } if (!(bool)modelData[strKey]) { continue; } var strComponent = strKey.ToLower().Contains("weapon") && strLev != "" ? strKey + "_" + strLev : strKey; //忽略部件不创建 if (!_listIgnoreComponents.Contains(strComponent)) { _listUncomplete.Add(strComponent); listTemp.Add(strComponent); } } for (int i = 0; i < listTemp.Count; i++) { string strKey = listTemp[i]; _listElement.Add(new ModelElement(strKey, strKey, _strModelID, this)); } loadBaseElement(); }
public void SetConfig(ElementConfig config) { _config = config; }