// 向Excel写入EffectAttach public void WriteAttachToExcel(string codeVal) { // NOTE SimpleJson 转字符串不太好控制,自己来做这件事吧 StringBuilder builder = new StringBuilder(); builder.Append("{"); List <AttachComp> attachCompList = PanelEditAttach.AttachPointDic.Values.ToList(); for (int i = 0; i < attachCompList.Count; i++) { AttachComp ac = attachCompList[i]; if (i != attachCompList.Count - 1) { builder.AppendFormat("\\\"{0}\\\":{{\\\"x\\\":{1},\\\"y\\\":{2}}},", ac.AttachName, (ac.transform.position.x / SpineZipReader.defaultScale).ToString(), (ac.transform.position.y / SpineZipReader.defaultScale).ToString()); } else { builder.AppendFormat("\\\"{0}\\\":{{\\\"x\\\":{1},\\\"y\\\":{2}}}", ac.AttachName, (ac.transform.position.x / SpineZipReader.defaultScale).ToString(), (ac.transform.position.y / SpineZipReader.defaultScale).ToString()); } } builder.Append("}"); EffectAttachStr = builder.ToString(); Debug.Log(EffectAttachStr); ExcelAccessAgent.WriteAttachInfo(codeVal, EffectAttachStr); }
// 从Excel中读取EffectAttach public bool ReadAttachFromExcel(string codeVal) { EffectAttachStr = ExcelAccessAgent.ReadAttachInfo(codeVal); if (string.IsNullOrEmpty(EffectAttachStr)) { return(false); } EffectAttachJson = JSON.Parse(EffectAttachStr); foreach (var pair in PanelEditAttach.AttachPointDic) { var attachData = EffectAttachJson[pair.Key]; Vector3 pos = new Vector3(attachData["x"].AsFloat * SpineZipReader.defaultScale, attachData["y"].AsFloat * SpineZipReader.defaultScale, 0); pair.Value.transform.position = pos; } return(true); }