Exemplo n.º 1
0
    private void OnUpdateAvatarIcon()
    {
        Character player = CharacterManager.Main;
        DActor    db     = ReadCfgActor.GetDataById(player.ID);

        mPlayerIcon.spriteName = db.Icon;
    }
Exemplo n.º 2
0
    public XCharacter GetMainPartner(int id)
    {
        if (id == 0)
        {
            return(null);
        }
        XPartner data = DataDBSPartner.GetDataById(id);

        if (data == null)
        {
            return(null);
        }
        XCharacter c  = new XCharacter();
        DActor     db = ReadCfgActor.GetDataById(id);

        c.Id    = id;
        c.Level = data.Level;
        c.Sex   = 0;
        c.Title = 0;
        c.Name  = db.Name;
        c.BaseAttr.Clear();
        c.CurrAttr.Clear();
        c.BaseAttr.AddRange(AttrHelper.GetPropertys(data).Values);
        for (int i = 0; i < c.BaseAttr.Count; i++)
        {
            c.CurrAttr.Add(c.BaseAttr[i]);
        }
        return(c);
    }
Exemplo n.º 3
0
    private void ShowDialogueModel(DDialogue db)
    {
        DActor actorDB = null;

        if (db.Actor == 0)
        {
            XCharacter role = GTGlobal.Main;
            actorDB = ReadCfgActor.GetDataById(role.Id);
        }
        else
        {
            actorDB = ReadCfgActor.GetDataById(db.Actor);
        }

        if (actorDB == null)
        {
            return;
        }
        if (dlgRenderer != null)
        {
            dlgRenderer.DelAllModels();
        }
        else
        {
            dlgRenderer = ERender.AddRender(dlgTexture);
        }
        dlgAvatar = GTWorld.Instance.AddAvatar(actorDB.Model);
        dlgAvatar.PlayAnim(db.Anim, null);
        dlgRenderer.AddModel(dlgAvatar.GetRootObj());
        dlgAvatar.GetRootObj().transform.localPosition = new Vector3(-0.22f, -1.61f, 1.0f);
        dlgAvatar.GetRootObj().transform.localEulerAngles = new Vector3(0, 180, 0);
    }
Exemplo n.º 4
0
        public override void DrawScene()
        {
            Transform npcTrans = transform.FindChild("Npc");

            if (npcTrans != null)
            {
                DestroyImmediate(npcTrans.gameObject);
            }
            GTConfigManager.Instance.InitEditor();
            DActor db = ReadCfgActor.GetDataById(Id);

            if (db == null)
            {
                return;
            }
            DActorModel dbModel = ReadCfgActorModel.GetDataById(db.Model);
            GameObject  npc     = GTResourceManager.Instance.Load <GameObject>(dbModel.Model, true);

            if (npc == null)
            {
                return;
            }
            npc.name = "Npc";
            npcTrans = npc.transform;
            npcTrans.ResetLocalTransform(transform);
        }
Exemplo n.º 5
0
    private void InitView()
    {
        int group = GTWindowManager.Instance.GetToggleGroupId();

        for (int i = 0; i < mRoleDBList.Count; i++)
        {
            int        id     = mRoleDBList[i].Id;
            int        index  = i;
            DActor     roleDB = ReadCfgActor.GetDataById(id);
            GameObject item   = NGUITools.AddChild(roleGrid.gameObject, roleTemplate);
            item.SetActive(true);
            roleGrid.AddChild(item.transform);
            UISprite roleIcon = item.transform.Find("Icon").GetComponent <UISprite>();
            roleIcon.spriteName = roleDB.Icon;

            UIToggle toggle = item.GetComponent <UIToggle>();
            toggle.group = group;
            toggle.value = 0 == mRoleIndex;
            UIEventListener.Get(item).onClick = delegate
            {
                GTAudioManager.Instance.PlayEffectAudio(GTAudioKey.SOUND_UI_CLICK);
                if (mRoleIndex == index)
                {
                    return;
                }
                mRoleIndex = index;
                ShowView();
                ShowModel();
                ShowMask();
                mPlayer.Command.Get <CommandUseSkill>().Update(ESkillPos.Skill_9).Do();
            };
        }
    }
