| System/FashionDress/FashionAttrBeh.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FashionDress/FashionDetailsWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FashionDress/FashionSumAttrWin.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/FashionDress/FashionSumAttrWin.cs.meta | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
System/FashionDress/FashionAttrBeh.cs
@@ -6,6 +6,7 @@ namespace Snxxz.UI { [XLua.Hotfix] public class FashionAttrBeh : MonoBehaviour { [SerializeField] Text titleText; @@ -13,6 +14,7 @@ [SerializeField] List<Text> attrlist = new List<Text>(); ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } FashionDressModel fashionModel { get { return ModelCenter.Instance.GetModel<FashionDressModel>(); } } public void SetDisplay(int star,int curStar) { @@ -43,33 +45,39 @@ starDesText.text = StringUtility.Contact("升至", minStar, "星时获得属性"); } int curFashionId = fashionModel.viewFashionDressId; Dictionary<int, int> attrDict = null; List<int> attrIds = attrDict.Keys.ToList(); for(int i = 0; i < attrlist.Count; i++) fashionModel.TryGetFashionDressProperty(curFashionId,star,out attrDict); if(attrDict != null) { var attrText = attrlist[i]; if(i < attrIds.Count) List<int> attrIds = attrDict.Keys.ToList(); for (int i = 0; i < attrlist.Count; i++) { attrText.gameObject.SetActive(true); int attrId = attrIds[i]; int attrValue = attrDict[attrId]; var attrConfig = Config.Instance.Get<PlayerPropertyConfig>(attrId); string attrSB = string.Empty; if(attrConfig.Name.Contains("%s")) var attrText = attrlist[i]; if (i < attrIds.Count) { attrSB = attrConfig.Name.Replace("%s",tipsModel.GetProValueTypeStr(attrConfig,attrValue)); attrText.gameObject.SetActive(true); int attrId = attrIds[i]; int attrValue = attrDict[attrId]; var attrConfig = Config.Instance.Get<PlayerPropertyConfig>(attrId); string attrSB = string.Empty; if (attrConfig.Name.Contains("%s")) { attrSB = attrConfig.Name.Replace("%s", tipsModel.GetProValueTypeStr(attrConfig, attrValue)); } else { attrSB = StringUtility.Contact(attrConfig.Name, "+", tipsModel.GetProValueTypeStr(attrConfig, attrValue)); } attrText.text = attrSB; } else { attrSB = StringUtility.Contact(attrConfig.Name,"+", tipsModel.GetProValueTypeStr(attrConfig, attrValue)); attrText.gameObject.SetActive(false); } attrText.text = attrSB; } else { attrText.gameObject.SetActive(false); } } } } } System/FashionDress/FashionDetailsWin.cs
@@ -6,6 +6,7 @@ namespace Snxxz.UI { [XLua.Hotfix] public class FashionDetailsWin : Window { [SerializeField] GameObject container; @@ -17,12 +18,16 @@ [SerializeField] CommonItemBaisc itemBaisc; [Header("中间UI")] [SerializeField] GameObject midPartObj; [SerializeField] List<FashionAttrBeh> fashionAttrs = new List<FashionAttrBeh>(); [SerializeField] FashionAttrBeh currentFashionAttr; [SerializeField] FashionAttrBeh nextFashionAttr; [Header("底部UI")] [SerializeField] GameObject bottomPartObj; [SerializeField] Text resourceText; FashionDress fashionDress = null; ItemConfig itemConfig = null; FashionDressModel fashionModel { get { return ModelCenter.Instance.GetModel<FashionDressModel>(); } } #region Built-in protected override void BindController() { @@ -59,9 +64,12 @@ private void SetDisplay() { fashionModel.TryGetFashionDress(fashionModel.viewFashionDressId,out fashionDress); if (fashionDress == null) return; container.SetActive(false); alpha.alpha = 0; itemConfig = Config.Instance.Get<ItemConfig>(1); itemConfig = Config.Instance.Get<ItemConfig>(fashionDress.GetEquipItemId()); SetTopUI(); SetMidUI(); SetBotttomUI(); @@ -71,6 +79,11 @@ { if (itemConfig == null) return; if (itemConfig.JobLimit != 0) { JobNameConfig jobNameConfig = Config.Instance.Get<JobNameConfig>(itemConfig.JobLimit); jobText.text = jobNameConfig.name; } nameText.text = itemConfig.ItemName; nameText.color = UIHelper.GetUIColor(itemConfig.ItemColor); fashionPartText.text = itemConfig.ItemTypeName; @@ -80,7 +93,29 @@ private void SetMidUI() { //midPartObj.SetActive(true); //midPartObj.SetActive(true); if (fashionDress == null) return; int minStar = 1; int curSatr = fashionModel.GetFashionDressLevel(fashionDress.id); if(curSatr < minStar) { currentFashionAttr.gameObject.SetActive(false); nextFashionAttr.gameObject.SetActive(true); nextFashionAttr.SetDisplay(minStar,curSatr); } else if(curSatr >= fashionDress.maxLevel) { currentFashionAttr.gameObject.SetActive(true); nextFashionAttr.gameObject.SetActive(false); currentFashionAttr.SetDisplay(fashionDress.maxLevel,curSatr); } else { currentFashionAttr.gameObject.SetActive(true); nextFashionAttr.gameObject.SetActive(true); currentFashionAttr.SetDisplay(curSatr,curSatr); nextFashionAttr.SetDisplay(curSatr+1,curSatr); } } private void SetBotttomUI() System/FashionDress/FashionSumAttrWin.cs
New file @@ -0,0 +1,189 @@ using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using TableConfig; using System.Linq; using System.Collections; namespace Snxxz.UI { [XLua.Hotfix] public class FashionSumAttrWin : Window { [SerializeField] GameObject container; [SerializeField] CanvasGroup alpha; [Header("时装总加成")] [SerializeField] Text activateNumText; [SerializeField] GameObject noneActivate; [SerializeField] List<Text> activateAttrs = new List<Text>(); [SerializeField] List<GameObject> activateAttrObjs = new List<GameObject>(); [Header("衣柜等级加成")] [SerializeField] Text wardrobeLvText; [SerializeField] GameObject noneLvAdd; [SerializeField] List<Text> lvAddAttrs = new List<Text>(); [SerializeField] List<GameObject> lvAddAttrObjs = new List<GameObject>(); FashionDressModel fashionModel { get { return ModelCenter.Instance.GetModel<FashionDressModel>(); } } ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } } #region Built-in protected override void BindController() { } protected override void AddListeners() { } protected override void OnPreOpen() { SetDisplay(); } protected override void OnActived() { base.OnActived(); StartCoroutine(DelayShow()); } protected override void OnAfterOpen() { } protected override void OnPreClose() { } protected override void OnAfterClose() { } #endregion private void SetDisplay() { alpha.alpha = 0; container.SetActive(false); SetActivateFashionAdd(); SetWardrobeLvAdd(); } private void SetActivateFashionAdd() { int sumNum = 10; int activateNum = 0; string actvivateNumSB = string.Empty; if(activateNum > 0) { actvivateNumSB = UIHelper.AppendStringColor(TextColType.Green,activateNum.ToString()); } else { actvivateNumSB = UIHelper.AppendStringColor(TextColType.Red, activateNum.ToString()); } activateNumText.text = StringUtility.Contact(actvivateNumSB, "/",sumNum); Dictionary<int, int> attrDict = null; if(attrDict != null && attrDict.Count > 0) { noneActivate.SetActive(false); List<int> attrIds = attrDict.Keys.ToList(); for(int i = 0; i < activateAttrObjs.Count; i++) { var attrObj = activateAttrObjs[i]; attrObj.SetActive(i < attrIds.Count); if(i < attrIds.Count) { var attrText = activateAttrs[i]; int attrId = attrIds[i]; int attrValue = attrDict[attrId]; var attrConfig = Config.Instance.Get<PlayerPropertyConfig>(attrId); string attrSB = string.Empty; string attrValueSB = UIHelper.AppendStringColor(TextColType.Green, tipsModel.GetProValueTypeStr(attrConfig, attrValue)); if (attrConfig.Name.Contains("%s")) { attrSB = attrConfig.Name.Replace("%s",attrValueSB); } else { attrSB = StringUtility.Contact(attrConfig.Name, "+",attrValueSB); } attrText.text = attrSB; } } } else { noneActivate.SetActive(true); for (int i = 0; i < activateAttrObjs.Count; i++) { var attrObj = activateAttrObjs[i]; attrObj.SetActive(false); } } } private void SetWardrobeLvAdd() { int wardrobeLevel = 0; string wardrobeLevelSB = string.Empty; if (wardrobeLevel > 0) { wardrobeLevelSB = UIHelper.AppendStringColor(TextColType.Green, wardrobeLevel.ToString()); } else { wardrobeLevelSB = UIHelper.AppendStringColor(TextColType.Red, wardrobeLevel.ToString()); } wardrobeLvText.text = StringUtility.Contact(wardrobeLevelSB, "级"); Dictionary<int, int> attrDict = null; if (attrDict != null && attrDict.Count > 0) { noneLvAdd.SetActive(false); List<int> attrIds = attrDict.Keys.ToList(); for (int i = 0; i < lvAddAttrObjs.Count; i++) { var attrObj = lvAddAttrObjs[i]; attrObj.SetActive(i < attrIds.Count); if (i < attrIds.Count) { var attrText = lvAddAttrs[i]; int attrId = attrIds[i]; int attrValue = attrDict[attrId]; var attrConfig = Config.Instance.Get<PlayerPropertyConfig>(attrId); string attrSB = string.Empty; string attrValueSB = UIHelper.AppendStringColor(TextColType.Green, tipsModel.GetProValueTypeStr(attrConfig, attrValue)); if (attrConfig.Name.Contains("%s")) { attrSB = attrConfig.Name.Replace("%s", attrValueSB); } else { attrSB = StringUtility.Contact(attrConfig.Name, "+", attrValueSB); } attrText.text = attrSB; } } } else { noneLvAdd.SetActive(true); for (int i = 0; i < lvAddAttrObjs.Count; i++) { var attrObj = lvAddAttrObjs[i]; attrObj.SetActive(false); } } } IEnumerator DelayShow() { yield return null; container.SetActive(true); StartCoroutine(DelayAlpha()); } IEnumerator DelayAlpha() { yield return null; alpha.alpha = 1; } } } System/FashionDress/FashionSumAttrWin.cs.meta
New file @@ -0,0 +1,12 @@ fileFormatVersion: 2 guid: c8afd26123775ac4b912680f965deea6 timeCreated: 1546915247 licenseType: Pro MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: