public SceneUnit AddUnitComponentByType(GameObject go, UnitClassType type) { SceneUnit unit = null; switch (type) { // case UnitClassType.SceneCat: // unit = go.AddComponent<SceneCat> (); // break; // case UnitClassType.SceneCatLitter: // unit = go.AddComponent<SceneCatLittle> (); // break; default: unit = go.AddComponent <SceneUnit>(); break; } unit.m_Type = type; return(unit); }
public SceneCatLittle CreateSceneCatLittle(int baseID, Vector3 position, Quaternion rotation, bool defaultLocal = true) { characterBase baseData = BaseDataManager.Instance.GetTableDataByID <characterBase>(baseID); if (baseData == null) { //int iiii = 0; } UnitClassType classType = BaseDataManager.Instance.GetTableDataByID <characterBase>(baseID).GetCreepClassType(); GameObject go = new GameObject(); go.name = "catlittle"; SceneCatLittle catlittle = AddUnitComponentByType(go, classType) as SceneCatLittle; catlittle.id = GenerateObjectID(); catlittle.Init(baseID); go.transform.position = position; go.transform.rotation = rotation; if (defaultLocal) { go.transform.position = new Vector3(baseData.pos[0], baseData.pos[1], baseData.pos[2]); go.transform.rotation = Quaternion.Euler(new Vector3(baseData.quaternion[0], baseData.quaternion[1], baseData.quaternion[2])); } go.transform.parent = this.transform; //cat.OnCreated(); _SceneUnitList.Add(catlittle.id, catlittle); return(catlittle); }
public ScenePet CreateScenePet(int baseID, Vector3 position, Quaternion rotation, bool defaultLocal = true /*从表格里读,如果是false则直接设置*/) { characterBase baseData = BaseDataManager.Instance.GetTableDataByID <characterBase>(baseID); if (baseData == null) { //int iiii = 0; } UnitClassType classType = baseData.GetCreepClassType(); GameObject go = new GameObject(); go.name = "pet"; ScenePet pet = AddUnitComponentByType(go, classType) as ScenePet; pet.id = GenerateObjectID(); pet.Init(baseID); go.transform.position = position; go.transform.rotation = rotation; if (defaultLocal) { go.transform.position = new Vector3(baseData.pos[0], baseData.pos[1], baseData.pos[2]); go.transform.rotation = Quaternion.Euler(new Vector3(baseData.quaternion[0], baseData.quaternion[1], baseData.quaternion[2])); } go.transform.parent = this.transform; //cat.OnCreated(); _SceneUnitList.Add(pet.id, pet); return(pet); }