Exemplo n.º 1
0
    /// <summary>
    /// 设置头顶的ICON
    /// </summary>
    public override void SetHeadIcons(EHeadIcon icon_type)
    {
        TextNameBehavior textNameBehavoir = GetBehavior <TextNameBehavior>();

        if (textNameBehavoir == null)
        {
            return;
        }

        textNameBehavoir.EnableBehaviors(mVisibleCtrl.VisibleMode == EVisibleMode.Visible /* && !IsDead()*/);

        if ((icon_type & EHeadIcon.TEAM) == EHeadIcon.TEAM)
        {
            string spriteName = "";
            bool   isShow     = false;
            if (TeamManager.Instance.IsLeader(UID.obj_idx) == true)
            {
                spriteName = "MainWindow_New@TeamWindow@LeaderTag";
                isShow     = true;
            }
            else if (TeamManager.Instance.IsMember(UID.obj_idx) == true)
            {
                spriteName = "MainWindow_New@TeamWindow@MemberTag";
                isShow     = true;
            }
            textNameBehavoir.ShowTeamIcon(spriteName, isShow);
        }
        else if ((icon_type & EHeadIcon.PEAK) == EHeadIcon.PEAK)
        {
            bool isPeak = TransferHelper.IsPeak((uint)Level, TransferLv);
            textNameBehavoir.ShowPeakTeamIcon(isPeak);
        }
    }
Exemplo n.º 2
0
            /// <summary>
            /// 刷新角色选择列表按钮的显示
            /// </summary>
            public void UpdateButtonList()
            {
                for (int i = 0; i < ACTOR_MAX_NUM; ++i)
                {
                    Transform btn_trans    = mActorButton[i].transform;
                    Transform select_trans = btn_trans.Find("Select");
                    Transform create_trans = btn_trans.Find("Create");

                    // 当前具备的角色数据
                    if (i < mData.Count)
                    {
                        select_trans.gameObject.SetActive(true);
                        create_trans.gameObject.SetActive(false);

                        string name = System.Text.Encoding.UTF8.GetString(mData[i].name);
                        select_trans.Find("Normal/NameText").GetComponent <Text>().text   = name;
                        select_trans.Find("Selected/NameText").GetComponent <Text>().text = name;

                        uint peakLevel = 0;
                        bool isPeak    = TransferHelper.IsPeak(mData[i].level, out peakLevel, mData[i].transfer);
                        if (isPeak == true)
                        {
                            select_trans.Find("Normal/LevelPanel/PeakLevelIconImage").gameObject.SetActive(true);
                            select_trans.Find("Selected/LevelPanel/PeakLevelIconImage").gameObject.SetActive(true);
                            select_trans.Find("Normal/LevelPanel/LevelText").GetComponent <Text>().text   = peakLevel.ToString();
                            select_trans.Find("Selected/LevelPanel/LevelText").GetComponent <Text>().text = peakLevel.ToString();
                        }
                        else
                        {
                            select_trans.Find("Normal/LevelPanel/PeakLevelIconImage").gameObject.SetActive(false);
                            select_trans.Find("Selected/LevelPanel/PeakLevelIconImage").gameObject.SetActive(false);
                            select_trans.Find("Normal/LevelPanel/LevelText").GetComponent <Text>().text   = "LV." + peakLevel.ToString();
                            select_trans.Find("Selected/LevelPanel/LevelText").GetComponent <Text>().text = "LV." + peakLevel.ToString();
                        }
                    }
                    // 还有可创建的空位
                    else if (i < Game.GetInstance().CharactorMaxCount)
                    {
                        select_trans.gameObject.SetActive(false);
                        create_trans.gameObject.SetActive(true);
                    }
                    // 剩下的不能创建
                    else
                    {
                        select_trans.gameObject.SetActive(false);
                        create_trans.gameObject.SetActive(true);
                    }
                }
            }