Exemplo n.º 6
0
 public void EnterWorld(MapConfig data)
 {
     for (int i = 0; i < data.MapNpcs.Count; i++)
     {
         MapNpc cfg = data.MapNpcs[i];
         DActor db  = ReadCfgActor.GetDataById(cfg.NpcID);
         if (db == null)
         {
             continue;
         }
         XCharacter c = new XCharacter();
         c.Id   = cfg.NpcID;
         c.Name = db.Name;
         c.GUID = GTGUID.NewGUID();
         c.PosX = cfg.Pos.x;
         c.PosY = cfg.Pos.y;
         c.PosZ = cfg.Pos.z;
         c.Face = cfg.Face;
         c.Type = (int)EActorType.NPC;
         c.Camp = (int)EBattleCamp.CT_PVE_NEUTRAL;
         c.CurAttrs.AddRange(GTTools.GetListFromEnumNames <int>(typeof(EAttr)));
         foreach (var current in db.Attrs)
         {
             c.CurAttrs[(int)current.Key - 1] = current.Value;
         }
         m_AllActors.Add(c.GUID, c);
     }
     for (int i = 0; i < data.MapAreaMonsters.Count; i++)
     {
         MapAreaMonster cfg = data.MapAreaMonsters[i];
         DActor         db  = ReadCfgActor.GetDataById(cfg.MonsterID);
         if (db == null)
         {
             continue;
         }
         for (int k = 0; k < cfg.Points.Count; k++)
         {
             MapPoint   p = cfg.Points[k];
             XCharacter c = new XCharacter();
             c.Id   = cfg.MonsterID;
             c.Name = db.Name;
             c.GUID = GTGUID.NewGUID();
             c.PosX = p.Pos.x;
             c.PosY = p.Pos.y;
             c.PosZ = p.Pos.z;
             c.Face = p.EulerAngles.y;
             c.Type = (int)EActorType.MONSTER;
             c.Camp = (int)EBattleCamp.CT_PVE_ENEMY;
             c.CurAttrs.AddRange(GTTools.GetListFromEnumNames <int>(typeof(EAttr)));
             foreach (var current in db.Attrs)
             {
                 c.CurAttrs[(int)current.Key - 1] = current.Value;
             }
             m_AllActors.Add(c.GUID, c);
         }
     }
 }
Exemplo n.º 7
0
    private void ShowView()
    {
        DActor db = ReadCfgActor.GetDataById(mSelectMountID);

        if (db == null)
        {
            return;
        }
        GTItemHelper.ShowItemName(mountName, db.Quality, db.Name);
    }
Exemplo n.º 8
0
    public static void ShowActorQuality(UISprite sprite, int id)
    {
        if (sprite == null)
        {
            return;
        }
        DActor db = ReadCfgActor.GetDataById(id);

        sprite.spriteName = db == null ? "P0" : "P" + db.Quality;
    }
Exemplo n.º 9
0
    private void ShowDialogueContent(DDialogue db)
    {
        string replaceName = string.Empty;

        switch (db.ContentType)
        {
        case EDialogueContentType.TYPE_NONE:
        {
            replaceName = string.Empty;
        }
        break;

        case EDialogueContentType.TYPE_PLAYER:
        {
            Character c = GTWorld.Main;
            replaceName = c == null ? string.Empty : c.Name;
        }
        break;

        case EDialogueContentType.TYPE_ACTOR:
        {
            DActor actorDB = ReadCfgActor.GetDataById(db.ContentID);
            replaceName = actorDB == null ? string.Empty : actorDB.Name;
        }
        break;

        case EDialogueContentType.TYPE_ITEM:
        {
            DItem itemDB = ReadCfgItem.GetDataById(db.ContentID);
            replaceName = itemDB == null ? string.Empty : itemDB.Name;
        }
        break;

        case EDialogueContentType.TYPE_MAP:
        {
            DCopyMainChapter worldDB = ReadCfgCopyMainChapter.GetDataById(db.ContentID);
            replaceName = worldDB == null ? string.Empty : worldDB.Name;
        }
        break;
        }
        dlgContent.text = db.Content.Replace("%p%", replaceName);

        switch (db.ContentShowType)
        {
        case EDialogueContentShowType.Normal:
            dlgContent.GetComponent <TypewriterEffect>().enabled = false;
            break;

        case EDialogueContentShowType.Effect:
            dlgContent.GetComponent <TypewriterEffect>().enabled = true;
            dlgContent.GetComponent <TypewriterEffect>().ResetToBeginning();
            break;
        }
    }
