public void LoadListView(LoadType type = LoadType.MapObject) { img_selected.transform.SetParent(transform, true); img_selected.transform.position = Vector3.one * 100000f; foreach (var p in _child) { GameObject.Destroy(p.gameObject); } _child.Clear(); if (type == LoadType.Weapon) { var list = MapEditorConfig.GetWeapons(); foreach (var id in list) { var obj = MapLoader.ins.LoadEditorV1("OneMapObjectWeapon"); //PrefabsMgr.Load("Map/Prefabs/Editor/OneMapObjectWeapon"); if (obj == null) { break; } obj = GameObject.Instantiate <GameObject>(obj); // Debug.LogError("load id111111111111111111111111111111111111 = " + id); obj.transform.SetParent(_obj_content.transform, false); bool ok = obj.GetComponentFully <OneMapObjectWeapon>().InitData(id); if (!ok) { GameObject.DestroyImmediate(obj); break; } _child.Add(obj); } } else if (type == LoadType.MapObject) { var list = MapEditorConfig.GetMapObject(MapEditorConfig.CurrentSelectTheme); //加载物件 foreach (var p in list) { var obj = MapLoader.ins.LoadEditorV1("OneMapObject"); //PrefabsMgr.Load("Map/Prefabs/Editor/OneMapObject"); if (obj == null) { break; } obj = GameObject.Instantiate <GameObject>(obj); obj.transform.SetParent(_obj_content.transform, false); bool ok = obj.GetComponentFully <OneMapObjectBase>().InitData(p); if (!ok) { GameObject.DestroyImmediate(obj); break; } _child.Add(obj); } } this.ResizeContent(_child.Count); }
public void LoadListView(int group_id = 1, LoadType type = LoadType.MapObject) { _group_id = group_id; if (img_selected != null) { img_selected.transform.SetParent(transform, true); img_selected.transform.position = Vector3.one * 100000f; } foreach (var p in _child) { GameObject.Destroy(p.gameObject); } _child.Clear(); if (type == LoadType.Weapon) { var list = MapEditorConfig.GetWeapons(); foreach (var id in list) { var obj = MapLoader.ins.LoadEditorV1("OneMapObjectWeapon"); if (obj == null) { break; } obj = GameObject.Instantiate <GameObject>(obj); obj.transform.SetParent(_obj_content.transform, false); bool ok = obj.GetComponentFully <OneMapObjectWeapon>().InitData(id); if (!ok) { GameObject.DestroyImmediate(obj); break; } _child.Add(obj); } } else if (type == LoadType.MapObject) { var list = GameConfig.instance.GetComponentsByGroup(group_id); foreach (var value in list) { var obj = MapLoader.ins.LoadEditorV1("OneMapObject"); if (obj == null) { break; } obj = GameObject.Instantiate <GameObject>(obj); obj.transform.SetParent(_obj_content.transform, false); bool ok = obj.GetComponentFully <OneMapObjectBase>().InitData(value.id); if (!ok) { GameObject.DestroyImmediate(obj); break; } //切换分组重新设置之前已经选中的组件 if ((value.id == MapEditorInputMgr.ins.currentSelectId) && (MapEditorInputMgr.ins.currentSelectId > 0)) { if (img_selected != null) { img_selected.transform.SetParent(obj.transform, true); img_selected.transform.localPosition = Vector3.zero; } } _child.Add(obj); } //重新加载正常组件,进入正常组件编辑模式 if (list.Length > 0) { MapEditorUIMgr.ins.GetPanel <UIPanelMapEditor>().ChangeToEditObjectMode(); } } else if (type == LoadType.SpawPoint) { var list = GameConfig.instance.GetComponentsByGroup(group_id); foreach (var value in list) { var obj = MapLoader.ins.LoadEditorV1("OneMapObject"); if (obj == null) { break; } obj = GameObject.Instantiate <GameObject>(obj); obj.transform.SetParent(_obj_content.transform, false); bool ok = obj.GetComponentFully <OneMapObjectBase>().InitData(value.id); if (!ok) { GameObject.DestroyImmediate(obj); break; } //切换分组重新设置之前已经选中的组件 if ((value.id == MapEditorInputMgr.ins.currentSelectId) && (MapEditorInputMgr.ins.currentSelectId > 0)) { if (img_selected != null) { img_selected.transform.SetParent(obj.transform, true); img_selected.transform.localPosition = Vector3.zero; } } _child.Add(obj); } } this.ResizeContent(_child.Count); if (_child.Count > 0) { this.Text_none.gameObject.SetActive(false); } else { this.Text_none.gameObject.SetActive(true); } }