public void CallbackRefresh(List <PlayerDataCenter.IllNessData> illarray) { if (null == illarray) { return; } //根据id从大到小,冒泡排序 int length = illarray.Count; PlayerDataCenter.IllNessData temp = null; for (int i = length; i > 0; i--) { for (int j = 0; j < i - 1; j++) { if (illarray[j].ID < illarray[j + 1].ID) { temp = illarray[j]; illarray[j] = illarray[j + 1]; illarray[j + 1] = temp; } } } for (int i = 0; i < illarray.Count; i++) { SpawnIllData(illarray[i]); } }
void AssigneEvents(PlayerDataCenter.IllNessData _data) { Text titlename = transform.Find("Text").GetComponent <Text>(); titlename.text = _data.title; //点击显示/隐藏 transform.Find("Toggle").GetComponent <Toggle>().onValueChanged.AddListener(iSon => { titlename.text = iSon ? _data.title : "***"; }); //点击编辑 transform.Find("Button").GetComponent <Button>().onClick.RemoveAllListeners(); transform.Find("Button").GetComponent <Button>().onClick.AddListener(() => { TTUIPage.ShowPage <CreateIllnessPopup>(_data); }); //点击病例 GetComponent <Button>().onClick.RemoveAllListeners(); GetComponent <Button>().onClick.AddListener(() => { PlayerDataCenter.NewSceneCame(_data); TTUIPage.ShowPage <UIThirdPage>(_data); }); }
public override void Refresh() { MSGCenter.Execute(Enums.CameraMode.NormalCam.ToString()); MSGCenter.Execute(Enums.CameraTarget.WithoutTarget.ToString()); MSGCenter.Execute(Enums.LeftMouseAlive.TurnOn.ToString()); //TODO ---->>> 加载用户选择模型及数据 PlayerDataCenter.IllNessData ind = data as PlayerDataCenter.IllNessData; if (null != ind) { //①根据服务器存储路径加载本地模型 string Modelpath = ind.Modelpath;//"D:/Test"; //②如果服务器没有存储则根据ID查找本地存储的模型 if (string.IsNullOrEmpty(Modelpath)) { Modelpath = Tool.LocalModelonSavePath + ind.ID.ToString() + ".obj"; } //③最终确认是否包含该路径如果没有则加载默认模型 if (!Tool.CheckFileExist(Modelpath)) { Modelpath = Tool.ModleDefaultPath; } Debug.Log(Modelpath); //MSGCenter.Execute(Enums.ModelPath.ModelPath.ToString(), Modelpath); } }
public void EnterThiredPageRefresh(PlayerDataCenter.IllNessData data) { if (!infopanelcontrol) { infopanelcontrol = transform.Find("InfoPanel").gameObject.AddComponent <InfoPanelControl>(); } infopanelcontrol.RefreshInfo(data); if (userguide) { ChoisePanel(userguide); } }
void SpawnIllData(PlayerDataCenter.IllNessData da) { PlayerDataCenter.IllNessData _d = da; GameObject go = null; if (!allhereilldatas.ContainsKey(_d.ID)) { go = GameObject.Instantiate(illnessprefabe); allhereilldatas.Add(_d.ID, go); } go = allhereilldatas[_d.ID]; go.GetComponent <IllnessButton>().Init(illnessprefabe, _d); }
void RefreshDisplay(PlayerDataCenter.IllNessData da) { currentilldata = da != null ? da : new PlayerDataCenter.IllNessData() { ID = -1, injury_position = "脚", protector_shape = PlayerDataCenter.IllNessData.ProtectorShape.Short, position = PlayerDataCenter.IllNessData.Direction.RIGHT, title = "", description = "", note = "" }; currentillnessID = currentilldata.ID; injury_positionDropdown.value = Tool.InjuryPosition.IndexOf(currentilldata.injury_position); protector_shapeDropdown.value = (int)currentilldata.protector_shape; directionDropdown.value = (int)currentilldata.position; illdatatitle.text = currentilldata.title; illdatadescription.text = currentilldata.description; illdatanote.text = currentilldata.note; //点击确定发送请求到服务器 Commitbutton.onClick.RemoveAllListeners(); if (null == da) { Commitbutton.onClick.AddListener(AddIllNess); } else { Commitbutton.onClick.AddListener(() => { string url = Tool.refreshillnessdatasimplepath + currentillnessID.ToString(); string json = JsonHelper.MergAddIllnessdataJson(currentilldata); MyWebRequest.Instance.Put(url, json, (success, str) => { if (success) { ShowPage <UIFirstPage>(); Hide(); } else { ShowPage <UINotice>(str); } }); }); } }
public void Init(GameObject illnessprefabe, PlayerDataCenter.IllNessData data) { selfillnessdata = data; transform.SetParent(illnessprefabe.transform.parent); transform.SetAsLastSibling(); gameObject.SetActive(true); transform.localScale = Vector3.one; transform.Find("Text (1)").GetComponent <Text>().text = selfillnessdata.note; transform.Find("Text (2)").GetComponent <Text>().text = selfillnessdata.illcreatetime; AssigneEvents(selfillnessdata); }
public override void Refresh() { //TODO ---->>> 加载用户选择模型及数据 PlayerDataCenter.IllNessData ind = data as PlayerDataCenter.IllNessData; thirdpagetitlecontroller.EnterThiredPageRefresh(ind); ShowPage <UINotice>(Tool.ConnectingStr); //①加载matchingpoint在thirdpage string url = Tool.requestdetailillnessdatapath + PlayerDataCenter.Currentillnessdata.ID; MyWebRequest.Instance.Get(url, (success, str) => { if (success) { //将获取到的matchingpoint存储到Map内 PointHelper.GetInstance().userdataformweb = JsonHelper.ParseJsonToMatchingpointroot(str); //标准点 PointHelper.GetInstance().normaldataformlocaljson = JsonHelper.LoadJsonFromFile(); //避空位 AvoidVacancyHelper.avoidmap = JsonHelper.ParseJsonToAvoid(str); //获取上次用户设置 PlayerDataCenter.CurrentLocaluserdata = JsonHelper.ParseJsonToLocalUserData(str); //获取花纹 PlayerDataCenter.Decorativepattern = JsonHelper.ParseJsonToDecorativepattern(str); //当前stl模型在服务器的地址 PlayerDataCenter.stlInServerpath = JsonHelper.ParseJsonToNeed(str, Tool.datakey, Tool.stlInServerpath); //当前片体护具地址 PlayerDataCenter.PieceProtectorURL = JsonHelper.ParseJsonToNeed(str, Tool.datakey, Tool.PieceProtectorURLkey); string message = MSGCenter.FormatMessage(PlayerDataCenter.stlInServerpath, PlayerDataCenter.md5); MSGCenter.Execute(Enums.ModelPath.ModelPath.ToString(), message); //执行加载用户保存点并自动刷新第三页UI列表 //MSGCenter.Execute(Enums.MatchigPointGizmoControll.LoadUserData.ToString()); } else { ShowPage <UINotice>(str); } }); }
/// <summary> /// 新增病例 时,服务器所需json /// </summary> /// <param name="data"></param> /// <returns></returns> static public string MergAddIllnessdataJson(PlayerDataCenter.IllNessData data) { JObject requestobject = new JObject(); JProperty title = new JProperty("title", data.title); JProperty injury_position = new JProperty("injury_position", data.injury_position.ToString()); JProperty position = new JProperty("position", data.position); JProperty description = new JProperty("description", data.description.ToString()); JProperty note = new JProperty("note", data.note); JProperty protector_shape = new JProperty("protector_shape", data.protector_shape.ToString()); requestobject.Add(title); requestobject.Add(injury_position); requestobject.Add(position); requestobject.Add(description); requestobject.Add(note); requestobject.Add(protector_shape); return(requestobject.ToString()); }
IEnumerator PostStlToPHP(string url, PlayerDataCenter.IllNessData pd, Action <bool, string> call) { byte[] bytes = Tool.AuthGetFileData(pd.Modelpath); WWWForm form = new WWWForm(); form.AddField("title", pd.title); form.AddField("injury_position", pd.injury_position.ToString()); //int intposition = pd.position == PlayerDataCenter.IllNessData.Direction.Left ? 0 : 1; form.AddField("position", pd.position.ToString().ToLower()); form.AddField("description", pd.description.ToString()); form.AddField("note", pd.note); form.AddField("protector_shape", pd.protector_shape.ToString()); form.AddBinaryData("stl", bytes, "3.stl"); UnityWebRequest StlRequest = UnityWebRequest.Post(url, form); // StlRequest.SetRequestHeader("Content-Type", "application/json"); StlRequest.SetRequestHeader("X-Requested-With", "XMLHttpRequest"); yield return(StlRequest.SendWebRequest()); string result = StlRequest.downloadHandler.text; if (StlRequest.isNetworkError || StlRequest.isHttpError) { call(false, StlRequest.error); } else { if (StlRequest.responseCode == 200) { call(true, result); } else { call(false, result); } } }
public void RefreshInfo(PlayerDataCenter.IllNessData data) { if (!title) { Init(); } //名字 title.text = data.title; //受伤部位 injury_position.text = data.injury_position; //方向 int direction = (int)data.position; position.text = Tool.Illposition[direction]; //护具外形 int shape = (int)data.protector_shape; protector_shape.text = Tool.protector_shape[shape]; //病情简述 description.text = data.description; //备注 note.text = data.note; }
public override void Refresh() { PlayerDataCenter.IllNessData da = data as PlayerDataCenter.IllNessData; RefreshDisplay(da); }
public void PostStl(string url, PlayerDataCenter.IllNessData Pd, Action <bool, string> call) { StartCoroutine(PostStlToPHP(url, Pd, call)); }
static public string MergMatchingpointChangeNeed(PlayerDataCenter.IllNessData pd) { JObject requestobject = new JObject(); JProperty md5 = new JProperty("md5", PlayerDataCenter.md5); JProperty decorativepattern = new JProperty("pattern", "花纹" + PlayerDataCenter.Decorativepattern); JProperty caseid = new JProperty("case_id", pd.ID); Dictionary <int, Dictionary <int, Vector3> > points = PointHelper.GetInstance().userdataformweb; //匹配点 string key = Tool.matchingpointskey; JObject groupjobject = new JObject(); foreach (KeyValuePair <int, Dictionary <int, Vector3> > item in points) { JObject pointsjobject = new JObject(); string groupstr = Tool.NumberToChar(item.Key + 1); foreach (KeyValuePair <int, Vector3> it in item.Value) { string indexstr = (it.Key + 1).ToString(); var jx = new JProperty("x", it.Value.x); var jy = new JProperty("y", it.Value.y); var jz = new JProperty("z", it.Value.z); JProperty pointproper = new JProperty(indexstr, new JObject(jx, jy, jz)); pointsjobject.Add(pointproper); } JProperty groupproper = new JProperty(groupstr, new JObject(pointsjobject)); groupjobject.Add(groupproper); } JProperty jend = new JProperty(key, groupjobject); //用户设置 + 避空位 JObject userdata = new JObject(); JProperty localuserdata = new JProperty(Tool.Localuserdatakey, ParseObjectToJson(PlayerDataCenter.CurrentLocaluserdata)); Dictionary <int, Dictionary <int, Vector3> > avoidmap = AvoidVacancyHelper.avoidmap; //JObject avoidjobj = new JObject(); if (null != avoidmap) { string avoidkey = Tool.Avoidkey; JObject avoidindex = new JObject(); foreach (KeyValuePair <int, Dictionary <int, Vector3> > item in avoidmap) { JObject pointsjobject = new JObject(); string groupstr = Tool.NumberToChar(item.Key + 1); foreach (KeyValuePair <int, Vector3> it in item.Value) { string indexstr = (it.Key + 1).ToString(); var jx = new JProperty("x", it.Value.x); var jy = new JProperty("y", it.Value.y); var jz = new JProperty("z", it.Value.z); JProperty pointproper = new JProperty(indexstr, new JObject(jx, jy, jz)); pointsjobject.Add(pointproper); } JProperty groupproper = new JProperty(groupstr, new JObject(pointsjobject)); avoidindex.Add(groupproper); } JProperty avoidjend = new JProperty(avoidkey, avoidindex); //avoidjobj.Add(avoidjend); userdata.Add(new JProperty(avoidjend)); } userdata.Add(new JProperty(localuserdata)); JProperty moldinfo = new JProperty(Tool.alllocaldatakey, userdata); requestobject.Add(jend); requestobject.Add(moldinfo); requestobject.Add(md5); requestobject.Add(caseid); requestobject.Add(decorativepattern); return(requestobject.ToString()); }