Exemplo n.º 3
0
        public string GetPeakLvDesc(uint lv)
        {
            string ret = string.Empty;

            var  fmt    = "{0}";
            uint peakLv = 0;
            bool isPeak = TransferHelper.IsPeak(lv, out peakLv);

            if (isPeak)
            {
                fmt = DBConstText.GetText("UI_PLAYER_PEAK_LEVEL_FORMAT"); // 巅峰{0}级
            }
            else
            {
                fmt = DBConstText.GetText("UI_PLAYER_LEVEL_FORMAT"); // {0}级
            }
            return(string.Format(fmt, peakLv));
        }
Exemplo n.º 4
0
        public void InsertOneServerRoleHead(GameObject roleHead, ServerRoleInfo serverRoleInfo)
        {
            GameObject item = GameObject.Instantiate(roleHead);

            item.SetActive(true);
            item.name = "ServerRole_" + serverRoleInfo.RoleId;
            Transform itemTrans = item.transform;

            itemTrans.SetParent(roleHead.transform.parent);
            itemTrans.localScale    = Vector3.one;
            itemTrans.localPosition = Vector3.zero;

            // 等级,新角色控制服会发0过来,强制显示成1
            Text levelText = itemTrans.Find("Text").GetComponent <Text>();

            if (serverRoleInfo.Level <= 0)
            {
                levelText.text = "1";
            }
            else
            {
                // 巅峰等级
                Image lvBGImage     = itemTrans.Find("LvBG").GetComponent <Image>();
                Image peakLvBGImage = itemTrans.Find("PeakLvBG").GetComponent <Image>();
                uint  peakLevel     = 0;
                bool  isPeak        = TransferHelper.IsPeak((uint)serverRoleInfo.Level, out peakLevel, serverRoleInfo.TransferLv);
                if (isPeak == true)
                {
                    lvBGImage.gameObject.SetActive(false);
                    peakLvBGImage.gameObject.SetActive(true);
                }
                else
                {
                    lvBGImage.gameObject.SetActive(true);
                    peakLvBGImage.gameObject.SetActive(false);
                }
                levelText.text = peakLevel.ToString();
            }

            // 头像
            Image headImage = itemTrans.Find("HeadImage").GetComponent <Image>();

            headImage.sprite = mRoleHeadSpriteList.LoadSprite(RoleHelp.GetPlayerIconName((uint)serverRoleInfo.IconId, serverRoleInfo.TransferLv, false));
        }
