/// <summary> /// 旋转动画 /// </summary> private void rotateAnim() { int listCount = mListObj.Count; float radius = 0; if (mGameStartControl.picAllWith > mGameStartControl.picAllHigh) { radius = mGameStartControl.picAllHigh; } else { radius = mGameStartControl.picAllWith; } List <Vector3> listCircleVec = GeometryUtil.getCircleVertices(startPosition, radius * 1.9f, listCount, true, CircleStartVectorEnum.Left); for (int i = 0; i < listCount; i++) { GameObject itemObj = mListObj[i]; Transform itemTF = itemObj.transform; Vector3[] arrayCircleVec = DevUtil.listToArrayFormPosition(listCircleVec, i); itemTF.DOPath(arrayCircleVec, roatateTime).OnComplete(delegate() { GameStartAnimationManager.PuzzlesStartPre(itemObj); }); } Tweener gameStartTweener = mGameStartControl .transform .DOScale(new Vector3(1, 1, 1), roatateTime) .OnComplete(delegate() { mGameStartControl.gameStart(); }); }