/// <summary> /// 场景中加载怪物模型(单个添加) /// </summary> /// <returns>The load point.</returns> /// <param name="info">Info.</param> /// <param name="index">Index.</param> /// <param name="callback">Callback.</param> public void SceneLoadPoint(MonsterType type, MonsterInfo info, int index) { if (mapId == 0) { LogMgr.LogError("请先选择地图!"); return; } if (!parentObj.ContainsKey(type) || parentObj[type] == null) { GameObject p = (GameObject)UnityEngine.Object.Instantiate(CoreEntry.gResLoader.Load(_parentPrefab)); p.name = parentStr[type]; p.transform.position = Vector3.zero; parentObj[type] = p; } MonsterItem tt = new MonsterItem(); if (!items.ContainsKey(type)) { items[type] = new Dictionary <int, GameObject>(); } if (items[type].ContainsKey(info.index)) { tt = items[type][info.index].GetComponent <MonsterItem>(); tt.SetV(info); } else { GameObject obj = (GameObject)Instantiate(CoreEntry.gResLoader.Load(_itemPrefab)); obj.name = info.name.ToString(); tt = obj.GetComponent <MonsterItem>(); obj.transform.parent = parentObj[type].transform; tt.RefreshData(info); items[type][info.index] = obj; } // if (!items.ContainsKey(type)) // { // items[type] = new List<GameObject>(); // } //if (items[type].Count >= index + 1) { // tt = items[type][index].GetComponent<MonsterItem>(); // tt.SetV(info[index]); //} else { // GameObject obj = (GameObject)UnityEngine.Object.Instantiate(Resources.Load(itemStrPath[type])); // obj.name = index.ToString(); // tt = obj.GetComponent<MonsterItem>(); // obj.transform.parent = parentObj[type].transform; // tt.RefreshData(info[index]); // items[type].Add(obj); //} // tt.gameObject.name = item.Value[i].name; // return info [index]; }
public void SceneLoadPoint(Dictionary <MonsterType, Dictionary <int, MonsterInfo> > all) { foreach (var item in all) { if (!parentObj.ContainsKey(item.Key) || parentObj[item.Key] == null) { GameObject p = (GameObject)UnityEngine.Object.Instantiate(CoreEntry.gResLoader.Load(_parentPrefab)); p.name = parentStr[item.Key]; p.transform.position = Vector3.zero; parentObj[item.Key] = p; } if (!items.ContainsKey(item.Key)) { items[item.Key] = new Dictionary <int, GameObject>(); } if (item.Value.Count > 0) { foreach (var _item in item.Value) { MonsterItem tt = new MonsterItem(); if (items[item.Key].ContainsKey(_item.Value.index)) { tt = items[item.Key][_item.Value.index].GetComponent <MonsterItem>(); tt.RefreshData(_item.Value); } else { GameObject obj = (GameObject)UnityEngine.Object.Instantiate(CoreEntry.gResLoader.Load(_itemPrefab)); obj.name = _item.Value.name.ToString(); tt = obj.GetComponent <MonsterItem>(); obj.transform.parent = parentObj[item.Key].transform; tt.RefreshData(_item.Value); items[item.Key][_item.Value.index] = obj; } } } } }