void Awake()
    {
        if (UserDataManager.Inst.GetMainCharInfo() != null)
        {
            MainCharInfo charInfo = UserDataManager.Inst.GetMainCharInfo();
            GradeImage.sprite   = CSVData.Inst.GetSpriteGrade((GRADE_TYPE)charInfo.grade);
            ServantImage.sprite = CSVData.Inst.GetServantIcon(charInfo.mainCharID);
        }

        UserInfo userInfo = UserDataManager.Inst.GetUserInfo();

        if (userInfo != null)
        {
            AccountText.text   = userInfo.userName;
            RankLevelText.text = userInfo.level.ToString();

            DBExpData dbExpData = CSVData.Inst.GetExpData(userInfo.level);
            if (dbExpData != null)
            {
                int exExp = 0;
                if (userInfo.level - 1 > 0)
                {
                    DBExpData exDBExpData = CSVData.Inst.GetExpData(userInfo.level - 1);
                    if (exDBExpData == null)
                    {
                        DebugLog.Log(false, "Invalid Level Data");
                    }
                    else
                    {
                        exExp = exDBExpData.rankExp;
                    }
                }
                RankExpText.text    = userInfo.userEXP + " / " + dbExpData.rankExp;
                ExpSlide.fillAmount = (exExp - userInfo.userEXP) / (float)(exExp - dbExpData.rankExp);
            }
        }

        EOSText.text = (userInfo.userEOS * 0.0001).ToString("N4");
        UTGText.text = (userInfo.userUTG * 0.0001).ToString("N4");
    }
