IEnumerator Processing()
    {
        while (true)
        {
            yield return(new WaitUntil(() => gameState.GetGameState() == GameState.processing));//processing상태까지 기달

            //processing상태 == 모두가 카드를 내고 진행화면이 나오길 기다리고 있는 상태

            //yield return new WaitUntil(() => GameObject.FindGameObjectsWithTag("Card").Length - PhotonNetwork.PlayerList.Length + 1
            //== GameStaticVariable.maxHand);//모든 카드가 다 소환될때까지 기달


            processingCards = GameObject.FindGameObjectsWithTag("Card");
            for (int i = 0; i < processingCards.Length; i++)
            {
                processingCards[i].GetComponent <CardGameObject>().GetCard().SetIsReversed(false);
            }//뒷면 까기

            yield return(new WaitForSeconds(compareTime));//승부전에 대기시간

            if (PhotonNetwork.IsMasterClient)                          //masterclient는 게임진행하고 결과통보
            {
                if (player.Brawl(out SubmittedInfo winner) == true)    //가위 바위 보!
                {
                    player.AnounceResult(winner.GetActorNum(), false); //이놈이 이기고 나머지 짐
                }
                else
                {
                    player.AnounceResult(0, true);//무승부
                }
            }

            yield return(new WaitForSeconds(resultingTime));

            player.ResultDistributeCard();
            player.ClearData();
            Clearing();
            yield return(new WaitUntil(() => player.IsHandFull())); //다시 드로우한거 받을때까지 기달

            if (player.IsChampion())                                //우승하면
            {
                gameState.AskForVictory(PhotonNetwork.LocalPlayer.ActorNumber);
            }
            else//아니면
            {
                gameState.AskForNextState();//순서 - before wait processing wait processing-----
            }
            yield return(new WaitWhile(() => gameState.GetGameState() == GameState.processing));
        }