// add charic public Charic Charic_add(int _id, int _table_index, Charic.eType _type) { Charic kCharic = new Charic(); switch ((Charic.eType)_type) { case Charic.eType.Hero: case Charic.eType.Enemy: case Charic.eType.Boss: default: { kCharic.ID = _id; //id kCharic.kType = (Charic.eType)_type; //kCharic.kGO = _go; //kCharic.kTable = CGameTable.Instance.Get_TableInfo_charic(_table_index); //kCharic.kGO = CGame.Instance.GameObject_from_prefab("Prefabs/" + kCharic.kTable.resource, null); kCharic.kGO.name = "charic_" + kCharic.ID; //kCharic.kGO.name = "charic_" + _table_index; //kCharic.kGO.transform.localScale = new Vector3(kCharic.kTable.scale, kCharic.kTable.scale, kCharic.kTable.scale); //kCharic.kEC = (EffectController)kGO.AddComponent<EffectController>(); //kCharic.kEC.kGameObject = kCharic.gameObject; } break; } //Charic_gameobject_set( kCharic ); //client kCharicList.Add(kCharic); return(kCharic); }
//find public Charic Charic_find(int _id) { for (int i = 0; i < kCharicList.Count; i++) { Charic obj = (Charic)kCharicList[i]; if (obj == null) { continue; //캐릭 사라지는 경우. } if (obj.ID == _id) { return(obj); } } return(null); }
// 필요한 캐릭터를 반환 ------------------------------------------ 20170413 public ArrayList FindTarget(Charic _charic) { ArrayList TargetArray = new ArrayList(); ArrayList SortArray = new ArrayList(); //조건에 맞추어 정렬. foreach (Charic kCharic in kCharicList) { if (kCharic.bActive == false) { continue; } if (kCharic.ID == _charic.ID) { continue; //자신제외 } if (kCharic.kType == _charic.kType) { continue; //아군 제외. } if (kCharic.IsDie()) { continue; } //float fDistance = Vector3.Distance(kCharic.kGO.transform.position, _charic.kGO.transform.position); //SortArray.Add(new SortunitClass() { m_value1 = fDistance, m_charic = kCharic }); } if (SortArray.Count > 0) { // 작은 순서대로 정렬. SortArray.Sort(new SortunitClassCompare()); foreach (SortunitClass sort in SortArray) { TargetArray.Add(sort.m_charic); } } return(TargetArray); }
//remove public void Charic_remove(Charic _charic) { Destroy(_charic.kGO); kCharicList.Remove(_charic); }