Exemplo n.º 10
0
    private void ShowView()
    {
        ItemMount tab = mMountItems[mSelectIndex];
        DActor    db  = ReadCfgActor.GetDataById(tab.id);

        mMountSpeed.text = db.RSpeed.ToPoint();
        GTItemHelper.ShowItemQuality(mMountQuality, db.Quality);
        XCharacter role = RoleModule.Instance.GetCurPlayer();

        btnFight.SetActive(role.Mount != tab.id);
    }
Exemplo n.º 11
0
    private void ShowView()
    {
        ItemMount tab = mMountItems[mSelectIndex];
        DActor    db  = ReadCfgActor.GetDataById(tab.id);

        mMountSpeed.text = (db.Attrs[EAttr.SPEED] / 100f).ToPoint();
        GTItemHelper.ShowItemQuality(mMountQuality, db.Quality);
        XCharacter role = GTGlobal.Main;

        btnFight.SetActive(role.Mount != tab.id);
    }
Exemplo n.º 12
0
    private void ShowView()
    {
        DRole      db      = mRoleDBList[mRoleIndex];
        XCharacter role    = DataDBSCharacter.GetDataById(db.Carrer);
        DActor     actorDB = ReadCfgActor.GetDataById(db.ActorID);

        btnCreateRole.SetActive(role == null);
        btnRoll.SetActive(role == null);
        iptHeroName.gameObject.SetActive(role == null);
        btnEnterGame.SetActive(role != null);
        labHeroName.text = role != null?GTTools.Format("Lv.{0} {1}", role.Level, role.Name != null?role.Name : actorDB.Name) : "未创建";
    }
Exemplo n.º 13
0
    private void ShowView()
    {
        int        id     = mRoleDBList[mRoleIndex].Id;
        XCharacter role   = DataDBSRole.GetDataById(id);
        DActor     roleDB = ReadCfgActor.GetDataById(id);

        btnCreateRole.SetActive(role == null);
        btnRoll.SetActive(role == null);
        iptHeroName.gameObject.SetActive(role == null);
        btnEnterGame.SetActive(role != null);
        labHeroName.text = role != null?GTTools.Format("Lv.{0} {1}", role.Level, role.Name != null?role.Name : roleDB.Name) : "未创建";
    }
Exemplo n.º 14
0
 private void ShowDialogueTitle(DDialogue db)
 {
     if (db.Actor == 0)
     {
         Character c = GTWorld.Main;
         dlgTitle.text = c == null ? string.Empty : c.Name;
     }
     else
     {
         DActor actorDB = ReadCfgActor.GetDataById(db.Actor);
         dlgTitle.text = actorDB == null ? string.Empty : actorDB.Name;
     }
 }
Exemplo n.º 15
0
    private void InitView()
    {
        XCharacter role = RoleModule.Instance.GetCurPlayer();

        for (int i = 0; i < mMountItems.Count; i++)
        {
            ItemMount tab = mMountItems[i];
            tab.dress.SetActive(role.Mount == tab.id);
            GTItemHelper.ShowActorQuality(tab.quality, tab.id);
            DActor db = ReadCfgActor.GetDataById(tab.id);
            tab.icon.spriteName = db.Icon;
        }
    }
Exemplo n.º 16
0
    static void CalcPartnerLevel(Dictionary <EAttr, int> dict, XPartner partner)
    {
        if (partner == null)
        {
            return;
        }
        DActor   db        = ReadCfgActor.GetDataById(partner.Id);
        DPartner partnerDB = ReadCfgPartner.GetDataById(partner.Id);

        if (db == null || partner.Level < 1)
        {
            return;
        }
    }
Exemplo n.º 17
0
    private void ShowListView()
    {
        XCharacter role = RoleModule.Instance.GetCurPlayer();

        for (int i = 0; i < mTemps.Count; i++)
        {
            TempItem tab = mTemps[i];
            DActor   db  = ReadCfgActor.GetDataById(tab.id);
            GTItemHelper.ShowQualityText(tab.name, db.Name, db.Quality);
            GTItemHelper.ShowActorQuality(tab.quality, db.Id);
            tab.icon.spriteName = db.Icon;
            tab.dress.SetActive(tab.id == role.PetID);
        }
    }
