// 图块下落 private void fallBlock() { //获取下落距离列表 int[,] fallDistance = dataDealer.Fall(); //遍历列表 for (int i = 0; i < DataDefine.RowNum; i++) { for (int j = 0; j < DataDefine.ColNum; j++) { int distance = fallDistance [i, j]; fall(myGameObject [i, j], distance); } } //填补 List <FillPiece> fillList; int[,] newData = dataDealer.Fill(out fillList); foreach (FillPiece piece in fillList) { Vector3 position = Vector3.zero; position.x = piece.col; position.y = 0; GameObject block = Instantiate(baseElementType [piece.type], position, Quaternion.identity) as GameObject; fall(block, piece.row); } //刷新myGameObject }