using cfg; /// /// 超级冲刺,支持Dash /// public class SuperDashSpSkillData : FishSpSkillData { /// /// 冲刺时z轴的初始随机范围 /// public System.Collections.Generic.List PosZInit { get; private set; } /// /// z轴随机范围的变化值,最小值 += 参数 * 累积冲刺次数,最大值 -= 参数 * 累积冲刺次数 /// public float PosZChange { get; private set; } /// /// 冲刺速度的变化值,蓄力速度 *= 参数 * 累积冲刺次数 /// public float DashSpeedChange { get; private set; } /// /// 累积冲刺次数上限,每次冲刺一次后加1 /// public int ChangeMaxCount { get; private set; } /// /// 重新释放技能后,累积冲刺次数 += 参数,不能超过上限,也不能小于0 /// public int NewSkillCountOffset { get; private set; } public int StrengthChange => spSkill.StrengthChange; public int ChargeCount { get; private set; } public override string DashWaterFx(){ return spSkill.DashWaterFx; } public override string FxDash() { return spSkill.DashFx; } public void AddChargeCount(int offset = 1) { if (ChargeCount < ChangeMaxCount) { ChargeCount += offset; } } public float GetDashPrepareTime(int index) { if (index >= spSkill.DashPrepareTime.Count) { return 0; } return spSkill.DashPrepareTime[index]; } protected override void RefreshSkill() { PosZInit = spSkill.PosZInit; PosZChange = spSkill.PosZChange; DashSpeedChange = spSkill.DashSpeedChange; ChangeMaxCount = spSkill.ChangeMaxCount; NewSkillCountOffset = spSkill.NewSkillCountOffset; } }