Exemplo n.º 5
0
        /// <summary>
        /// 设置怪物挂架的tips
        /// </summary>
        /// <param name="info"></param>
        public void SetMonsterTipsInfo(MiniMapPointInfo info)
        {
            mCurrentMonsterInfo = info;
            string key = string.Format("{0}_{1}", info.Tag, m_CurSceneId);

            // F副本.xlsx -- 刷怪点信息
            var data_actor_tag = DBManager.Instance.QuerySqliteRow <string>(GlobalConfig.DBFile, "data_actor_tag", "csv_id", key);


            //服务端不建议改表格式
            //List<Dictionary<string, string>> data_actor_tag = null;
            //string key = string.Empty;
            //SDKConfig sdk_config = SDKHelper.GetSDKConfig();
            //if (sdk_config != null && SDKHelper.IsCopyBag() && AuditManager.Instance.Open)
            //{
            //    key = string.Format("{0}_{1}{2}", info.Tag, m_CurSceneId, sdk_config.SDKNamePrefix);
            //    data_actor_tag = DBManager.Instance.QuerySqliteRow<string>(GlobalConfig.DBFile, "data_actor_tag", "csv_id", key);
            //}

            ////当对应的马甲包没配置对应的数据时,就直接用正式数据
            //if (data_actor_tag == null || data_actor_tag.Count == 0)
            //{
            //    key = string.Format("{0}_{1}", info.Tag, m_CurSceneId);// 唯一id由{tag_id}_{map_id}组成
            //    data_actor_tag = DBManager.Instance.QuerySqliteRow<string>(GlobalConfig.DBFile, "data_actor_tag", "csv_id", key);
            //}



            string titlestr   = string.Empty;
            string contentstr = string.Empty;

            if (info.PointType != MiniMapPointType.Boss) // 普通怪物
            {
                if (data_actor_tag.Count > 0)
                {
                    var  table = data_actor_tag[0];
                    uint level = DBTextResource.ParseUI(table["min_level"]);

                    string levelDesc = string.Empty;
                    uint   peakLevel = 0;
                    bool   isPeak    = TransferHelper.IsPeak(level, out peakLevel);
                    if (isPeak)
                    {
                        var fmt = DBConstText.GetText("UI_PLAYER_PEAK_LEVEL_FORMAT"); // 巅峰{0}级
                        levelDesc = string.Format(fmt, peakLevel);
                    }
                    else
                    {
                        var fmt = DBConstText.GetText("UI_PLAYER_LEVEL_FORMAT"); // {0}级
                        levelDesc = string.Format(fmt, peakLevel);
                    }

                    uint   def  = DBTextResource.ParseUI(table["min_def"]);
                    string _def = string.Empty;
                    if (LocalPlayerManager.Instance.Level < level)
                    {
                        levelDesc = string.Format(xc.TextHelper.GetConstText("CODE_TEXT_LOCALIZATION_108"), GameConst.COLOR_DARK_RED, levelDesc);
                    }
                    else
                    {
                        levelDesc = string.Format(xc.TextHelper.GetConstText("CODE_TEXT_LOCALIZATION_108"), GameConst.COLOR_DARK_GREEN, levelDesc);
                    }

                    var Def = LocalPlayerManager.Instance.LocalActorAttribute.Attribute[GameConst.AR_DEF].Value;
                    if (Def < def)
                    {
                        _def = string.Format(xc.TextHelper.GetConstText("CODE_TEXT_LOCALIZATION_109"), GameConst.COLOR_DARK_RED, def);
                    }
                    else
                    {
                        _def = string.Format(xc.TextHelper.GetConstText("CODE_TEXT_LOCALIZATION_109"), GameConst.COLOR_DARK_GREEN, def);
                    }

                    titlestr = levelDesc + _def;

                    StringBuilder award_desc = new StringBuilder(150);
                    award_desc.AppendFormat(xc.TextHelper.GetTranslateText(table["tips1_format"]), table["tips1"]);
                    award_desc.Append('\n');
                    award_desc.AppendFormat(xc.TextHelper.GetTranslateText(table["tips2_format"]), table["tips2"]);
                    award_desc.Append('\n');
                    award_desc.AppendFormat(xc.TextHelper.GetTranslateText(table["tips3_format"]), table["tips3"]);

                    contentstr = award_desc.ToString();
                }
                else
                {
                    titlestr   = string.Format(xc.TextHelper.GetConstText("CODE_TEXT_LOCALIZATION_110"));
                    contentstr = string.Format(xc.TextHelper.GetConstText("CODE_TEXT_LOCALIZATION_111"));;
                }
            }
            else
            {
                if (GlobalConst.IsBanshuVersion)
                {
                    titlestr = string.Format(xc.TextHelper.GetConstText("CODE_TEXT_LOCALIZATION_112"), GameConst.COLOR_DARK_RED, info.BlackName, info.Level);
                }
                else
                {
                    titlestr = string.Format("{0}{1} Lv{2}</color>", GameConst.COLOR_DARK_RED, info.BlackName, info.Level);
                }

                uint actorId = (uint)info.ActorId;

                bool isSouthLandBoss   = ActorHelper.IsSouthLandBoss(actorId);   // 南天圣地boss
                bool isElementAreaBoss = ActorHelper.IsElementAreaBoss(actorId); // 元素禁地boss
                if (isSouthLandBoss || isElementAreaBoss)
                {
                    // 浊气值
                    uint evilValue = 0;

                    if (isSouthLandBoss)
                    {
                        var evilItem = DBManager.Instance.GetDB <DBEvilValue>().GetData(actorId);
                        if (null != evilItem)
                        {
                            evilValue = evilItem.Value;
                        }
                    }
                    else
                    {
                        var evilItem = DBManager.Instance.GetDB <DBElementAreaEvilValue>().GetData(actorId);
                        if (null != evilItem)
                        {
                            evilValue = evilItem.Value;
                        }
                    }

                    string strEvilValue = DBConstText.GetText("SOUTH_LAND_EVIL_VALUE"); // 浊气值:
                    titlestr = string.Format("{0}\n{1}{2}{3}</color>", titlestr, strEvilValue, GameConst.COLOR_DARK_YELLOW, evilValue);
                }

                if (data_actor_tag.Count > 0)
                {
                    var           table      = data_actor_tag[0];
                    StringBuilder award_desc = new StringBuilder(150);
                    award_desc.AppendFormat(xc.TextHelper.GetTranslateText(table["tips1_format"]), table["tips1"]);
                    award_desc.Append('\n');
                    award_desc.AppendFormat(xc.TextHelper.GetTranslateText(table["tips2_format"]), table["tips2"]);
                    award_desc.Append('\n');
                    award_desc.AppendFormat(xc.TextHelper.GetTranslateText(table["tips3_format"]), table["tips3"]);

                    contentstr = award_desc.ToString();
                }
            }

            Text title   = UIHelper.FindChild(m_MonsterInfo, "TitleText").GetComponent <Text>();
            Text content = UIHelper.FindChild(m_MonsterInfo, "Content").GetComponent <Text>();

            title.text   = titlestr;
            content.text = contentstr;
            GameObject monster_point;

            if (mMonsterListPointObjs.TryGetValue(mCurrentMonsterInfo.Id, out monster_point))
            {
                m_MonsterInfo.transform.localPosition = GetTipsPos(monster_point);
                float y = mMapScroll.viewport.rect.height / 2 - monster_point.transform.localPosition.y;
                float x = mMapScroll.viewport.rect.width / 2 - monster_point.transform.localPosition.x;
                mMiniMapRawImage.rectTransform.anchoredPosition = new Vector2(x, y);
            }
        }