Exemplo n.º 18
0
    private void ShowView()
    {
        XPartner data = DataDBSPartner.GetDataById(selectID);

        if (data == null)
        {
            data = GTDataFactory.CreatePartner(selectID);
        }
        partnerLevel.text     = GTTools.Format("等级 {0}", data.Level);
        partnerExp.text       = GTTools.Format("{0}/{1}", data.Exp, 2500);
        partnerExpValue.value = 0;
        DActor db = ReadCfgActor.GetDataById(selectID);

        GTItemHelper.ShowQualityText(partnerName, db.Name, db.Quality);
    }
Exemplo n.º 19
0
    private void InitModel()
    {
        DActor db = ReadCfgActor.GetDataById(selectID);

        mRender = ERender.AddRender(modelTexture);
        mRender.DelAllModels();
        mAvatar = GTWorld.Instance.AddAvatar(db.Model);
        mAvatar.PlayAnim("idle", null);
        GameObject model = mRender.AddModel(mAvatar.GetRootObj());
        DStage     ds    = ReadCfgStagePartner.GetDataById(selectID);

        model.transform.localPosition    = new Vector3(ds.X, ds.Y, ds.Z);
        model.transform.localEulerAngles = new Vector3(0, 180, 0);
        model.transform.localScale       = Vector3.one * ds.Scale * 0.3f;
    }
Exemplo n.º 20
0
    List <DStore> GetProductListByCurRole(List <DStore> pList)
    {
        List <DStore> list   = new List <DStore>();
        DActor        db     = ReadCfgActor.GetDataById(RoleModule.Instance.GetCurPlayer().Id);
        ECarrer       carrer = db.Carrer;

        for (int i = 0; i < pList.Count; i++)
        {
            DItem itemDB = ReadCfgItem.GetDataById(pList[i].ItemID);
            if (itemDB.Carrer == carrer || itemDB.Carrer == ECarrer.O)
            {
                list.Add(pList[i]);
            }
        }
        return(list);
    }
Exemplo n.º 21
0
    private void ShowPartnerArrayView()
    {
        XCharacter role = RoleModule.Instance.GetCurPlayer();

        for (int i = 0; i < mPartnerArray.Count; i++)
        {
            PartnerItem tab = mPartnerArray[i];
            DActor      db  = ReadCfgActor.GetDataById(tab.id);
            GTItemHelper.ShowQualityText(tab.elem.name, db.Name, db.Quality);
            GTItemHelper.ShowActorQuality(tab.elem.quality, tab.id);
            tab.elem.icon.spriteName = db.Icon;
            XPartner data = DataDBSPartner.GetDataById(tab.id);
            tab.type1.text = data == null ? "1" : data.Level.ToString();
            tab.type2.text = data == null ? "0" : data.Star.ToString();
            tab.type3.text = data == null ? "0" : data.Advance.ToString();
            bool isBattle = tab.id == role.Partner1 || tab.id == role.Partner2;
            tab.btnBattle.SetActive(!isBattle);
        }
    }
Exemplo n.º 22
0
    public void TryUpgradePet(int id, List <XItem> items)
    {
        if (items == null || items == null)
        {
            GTItemHelper.ShowTip("缺少食物");
            return;
        }
        for (int i = 0; i < items.Count; i++)
        {
            if (MLPet.Instance.IsFood(items[i].Id) == false)
            {
                GTItemHelper.ShowTip("加入的食品列表有误");
                return;
            }
        }
        DActor db   = ReadCfgActor.GetDataById(id);
        XPet   data = DataDBSPet.GetDataById(id);

        if (data != null)
        {
            int count = 0;
            foreach (var current in ReadCfgPetLevel.Dict)
            {
                if (current.Value.Quality == db.Quality)
                {
                    count++;
                }
            }

            if (data.Level >= count)
            {
                GTItemHelper.ShowTip("宠物等级已满");
                return;
            }
        }

        ReqUpgradePet req = new ReqUpgradePet();

        req.ID = id;
        req.UseItems.AddRange(items);
        NetworkManager.Instance.Send <ReqUpgradePet>(MessageID.MSG_REQ_UPGRADE_PET, req);
    }
Exemplo n.º 23
0
    private void ShowModel()
    {
        DActor db = ReadCfgActor.GetDataById(mSelectMountID);

        if (db == null)
        {
            mRender = ERender.DelRender(mRender);
            return;
        }
        if (mRender == null)
        {
            mRender = ERender.AddRender(modelTexture);
        }
        mRender.DelAllModels();
        mAvatar = CharacterManager.Instance.AddAvatar(db.Model);
        mAvatar.PlayAnim("idle", null);
        GameObject model = mRender.AddModel(mAvatar.GetRootObj());

        model.transform.localPosition    = db.StagePos;
        model.transform.localEulerAngles = new Vector3(0, 120, 0);
        model.transform.localScale       = new Vector3(db.StageScale, db.StageScale, db.StageScale);
    }
