void CreateLevel() //创建底层关卡 { Transform last = lineList[lineList.Count - 1]; //获取底层关卡,物体将从该层产生 List <Transform> sonList = GetAllChild(last); //获取底层所有小方格 //生成一个几何体(每次创建关卡至少有一个几何体) Transform enemy = levelcreate.CreateEnemy(); int index = Random.Range(0, last.childCount); //随机定位一个格子 enemy.position = last.GetChild(index).position; //将几何体创建在该格子内 enemy.parent = last.GetChild(index); //几何体作为该格子的子物体可随关卡层移动 //然后在其它格子里随机生成物体 for (int i = 0; i < sonList.Count; i++) { if (i != index) //除了刚才已经有敌人的格子外 { //声明一个变量接受生成的物体 Transform obj = levelcreate.PaneFactory(); if (obj != null) //如果成功生产出东西 { obj.position = sonList[i].position; //将该东西生产在此方格 obj.parent = sonList[i]; //作为该方格的子物体随关卡层移动 } } } }
void CreateLevel() //创建底层关卡 { Transform last = lineList[lineList.Count - 1]; //获取最下层关卡,敌人将从该层产生 List <Transform> sonList = GetAllChild(last); //获取最下层所有小方格 Transform enemy = levelcreate.CreateEnemy(); //生成敌人 int index = Random.Range(0, last.childCount); //随机定位一个格子 enemy.position = last.GetChild(index).position; //将敌人创建在该格子 enemy.parent = last.GetChild(index); //该敌人作为该格子的子物体可随关卡层移动 Transform obj; //声明用于接收格子工厂里生产的东西 for (int i = 0; i < sonList.Count; i++) { if (i != index) //除了刚才已经有敌人的格子外 { obj = levelcreate.PaneFactory(); //生产东西 if (obj != null) //如果成功生产出东西 { obj.position = sonList[i].position; //将该东西生产在此方格 obj.parent = sonList[i]; //作为该方格的子物体随关卡移动 } } } }
void CreateLevel() { Transform last = lineList[lineList.Count - 1]; List <Transform> sonList = GetAllChild(last); Transform enemy = levelCreate.CreateEnemy(); int index = Random.Range(0, last.childCount); enemy.position = last.GetChild(index).position; enemy.parent = last.GetChild(index); for (int i = 0; i < sonList.Count; i++) { if (i != index) { Transform obj = levelCreate.PaneFactory(); if (obj != null) { obj.position = sonList[i].position; obj.parent = sonList[i]; } } } }