예제 #2
0
    public void OnEnable()
    {
        Sprite xSprite = Resources.Load <Sprite>("UI/Common/exit");

        UserPartyData partyData = UserDataManager.Inst.GetUserPartyInfo();

        if (partyData.partyIndex == 0)
        {
            DebugLog.Log(true, "Invalid User Data");
            return;
        }

        for (int i = 0; i < partyData.formationDataDic.Count; i++)
        {
            if (partyData.formationDataDic.ContainsKey(i) == false)
            {
                continue;
            }

            if (partyData.formationDataDic[i].index == 0)
            {
                GradeImage[i].sprite = CSVData.Inst.GetSpriteGrade(GRADE_TYPE.COMMON);
                IconImage[i].sprite  = xSprite;
                objectInfo[i].SetActive(false);
                continue;
            }

            if (i <= DEFINE.ServantMaxFormationNum)
            {
                UserServantData servantData = UserDataManager.Inst.GetServantInfo(partyData.formationDataDic[i].index);
                if (servantData == null)
                {
                    DebugLog.Log(true, "Invalid Servant Index : " + partyData.formationDataDic[i].index);
                }

                DBServantData dBServantData = CSVData.Inst.GetServantData(servantData.id);
                if (dBServantData == null)
                {
                    DebugLog.Log(true, "Invalid Servant ID : " + servantData.id);
                }

                GradeImage[i].sprite = CSVData.Inst.GetSpriteGrade((GRADE_TYPE)servantData.grade);
                IconImage[i].sprite  = dBServantData.servantIcon;

                imageClass[i].sprite = CSVData.Inst.GetSpriteServantJob(servantData.jobType);
                textLevel[i].text    = servantData.level.ToString();

                if (servantData.level >= DEFINE.MAX_LEVEL)
                {
                    textExpPer[i].text     = "MAX";
                    imageExp[i].fillAmount = 1f;
                }
                else
                {
                    DBExpData dbExpData = CSVData.Inst.GetExpData(servantData.level);
                    if (dbExpData == null)
                    {
                        DebugLog.Log(false, "Invalid Level Data");
                    }
                    else
                    {
                        int exExp = 0;
                        if (servantData.level - 1 > 0)
                        {
                            DBExpData exDBExpData = CSVData.Inst.GetExpData(servantData.level - 1);
                            if (exDBExpData == null)
                            {
                                DebugLog.Log(false, "Invalid Level Data");
                            }
                            else
                            {
                                exExp = exDBExpData.charExp;
                            }
                        }
                        float expPer = (exExp - servantData.exp) / (float)(exExp - dbExpData.charExp);
                        textExpPer[i].text     = (int)(expPer * 100) + "%";
                        imageExp[i].fillAmount = expPer;
                    }
                }

                objectInfo[i].SetActive(true);
            }
            else
            {
                UserMonsterData monsterData = UserDataManager.Inst.GetMonsterInfo(partyData.formationDataDic[i].index);
                if (monsterData == null)
                {
                    DebugLog.Log(true, "Invalid Monster Index : " + partyData.formationDataDic[i].index);
                }

                DBMonsterData dbMonsterData = CSVData.Inst.GetMonsterData(monsterData.id);
                if (dbMonsterData == null)
                {
                    DebugLog.Log(true, "Invalid Monster ID : " + monsterData.id);
                }

                GradeImage[i].sprite = CSVData.Inst.GetSpriteGrade((GRADE_TYPE)monsterData.grade);
                IconImage[i].sprite  = dbMonsterData.monsterIcon;

                imageClass[i].sprite    = CSVData.Inst.GetSmallSpriteTribeType(monsterData.tribeType);
                imageType[i - 5].sprite = CSVData.Inst.GetSpriteElementType(monsterData.elementType);
                textLevel[i].text       = monsterData.level.ToString();

                if (monsterData.level >= DEFINE.MAX_LEVEL)
                {
                    textExpPer[i].text     = "MAX";
                    imageExp[i].fillAmount = 1f;
                }
                else
                {
                    DBExpData dbExpData = CSVData.Inst.GetExpData(monsterData.level);
                    if (dbExpData == null)
                    {
                        DebugLog.Log(false, "Invalid Level Data");
                    }
                    else
                    {
                        int exExp = 0;
                        if (monsterData.level - 1 > 0)
                        {
                            DBExpData exDBExpData = CSVData.Inst.GetExpData(monsterData.level - 1);
                            if (exDBExpData == null)
                            {
                                DebugLog.Log(false, "Invalid Level Data");
                            }
                            else
                            {
                                exExp = exDBExpData.charExp;
                            }
                        }
                        float expPer = (exExp - monsterData.exp) / (float)(exExp - dbExpData.charExp);
                        textExpPer[i].text     = (int)(expPer * 100) + "%";
                        imageExp[i].fillAmount = expPer;
                    }
                }

                objectInfo[i].SetActive(true);
            }
        }
    }
    public void updateServantInfo(UserServantData s_data)
    {
        //unit_idx = u_idx;
        for (int i = 0; i < buttonEquip.Length; i++)
        {
            buttonEquip[i].gameObject.SetActive(false);
        }
        for (int i = 0; i < 3; i++)
        {
            buttonEquip[i].gameObject.SetActive(true);
        }

        UserServantData unit_data = s_data;// UserDataManager.Inst.GetServantInfo(unit_idx);

        if (unit_data == null)
        {
            DebugLog.Log(false, "Invalid Servant data By ServantInfoManager");
        }
        DBServantData db_unit_data = CSVData.Inst.GetServantData(unit_data.id);

        if (db_unit_data == null)
        {
            DebugLog.Log(false, "Invalid DB_Servant data By ServantInfoManager");
        }

        textUnitName.text = db_unit_data.name;
        textLevel.text    = string.Format("{0}", unit_data.level);


        for (EQUIPMENT_TYPE type = EQUIPMENT_TYPE.WEAPON; type < EQUIPMENT_TYPE.MAX; type++)
        {
            if (unit_data.equipmentDic[type] != 0)
            {
                UserEquipmentData equip_info = UserDataManager.Inst.GetEquipmentInfo(unit_data.equipmentDic[type]);
                if (equip_info == null)
                {
                    DebugLog.Log(true, "Invalid Index : " + unit_data.equipmentDic[type]);
                    return;
                }

                buttonEquip[(int)type].image.sprite = CSVData.Inst.GetSpriteGrade((GRADE_TYPE)equip_info.grade);
                buttonEquip[(int)type].transform.GetChild(0).GetComponent <Image>().enabled = false;
                buttonEquip[(int)type].transform.GetChild(1).GetComponent <Image>().enabled = true;
                buttonEquip[(int)type].transform.GetChild(1).GetComponent <Image>().sprite  = CSVData.Inst.GetEquipmentData(equip_info.id).equipmentIcon;
            }
            else
            {
                buttonEquip[(int)type].image.sprite = spriteEmptySlot;
                buttonEquip[(int)type].transform.GetChild(0).GetComponent <Image>().enabled = true;
                buttonEquip[(int)type].transform.GetChild(1).GetComponent <Image>().enabled = false;
            }
        }

        if (unit_data.level >= DEFINE.MAX_LEVEL)
        {
            textExp.text        = "MAX";
            imageExp.fillAmount = 1f;
        }
        else
        {
            DBExpData dbExpData = CSVData.Inst.GetExpData(unit_data.level);
            if (dbExpData == null)
            {
                DebugLog.Log(false, "Invalid Level Data");
            }
            else
            {
                int exExp = 0;
                if (unit_data.level - 1 > 0)
                {
                    DBExpData exDBExpData = CSVData.Inst.GetExpData(unit_data.level - 1);
                    if (exDBExpData == null)
                    {
                        DebugLog.Log(false, "Invalid Level Data");
                    }
                    else
                    {
                        exExp = exDBExpData.charExp;
                    }
                }

                textExp.text        = unit_data.exp + " / " + dbExpData.charExp;
                imageExp.fillAmount = (exExp - unit_data.exp) / (float)(exExp - dbExpData.charExp);
            }
        }

        //textGradeText.text;
        textGrade.text  = string.Format("{0}", unit_data.gradeType);
        textGrade.color = DEFINE.GetGradeColor(unit_data.gradeType);
        //textJobText.text;
        imagejob.sprite = CSVData.Inst.GetSpriteServantJob(unit_data.jobType);
        //textStatsText.text;

        int[] stat_by_set_equipment = Calculator.GetServantStatsEquipAllItem(unit_data);

        textStr.text = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.STR]);
        textDex.text = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.DEX]);
        textInt.text = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.INT]);

        textHP.text      = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.HP]);
        textAvoid.text   = string.Format("{0}", db_unit_data.avoid);
        textPAtk.text    = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.ATK]);
        textPDef.text    = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.DEF]);
        textMAtk.text    = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.MATK]);
        textMDef.text    = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.MDEF]);
        textPCri.text    = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.CriDmg]);
        textPCriPer.text = string.Format("{0}", stat_by_set_equipment[(int)EQUIPMENT_OPTION_TYPE.CriPer]);

        /*
         * textStr.text = string.Format("{0}", unit_data.status.basicStr);
         * textDex.text = string.Format("{0}", unit_data.status.basicDex);
         * textInt.text = string.Format("{0}", unit_data.status.basicInt);
         *
         * textHP.text = string.Format("{0}", unit_data.maxHP);
         * textSpeed.text = string.Format("{0}", db_unit_data.speed);
         * textPAtk.text = string.Format("{0}", unit_data.atk);
         * textPDef.text = string.Format("{0}", unit_data.def);
         * textMAtk.text = string.Format("{0}", unit_data.mAtk);
         * textMDef.text = string.Format("{0}", unit_data.mDef);
         * textPCri.text = string.Format("{0}", unit_data.criDmg);
         * textPCriPer.text = string.Format("{0}", unit_data.criPer);
         */

        if (unit_data.activeSkillList.Count > 0)
        {
            imageActive.gameObject.SetActive(true);
            imageActive.sprite = CSVData.Inst.GetSkillActiveData(unit_data.activeSkillList[0].id).activeIcon;
        }
        else
        {
            imageActive.gameObject.SetActive(false);
        }

        if (unit_data.passiveSkillList.Count > 0)
        {
            imagePassive.gameObject.SetActive(true);
            imagePassive.sprite = CSVData.Inst.GetSkillPassiveData(unit_data.passiveSkillList[0].id).passiveIcon;
        }
        else
        {
            imagePassive.gameObject.SetActive(false);
        }
    }
