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;
}
}