Exemplo n.º 6
0
        public void SetInfoPanel()
        {
            if (mTargetMono == null)
            {
                SetHpBarPanelVisible(false);
                return;
            }
            var actor = mTargetMono.BindActor;

            if (actor == null)
            {
                SetHpBarPanelVisible(false);
                return;
            }
            uint   vocation_id = ActorHelper.TypeIdToRoleId(actor.ActorId);
            string iconName    = RoleHelp.GetPlayerIconName(vocation_id, actor.TransferLv, false);

            uint peakLevel = 0;
            bool isPeak    = TransferHelper.IsPeak((uint)actor.Level, out peakLevel, actor.TransferLv);

            if (isPeak == true)
            {
                mLvBgImage.gameObject.SetActive(false);
                mPeakLvBgImage.gameObject.SetActive(true);
            }
            else
            {
                mLvBgImage.gameObject.SetActive(true);
                mPeakLvBgImage.gameObject.SetActive(false);
            }
            mLvText.text = string.Format("{0}", peakLevel.ToString());

            string replaceName = DBInstanceTypeControl.Instance.GetReplaceOtherPlayerName(InstanceManager.Instance.InstanceType, InstanceManager.Instance.InstanceSubType);

            if (replaceName == null || replaceName == "")
            {
                mNameText.text = actor.UserName;
            }
            else
            {
                mNameText.text = replaceName;
            }


            var icon = xc.DBManager.Instance.GetDB <xc.DBHonor>().GetHonorIcon(actor.Honor);

            if (icon == null || icon == "")
            {
                mHonorIcon.gameObject.SetActive(false);
            }
            else
            {
                mHonorIcon.sprite = Window.LoadSprite(icon);
                mHonorIcon.gameObject.SetActive(true);
            }

            mPlayerIconImage.sprite = Window.LoadSprite(iconName);
            SetHpBarPanel();

            AvatarProperty ap = actor.mAvatarCtrl.GetLatestAvatartProperty();

            if (ap == null)
            {
                mPlayerPhotoFrame.Clean();
            }
            else
            {
                mPlayerPhotoFrame.SetModelId(ap.FashionPhotoFrameId);
            }
        }