using cfg; using UnityEngine; public class FishSpSkillData : IFishSpSkillData where T : FishSpSkillLabel { public FishSkill fishSkill { get; set; } public virtual SpKillType Type { get; set; } = SpKillType.None; public T spSkill { get; set; } public int StopCount { get; set; } public bool InProgress { get; set; } public bool End { get; set; } public void StartSkill(FishSpSkillLabel fishSpSkill) { if (fishSpSkill is Corrupt) { Type = SpKillType.Corrupt; } else if (fishSpSkill is ElectricShock) { Type = SpKillType.ElectricShock; } else if (fishSpSkill is SuperDash) { Type = SpKillType.SuperDash; } else if (fishSpSkill is DirtyStuck) { Type = SpKillType.DirtyStuck; } spSkill = fishSpSkill as T; End = false; Debug.Log("StartSkill"); RefreshSkill(); } public void RefreshSkill(FishSpSkillLabel fishSpSkill) { spSkill = fishSpSkill as T; StopCount++; InProgress = false; End = false; Debug.Log("RefreshSkill"); RefreshSkill(); } protected virtual void RefreshSkill() { } public void EndSkill() { End = true; Debug.Log("EndSkill"); } public virtual string AudioScreen() { return ""; } public virtual string AudioRewardFish() { return ""; } #region UI public virtual string FxScreen() { return ""; } public virtual string FxBar() { return ""; } public virtual string FxProgressInc() { return ""; } public virtual string FxFishIcon() { return ""; } public virtual BarTarget GetBarTarget() { return null; } #endregion #region Jump public virtual string FxFishJump() { return ""; } /// /// 鱼起跳的时候,立刻在Root处挂上一个特效 /// public virtual string FxFishJumpWater() { return ""; } public virtual string FxWater() { return ""; } #endregion #region Struggle public virtual string FxFishSkillAppend() { return ""; } /// /// 鱼起跳的时候,立刻在Root处挂上一个特效 /// public virtual string FxFishStruggle() { return ""; } public virtual string FxWaterSplash() { return ""; } #endregion #region Dash public virtual string FxDash() { return ""; } public virtual string DashPerformanceFx(){ return ""; } public virtual string DashWaterFx(){ return ""; } #endregion }