Exemplo n.º 24
0
 private void OnRefreshPartner()
 {
     Character[] partners = { CharacterManager.Main.Partner1, CharacterManager.Main.Partner2 };
     for (int i = 0; i < partners.Length; i++)
     {
         Character   c   = partners[i];
         ItemPartner tab = mPartners[i];
         if (c != null && c.ID > 0)
         {
             XPartner data = DataDBSPartner.GetDataById(c.ID);
             tab.heroGo.SetActive(true);
             DActor db    = ReadCfgActor.GetDataById(c.ID);
             int    level = data == null ? db.Level : data.Level;
             tab.heroLevel.text = GTTools.Format("Lv.{0}", level);
             GTItemHelper.ShowQualityText(tab.heroName, db.Name, db.Quality);
             tab.heroIcon.spriteName    = db.Icon;
             tab.heroQuality.spriteName = "Q" + (db.Quality);
             if (c.CurrAttr.HP <= 0)
             {
                 tab.heroHPSlider.value = 0;
                 tab.heroHPPercent.text = "0%";
                 GTItemHelper.ShowImageBlack(tab.heroIcon, true);
                 GTItemHelper.ShowImageBlack(tab.heroQuality, true);
             }
             else
             {
                 tab.heroHPSlider.value = (c.CurrAttr.HP * 1f) / c.CurrAttr.MaxHP;
                 tab.heroHPPercent.text = tab.heroHPSlider.value.ToPercent();
                 GTItemHelper.ShowImageBlack(tab.heroIcon, false);
                 GTItemHelper.ShowImageBlack(tab.heroQuality, false);
             }
         }
         else
         {
             tab.heroGo.SetActive(false);
         }
     }
 }
Exemplo n.º 25
0
    private void ShowModelView()
    {
        XCharacter role = GTGlobal.Main;
        DActor     db   = ReadCfgActor.GetDataById(role.Id);

        mRender = ERender.AddRender(modelTexture);
        mAvatar = GTWorld.Instance.AddAvatar(db.Model);
        if (mAvatar == null)
        {
            return;
        }
        for (int i = 1; i <= 8; i++)
        {
            XEquip dressEquip = GTDataManager.Instance.GetEquipDataByPos(EPosType.RoleEquip, i);
            int    id         = dressEquip == null ? 0 : dressEquip.Id;
            mAvatar.ChangeAvatar(i, id);
        }
        mAvatar.PlayAnim("idle", null);
        GameObject model = mRender.AddModel(mAvatar.GetRootObj());

        model.transform.localPosition    = new Vector3(0, -0.8f, 2.7f);
        model.transform.localEulerAngles = new Vector3(0, 180, 0);
    }
Exemplo n.º 26
0
    private void ShowPropertyView(int id, int level)
    {
        DActor db = ReadCfgActor.GetDataById(id);

        currPropertyText1.text = string.Empty;
        currPropertyText2.text = string.Empty;
        mainPropertyText1.text = string.Empty;
        mainPropertyText2.text = string.Empty;

        DPetLevel levelDB = ReadCfgPetLevel.GetDataById(db.Quality * 1000 + level);

        for (int i = 0; i < levelDB.PropertyNums.Length; i++)
        {
            EAttr     propertyID = (EAttr)(i + 1);
            DProperty propertyDB = ReadCfgProperty.GetDataById(propertyID);
            currPropertyText1.Append(propertyDB.Name);
            currPropertyText2.Append("+" + levelDB.PropertyNums[i].ToString());

            mainPropertyText1.Append(propertyDB.Name);
            int extendNum = (int)(levelDB.PropertyNums[i] * levelDB.Ratio / 100f);
            mainPropertyText2.Append("+" + extendNum.ToString());
        }
    }
