From 6eb915c129fc90c6f4c82ae097dd6ffad5239efc Mon Sep 17 00:00:00 2001 From: chai Date: Mon, 25 Jan 2021 14:28:30 +0800 Subject: +scripts --- .../Scripts/XMainClient/XLabelSymbolHelper.cs | 246 +++++++++++++++++++++ 1 file changed, 246 insertions(+) create mode 100644 Client/Assets/Scripts/XMainClient/XLabelSymbolHelper.cs (limited to 'Client/Assets/Scripts/XMainClient/XLabelSymbolHelper.cs') diff --git a/Client/Assets/Scripts/XMainClient/XLabelSymbolHelper.cs b/Client/Assets/Scripts/XMainClient/XLabelSymbolHelper.cs new file mode 100644 index 00000000..9f6f4ce7 --- /dev/null +++ b/Client/Assets/Scripts/XMainClient/XLabelSymbolHelper.cs @@ -0,0 +1,246 @@ +using System; +using System.Collections.Generic; +using UILib; +using XMainClient.UI; +using XUtliPoolLib; + +namespace XMainClient +{ + internal class XLabelSymbolHelper + { + public static string FormatCostWithIcon(int cost, ItemEnum moneyType) + { + return string.Format("{0}{1}", XLabelSymbolHelper.FormatSmallIcon(XFastEnumIntEqualityComparer.ToInt(moneyType)), cost); + } + + public static string FormatCostWithIconLast(int cost, ItemEnum moneyType) + { + return string.Format("{0}{1}", cost, XLabelSymbolHelper.FormatSmallIcon(XFastEnumIntEqualityComparer.ToInt(moneyType))); + } + + public static string FormatCostWithIcon(string s, int cost, ItemEnum moneyType) + { + return string.Format(s, XLabelSymbolHelper.FormatSmallIcon(XFastEnumIntEqualityComparer.ToInt(moneyType)), cost); + } + + public static string FormatItemSmallIcon(string s, int itemId, int cost) + { + return string.Format(s, XLabelSymbolHelper.FormatSmallIcon(itemId), cost); + } + + public static string FormatSmallIcon(int itemID) + { + string sprite; + string atlas; + XBagDocument.GetItemSmallIconAndAtlas(itemID, out sprite, out atlas, 0u); + return XStringFormatHelper.FormatImage(atlas, sprite); + } + + public static string FormatImage(int itemID) + { + ItemList.RowData itemConf = XBagDocument.GetItemConf(itemID); + bool flag = itemConf == null; + string result; + if (flag) + { + result = ""; + } + else + { + result = XStringFormatHelper.FormatImage(XSingleton.singleton.ChooseProfString(itemConf.ItemAtlas, 0u), XSingleton.singleton.ChooseProfString(itemConf.ItemIcon, 0u)); + } + return result; + } + + public static string FormatImage(string atlas, string sprite) + { + return XStringFormatHelper.FormatImage(atlas, sprite); + } + + public static string FormatAnimation(string atlas, string sprite, int frameRate) + { + return XStringFormatHelper.FormatAnimation(atlas, sprite, frameRate); + } + + public static string FormatDesignation(string atlas, string sprite, int frameRate = 16) + { + return XStringFormatHelper.FormatAnimation(atlas, sprite, frameRate); + } + + public static string FormatGuild(string name, ulong uid) + { + return XStringFormatHelper.FormatGuild(name, uid); + } + + public static string FormatDragonGuild(string name, string dragonguildname) + { + return XStringFormatHelper.FormatDragonGuild(name, dragonguildname); + } + + public static string FormatTeam(string name, int teamid, uint expid) + { + return XStringFormatHelper.FormatTeam(name, teamid, expid); + } + + public static string FormatItem(string name, XItem item) + { + return XStringFormatHelper.FormatItem(name, XSingleton.singleton.GetItemQualityRGB((int)XBagDocument.GetItemConf(item.itemID).ItemQuality), item.uid); + } + + public static string FormatName(string name, ulong uid, string color = "00ffff") + { + return XStringFormatHelper.FormatName(name, uid, color); + } + + public static string FormatPk(string name, ulong uid) + { + return XStringFormatHelper.FormatPk(name, uid); + } + + public static string FormatSpectate(string name, int liveid, int type) + { + return XStringFormatHelper.FormatSpeactate(name, liveid, type); + } + + public static string FormatUI(string name, ulong uid, List paramList) + { + return XStringFormatHelper.FormatUI(name, uid, paramList); + } + + public static bool ParseGuildParam(string param, ref ulong guildid) + { + guildid = ulong.Parse(param); + return true; + } + + public static bool ParseDragonGuildParam(string param, ref string dragonguildname) + { + dragonguildname = param; + return true; + } + + public static bool ParseSpectateParam(string param, ref int liveid, ref int type) + { + string[] array = param.Split(XStringFormatHelper.Separator); + bool flag = array.Length != 2; + bool result; + if (flag) + { + result = false; + } + else + { + liveid = int.Parse(array[0]); + type = int.Parse(array[1]); + result = true; + } + return result; + } + + public static bool ParsePkParam(string param, ref ulong roleid) + { + roleid = ulong.Parse(param); + return true; + } + + public static bool ParseUIParam(string param, ref ulong sysid, ref List sysParamList) + { + string[] array = param.Split(XStringFormatHelper.Separator); + bool flag = array.Length == 0; + bool result; + if (flag) + { + result = false; + } + else + { + sysid = ulong.Parse(array[0]); + bool flag2 = array.Length > 1; + if (flag2) + { + bool flag3 = sysParamList == null; + if (flag3) + { + sysParamList = new List(); + } + sysParamList.Clear(); + for (int i = 1; i < array.Length; i++) + { + sysParamList.Add(ulong.Parse(array[i])); + } + } + else + { + bool flag4 = sysParamList != null; + if (flag4) + { + sysParamList.Clear(); + } + } + result = true; + } + return result; + } + + public static bool ParseNameParam(string param, ref string name, ref ulong uid) + { + string[] array = param.Split(XStringFormatHelper.Separator); + bool flag = array.Length != 2; + bool result; + if (flag) + { + result = false; + } + else + { + uid = ulong.Parse(array[0]); + name = XStringFormatHelper.UnEscape(array[1]); + result = true; + } + return result; + } + + public static bool ParseTeamParam(string param, ref int teamid, ref uint expid) + { + string[] array = param.Split(XStringFormatHelper.Separator); + bool flag = array.Length != 2; + bool result; + if (flag) + { + result = false; + } + else + { + teamid = int.Parse(array[0]); + expid = uint.Parse(array[1]); + result = true; + } + return result; + } + + public static void RegisterHyperLinkClicks(IXUILabelSymbol labelSymbol) + { + labelSymbol.RegisterTeamEventHandler(new HyperLinkClickEventHandler(XTeamDocument.OnTeamHyperLinkClick)); + labelSymbol.RegisterPkEventHandler(new HyperLinkClickEventHandler(XQualifyingDocument.OnPkHyperLinkClick)); + labelSymbol.RegisterGuildEventHandler(new HyperLinkClickEventHandler(XGuildDocument.OnGuildHyperLinkClick)); + labelSymbol.RegisterDragonGuildEventHandler(new HyperLinkClickEventHandler(XDragonGuildDocument.OnDragonGuildHyperLinkClick)); + labelSymbol.RegisterUIEventHandler(new HyperLinkClickEventHandler(XInvitationDocument.OnUIHyperLinkClick)); + labelSymbol.RegisterSpectateEventHandler(new HyperLinkClickEventHandler(XInvitationDocument.OnSpectateClick)); + } + + public static string RemoveFormatInfo(string input) + { + bool flag = input.Contains("ui="); + string result; + if (flag) + { + result = input.Substring(0, input.IndexOf("ui=")); + } + else + { + result = input; + } + return result; + } + } +} -- cgit v1.1-26-g67d0