Exemple #1
0
    public IEnumerator Init()
    {
        Debug.Log("서버 데이터 초기화 시작");
        SceneLogin.Instance.tipMessageText.text = "왕국 예산을 파악 중..";
        //재화
        if (MoneyManager.Instance)
        {
            yield return(StartCoroutine(MoneyManager.InitMoneyDataCoroutine()));
        }

        //보유 영웅 정보 초기화
        SceneLogin.Instance.tipMessageText.text = "영웅들이 왕국으로 향하는 중..";
        yield return(StartCoroutine(HeroManager.Init()));


        if (DictionaryManager.Instance)
        {
            yield return(StartCoroutine(DictionaryManager.Init()));
        }

        // 패키지
        if (PackageManager.Instance)
        {
            yield return(StartCoroutine(PackageManager.Init()));
        }

        //출석
        if (AttendanceManager.Instance)
        {
            yield return(StartCoroutine(AttendanceManager.Init()));
        }

        //메일
        if (MailManager.Instance)
        {
            yield return(StartCoroutine(MailManager.MailDataInitCoroutine()));
        }

        //훈련소
        if (HeroTrainingManager.Instance)
        {
            yield return(StartCoroutine(HeroTrainingManager.Init()));
        }

        //데일리미션
        if (DailyMissionManager.Instance)
        {
            yield return(StartCoroutine(DailyMissionManager.Init()));
        }

        //신규유저미션
        if (UserQuestManager.Instance)
        {
            yield return(StartCoroutine(UserQuestManager.Init()));
        }

        while (!MoneyManager.isInitialized || !MailManager.isInitialized || !HeroTrainingManager.isInitialized || !DailyMissionManager.isInitialized || !UserQuestManager.isInitialized ||
               !HeroManager.isInitialized || !DictionaryManager.isInitialized || !AttendanceManager.isInitialized)
        {
            yield return(null);
        }

        //등등...
        Debug.Log("서버 데이터 매니저 초기화 완료");
        isInitialized = true;

        yield break;
    }