public EFirePos buffEffPos = EFirePos.Top;//buff特效 显示位置 public void paresData(string datastr) { string[] propArray = datastr.Split(','); buffid = int.Parse(propArray[0]); buffname = propArray[1]; buffdesc = propArray[2]; bufftype = (EBuffType)int.Parse(propArray[3]); string[] buffdata = propArray[4].Split(';'); string[] tempdata; for (int i = 0; i < buffdata.Length; i++) { tempdata = buffdata[i].Split('|'); if (tempdata.Length > 1) { effectBaseAttr.Add((EBaseAttr)int.Parse(tempdata[0]), float.Parse(tempdata[1])/100f); } } buffdata = propArray[5].Split(';'); for (int i = 0; i < buffdata.Length; i++) { tempdata = buffdata[i].Split('|'); if (tempdata.Length > 1) { effectSubAttr.Add((ESubAttr)int.Parse(tempdata[0]), float.Parse(tempdata[1]) / 100f); } } specialtype = (EBuffSpecialType)int.Parse(propArray[6]); duration = int.Parse(propArray[7]); buffEffPos = (EFirePos)int.Parse(propArray[8]); effurl = propArray[9]; }
// Update is called once per frame void Update () { if (Input.GetKeyDown(KeyCode.Return)) { if (SkillConfiguration.skillsDic.TryGetValue(int.Parse(skillIDText.value),out skilldata)) { skillNameText.value = skilldata.skillName; skilltype = skilldata.skilltype; // beatonBackOrFly = skilldata.eBeatonbackFly; animatorClip = skilldata.animatorClip; skillAttackEffectTimeTxt.value = skilldata.fireTime.ToString(); moveEffStartTimeInput.value = skilldata.moveBeginTime.ToString(); harmDisTxt.value = skilldata.harmDist.ToString(); // beatonTimeInput.value = skilldata.beatonTime.ToString(); skillMinDistTxt.value = skilldata.minAttackDist.ToString(); animatorClip = skilldata.animatorClip; fireEffPos = skilldata.fireEffPos; isUseMoveEffTgle.value = skilldata.isUseMoveEff; isSingleMoveEffTgle.value = skilldata.isSingleMove; isNeedAppointTgle.value = skilldata.isNeedAppoint; isAttackAllTgle.value = skilldata.isQunGong; isShakeCameraTgle.value = skilldata.isShakeCamera; shakeTimeInput.value = skilldata.shakeTime.ToString(); beatonPanelMg.initView(skilldata.beatonDatas); // animatorBeatonClip = skilldata.animatorBeatonClip; if (!string.IsNullOrEmpty(skilldata.fireEffUrl)) { string asseturl = UrlManager.GetEffectUrl(skilldata.fireEffUrl, EEffectType.Attack); attackEffPrefab = AssetDatabase.LoadAssetAtPath(asseturl, typeof(GameObject)) as GameObject; } else attackEffPrefab = null; if (!string.IsNullOrEmpty(skilldata.moveEffUrl)) { string asseturl = UrlManager.GetEffectUrl(skilldata.moveEffUrl, EEffectType.Move); moveEffPrefab = AssetDatabase.LoadAssetAtPath(asseturl, typeof(GameObject)) as GameObject; } else moveEffPrefab = null; if (!string.IsNullOrEmpty(skilldata.explodeEffUrl)) { string asseturl = UrlManager.GetEffectUrl(skilldata.explodeEffUrl, EEffectType.Explode); explodeEffPrefab = AssetDatabase.LoadAssetAtPath(asseturl, typeof(GameObject)) as GameObject; } else explodeEffPrefab = null; //if (!string.IsNullOrEmpty(skilldata.beatonEffUrl)) //{ // string asseturl = UrlManager.GetEffectUrl(skilldata.beatonEffUrl, EEffectType.Beaton); // beatonEffPrefab = Resources.LoadAssetAtPath(asseturl, typeof(GameObject)) as GameObject; //} //else // beatonEffPrefab = null; } else { setSkilldata(); } } skillTypeTxt.text = "技能类型:" + DefaultSkillParam.skill_type[(int)skilltype]; //skillDistTypeTxt.text = "攻击距离:" + near_fartype[(int)near_farAtk]; skillAttackActionTxt.text = "施放动作:" + DefaultSkillParam.ActionName[animatorClip]; if (attackEffPrefab != null) skillAttackEffectTxt.text = "施放特效:" + attackEffPrefab.name; else skillAttackEffectTxt.text = "施放特效:无"; skillAttackEffectPosTxt.text = "施放位置:" + DefaultSkillParam.relatePos[(int)fireEffPos]; if (moveEffPrefab != null) moveEffUrlTxt.text = "移动特效:" + moveEffPrefab.name; else moveEffUrlTxt.text = "移动特效:无"; if (explodeEffPrefab != null) explodeEffUrlTxt.text = "爆炸特效:" + explodeEffPrefab.name; else explodeEffUrlTxt.text = "移动特效:无"; }