From 9e8aa4c81f739980802fb9dbb2f3eff06aeb8d4c Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期四, 13 十一月 2025 16:11:50 +0800
Subject: [PATCH] 125 战斗 特性 怒气恢复
---
Main/Utility/UIHelper.cs | 980 ++++++++++++++++++++++++++++++++-------------------------
1 files changed, 546 insertions(+), 434 deletions(-)
diff --git a/Main/Utility/UIHelper.cs b/Main/Utility/UIHelper.cs
index 14e5385..2cd0ea7 100644
--- a/Main/Utility/UIHelper.cs
+++ b/Main/Utility/UIHelper.cs
@@ -2,8 +2,6 @@
using System.Text;
using UnityEngine;
using System.Linq;
-using System.Xml.Linq;
-using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
@@ -68,18 +66,54 @@
#region UI閫氱敤
+
+ //榛樿璐у竵鍥剧墖鐢ㄩ珮娓呯殑锛屽瘜鏂囨湰鐨勫彲浠ョ敤灏忓浘鏍囧埄浜庢帓鐗堟樉绀�
public static void SetIconWithMoneyType(this Image _image, int moneyType)
{
if (_image == null) return;
- string iconKey = StringUtility.Contact("Money_Type_", moneyType);
- _image.SetSprite(iconKey);
+ if (GeneralDefine.MoneyDisplayModel.ContainsKey(moneyType))
+ {
+ _image.SetOrgSprite(ItemConfig.Get(GeneralDefine.MoneyDisplayModel[moneyType]).IconKey);
+ }
+ else
+ {
+ // 鏆備笉鑰冭檻瀵屾枃鏈殑鎯呭喌
+ // 涓嶉渶瑕佺墿鍝佺殑鎯呭喌琛ュ厖
+ // string iconKey = StringUtility.Contact("Money_Type_", moneyType);
+ Debug.LogError("MoneyDisplayModel 鏈厤缃揣甯佺被鍨嬶細" + moneyType);
+ }
}
- public static void SetSmallIconWithMoneyType(this Image _image, int moneyType)
+ public static string GetIconNameWithMoneyType(int moneyType)
{
- if (_image == null) return;
- string iconKey = StringUtility.Contact("SmallMoney", moneyType);
- _image.SetSprite(iconKey);
+ if (IconConfig.HasKey("MoneyType_" + moneyType))
+ {
+ //瀵屾枃鏈樉绀虹殑鎯呭喌
+ return IconConfig.Get("MoneyType_" + moneyType).sprite;
+ }
+ else if (GeneralDefine.MoneyDisplayModel.ContainsKey(moneyType))
+ {
+ return ItemConfig.Get(GeneralDefine.MoneyDisplayModel[moneyType]).IconKey;
+ }
+ else
+ {
+ Debug.LogError("MoneyDisplayModel 鏈厤缃揣甯佺被鍨嬶細" + moneyType);
+ return "";
+ }
+ }
+
+ // 閫氳繃璐у竵绫诲瀷鑾峰彇鐗╁搧ID
+ public static int GetItemIDWithMoneyType(int moneyType)
+ {
+ if (GeneralDefine.MoneyDisplayModel.ContainsKey(moneyType))
+ {
+ return GeneralDefine.MoneyDisplayModel[moneyType];
+ }
+ else
+ {
+ Debug.LogError("MoneyDisplayModel 鏈厤缃揣甯佺被鍨嬶細" + moneyType);
+ return 0;
+ }
}
/// <summary>
@@ -115,13 +149,13 @@
}
// 鍩轰簬itemColor 涓嬶紝ColorEx鍋氫簩绾у尯鍒�
- public static void SetItemBackGround(this Image _image, int itemColor, int ColorEx = 0)
+ public static void SetItemBackGround(this Image _image, int itemColor)
{
if (_image == null)
{
return;
}
- _image.SetSprite(string.Format("Common_Public_ItemColor{0}{1}", itemColor, ColorEx));
+ _image.SetSprite($"ItemBG{itemColor}");
}
/// <summary>
/// 鍓╀綑鏃堕棿
@@ -162,7 +196,7 @@
}
/// <summary>
- /// 鑾峰彇娑堥�濈殑鏃堕棿
+ /// 鑾峰彇杩囧幓鐨勬椂闂�
/// </summary>
/// <param name="lastTime"></param>
/// <returns></returns>
@@ -175,166 +209,7 @@
else if (span.TotalMinutes > 1) return Math.Floor(span.TotalMinutes) + Language.Get("L1073");
else return 1 + Language.Get("L1073");
}
- /// <summary>
- /// 鏍规嵁灞炴�ц幏鍙栫帺瀹舵暟鎹�
- /// </summary>
- /// <param name="type"></param>
- /// <returns></returns>
- public static ulong GetPropertyValue(PropertyType type)
- {
- switch (type)
- {
- case PropertyType.LV:
- return PlayerDatas.Instance.baseData.LV;
- case PropertyType.POWER:
- return (ulong)PlayerDatas.Instance.baseData.STR;
- case PropertyType.AGILITY:
- return (ulong)PlayerDatas.Instance.baseData.PHY;
- case PropertyType.PHYSIQUE:
- return (ulong)PlayerDatas.Instance.baseData.CON;
- case PropertyType.MENTALITY:
- return (ulong)PlayerDatas.Instance.baseData.PNE;
- case PropertyType.HP:
- return PlayerDatas.Instance.extersion.MaxHP;
- case PropertyType.ATK:
- return (ulong)PlayerDatas.Instance.extersion.MAXATK;
- case PropertyType.DEF:
- return (ulong)PlayerDatas.Instance.extersion.DEF;
- case PropertyType.HIT:
- return (ulong)PlayerDatas.Instance.extersion.HIT;
- case PropertyType.MISS:
- return (ulong)PlayerDatas.Instance.extersion.Miss;
- case PropertyType.ATKSPEED:
- return (ulong)PlayerDatas.Instance.extersion.battleValEx1;
- case PropertyType.CritChance:
- return (ulong)PlayerDatas.Instance.extersion.SuperHitRate;
- case PropertyType.CritHurt:
- return (ulong)PlayerDatas.Instance.extersion.SuperHit;
- case PropertyType.CritResis:
- return (ulong)PlayerDatas.Instance.extersion.SuperHitReduce;
- case PropertyType.HeartHit:
- return (ulong)PlayerDatas.Instance.extersion.luckHitRate;
- case PropertyType.HeartHurt:
- return (ulong)PlayerDatas.Instance.extersion.luckHitVal;
- case PropertyType.HeartResis:
- return (ulong)PlayerDatas.Instance.extersion.LuckyHitRateReduce;
- case PropertyType.SkillHurt:
- return (ulong)PlayerDatas.Instance.extersion.SkillAtkRate;
- case PropertyType.PVPAddHurt:
- return (ulong)PlayerDatas.Instance.extersion.DamagePVP;
- case PropertyType.PVPReduceHurt:
- return PlayerDatas.Instance.GetPlayerDataByType((PlayerDataType)191);
- case PropertyType.LifeReply:
- return (ulong)PlayerDatas.Instance.extersion.HPRestorePer;
- case PropertyType.HurtReflect:
- return (ulong)PlayerDatas.Instance.extersion.DamageBackRate;
- case PropertyType.MoveSpeed:
- return (ulong)PlayerDatas.Instance.extersion.SpeedValue;
- case PropertyType.PetAddHurt:
- return (ulong)PlayerDatas.Instance.extersion.PetDamPer;
- case PropertyType.RealHurt:
- return (ulong)PlayerDatas.Instance.extersion.realATK;
- case PropertyType.RealResis:
- return (ulong)PlayerDatas.Instance.extersion.realDEF;
- case PropertyType.DefyDef:
- return (ulong)PlayerDatas.Instance.extersion.IgnoreDefRate;
- case PropertyType.DefyDefResis:
- return (ulong)PlayerDatas.Instance.extersion.IgnoreDefRateReduce;
- case PropertyType.DefChance:
- return (ulong)PlayerDatas.Instance.extersion.DamChanceDef;
- case PropertyType.BloodHurt:
- return (ulong)PlayerDatas.Instance.extersion.BleedDamage;
- case PropertyType.AktReplyBlood:
- return (ulong)PlayerDatas.Instance.extersion.BattleValEx2;
- case PropertyType.Stun:
- return (ulong)PlayerDatas.Instance.extersion.FaintRate;
- case PropertyType.CtrlResis:
- return (ulong)PlayerDatas.Instance.extersion.FaintDefRate;
- case PropertyType.AddFinalHurt:
- return (ulong)PlayerDatas.Instance.extersion.FinalHurt;
- case PropertyType.ReduceFinalHurt:
- return (ulong)PlayerDatas.Instance.extersion.FinalHurtReduce;
- case PropertyType.PVPAddHurtPer:
- return (ulong)PlayerDatas.Instance.extersion.DamagePerPVP;
- case PropertyType.PVPReduceHurtPer:
- return (ulong)PlayerDatas.Instance.extersion.DamagePerPVPReduce;
- case PropertyType.DleHitChance:
- return (ulong)PlayerDatas.Instance.extersion.ComboDamPerRate;
- case PropertyType.DleHurt:
- return (ulong)PlayerDatas.Instance.extersion.ComboDamPer;
- case PropertyType.ReduceSkillHurtPercent:
- return (ulong)PlayerDatas.Instance.extersion.skillAtkRateReduce;
- case PropertyType.NpcHurtAddPer:
- return (ulong)PlayerDatas.Instance.extersion.NpcHurtAddPer;
- case PropertyType.Luck:
- return (ulong)PlayerDatas.Instance.extersion.luckValue;
- case PropertyType.Mater:
- return (ulong)PlayerDatas.Instance.baseData.mater;
- case PropertyType.Wood:
- return (ulong)PlayerDatas.Instance.baseData.wood;
- case PropertyType.Water:
- return (ulong)PlayerDatas.Instance.baseData.water;
- case PropertyType.Fire:
- return (ulong)PlayerDatas.Instance.baseData.fire;
- case PropertyType.Earth:
- return (ulong)PlayerDatas.Instance.baseData.earth;
- case PropertyType.ReduceCrit:
- return (ulong)PlayerDatas.Instance.baseData.reduceCrit;
- case PropertyType.ReduceHeartHurtPer:
- return (ulong)PlayerDatas.Instance.baseData.reduceHeartHurt;
- case PropertyType.ReduceFinalHurtPer:
- return (ulong)PlayerDatas.Instance.baseData.reduceFinalHurt;
- case PropertyType.AtkPercent:
- case PropertyType.CritHurtPercent:
- case PropertyType.DodgePercent:
- // return (ulong)ModelCenter.Instance.GetModel<ReikiRootModel>().GetReikiPropertyValue((int)type);
- // TODO YYL
- return 0ul;
- case PropertyType.SkillAddPerA:
- return (ulong)PlayerDatas.Instance.baseData.skillAddPerA;
- case PropertyType.SkillAddPerB:
- return (ulong)PlayerDatas.Instance.baseData.skillAddPerB;
- case PropertyType.SkillAddPerC:
- return (ulong)PlayerDatas.Instance.baseData.skillAddPerC;
- case PropertyType.SkillAddPerD:
- return (ulong)PlayerDatas.Instance.baseData.skillAddPerD;
- case PropertyType.SkillAddPerE:
- return (ulong)PlayerDatas.Instance.baseData.skillAddPerE;
- case PropertyType.SkillAddPerF:
- return (ulong)PlayerDatas.Instance.baseData.skillAddPerF;
- case PropertyType.SkillAddPerG:
- return (ulong)PlayerDatas.Instance.baseData.skillAddPerG;
- case PropertyType.SkillReducePerA:
- return (ulong)PlayerDatas.Instance.baseData.skillReducePerA;
- case PropertyType.SkillReducePerB:
- return (ulong)PlayerDatas.Instance.baseData.skillReducePerB;
- case PropertyType.SkillReducePerC:
- return (ulong)PlayerDatas.Instance.baseData.skillReducePerC;
- case PropertyType.SkillReducePerD:
- return (ulong)PlayerDatas.Instance.baseData.skillReducePerD;
- case PropertyType.SkillReducePerE:
- return (ulong)PlayerDatas.Instance.baseData.skillReducePerE;
- case PropertyType.SkillReducePerF:
- return (ulong)PlayerDatas.Instance.baseData.skillReducePerF;
- case PropertyType.SkillReducePerG:
- return (ulong)PlayerDatas.Instance.baseData.skillReducePerG;
- case PropertyType.ReduceSkillCDPer:
- return (ulong)PlayerDatas.Instance.extersion.battleValEx3;
- case PropertyType.AddFinalHurtPer:
- return (ulong)PlayerDatas.Instance.extersion.FunalHurtPer;
- case PropertyType.AddNormalHurt:
- return (ulong)PlayerDatas.Instance.baseData.NormalHurt;
- case PropertyType.AddNormalHurtPer:
- return (ulong)PlayerDatas.Instance.baseData.NormalHurtPer;
- case PropertyType.AddSkillHurt:
- return (ulong)PlayerDatas.Instance.baseData.FabaoHurt;
- case PropertyType.AddSkillHurtPer:
- return (ulong)PlayerDatas.Instance.baseData.FabaoHurtPer;
- case PropertyType.AddPVEHurt:
- return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.DamagePVE);
- }
- return 0;
- }
+
/// <summary>
@@ -348,19 +223,12 @@
return val.Replace(@"</r>", "\n");
}
- public static double numto2Decimals(double value)
- {
- //涓轰粈涔堣value * 1000/10 杩欎箞鍐欙紝鐗规畩鐨勬暟瀛椾細鏈夐棶棰橈紝姣斿36.80000锛屼細(int)(value * 100)琚绠椾负3679
- //娴嬭瘯涓嬪彧鏈�30鍑犵偣8000鐨勬墠浼氳繖鏍�
- return (int)(value * 1000 / 10) / 100.00;
- }
/// <summary>
- /// 澶ф暟鍊艰浆鍖� 鏍煎紡 鏈�澶氫袱涓皬鏁�
+ /// 澶ф暟鍊艰浆鍖� 鏍煎紡 鏈�澶氫袱涓皬鏁� ,鍚戜笅鍙栨暣
/// K -鍗冿紝M -鐧捐惉锛孊-鍗佸剟锛孴 -钀剟
- /// 涓嶅洓鑸嶄簲鍏ワ紝涓嶇敤Math.Round锛屽洜涓哄綋鐜╁鍙湁23.3456,浣嗘槸Math.Round浼氭樉绀�23.35, 褰撹喘涔颁环鏍间负23.35鏃舵棤娉曡喘涔扮殑
/// </summary>
- public static string ReplaceLargeNum(double num)
+ public static string ReplaceLargeNum(double num, int decimalPlaces = 1)
{
const long K = 10000; //鍥藉唴涓轰竾锛屾捣澶栦负鍗�
const long M = K * 10000;
@@ -369,23 +237,23 @@
if (num >= T)
{
- return StringUtility.Contact(numto2Decimals(num / T).ToString("0.##"), Language.Get("L1070_0"));
+ return StringUtility.Contact(FormatWithoutRounding(num / T, 2), Language.Get("L1070_0"));
}
else if (num >= B)
{
- return StringUtility.Contact(numto2Decimals(num / B).ToString("0.##"), Language.Get("L1070_1"));
+ return StringUtility.Contact(FormatWithoutRounding(num / B, 2), Language.Get("L1070_1"));
}
else if (num >= M)
{
- return StringUtility.Contact(numto2Decimals(num / M).ToString("0.##"), Language.Get("L1070"));
+ return StringUtility.Contact(FormatWithoutRounding(num / M, decimalPlaces), Language.Get("L1070"));
}
else if (num >= K)
{
- return StringUtility.Contact(numto2Decimals(num / K).ToString("0.##"), Language.Get("L1071"));
+ return StringUtility.Contact(FormatWithoutRounding(num / K, decimalPlaces), Language.Get("L1071"));
}
else
{
- return numto2Decimals(num).ToString("0.##");
+ return FormatWithoutRounding(num, decimalPlaces);
}
}
@@ -399,25 +267,34 @@
if (num >= T)
{
- return StringUtility.Contact(numto2Decimals(num / T).ToString("0.##"), "t");
+ return StringUtility.Contact(FormatWithoutRounding(num / T, 2), "t");
}
else if (num >= B)
{
- return StringUtility.Contact(numto2Decimals(num / B).ToString("0.##"), "b");
+ return StringUtility.Contact(FormatWithoutRounding(num / B, 2), "b");
}
else if (num >= M)
{
- return StringUtility.Contact(numto2Decimals(num / M).ToString("0.##"),"m");
+ return StringUtility.Contact(FormatWithoutRounding(num / M, 1), "m");
}
else if (num >= K)
{
- return StringUtility.Contact(numto2Decimals(num / K).ToString("0.##"), "k");
+ return StringUtility.Contact(FormatWithoutRounding(num / K, 1), "k");
}
else
{
- return numto2Decimals(num).ToString("0.##");
+ return FormatWithoutRounding(num, 1);
}
}
+
+ //鏍规嵁灏忔暟浣嶆暟鐩存帴鎴柇涓嶅仛鍥涜垗浜斿叆
+ public static string FormatWithoutRounding(double value, int decimalPlaces)
+ {
+ double factor = Math.Pow(10, decimalPlaces);
+ double truncated = Math.Truncate(value * factor) / factor;
+ return truncated.ToString($"0.{new string('#', decimalPlaces)}");
+ }
+
// 杞寲澶ф暟鍊煎甫鍗曚綅鐨勬樉绀猴紝濡傛灉灏忎簬200000鍒欐樉绀哄師鍊硷紝鍚﹀垯鏄剧ず澶ф暟鍊�
public static string ReplaceLargeNumEx(double num)
@@ -472,6 +349,13 @@
return false;
}
+ // 妫�鏌ュ瓧绗︿覆鏄笉鏄函鏁存暟
+ public static bool IsNumeric(string input)
+ {
+ return int.TryParse(input, out _);
+ }
+
+
public static string GetColorNameByItemColor(int itemColor)
{
switch (itemColor)
@@ -498,29 +382,29 @@
#endregion
- #region 鏂囧瓧鑹插��
+ #region 鏂囧瓧鑹插�� Bright 鍜� Dark鎸囪儗鏅壊绯绘槸鏄庤繕鏄殫锛屾殫搴曚寒瀛楋紝浜簳鏆楀瓧鐨勮鍒�
public static readonly Color s_BrightPinkColor = new Color32(246, 64, 141, 255);
- public static readonly Color s_BrightRedColor = new Color32(255, 3, 3, 255);
+ public static readonly Color s_BrightRedColor = new Color32(234, 38, 30, 255);
public static readonly Color s_BrightPurpleColor = new Color32(218, 72, 213, 255);
public static readonly Color s_BrightBlueColor = new Color32(0, 107, 227, 255); //006BE3FF
public static readonly Color s_BrightOrangeColor = new Color32(255, 103, 1, 255); //FF6701FF
- public static readonly Color s_BrightWhiteColor = new Color32(104, 104, 104, 255); //686868
- public static readonly Color s_BrightGreenColor = new Color32(16, 157, 6, 255); //109d06
+ public static readonly Color s_BrightWhiteColor = new Color32(255, 255, 255, 255); //ffffff //new Color32(104, 104, 104, 255); //686868
+ public static readonly Color s_BrightGreenColor = new Color32(36, 139, 18, 255); //248b12
public static readonly Color s_DarkPinkColor = new Color32(255, 124, 124, 255);
- public static readonly Color s_DarkRedColor = new Color32(250, 1, 1, 255);
+ public static readonly Color s_DarkRedColor = new Color32(234, 38, 30, 255);
public static readonly Color s_DarkPurpleColor = new Color32(236, 75, 246, 255);
public static readonly Color s_DarkBlueColor = new Color32(49, 206, 251, 255);//31cefb
public static readonly Color s_DarkOrangeColor = new Color32(248, 152, 59, 255);
- public static readonly Color s_DarkWhiteColor = new Color32(247, 247, 247, 255);
- public static readonly Color s_DarkGreenColor = new Color32(53, 225, 34, 255); //35e122
+ public static readonly Color s_DarkWhiteColor = new Color32(255, 255, 255, 255); //ffffff
+ public static readonly Color s_DarkGreenColor = new Color32(42, 227, 55, 255);//2ae337
- public static readonly Color s_NavyBrown = new Color32(64, 28, 6, 255);//401c06
+ public static readonly Color s_NavyBrown = new Color32(110, 76, 49, 255);//6e4c31
public static readonly Color s_Black = new Color32(0, 0, 0, 255);
- public static readonly Color s_NavyYellow = new Color32(255, 239, 71, 255);
- public static readonly Color s_LightGreen = new Color32(141, 220, 17, 255);//8ddc11
- public static readonly Color s_LightYellow = new Color32(255, 244, 205, 255); //fff4cd
- public static readonly Color s_Gray = new Color32(204, 204, 204, 255);
+ public static readonly Color s_NavyYellow = new Color32(242, 238, 2, 255); //f2ee02
+ public static readonly Color s_LightGreen = new Color32(42, 227, 55, 255);//2ae337
+ public static readonly Color s_LightWhite = new Color32(245, 246, 230, 255); //f5f6e6
+ public static readonly Color s_Gray = new Color32(187, 187, 187, 255); //bbbbbb
public static readonly Color s_Gold = new Color32(255, 239, 71, 255);//ffef47
public static readonly Color s_EarthYellow = new Color32(248, 152, 59, 255);//f8983b
@@ -540,7 +424,7 @@
public static readonly Color s_GrayDanLV5 = new Color32(255, 0, 0, 255); //ff0000
public static readonly Color s_GrayDanLV6 = new Color32(240, 0, 255, 255); //f000ff
- // public static Color GetDanLVColor(int danLv, bool bright = false)
+ // public static Color GetDanLVColor(int danLv, bool bright = true)
// {
// var crossDanLVConfig = CrossServerArenaConfig.Get(danLv);
// if (crossDanLVConfig != null)
@@ -566,7 +450,7 @@
// return Color.white;
// }
- // public static string AppendDanLVNameColor(int danLv, bool bright = false)
+ // public static string AppendDanLVNameColor(int danLv, bool bright = true)
// {
// var crossDanLVConfig = CrossServerArenaConfig.Get(danLv);
// if (crossDanLVConfig == null)
@@ -594,45 +478,81 @@
// return name;
// }
- public static Color GetUIColor(int itemColor, bool bright = false)
+
+
+ //鐗╁搧 鍚勫姛鑳藉搧璐� 浠庣簿鑹�1鍝佽川 瀵瑰簲 3寮�濮�
+ public static Color GetUIColorByFunc(int itemColor, bool bright = true)
+ {
+ return GetUIColor(itemColor + 2, bright);
+ }
+
+
+ //瀵瑰簲鍝佽川(鏍�)锛涚墿鍝� 鍚勫姛鑳藉搧璐� 鐢℅etUIColorByFunc
+ public static Color GetUIColor(int itemColor, bool bright = true)
{
switch (itemColor)
{
case 0:
- return GetUIColor(TextColType.White, bright);
case 1:
- return GetUIColor(TextColType.White, bright);
+ return GetUIColor(TextColType.Gray, bright);
case 2:
- return GetUIColor(TextColType.Blue, bright);
+ return GetUIColor(TextColType.White, bright);
case 3:
- return GetUIColor(TextColType.Purple, bright);
+ return GetUIColor(TextColType.itemjingliang, bright);
case 4:
- return GetUIColor(TextColType.Orange, bright);
+ return GetUIColor(TextColType.itemxiyou, bright);
case 5:
- return GetUIColor(TextColType.Red, bright);
+ return GetUIColor(TextColType.itemshishi, bright);
case 6:
+ return GetUIColor(TextColType.itemchuanqi, bright);
case 7:
+ return GetUIColor(TextColType.itemshenhua, bright);
case 8:
- return GetUIColor(TextColType.Pink, bright);
+ return GetUIColor(TextColType.itemwuxia, bright);
case 9:
- return GetUIColor(TextColType.Green, bright);
+ return GetUIColor(TextColType.itemanjin, bright);
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ return GetUIColor(TextColType.itemjueyi, bright);
+ case 15:
+ case 16:
+ case 17:
+ case 18:
+ case 19:
+ return GetUIColor(TextColType.itemyuanzu, bright);
+ case 20:
+ case 21:
+ case 22:
+ case 23:
+ case 24:
+ return GetUIColor(TextColType.itembuxiu, bright);
+ case 25:
+ case 26:
+ case 27:
+ case 28:
+ case 29:
+ return GetUIColor(TextColType.itemyonghen, bright);
+
+
}
return GetUIColor(TextColType.White, bright);
}
- public static Color GetUIColor(TextColType type, bool bright = false)
+ public static Color GetUIColor(TextColType type, bool bright = true)
{
+ //Bright 鍜� Dark鎸囪儗鏅壊绯绘槸鏄庤繕鏄殫锛屾殫搴曚寒瀛楋紝浜簳鏆楀瓧鐨勮鍒�
switch (type)
{
case TextColType.None:
case TextColType.White:
return bright ? s_BrightWhiteColor : s_DarkWhiteColor; // s_BrightWhiteColor 鏄寒搴曠伆鑹�
- case TextColType.Blue:
- return bright ? s_BrightBlueColor : s_DarkBlueColor;
- case TextColType.Purple:
- return bright ? s_BrightPurpleColor : s_DarkPurpleColor;
- case TextColType.Orange:
- return bright ? s_BrightOrangeColor : s_DarkOrangeColor;
+ case TextColType.titleSelectColor:
+ return new Color32(127, 65, 57, 255);
+ case TextColType.titleUnSelectColor:
+ return new Color32(110, 92, 96, 255);
case TextColType.Red:
return bright ? s_BrightRedColor : s_DarkRedColor;
case TextColType.Pink:
@@ -645,75 +565,272 @@
return s_BrightGreenColor;
case TextColType.Black:
return s_Black;
+ case TextColType.lightYellow: //娴呴粍鑹�
+ return new Color32(252, 237, 185, 255);
case TextColType.NavyYellow:
return s_NavyYellow;
case TextColType.LightGreen:
return s_LightGreen;
- case TextColType.LightYellow:
- return s_LightYellow;
+ case TextColType.LightWhite:
+ return s_LightWhite;
case TextColType.Gray:
return s_Gray;
+ case TextColType.NavyGray:
+ return new Color32(121, 121, 121, 255);
+ case TextColType.itemjingliang:
+ // 729de4 绮捐壇
+ return new Color32(114, 157, 228, 255);
+ case TextColType.itemxiyou:
+ // c87bfa绋�鏈�
+ return new Color32(199, 123, 253, 255);
+ case TextColType.itemshishi:
+ // f6de56 鍙茶瘲
+ return new Color32(246, 222, 86, 255);
+ case TextColType.itemchuanqi:
+ // fe8534 浼犲
+ return new Color32(254, 133, 52, 255);
+ case TextColType.itemshenhua:
+ // fe4a47 绁炶瘽
+ return new Color32(254, 66, 71, 255);
+ case TextColType.itemwuxia:
+ // eb5ce9 鏃犵憰
+ return new Color32(235, 90, 233, 255);
+ case TextColType.itemanjin:
+ // f9e29f 鏆楅噾
+ return new Color32(254, 181, 68, 255);
+ case TextColType.itemjueyi:
+ // cdfef2 缁濊壓
+ return new Color32(205, 239, 242, 255);
+ case TextColType.itemyuanzu:
+ // dfbbed 鍏冪
+ return new Color32(223, 187, 237, 255);
+ case TextColType.itembuxiu:
+ // 5eeff2 涓嶆溄
+ return new Color32(94, 239, 242, 255);
+ case TextColType.itemyonghen:
+ // f5b4ea 姘告亽
+ return new Color32(245, 180, 234, 255);
}
return bright ? s_BrightWhiteColor : s_DarkWhiteColor;
}
- private static Regex m_TextColorRegex = new Regex("<color=#[0-9a-zA-Z]+>(.*)</color>", RegexOptions.Singleline);
-
- public static string AppendColor(TextColType type, string msg, bool bright = false)
+ //瀵瑰簲鍝佽川(鏍�)锛涚墿鍝� 鍚勫姛鑳藉搧璐� 鐢℅etUIOutlineColorByFunc
+ public static Color GetUIOutlineColor(int quality)
{
- if (m_TextColorRegex.IsMatch(msg) && msg.ToLower().StartsWith("<color=#")
- && msg.ToLower().EndsWith("</color>"))
+ switch (quality)
{
- Match match = m_TextColorRegex.Match(msg);
- msg = match.Groups[1].Value;
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ return GetUIOutlineColor((QualityTextColType)quality);
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ return GetUIOutlineColor(QualityTextColType.itemjueyi);
+ case 15:
+ case 16:
+ case 17:
+ case 18:
+ case 19:
+ return GetUIOutlineColor(QualityTextColType.itemyuanzu);
+ case 20:
+ case 21:
+ case 22:
+ case 23:
+ case 24:
+ return GetUIOutlineColor(QualityTextColType.itembuxiu);
+ case 25:
+ case 26:
+ case 27:
+ case 28:
+ case 29:
+ return GetUIOutlineColor(QualityTextColType.itemyonghen);
}
+ return GetUIOutlineColor(QualityTextColType.itemputong);
+ }
+
+ //鐗╁搧 鍚勫姛鑳藉搧璐� 浠庣簿鑹�1鍝佽川 瀵瑰簲 3寮�濮�
+ public static Color GetUIOutlineColorByFunc(int quality)
+ {
+ return GetUIOutlineColor((QualityTextColType)(quality + 2));
+ }
+
+ //鎻忚竟棰滆壊锛屽搴斿搧璐�(鏍�)
+ public static Color GetUIOutlineColor(QualityTextColType type)
+ {
+ switch (type)
+ {
+ case QualityTextColType.itemcucao:
+ // 2d2d2d 绮楃硻
+ return new Color32(45, 45, 45, 128);
+ case QualityTextColType.itemputong:
+ // 424242 鏅��
+ return new Color32(66, 66, 66, 128);
+ case QualityTextColType.itemjingliang:
+ // 172543 绮捐壇
+ return new Color32(23, 37, 67, 128);
+ case QualityTextColType.itemxiyou:
+ // 2a0f30 绋�鏈�
+ return new Color32(42, 15, 48, 128);
+ case QualityTextColType.itemshishi:
+ // 4a2f00 鍙茶瘲
+ return new Color32(74, 47, 0, 128);
+ case QualityTextColType.itemchuanqi:
+ // 451800 浼犲
+ return new Color32(69, 24, 0, 128);
+ case QualityTextColType.itemshenhua:
+ // 510000 绁炶瘽
+ return new Color32(81, 0, 0, 128);
+ case QualityTextColType.itemwuxia:
+ // 43003e 鏃犵憰
+ return new Color32(67, 0, 62, 128);
+ case QualityTextColType.itemanjin:
+ // 6f4401 鏆楅噾
+ return new Color32(111, 68, 1, 128);
+ case QualityTextColType.itemjueyi:
+ // 203995 缁濊壓
+ return new Color32(32, 57, 149, 128);
+ case QualityTextColType.itemyuanzu:
+ // 461f5d 鍏冪
+ return new Color32(70, 31, 93, 128);
+ case QualityTextColType.itembuxiu:
+ // 2e3975 涓嶆溄
+ return new Color32(46, 57, 117, 128);
+ case QualityTextColType.itemyonghen:
+ // 5d1d52 姘告亽
+ return new Color32(93, 29, 82, 128);
+ case QualityTextColType.red:
+ return s_DarkRedColor;
+ }
+ return new Color32(0, 0, 0, 128);
+ }
+
+ // private static Regex m_TextColorRegex = new Regex("<color=#[0-9a-zA-Z]+>(.*)</color>", RegexOptions.Singleline);
+
+ public static string AppendColor(TextColType type, string msg, bool bright = true)
+ {
+ // if (m_TextColorRegex.IsMatch(msg) && msg.ToLower().StartsWith("<color=#")
+ // && msg.ToLower().EndsWith("</color>"))
+ // {
+ // Match match = m_TextColorRegex.Match(msg);
+ // msg = match.Groups[1].Value;
+ // }
switch (type)
{
case TextColType.None:
case TextColType.White:
- return StringUtility.Contact("<color=#", bright ? "686868" : "f7f7f7", ">", msg, "</color>");
- case TextColType.Blue:
- return StringUtility.Contact("<color=#", bright ? "006be3" : "31cefb", ">", msg, "</color>");
- case TextColType.Purple:
- return StringUtility.Contact("<color=#", bright ? "da48d5" : "ec4bf6", ">", msg, "</color>");
- case TextColType.Orange:
- return StringUtility.Contact("<color=#", bright ? "ff6701" : "f8983b", ">", msg, "</color>");
+ return StringUtility.Contact("<color=#", bright ? "ffffff" : "ffffff", ">", msg, "</color>");
+ case TextColType.titleSelectColor:
+ return StringUtility.Contact("<color=#7F4139>", msg, "</color>");
+ case TextColType.titleUnSelectColor:
+ return StringUtility.Contact("<color=#6E5C60>", msg, "</color>");
case TextColType.Red:
- return StringUtility.Contact("<color=#", bright ? "ff0303" : "ff0101", ">", msg, "</color>");
+ return StringUtility.Contact("<color=#", bright ? "ea261e" : "ea261e", ">", msg, "</color>");
case TextColType.Pink:
return StringUtility.Contact("<color=#", bright ? "f6408d" : "ff7c7c", ">", msg, "</color>");
case TextColType.Green:
- return StringUtility.Contact("<color=#", bright ? "109d06" : "35e122", ">", msg, "</color>");
+ return StringUtility.Contact("<color=#", bright ? "248B12" : "2ae337", ">", msg, "</color>");
case TextColType.NavyBrown:
- return StringUtility.Contact("<color=#", "401c06", ">", msg, "</color>");
+ return StringUtility.Contact("<color=#6e4c31>", msg, "</color>");
case TextColType.DarkGreen:
- return StringUtility.Contact("<color=#", "109d06", ">", msg, "</color>");
+ return StringUtility.Contact("<color=#248B12>", msg, "</color>");
case TextColType.Black:
- return StringUtility.Contact("<color=#", "000000", ">", msg, "</color>");
- case TextColType.LightYellow:
- return StringUtility.Contact("<color=#", "fff4cd", ">", msg, "</color>");
+ return StringUtility.Contact("<color=#000000>", msg, "</color>");
+ case TextColType.LightWhite:
+ return StringUtility.Contact("<color=f5f646>", msg, "</color>");
case TextColType.LightGreen:
- return StringUtility.Contact("<color=#", "8ddc11", ">", msg, "</color>");
+ return StringUtility.Contact("<color=#8ddc11>", msg, "</color>");
case TextColType.Gray:
- return StringUtility.Contact("<color=#", "686868", ">", msg, "</color>");
+ return StringUtility.Contact("<color=#bbbbbb>", msg, "</color>");
+ case TextColType.NavyGray:
+ return StringUtility.Contact("<color=#797979>", msg, "</color>");
+ case TextColType.lightYellow:
+ return StringUtility.Contact("<color=#fcedb9>", msg, "</color>");
+ case TextColType.NavyYellow:
+ return StringUtility.Contact("<color=#f2ee02>", msg, "</color>");
+ case TextColType.itemjingliang:
+ // 729de4 绮捐壇
+ return StringUtility.Contact("<color=#729de4>", msg, "</color>");
+ case TextColType.itemxiyou:
+ // c87bfa绋�鏈�
+ return StringUtility.Contact("<color=#c87bfa>", msg, "</color>");
+ case TextColType.itemshishi:
+ // f6de56 鍙茶瘲
+ return StringUtility.Contact("<color=#f6de56>", msg, "</color>");
+ case TextColType.itemchuanqi:
+ // fe8534 浼犲
+ return StringUtility.Contact("<color=#fe8534>", msg, "</color>");
+ case TextColType.itemshenhua:
+ // fe4a47 绁炶瘽
+ return StringUtility.Contact("<color=#fe4a47>", msg, "</color>");
+ case TextColType.itemwuxia:
+ // eb5ce9 鏃犵憰
+ return StringUtility.Contact("<color=#eb5ce9>", msg, "</color>");
+ case TextColType.itemanjin:
+ // f9e29f 鏆楅噾
+ return StringUtility.Contact("<color=#f9e29f>", msg, "</color>");
+ case TextColType.itemjueyi:
+ // cdfef2 缁濊壓
+ return StringUtility.Contact("<color=#cdfef2>", msg, "</color>");
+ case TextColType.itemyuanzu:
+ // dfbbed 鍏冪
+ return StringUtility.Contact("<color=#dfbbed>", msg, "</color>");
+ case TextColType.itembuxiu:
+ // 5eeff2 涓嶆溄
+ return StringUtility.Contact("<color=#5eeff2>", msg, "</color>");
+ case TextColType.itemyonghen:
+ // f5b4ea 姘告亽
+ return StringUtility.Contact("<color=#f5b4ea>", msg, "</color>");
}
return msg;
}
- //needName 鎸囧鐣�0鏄惁闇�瑕佸悕绉�
- // public static string GetRealmName(int realmLv, bool bright = false, bool needName = false)
- // {
- // if (realmLv <= 0 && !needName)
- // {
- // return string.Empty;
- // }
- // var config = RealmConfig.Get(realmLv);
- // if (config == null)
- // {
- // return string.Empty;
- // }
- // return GetRealmColorByLv(realmLv, config.Name, bright);
- // }
+ public static string AppendColor(Color color, string msg)
+ {
+ return StringUtility.Contact("<color=#", ColorToHexWithHash(color), ">", msg, "</color>");
+ }
+
+
+ public static string ColorToHexWithHash(Color color, bool includeAlpha = false)
+ {
+ int r = Mathf.RoundToInt(color.r * 255);
+ int g = Mathf.RoundToInt(color.g * 255);
+ int b = Mathf.RoundToInt(color.b * 255);
+ if (includeAlpha)
+ {
+ int a = Mathf.RoundToInt(color.a * 255);
+ return string.Format("{0:X2}{1:X2}{2:X2}{3:X2}", r, g, b, a);
+ }
+ else
+ {
+ return string.Format("{0:X2}{1:X2}{2:X2}", r, g, b);
+ }
+ }
+
+
+
+ //needName 鎸囧畼鑱�0鏄惁闇�瑕佸悕绉�
+ public static string GetRealmName(int realmLv, bool bright = true, bool needName = false)
+ {
+ if (realmLv <= 0 && !needName)
+ {
+ return string.Empty;
+ }
+ var config = RealmConfig.Get(realmLv);
+ if (config == null)
+ {
+ return string.Empty;
+ }
+ return AppendColor(realmLv, config.Name, bright);
+ }
//strFormat闄勫姞 澧冪晫鍚嶄互澶栫殑鏂囧瓧
//needName 鎸囧鐣�0鏄惁闇�瑕佸悕绉�
@@ -731,7 +848,7 @@
// return GetRealmColorByLv(realmLv, string.Format(strFormat, config.Name), bright);
// }
- // public static string GetRealmColorByLv(int realmLv, string msg, bool bright = false)
+ // public static string GetRealmColorByLv(int realmLv, string msg, bool bright = true)
// {
// var config = RealmConfig.Get(realmLv);
// if (config == null)
@@ -757,45 +874,71 @@
// }
// }
- public static string AppendColor(int itemColor, string msg, bool bright = false)
+ //鐗╁搧 鍚勫姛鑳藉搧璐� 浠庣簿鑹�1鍝佽川 瀵瑰簲 3寮�濮�
+ /// <summary>
+ /// 棰滆壊瀹氫箟鏍规嵁鍒嗙粍澶勭悊锛屽鏅�氱墿鍝佺殑棰滆壊绮捐壇鏄�1寮�濮嬶紝鏍戝拰瑁呭涔熸槸绮楃硻1寮�濮嬶紝闇�瑕佽皟鏁村尮閰�
+ /// </summary>
+ /// <param name="itemColor"></param>
+ /// <param name="msg"></param>
+ /// <param name="bright"></param>
+ /// <param name="colorGroupType">0 閫氱敤鍔熻兘鍝佽川鍒嗙粍绮捐壇鍒扮璇�</param>
+ /// <returns></returns>
+ public static string AppendColor(int itemColor, string msg, bool bright = true, int colorGroupType = 0)
{
+ if (colorGroupType == 0)
+ {
+ itemColor = itemColor + 2;
+ }
+
switch (itemColor)
{
- case 0:
+
case 1:
- return AppendColor(TextColType.White, msg, bright);
+ return AppendColor(TextColType.Gray, msg, bright);
case 2:
- return AppendColor(TextColType.Blue, msg, bright);
+ return AppendColor(TextColType.White, msg, bright);
case 3:
- return AppendColor(TextColType.Purple, msg, bright);
+ return AppendColor(TextColType.itemjingliang, msg, bright);
case 4:
- return AppendColor(TextColType.Orange, msg, bright);
+ return AppendColor(TextColType.itemxiyou, msg, bright);
case 5:
- return AppendColor(TextColType.Red, msg, bright);
+ return AppendColor(TextColType.itemshishi, msg, bright);
case 6:
+ return AppendColor(TextColType.itemchuanqi, msg, bright);
case 7:
+ return AppendColor(TextColType.itemshenhua, msg, bright);
case 8:
- return AppendColor(TextColType.Pink, msg, bright);
+ return AppendColor(TextColType.itemwuxia, msg, bright);
case 9:
- return AppendColor(TextColType.Green, msg, bright);
+ return AppendColor(TextColType.itemanjin, msg, bright);
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ return AppendColor(TextColType.itemjueyi, msg, bright);
+ case 15:
+ case 16:
+ case 17:
+ case 18:
+ case 19:
+ return AppendColor(TextColType.itemyuanzu, msg, bright);
+ case 20:
+ case 21:
+ case 22:
+ case 23:
+ case 24:
+ return AppendColor(TextColType.itembuxiu, msg, bright);
+ case 25:
+ case 26:
+ case 27:
+ case 28:
+ case 29:
+ return AppendColor(TextColType.itemyonghen, msg, bright);
+
}
return msg;
}
-
- // public static int GetItemColor(int _id, Dictionary<int, List<int>> _dict = null)
- // {
- // int _itemColor = 0;
- // var _itemCfg = ItemConfig.Get(_id);
- // if (_itemCfg != null)
- // {
- // _itemColor = _itemCfg.ItemColor;
- // if (_itemCfg.Type == 113 && _dict != null)
- // {
- // _itemColor = ItemLogicUtility.Instance.GetItemQuality(_itemCfg.ID, _dict);
- // }
- // }
- // return _itemColor;
- // }
public static Color GetPropertyColor(int property)
{
@@ -816,141 +959,7 @@
}
#endregion
- #region 璁$畻鎴樻枟鍔�
- public static readonly string FightPowerFormula = "FightpowerFormula";
- // public static int GetFightPower(Dictionary<int, int> _propertyDict)
- // {
- // Equation.Instance.Clear();
- // if (_propertyDict == null || _propertyDict.Count == 0)
- // {
- // return 0;
- // }
-
- // foreach (var _key in _propertyDict.Keys)
- // {
- // PlayerPropertyConfig cfg = PlayerPropertyConfig.Get(_key);
- // if (cfg != null)
- // {
- // if (_key == 7)
- // {
- // Equation.Instance.AddKeyValue("MinAtk", _propertyDict[_key]);
- // Equation.Instance.AddKeyValue("MaxAtk", _propertyDict[_key]);
- // }
- // else if (_key == 24)
- // {
- // Equation.Instance.AddKeyValue("PetMinAtk", _propertyDict[_key]);
- // Equation.Instance.AddKeyValue("PetMaxAtk", _propertyDict[_key]);
- // }
- // else
- // {
- // ulong attrValue = (ulong)_propertyDict[_key];
- // var fightParm = GetFightPowerParmByAttrId(_key);
- // if (_key == 11)
- // {
- // var playerLv = PlayerDatas.Instance.baseData.LV;
- // var paramConfig = FightPowerParamConfig.Get(playerLv);
- // Equation.Instance.AddKeyValue("AtkSpeedParameter", paramConfig.AtkSpeedParameter);
- // }
- // else
- // {
- // if (fightParm != 0)
- // {
- // attrValue = attrValue * (ulong)fightParm;
- // }
- // }
- // Equation.Instance.AddKeyValue(cfg.Parameter, attrValue);
- // }
- // }
-
- // }
- // FuncConfigConfig funcCfg = FuncConfigConfig.Get(FightPowerFormula);
- // return Equation.Instance.Eval<int>(funcCfg.Numerical1);
- // }
-
- // public static int GetFightPowerParmByAttrId(int attrId)
- // {
- // int playerLv = PlayerDatas.Instance.baseData.LV;
- // FightPowerParamConfig paramConfig = FightPowerParamConfig.Get(playerLv);
- // PlayerPropertyConfig cfg = PlayerPropertyConfig.Get(attrId);
- // if (paramConfig == null || cfg == null) return 0;
-
- // switch (cfg.Parameter)
- // {
- // case "Hit":
- // return paramConfig.Hit;
- // case "Miss":
- // return paramConfig.Miss;
- // case "IgnoreDefRate":
- // return paramConfig.IgnoreDefRate;
- // case "DamChanceDef":
- // return paramConfig.DamChanceDef;
- // case "FaintRate":
- // return paramConfig.FaintRate;
- // case "LuckyHitRateReduce":
- // return paramConfig.LuckyHitRateReduce;
- // case "SkillAtkRate":
- // return paramConfig.SkillAtkRate;
- // case "SkillAtkRateReduce":
- // return paramConfig.SkillAtkRateReduce;
- // case "DamagePerPVP":
- // return paramConfig.DamagePerPVP;
- // case "DamagePerPVPReduce":
- // return paramConfig.DamagePerPVPReduce;
- // case "DamBackPer":
- // return paramConfig.DamBackPer;
- // case "IgnoreDefRateReduce":
- // return paramConfig.IgnoreDefRateReduce;
- // case "FaintDefRate":
- // return paramConfig.FaintDefRate;
- // case "AtkSpeedParameter":
- // return paramConfig.AtkSpeedParameter;
- // case "JobAHurtAddPer":
- // return paramConfig.JobAHurtAddPer;
- // case "JobBHurtAddPer":
- // return paramConfig.JobBHurtAddPer;
- // case "JobCHurtAddPer":
- // return paramConfig.JobCHurtAddPer;
- // case "JobAAtkReducePer":
- // return paramConfig.JobAAtkReducePer;
- // case "JobBAtkReducePer":
- // return paramConfig.JobBAtkReducePer;
- // case "JobCAtkReducePer":
- // return paramConfig.JobCAtkReducePer;
- // case "SuperHitRate":
- // return paramConfig.SuperHitRate;
- // case "LuckyHitRate":
- // return paramConfig.LuckyHitRate;
- // case "SuperHitRateReduce":
- // return paramConfig.SuperHitRateReduce;
- // case "FinalHurtPer":
- // return paramConfig.FinalHurtPer;
- // case "FinalHurtReducePer":
- // return paramConfig.FinalHurtReducePer;
- // case "NPCHurtAddPer":
- // return paramConfig.NPCHurtAddPer;
- // case "NormalHurtPer":
- // return paramConfig.NormalHurtPer;
- // case "FabaoHurtPer":
- // return paramConfig.FabaoHurtPer;
- // case "AffairSpeedPer":
- // return paramConfig.AffairSpeedPer;
- // case "FamilyBossHurtPer":
- // return paramConfig.FamilyBossHurtPer;
- // case "FamilyWarHPPer":
- // return paramConfig.FamilyWarHPPer;
- // case "FamilyWarAtkPer":
- // return paramConfig.FamilyWarAtkPer;
- // case "FamilySitExpPer":
- // return paramConfig.FamilySitExpPer;
- // case "BossFinalHurtPer":
- // return paramConfig.BossFinalHurtPer;
- // }
-
- // return 0;
- // }
-
- #endregion
#region 寰楀埌閲戦挶鏁伴噺鏍规嵁閲戦挶绫诲瀷
@@ -983,8 +992,21 @@
return 0;
}
+ //璐у竵瀵瑰簲0418绫诲瀷
+ public static Dictionary<int, PlayerDataType> moneyTypeToPlayerDataType = new Dictionary<int, PlayerDataType>()
+ {
+ {1, PlayerDataType.Gold},
+ {2, PlayerDataType.GoldPaper},
+ {3, PlayerDataType.Silver},
+ {15, PlayerDataType.UnionLiven},
+ {41, PlayerDataType.default26},
+ {43, PlayerDataType.default34},
+ {42, PlayerDataType.default33},
+ {53, PlayerDataType.ChallengeVoucher},
+ {99, PlayerDataType.ExAttr11},
+ };
- public static ulong GetMoneyCnt(int moneyType)
+ public static long GetMoneyCnt(int moneyType)
{
switch (moneyType)
{
@@ -1002,7 +1024,7 @@
}
case 18:
{
- return (ulong)PlayerDatas.Instance.extersion.honorValue;
+ return PlayerDatas.Instance.extersion.honorValue;
}
case 25:
{
@@ -1011,10 +1033,11 @@
}
case 24:
{
- return (ulong)PlayerDatas.Instance.extersion.runeChip;
+ return PlayerDatas.Instance.extersion.runeChip;
}
case 15:
{
+ // 鍏細璐$尞甯�
return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.UnionLiven);
//return (ulong)ModelCenter.Instance.GetModel<StoreModel>().GetTCBPlayerData(PlayerDataType.UnionLiven);
}
@@ -1070,12 +1093,17 @@
}
case 41:
{
- //绗﹀嵃绮惧崕
- return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.RuneSplinters);
+ //鎴橀敜
+ return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.default26);
+ }
+ case 42:
+ {
+ //灏嗘槦鐜夐珦
+ return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.default33);
}
case 43:
{
- //鍑瘉绉垎
+ //灏嗛瓊
return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.default34);
}
case 44:
@@ -1108,6 +1136,21 @@
//骞诲闃佺Н鍒�
return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.default43);
}
+ case 51:
+ {
+ //姝﹀皢鎷涘嫙绉垎
+ return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.default44);
+ }
+ case 52:
+ {
+ //娣橀噾浠�
+ return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.GoldRush);
+ }
+ case 53:
+ {
+ //鎸戞垬鍑瘉
+ return PlayerDatas.Instance.GetPlayerDataByType(PlayerDataType.ChallengeVoucher);
+ }
case 98:
{
//杩囨湡鍨嬩唬閲戝埜
@@ -1122,21 +1165,66 @@
return 0;
}
+
public static int GetAllVourcher()
{
return (int)GetMoneyCnt(98) + (int)GetMoneyCnt(99);
}
+ //鏄剧ず鏁伴噺, 鏍煎紡n/m, 瓒冲缁胯壊涓嶈冻绾㈣壊
+ public static string ShowUseMoney(int moneyType, long useCnt, bool showLargeNum = false)
+ {
+ long cnt = GetMoneyCnt(moneyType);
+ if (showLargeNum)
+ return AppendColor(useCnt <= cnt ? TextColType.Green : TextColType.Red, $"{ReplaceLargeNum(cnt)}/{useCnt}");
+ else
+ return AppendColor(useCnt <= cnt ? TextColType.Green : TextColType.Red, $"{cnt}/{useCnt}");
+ }
+
+ public static string ShowUseItem(PackType type, int itemId, long useCnt, bool showLargeNum = false)
+ {
+ long cnt = PackManager.Instance.GetItemCountByID(type, itemId);
+ if (showLargeNum)
+ return AppendColor(useCnt <= cnt ? TextColType.Green : TextColType.Red, $"{ReplaceLargeNum(cnt)}/{useCnt}");
+ else
+ return AppendColor(useCnt <= cnt ? TextColType.Green : TextColType.Red, $"{cnt}/{useCnt}");
+ }
+
+
+ /// <param name="needTips">0 涓嶅搷搴� 1 寮规彁绀� 2 寮硅幏鍙栭�斿緞tips</param>
+ public static bool CheckMoneyCount(int moneyType, long needCount, int needTips = 0)
+ {
+ if (needCount <= 0)
+ {
+ return true;
+ }
+
+ long haveCount = GetMoneyCnt(moneyType);
+
+ bool isEnough = haveCount >= needCount;
+
+ if (!isEnough)
+ {
+ if (needTips == 1)
+ {
+ SysNotifyMgr.Instance.ShowTip("LackMoney", moneyType);
+ }
+ else if (needTips == 2)
+ {
+ ItemTipUtility.ShowMoneyTip(moneyType);
+ }
+ }
+
+ return isEnough;
+ }
+
+
#endregion
- #region 寰楀埌瑁呭浣嶅搴旂殑閮ㄤ綅鍚嶇О
- public static string GetEquipPlaceName(int place)
+ #region 寰楀埌瑁呭浣嶆垨鑰呯绂忔爲鍝佽川鍚嶇О 甯﹂鑹�
+ public static string GetQualityNameWithColor(int quality, string format = "{0}")
{
- if (GeneralDefine.equipPlaceNameDict.ContainsKey(place))
- {
- return GeneralDefine.equipPlaceNameDict[place];
- }
- return "";
+ return AppendColor(quality, string.Format(format, Language.Get("equipQuality" + quality)), true, 1);
}
#endregion
@@ -1214,13 +1302,15 @@
return content;
}
+ //妫�鏌ュ悕瀛楅暱搴︼紝鐜╁鍚嶅拰鍏細鍚�
+ //涓嶅悓鍥藉闀垮害涓嶅悓锛屾帓鐗堜笉鍚�
public static bool SatisfyNameLength(string name, out int error)
{
error = 0;
//bool pureChinese = Regex.IsMatch(name, "^[\u4e00-\u9fa5]+$");
//var chsCount = GetChsCount(name);
int length = Encoding.Default.GetBytes(name).Length;
- var maxlength = 20;
+ var maxlength = 21; //绾腑鏂囦笉寤鸿瓒呰繃7涓瓧
var minlength = 3;
if (length > maxlength)
{
@@ -1246,7 +1336,7 @@
return count;
}
- // public static string GetEquipSuitName(int itemId, bool bright = false)
+ // public static string GetEquipSuitName(int itemId, bool bright = true)
// {
// if (ItemLogicUtility.Instance.IsSuitEquip(itemId))
// {
@@ -1256,7 +1346,7 @@
// return string.Empty;
// }
- // public static string GetItemName(int itmeId, bool bright = false)
+ // public static string GetItemName(int itmeId, bool bright = true)
// {
// var itemConfig = ItemConfig.Get(itmeId);
// if (itemConfig == null)
@@ -1318,4 +1408,26 @@
return money / scale;
}
+
+ public static string RemoveColor(string content)
+ {
+ content = WordAnalysis.Color_Start_Regex.Replace(content, string.Empty);
+ content = WordAnalysis.Color_End_Regex.Replace(content, string.Empty);
+ return content;
+ }
+
+ //澶嶅埗鍒板壀璐存澘
+ // TODO 鏆備笉鏀寔web鍚庣画琛ュ厖
+ public static void CopyToClipboard(string text)
+ {
+ GUIUtility.systemCopyBuffer = text;
+ Debug.Log("鏂囧瓧宸插鍒跺埌鍓创鏉�: " + text);
+ }
+
+ //鑾峰彇鍓垏鏉垮唴瀹�
+ public static string GetClipboardText()
+ {
+ return GUIUtility.systemCopyBuffer;
+ }
+
}
--
Gitblit v1.8.0