예제 #4
0
    public void updateFormation()
    {
        for (int i = 0; i < 5; i++)
        {
            if (formationSlot[i] == 0)
            {
                buttonServantFormation[i].image.sprite = spriteSlot[1];
                imageServantFormation[i].enabled       = false;

                objectServantInfo[i].SetActive(false);
            }
            else
            {
                UserServantData servant = UserDataManager.Inst.GetServantInfo(formationSlot[i]);
                if (servant == null)
                {
                    DebugLog.Log(false, "Invalid Servant ID : " + formationSlot[i]);
                    return;
                }

                buttonServantFormation[i].image.sprite = CSVData.Inst.GetSpriteGrade((GRADE_TYPE)servant.grade);
                imageServantFormation[i].enabled       = true;
                imageServantFormation[i].sprite        = CSVData.Inst.GetServantData(servant.id).servantIcon;

                imageServantType[i].sprite = CSVData.Inst.GetSpriteServantJob(servant.jobType);
                textServantLevel[i].text   = servant.level.ToString();

                if (servant.level >= DEFINE.MAX_LEVEL)
                {
                    textServantExpPer[i].text     = "MAX";
                    imageServantExp[i].fillAmount = 1f;
                }
                else
                {
                    DBExpData dbExpData = CSVData.Inst.GetExpData(servant.level);
                    if (dbExpData == null)
                    {
                        DebugLog.Log(false, "Invalid Level Data");
                    }
                    else
                    {
                        int exExp = 0;
                        if (servant.level - 1 > 0)
                        {
                            DBExpData exDBExpData = CSVData.Inst.GetExpData(servant.level - 1);
                            if (exDBExpData == null)
                            {
                                DebugLog.Log(false, "Invalid Level Data");
                            }
                            else
                            {
                                exExp = exDBExpData.charExp;
                            }
                        }
                        float expPer = (exExp - servant.exp) / (float)(exExp - dbExpData.charExp);
                        textServantExpPer[i].text     = (int)(expPer * 100) + "%";
                        imageServantExp[i].fillAmount = expPer;
                    }
                }


                objectServantInfo[i].SetActive(true);
            }
        }

        int[] synergy = new int[8];

        for (int i = 0; i < 5; i++)
        {
            if (formationSlot[i + 5] == 0)
            {
                buttonMonsterFormation[i].image.sprite = spriteSlot[1];
                imageMonsterFormation[i].enabled       = false;

                objectMonsterInfo[i].SetActive(false);
            }
            else
            {
                UserMonsterData monster = UserDataManager.Inst.GetMonsterInfo(formationSlot[i + 5]);
                if (monster == null)
                {
                    DebugLog.Log(false, "Invalid Monster ID : " + formationSlot[i + 5]);
                    return;
                }

                buttonMonsterFormation[i].image.sprite = CSVData.Inst.GetSpriteGrade((GRADE_TYPE)monster.grade);
                imageMonsterFormation[i].enabled       = true;
                imageMonsterFormation[i].sprite        = CSVData.Inst.GetMonsterData(monster.id).monsterIcon;

                imageMonsterTribe[i].sprite          = CSVData.Inst.GetSmallSpriteTribeType(monster.tribeType);
                synergy[(int)monster.tribeType - 1] += 1;
                imageMonsterType[i].sprite           = CSVData.Inst.GetSpriteElementType(monster.elementType);
                textMonsterLevel[i].text             = monster.level.ToString();

                if (monster.level >= DEFINE.MAX_LEVEL)
                {
                    textMonsterExpPer[i].text     = "MAX";
                    imageMonsterExp[i].fillAmount = 1f;
                }
                else
                {
                    DBExpData dbExpData = CSVData.Inst.GetExpData(monster.level);
                    if (dbExpData == null)
                    {
                        DebugLog.Log(false, "Invalid Level Data");
                    }
                    else
                    {
                        int exExp = 0;
                        if (monster.level - 1 > 0)
                        {
                            DBExpData exDBExpData = CSVData.Inst.GetExpData(monster.level - 1);
                            if (exDBExpData == null)
                            {
                                DebugLog.Log(false, "Invalid Level Data");
                            }
                            else
                            {
                                exExp = exDBExpData.charExp;
                            }
                        }
                        float expPer = (exExp - monster.exp) / (float)(exExp - dbExpData.charExp);
                        textMonsterExpPer[i].text     = (int)(expPer * 100) + "%";
                        imageMonsterExp[i].fillAmount = expPer;
                    }
                }


                objectMonsterInfo[i].SetActive(true);
            }
        }

        int synergyCount = 0;

        for (int i = 0; i < 8; i++)
        {
            int idCount = 0;
            if (synergy[i] == 5)
            {
                idCount = 3;
            }
            else if (synergy[i] >= 3)
            {
                idCount = 2;
            }
            else if (synergy[i] >= 2)
            {
                idCount = 1;
            }

            if (idCount == 0)
            {
                continue;
            }

            DBSkillPassiveData synergyData = CSVData.Inst.GetSynergyData(i + 1, idCount);
            imageSynergyIcon[synergyCount].sprite = synergyData.passiveIcon;
            textSynergySubject[synergyCount].text = synergyData.name;
            textSynergyDetail[synergyCount].text  = synergyData.explain;
            PartySynergy[synergyCount].SetActive(true);
            synergyCount += 1;
        }

        for (int i = synergyCount; i < 3; i++)
        {
            PartySynergy[i].SetActive(false);
        }
    }
    public void updateMonsterInfo(UserMonsterData m_data)
    {
        //unit_idx = u_idx;

        UserMonsterData unit_data = m_data;// UserDataManager.Inst.GetMonsterInfo(unit_idx);

        if (unit_data == null)
        {
            DebugLog.Log(false, "Invalid Monster data By MonsterInfoManager");
        }
        DBMonsterData db_unit_data = CSVData.Inst.GetMonsterData(unit_data.id);

        if (db_unit_data == null)
        {
            DebugLog.Log(false, "Invalid DB_Monster data By MonsterInfoManager");
        }

        textUnitName.text = db_unit_data.name;
        textLevel.text    = string.Format("{0}", unit_data.level);

        if (unit_data.level >= DEFINE.MAX_LEVEL)
        {
            textExp.text        = "MAX";
            imageExp.fillAmount = 1f;
        }
        else
        {
            DBExpData dbExpData = CSVData.Inst.GetExpData(unit_data.level);
            if (dbExpData == null)
            {
                DebugLog.Log(false, "Invalid Level Data");
            }
            else
            {
                int exExp = 0;
                if (unit_data.level - 1 > 0)
                {
                    DBExpData exDBExpData = CSVData.Inst.GetExpData(unit_data.level - 1);
                    if (exDBExpData == null)
                    {
                        DebugLog.Log(false, "Invalid Level Data");
                    }
                    else
                    {
                        exExp = exDBExpData.charExp;
                    }
                }

                textExp.text        = unit_data.exp + " / " + dbExpData.charExp;
                imageExp.fillAmount = (exExp - unit_data.exp) / (float)(exExp - dbExpData.charExp);
            }
        }


        //textGradeText.text;
        textGrade.text  = string.Format("{0}", unit_data.gradeType);
        textGrade.color = DEFINE.GetGradeColor(unit_data.gradeType);
        //textUpgradeText.text;
        textUpgrade.text = string.Format("+{0}", unit_data.upgrade);
        //textClassText.text;
        imageTribe.sprite = CSVData.Inst.GetSmallSpriteTribeType(db_unit_data.tribeType);
        //textTypeText.text;
        imageType.sprite = CSVData.Inst.GetSpriteElementType(db_unit_data.elementType);

        //textStatsText.text;

        textStr.text = string.Format("{0}", unit_data.status.basicStr);
        textDex.text = string.Format("{0}", unit_data.status.basicDex);
        textInt.text = string.Format("{0}", unit_data.status.basicInt);

        textHP.text      = string.Format("{0}", unit_data.maxHP);
        textAvoid.text   = string.Format("{0}", db_unit_data.avoid);
        textPAtk.text    = string.Format("{0}", unit_data.atk);
        textPDef.text    = string.Format("{0}", unit_data.def);
        textMAtk.text    = string.Format("{0}", unit_data.mAtk);
        textMDef.text    = string.Format("{0}", unit_data.mDef);
        textPCri.text    = string.Format("{0}", unit_data.criDmg);
        textPCriPer.text = string.Format("{0}", unit_data.criPer);

        if (unit_data.passiveSkillList.Count > 0)
        {
            imagePassive.gameObject.SetActive(true);
            imagePassive.sprite = CSVData.Inst.GetSkillPassiveData(unit_data.passiveSkillList[0].id).passiveIcon;
        }
        else
        {
            imagePassive.gameObject.SetActive(false);
        }

        //파티에 등록된 상태인지
        if (unit_data.upgrade >= DEFINE.MAX_MONSTER_UPGRADE_COUNT)
        {
            buttonUpgrade.interactable = false;
            textSetParty.fontSize      = 40;
            textSetParty.text          = "MAX";
        }
        else if (unit_data.partyIndex > 0)
        {
            buttonUpgrade.interactable = false;
            textSetParty.fontSize      = 60;
            textSetParty.text          = "P";
        }
        else
        {
            buttonUpgrade.interactable = true;
            textSetParty.text          = "";
        }
    }
예제 #6
0
    public void UpdateTopInfo()
    {
        UserInfo userInfo = UserDataManager.Inst.GetUserInfo();

        if (userInfo != null)
        {
            UserName.text      = "Rank." + userInfo.level + " " + userInfo.userName;
            UserLevelText.text = userInfo.level.ToString();

            DBExpData dbExpData = CSVData.Inst.GetExpData(userInfo.level);
            if (dbExpData != null)
            {
                int exExp = 0;
                if (userInfo.level - 1 > 0)
                {
                    DBExpData exDBExpData = CSVData.Inst.GetExpData(userInfo.level - 1);
                    if (exDBExpData == null)
                    {
                        DebugLog.Log(false, "Invalid Level Data");
                    }
                    else
                    {
                        exExp = exDBExpData.rankExp;
                    }
                }

                ExpSlide.fillAmount = (exExp - userInfo.userEXP) / (float)(exExp - dbExpData.rankExp);
            }



            if (lastEOS != userInfo.userEOS)
            {
                NumberCountingEffect(EOSCount, lastEOS, userInfo.userEOS);
            }
            else
            {
                EOSCount.text = (userInfo.userEOS * 0.0001).ToString("N4");
            }

            if (lastUTG != userInfo.userUTG)
            {
                NumberCountingEffect(UTGCount, lastUTG, userInfo.userUTG);
            }
            else
            {
                UTGCount.text = (userInfo.userUTG * 0.0001).ToString("N4");
            }

            lastEOS = userInfo.userEOS;
            lastUTG = userInfo.userUTG;

            //EOSCount.text = (userInfo.userEOS * 0.0001).ToString("N4");
            //UTGCount.text = (userInfo.userUTG * 0.0001).ToString("N4");
        }
        if (UserDataManager.Inst.GetMainCharInfo() != null)
        {
            DBServantData servantData = CSVData.Inst.GetServantData(UserDataManager.Inst.GetMainCharInfo().mainCharID);
            if (servantData != null)
            {
                MainCharImage.sprite  = servantData.servantIcon;
                GradeCharImage.sprite = CSVData.Inst.GetSpriteGrade(servantData.grade);
            }
        }

        UserLobbyInfo lobbyInfo = UserDataManager.Inst.GetUserLobbyInfo();

        if (lobbyInfo == null)
        {
            return;
        }

        if (lobbyInfo.IsCPUAlert == true)
        {
            CPUImage.sprite = alertImage;
        }
        else
        {
            CPUImage.sprite = notAlertImage;
        }
        if (lobbyInfo.IsNETAlert == true)
        {
            NETImage.sprite = alertImage;
        }
        else
        {
            NETImage.sprite = notAlertImage;
        }
        if (lobbyInfo.IsRAMAlert == true)
        {
            RAMImage.sprite = alertImage;
        }
        else
        {
            RAMImage.sprite = notAlertImage;
        }

        if (lobbyInfo.mailCount > 0)
        {
            MailCountText.text = lobbyInfo.mailCount.ToString();

            MailCountImage.SetActive(true);
        }
        else
        {
            MailCountImage.SetActive(false);
        }
    }