/// <summary> /// 根据ID来生产单位,原来的接口暂时还没有删 /// 实现方式跟之前一样,因为我在spawner上面并没有找到ID属性,所以暂时没有修改接口内部的实现方式 /// </summary> /// <param name="id"></param> /// <param name="targetPos"></param> /// <returns></returns> public bool buildUnitByID(int id, Vector3 targetPos) { string name = IDs.getNameByID(id); Spawner targetSpawner = null; if (SpawnerUnitDict.ContainsKey(name) == true) { targetSpawner = SpawnerUnitDict[name]; } else { Debug.Log("没有查找到对应的spawner"); return(false); } targetSpawner.setTarget(targetPos); if (totalMine >= targetSpawner.getCost()) { if (targetSpawner.build()) { totalMine -= targetSpawner.getCost(); } else { Debug.Log("无法建造"); return(false); } } return(false); }