//--------------------------------------------------------
|
// [Author]: YYL
|
// [ Date ]: 2026年2月7日
|
//--------------------------------------------------------
|
|
using System.Collections.Generic;
|
using System;
|
using UnityEngine;
|
using LitJson;
|
|
public partial class SkillSkinConfig : ConfigBase<string, SkillSkinConfig>
|
{
|
static SkillSkinConfig()
|
{
|
// 访问过静态构造函数
|
visit = true;
|
}
|
|
public string SkillSkinID;
|
public string SkillMotionName;
|
public int EffectType;
|
public int CastPosition;
|
public int CastIndexNum;
|
public float CastDistance;
|
public int StartupFrames;
|
public int[] ActiveFrames;
|
public int RecoveryFrames;
|
public int LoopCount;
|
public int[][] DamageDivide;
|
public int BulletEffectId;
|
public int BulletPath;
|
public float BulletFlySpeed;
|
public int ExplosionEffectId;
|
public int ExplosionEffect2;
|
public int ExplosionEffect3;
|
public int ExplosionEffect4;
|
public int EffectId;
|
public int EffectId2;
|
public int SkinllSFX1;
|
public int SkinllSFX2;
|
public int MStartEffectId;
|
public int BuffEffect;
|
public int TriggerEffect;
|
|
public override string LoadKey(string _key)
|
{
|
string key = GetKey(_key);
|
return key;
|
}
|
|
public override void LoadConfig(string input)
|
{
|
try {
|
string[] tables = input.Split('\t');
|
SkillSkinID = tables[0];
|
|
SkillMotionName = tables[1];
|
|
int.TryParse(tables[2],out EffectType);
|
|
int.TryParse(tables[3],out CastPosition);
|
|
int.TryParse(tables[4],out CastIndexNum);
|
|
float.TryParse(tables[5],out CastDistance);
|
|
int.TryParse(tables[6],out StartupFrames);
|
|
if (tables[7].Contains("["))
|
{
|
ActiveFrames = JsonMapper.ToObject<int[]>(tables[7]);
|
}
|
else
|
{
|
string[] ActiveFramesStringArray = tables[7].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
|
ActiveFrames = new int[ActiveFramesStringArray.Length];
|
for (int i=0;i<ActiveFramesStringArray.Length;i++)
|
{
|
int.TryParse(ActiveFramesStringArray[i],out ActiveFrames[i]);
|
}
|
}
|
|
int.TryParse(tables[8],out RecoveryFrames);
|
|
int.TryParse(tables[9],out LoopCount);
|
|
DamageDivide = JsonMapper.ToObject<int[][]>(tables[10].Replace("(", "[").Replace(")", "]"));
|
|
int.TryParse(tables[11],out BulletEffectId);
|
|
int.TryParse(tables[12],out BulletPath);
|
|
float.TryParse(tables[13],out BulletFlySpeed);
|
|
int.TryParse(tables[14],out ExplosionEffectId);
|
|
int.TryParse(tables[15],out ExplosionEffect2);
|
|
int.TryParse(tables[16],out ExplosionEffect3);
|
|
int.TryParse(tables[17],out ExplosionEffect4);
|
|
int.TryParse(tables[18],out EffectId);
|
|
int.TryParse(tables[19],out EffectId2);
|
|
int.TryParse(tables[20],out SkinllSFX1);
|
|
int.TryParse(tables[21],out SkinllSFX2);
|
|
int.TryParse(tables[22],out MStartEffectId);
|
|
int.TryParse(tables[23],out BuffEffect);
|
|
int.TryParse(tables[24],out TriggerEffect);
|
}
|
catch (Exception exception)
|
{
|
Debug.LogError(exception);
|
}
|
}
|
}
|