public static Vector2 UF_ReadVector2(string chunk, int startIdx) { string strVal = UF_ReadString(chunk, startIdx); float x, y; string[] array = GHelper.UF_SplitStringWithCount(strVal, 2, ','); float.TryParse(array [0], out x); float.TryParse(array [1], out y); return(new Vector2(x, y)); }
public static Vector4 UF_ReadVector4(string chunk, int startIdx) { string strVal = UF_ReadString(chunk, startIdx); float x, y, z, w; string[] array = GHelper.UF_SplitStringWithCount(strVal, 4, ','); float.TryParse(array [0], out x); float.TryParse(array [1], out y); float.TryParse(array [2], out z); float.TryParse(array [3], out w); return(new Vector4(x, y, z, w)); }
private UpgradeFileInfo UF_CreateUpgradeFileInfo(string chunk) { UpgradeFileInfo ret = new UpgradeFileInfo(); string[] value = GHelper.UF_SplitStringWithCount(chunk, 3); ret.version = value [0].Substring(value [0].IndexOf('-') + 1); ret.size = int.Parse(value [1].Trim()); ret.zip = value [0].Trim() + ".zip"; //取用CDN资源 ret.url = string.Format("{0}/{1}", GlobalSettings.UrlAssetsUpgrade.Trim(), ret.zip); ret.ucode = value [2]; return(ret); }
private void UF_DrawDebugWriter() { string pwfile = PlayerPrefs.GetString("dw_p_file", ""); string pwidpe = PlayerPrefs.GetString("dw_p_idpe", "127.0.0.1:6789"); GUI.color = Color.white; try{ GUILayout.BeginHorizontal(); if (GUILayout.Button("Set File Writer", GUILayout.Width(120))) { if (!string.IsNullOrEmpty(pwfile.Trim())) { if (!File.Exists(pwfile)) { string abspath = Path.GetDirectoryName(pwfile); if (!Directory.Exists(abspath)) { Directory.CreateDirectory(abspath); } } FileWriter fw = new FileWriter(pwfile); Debugger.UF_GetInstance().logger.UF_AddWriter(fw); } } pwfile = GUILayout.TextArea(pwfile); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); if (GUILayout.Button("Set UDP Writer", GUILayout.Width(120))) { if (!string.IsNullOrEmpty(pwidpe.Trim())) { string[] args = GHelper.UF_SplitStringWithCount(pwidpe, 2, ':'); UdpNetWriter uw = new UdpNetWriter(args[0], int.Parse(args[1])); uw.UF_Write(string.Format("\n\n\n------------------Start UPD Console:[{0}]------------------\n", GTime.DateHMS)); Debugger.UF_GetInstance().logger.UF_AddWriter(uw); } } pwidpe = GUILayout.TextField(pwidpe); GUILayout.EndHorizontal(); }catch (System.Exception ex) { Debugger.UF_Exception(ex); } if (GUI.changed) { PlayerPrefs.SetString("dw_p_file", pwfile); PlayerPrefs.SetString("dw_p_idpe", pwidpe); } }
public void UF_ExecuteTweenAlpha(string valchunk) { if (string.IsNullOrEmpty(valchunk)) { return; } List <string> list = ListCache <string> .Acquire(); GHelper.UF_SplitStringWithCount(valchunk, 4, list, ';'); float vform = GHelper.UF_ParseFloat(list[0]); float vto = GHelper.UF_ParseFloat(list[1]); float vduration = GHelper.UF_ParseFloat(list[2]); bool vtimescale = GHelper.UF_ParseBool(list[3]); UF_CrossRenderAlpha(vform, vto, vduration, vtimescale); ListCache <string> .Release(list); }
//通过Raw中载入资源信息表,获取所有资源信息 internal static void UF_LoadAssetInfoFormAssetTable(string path) { Debugger.UF_Log("Load All AssetInfo From AssetTable"); if (!File.Exists(path)) { Debugger.UF_Warn("AssetData file not exist: " + path); return; } try { s_DicAssetsMap.Clear(); s_ListAssetsMap.Clear(); string rawPath = Path.GetDirectoryName(path); //为避免路径变更,先遍历RAW文件夹中所有资源名映射路径,生成资源路径映射表 Dictionary <string, string> rawFileTable = new Dictionary <string, string>(); GHelper.UF_ForeachFloder(rawPath, (e) => { string name = Path.GetFileName(e); if (!rawFileTable.ContainsKey(name)) { rawFileTable.Add(name, e); } else { Debugger.UF_Error(string.Format("AssetDataBase Error -> Same raw file name[{0}]", name)); } }); //加载assetdata文件 var fs = File.Open(path, FileMode.Open, FileAccess.Read); byte[] bytedata = new byte[fs.Length]; fs.Read(bytedata, 0, (int)fs.Length); fs.Close(); //解密文件 GHelper.UF_BytesKey(bytedata, GlobalSettings.ConfigEncBKey); using (System.IO.MemoryStream ms = new System.IO.MemoryStream(bytedata)) { using (var sr = new StreamReader(ms)) { string line = ""; while (null != (line = sr.ReadLine())) { var arrparams = GHelper.UF_SplitStringWithCount(line.Trim(), 3, ';'); var aft = UF_WarpAssetType(arrparams[0]); //alias name string aliasname = arrparams[1]; // asset abs name string absname = arrparams[2]; //asset real name string assetname = Path.GetFileName(absname); string assetpath = ""; if (rawFileTable.ContainsKey(aliasname)) { //映射文件路径 assetpath = rawFileTable[aliasname]; } else { Debugger.UF_Error(string.Format("AssetDataBase Error -> Can not find file name[{0}] in raw file table", aliasname)); continue; } var afi = new AssetFileInfo(aft, assetname, aliasname, absname, assetpath); s_ListAssetsMap.Add(afi); //资源文件名必须唯一,否则会导致资读取失败 if (!s_DicAssetsMap.ContainsKey(assetname)) { s_DicAssetsMap.Add(afi.name, afi); } else { Debugger.UF_Error(string.Format("AssetDataBase Error -> Same Key in Asset Table! AssetName[{0}] AliasName[{1}]", assetname, aliasname)); } } } } } catch (System.Exception e) { Debugger.UF_Exception(e); } }