private ArkCrossEngine.SkillCategory _GetSkillCategory(int skillId) { ArkCrossEngine.SkillLogicData skillData = (ArkCrossEngine.SkillLogicData)ArkCrossEngine.SkillConfigProvider.Instance.ExtractData(ArkCrossEngine.SkillConfigType.SCT_SKILL, skillId); if (skillData == null) { return(ArkCrossEngine.SkillCategory.kNone); } return(skillData.Category); }
private void _GenerateSkillFile(int skillId, string anim, eHitType hitType, int animLen, bool bNormalAttack) { if (animLen == 0) { UnityEditor.EditorUtility.DisplayDialog("SkillEdit", "请检查技能动画长度,不能为0!", "OK"); return; } const string skillfilePrefix = "Assets\\StreamingAssets\\Public\\SkillDsl\\"; ArkCrossEngine.SkillLogicData skillData = (ArkCrossEngine.SkillLogicData)ArkCrossEngine.SkillConfigProvider.Instance.ExtractData(ArkCrossEngine.SkillConfigType.SCT_SKILL, skillId); if (skillData != null) { string skillFilePath = skillfilePrefix + skillData.SkillDataFile; StreamWriter skillFilesw = new StreamWriter(skillFilePath, false, Encoding.UTF8); _GenerateSkillImpl(skillFilesw, skillId, anim, hitType, animLen); // 三段普攻 if (bNormalAttack) { // 第二段 if (skillData.NextSkillId > 0) { _GenerateSkillImpl(skillFilesw, skillData.NextSkillId, 普通攻击第二段.技能动画, 普通攻击第二段.攻击类型, 普通攻击第二段.动画长度); } else { UnityEditor.EditorUtility.DisplayDialog("SkillEdit", "普攻第二段next skill id没配置,请联系程序!", "OK"); } // 第三段 skillData = (ArkCrossEngine.SkillLogicData)ArkCrossEngine.SkillConfigProvider.Instance.ExtractData(ArkCrossEngine.SkillConfigType.SCT_SKILL, skillData.NextSkillId); if (skillData.NextSkillId > 0) { _GenerateSkillImpl(skillFilesw, skillData.NextSkillId, 普通攻击第三段.技能动画, 普通攻击第三段.攻击类型, 普通攻击第三段.动画长度); } else { UnityEditor.EditorUtility.DisplayDialog("SkillEdit", "普攻第三段next skill id没配置,请联系程序!", "OK"); } } skillFilesw.Flush(); skillFilesw.Close(); } }