private void NextRound() { DiskFactory df = Singleton <DiskFactory> .Instance; for (int i = 0; i < diskNumber; i++) { diskQueue.Enqueue(df.getDisk(currentRound)); } actionManager.StartThrow(diskQueue); }
void update() { if (actionManager.DiskNumber == 0 && gameState == GameState.RUNNING) { gameState = GameState.ROUND_FINISH; } if (actionManager.DiskNumber == 0 && gameState == GameState.ROUND_START) { currentRound = currentRound + 1; //NextRound下一个回合 DiskFactory df = Singleton <DiskFactory> .Instance; //取出10个飞碟到列表中 for (int i = 0; i < diskNumber; i++) { diskQueue.Enqueue(df.getDisk(currentRound)); } //开始仍飞碟,初始化动作管理器的飞碟数 actionManager.StartThrow(diskQueue); actionManager.DiskNumber = 10; gameState = GameState.RUNNING; } if (time > 1) { //ThrowDisk仍飞碟 if (diskQueue.Count != 0) { GameObject disk = diskQueue.Dequeue(); //随机确定飞碟出现的位置 Vector3 position = new Vector3(0, 0, 0); float y = UnityEngine.Random.Range(0f, 4f); position = new Vector3(-disk.GetComponent <DiskData>().direction.x * 7, y, 0); disk.transform.position = position; disk.SetActive(true); } time = 0; } else { time += Time.deltaTime; } }