Exemple #1
0
    void InitDictionaryOpen()
    {
        if (heroInfoType == HeroInfoType.Dictionary)
        {
            buttonBg.SetActive(false);
            for (int i = 0; i < buttons.Length; i++)
            {
                buttons[i].SetActive(false);
            }
            achievementButton.gameObject.SetActive(true);
            DictionaryManager.HeroDictionaryData heroDicData = DictionaryManager.heroDictionaryDataDic[heroData.heroID];
            if (heroDicData.dictionaryLevel > heroDicData.rewardStep)
            {
                achievementLevelText.text      = (heroDicData.rewardStep + 1) + "단계 획득가능";
                achievementButton.interactable = true;
            }
            else
            {
                achievementButton.interactable = false;
                achievementLevelText.text      = heroDicData.rewardStep + "단계 획득완료";

                DictionaryManager.Instance.DictionaryRewardRecieveOrNot();
            }
        }
        else
        {
            buttonBg.SetActive(true);
            for (int i = 0; i < buttons.Length; i++)
            {
                buttons[i].SetActive(true);
            }
            achievementButton.gameObject.SetActive(false);
        }
    }
Exemple #2
0
    /// <summary> 도감 DB에 변경된 수치를 Update시키는 코루틴 </summary>
    IEnumerator SetAchievementData()
    {
        int amount = 0;

        DictionaryManager.HeroDictionaryData heroDicData = DictionaryManager.heroDictionaryDataDic[heroData.heroID];
        int rewardStep = heroDicData.rewardStep;

        switch (rewardStep)
        {
        case 0:
            amount = 10;
            break;

        case 1:
            amount = 30;
            break;

        case 2:
            amount = 100;
            break;
        }
        rewardStep += 1;
        WWWForm form = new WWWForm();

        form.AddField("userID", User.Instance.userID);
        form.AddField("heroID", Instance.heroID);
        form.AddField("rewardAmount", amount);
        form.AddField("achievementLevel", rewardStep);
        form.AddField("type", 4);
        string php    = "Dictionary.php";
        string result = "";

        yield return(StartCoroutine(WebServerConnectManager.Instance.WWWCoroutine(php, form, x => result = x)));

        if (!string.IsNullOrEmpty(result) && result == "0")
        {
            Debug.LogError("잘못된 접근입니다. 도감획득단계보다 보상단계가 높거나 같습니다");
        }
        else
        {
            heroDicData.rewardStep = rewardStep;
            UIPopupManager.ShowOKPopup("보상 획득", "보상을 획득했습니다\n메일함을 확인해주세요", InitDictionaryOpen);



            if (UIDictionary.Instance)
            {
                UIDictionary.Instance.heroSlotList.Find(x => x.heroData.heroID == Instance.heroID).SlotDataInit(Instance.heroID, DicionaryState.Default);
            }

            yield return(StartCoroutine(MailManager.MailDataInitCoroutine()));
        }
    }
Exemple #3
0
    int SortDelegate(UIDictionarySlot a, UIDictionarySlot b)
    {
        DictionaryManager.HeroDictionaryData heroDataA = DictionaryManager.heroDictionaryDataDic[a.id];
        DictionaryManager.HeroDictionaryData heroDataB = DictionaryManager.heroDictionaryDataDic[b.id];
        int gradeA = heroDataA.heroData.heroGrade;
        int gradeB = heroDataB.heroData.heroGrade;

        int result = gradeB.CompareTo(gradeA);

        if (result == 0)
        {
            result = heroDataA.heroData.heroName.CompareTo(heroDataB.heroData.heroName);
        }

        return(result);
    }