public static CMD_ColosseumMatching Create(MatchingConfig matchingConfig)
        {
            CMD_ColosseumMatching  cmd_ColosseumMatching = null;
            IColosseumMatchingInfo colosseumMatchingInfo;

            if (matchingConfig.IsMockBattle())
            {
                colosseumMatchingInfo = new ColosseumMatchingInfoMockBattle(matchingConfig);
            }
            else
            {
                colosseumMatchingInfo = new ColosseumMatchingInfoMainBattle(matchingConfig);
            }
            string dungeonId = colosseumMatchingInfo.GetDungeonId();

            if (string.IsNullOrEmpty(dungeonId))
            {
                AlertManager.ShowModalMessage(null, "ColosseumCloseTime", "ColosseumGoTop", AlertManager.ButtonActionType.Close, false);
            }
            else
            {
                CommonDialog commonDialog = GUIMain.ShowCommonDialog(null, "CMD_ColosseumMatching", null);
                cmd_ColosseumMatching = commonDialog.GetComponent <CMD_ColosseumMatching>();
                cmd_ColosseumMatching.matchingEventListener = cmd_ColosseumMatching.GetComponent <ColosseumMatchingEventListener>();
                cmd_ColosseumMatching.matchingEventListener.SetInstance(cmd_ColosseumMatching, matchingConfig, colosseumMatchingInfo, dungeonId, cmd_ColosseumMatching.modelAnimation);
                cmd_ColosseumMatching.modelAnimation.SetInstance(cmd_ColosseumMatching.matchingEventListener);
                cmd_ColosseumMatching.Show();
            }
            return(cmd_ColosseumMatching);
        }
 public void SetInstance(CMD_ColosseumMatching parent, MatchingConfig config, IColosseumMatchingInfo info, string dungeonId, ColosseumMatchingAnimation modelAnimation)
 {
     this.uiRoot         = parent;
     this.matchingConfig = config;
     this.network        = new ColosseumMatchingNetwork(info, this);
     this.anime          = modelAnimation;
     this.matchingResult = new MatchingResult
     {
         dungeonId = dungeonId
     };
 }