Exemplo n.º 27
0
    private void ShowModel()
    {
        DActor db = ReadCfgActor.GetDataById(mSelectMountID);

        if (db == null)
        {
            mRender = ERender.DelRender(mRender);
            return;
        }
        if (mRender == null)
        {
            mRender = ERender.AddRender(modelTexture);
        }
        mRender.DelAllModels();
        mAvatar = GTWorld.Instance.AddAvatar(db.Model);
        mAvatar.PlayAnim("idle", null);
        GameObject model = mRender.AddModel(mAvatar.GetRootObj());
        DStage     ds    = ReadCfgStageMount.GetDataById(mSelectMountID);

        model.transform.localPosition    = new Vector3(ds.X, ds.Y, ds.Z);
        model.transform.localEulerAngles = new Vector3(0, 120, 0);
        model.transform.localScale       = Vector3.one * ds.Scale * 1.2f;
    }
Exemplo n.º 28
0
    private void OnAck_UpgradePet(MessageRecv obj)
    {
        System.IO.MemoryStream ms  = new System.IO.MemoryStream(obj.Data);
        AckUpgradePet          ack = Serializer.Deserialize <AckUpgradePet>(ms);
        int          id            = ack.ID;
        List <XItem> items         = ack.UseItems;

        DActor db   = ReadCfgActor.GetDataById(id);
        XPet   data = DataDBSPet.GetDataById(id);

        if (data == null)
        {
            data = GTDataFactory.CreatePet(id);
        }

        int       exp     = PetModule.Instance.GetExpByItemList(items);
        DPetLevel levelDB = ReadCfgPetLevel.GetDataById(db.Quality * 1000 + data.Level);
        int       addExp  = exp + data.CurExp;

        while (addExp > levelDB.Exp)
        {
            addExp -= levelDB.Exp;
            data.Level++;
            levelDB = ReadCfgPetLevel.GetDataById(db.Quality * 1000 + data.Level);
        }
        data.CurExp = addExp;
        DataDBSPet.Update(id, data);
        for (int i = 0; i < items.Count; i++)
        {
            GTDataManager.Instance.UseItemById(items[i].Id, 1);
        }

        CharacterManager.Instance.SyncMainPlayerData(ESyncDataType.TYPE_BASEATTR);

        GTEventCenter.FireEvent(GTEventID.TYPE_UPGRADE_PET);
        GTEventCenter.FireEvent(GTEventID.TYPE_CHANGE_FIGHTVALUE);
    }
Exemplo n.º 29
0
    private void ShowView()
    {
        DActor db   = ReadCfgActor.GetDataById(mCurPetID);
        XPet   data = DataDBSPet.GetDataById(mCurPetID);

        data = data == null?GTDataFactory.CreatePet(mCurPetID) : data;

        DPetLevel levelDB = ReadCfgPetLevel.GetDataById(db.Quality * 1000 + data.Level);

        GTItemHelper.ShowProgressSlider(expSlider, data.CurExp, levelDB.Exp);
        GTItemHelper.ShowProgressText(expNum, data.CurExp, levelDB.Exp);
        for (int i = 0; i < mFoods.Count; i++)
        {
            FoodItem tab = mFoods[i];
            if (i < mItems.Count)
            {
                XItem itemData = mItems[i];
                GTItemHelper.ShowItemTexture(tab.itemTexture, itemData.Id);
                GTItemHelper.ShowItemQuality(tab.itemQuality, itemData.Id);
            }
            else
            {
                tab.itemQuality.gameObject.SetActive(false);
                tab.itemTexture.gameObject.SetActive(false);
            }
        }
        string str = GTTools.Format("{0}    +{1}", db.Name, data.Level);

        GTItemHelper.ShowQualityText(title, str, db.Quality);


        ShowPropertyView(mCurPetID, data.Level);
        XCharacter role = RoleModule.Instance.GetCurPlayer();

        btnBattle.SetActive(role.PetID != mCurPetID);
        btnUnload.SetActive(role.PetID == mCurPetID);
    }
Exemplo n.º 30
0
    private void ShowPartnerDressView()
    {
        XCharacter role = RoleModule.Instance.GetCurPlayer();

        int[] array = { role.Partner1, role.Partner2 };
        for (int i = 0; i < mPartnerDress.Count; i++)
        {
            PartnerElem tab = mPartnerDress[i];
            int         id  = array[i];
            tab.icon.enabled = id > 0;
            tab.name.enabled = id > 0;
            if (id > 0)
            {
                DActor db = ReadCfgActor.GetDataById(id);
                GTItemHelper.ShowQualityText(tab.name, db.Name, db.Quality);
                GTItemHelper.ShowActorQuality(tab.quality, id);
                tab.icon.spriteName = db.Icon;
            }
            else
            {
                GTItemHelper.ShowActorQuality(tab.quality, 0);
            }
        }
    }