public void SetPlayerStatus(PlayStatus status) { this.playStatus = status; frameCount = 0; currentData = GetCurrentAnimation(); SetSpriteList(); }
public void LoadPrefabObj() { string path = Application.dataPath + "/" + skillPath + "/" + skillName.text + ".prefab"; if (!File.Exists(path)) { Debug.Log("未找到技能预设"); return; } PlayerAnimationData pad = null; #if UNITY_EDITOR pad = Instantiate(AssetDatabase.LoadAssetAtPath <PlayerAnimationData>("Assets/" + skillPath + "/" + skillName.text + ".prefab")); #endif ZzcPlayAnim zpa = pad.GetComponent <ZzcPlayAnim>(); //读取人物数据 playerZzcPlay.totalTime = zpa.totalTime; playerZzcPlay.skillName = zpa.skillName; playerZzcPlay.setType = zpa.setType; playerZzcPlay.curve = zpa.curve; playerZzcPlay.oriPathPositions.Clear(); for (int i = 0; i < zpa.oriPathPositions.Count; i++) { playerZzcPlay.oriPathPositions.Add(zpa.oriPathPositions[i]); } //读取特效数据 for (int i = 0; i < skillEffectParent.childCount; i++) { Destroy(skillEffectParent.GetChild(i).gameObject); } for (int i = 0; i < pad.skillEffectDatas.Length; i++) { SkillEffect se = Instantiate(effectPrefab, skillEffectParent).GetComponent <SkillEffect>(); se.prefab = pad.skillEffectDatas[i].prefab; se.waitTime = pad.skillEffectDatas[i].waitTime; se.destroyTime = pad.skillEffectDatas[i].destroyTime; se.playTime = pad.skillEffectDatas[i].playTime; se.curve = pad.skillEffectDatas[i].curve; se.transform.localPosition = pad.skillEffectDatas[i].startPos; se.oriForward = pad.skillEffectDatas[i].oriForward; se.originalPos = pad.skillEffectDatas[i].oriPos; se.oriPathPositions.Clear(); for (int j = 0; j < pad.skillEffectDatas[i].oriPathPositions.Count; j++) { se.oriPathPositions.Add(pad.skillEffectDatas[i].oriPathPositions[j]); } } Destroy(zpa.gameObject); Debug.Log(skillName.text + "读取完毕"); }
void Awake() { bodySprite = this.transform.FindChild("body").GetComponent <UISprite>(); headSprite = this.transform.FindChild("head").GetComponent <UISprite>(); atlas = bodySprite.atlas; allSpriteList = atlas.GetListOfSprites(); currentData = GetCurrentAnimation(); timerFrame = 1f / currentData.framerate; GameController.Instance.MouseUp += () => { SetPlayerStatus(PlayStatus.cast); }; GameController.Instance.MouseDown += () => { SetPlayerStatus(PlayStatus.spellcast); }; }
public override void OnInspectorGUI() { obj = new SerializedObject(target); Undo.RecordObject(target, "dad"); obj.Update(); pad = (PlayerAnimationData)target; EditorGUILayout.BeginVertical(); EditorGUILayout.Space(); EditorGUILayout.LabelField("自定义Assets目录下路径,前后不需要加/", EditorStyles.boldLabel); EditorGUILayout.Space(); pad.skillPath = EditorGUILayout.TextField("技能保存和读取的路径", pad.skillPath); EditorGUILayout.EndVertical(); if (GUI.changed) { EditorUtility.SetDirty(target); } obj.ApplyModifiedProperties(); }