TH1/Unity/Assets/Scripts/TH1_Logic/Skill/AllSkill/LaevatainPreySkill.cs
2025-08-26 14:32:20 +08:00

46 lines
1.1 KiB
C#

/*
* @Author: 白哉
* @Description:
* @Date: 2025年04月23日 星期三 21:04:18
* @Modify:
*/
using RuntimeData;
using System;
using TH1_Logic.Core;
using UnityEngine;
namespace Logic.Skill
{
[Serializable]
public class LaevatainPreySkill : SkillBase
{
public LaevatainPreySkill()
{
IsPermanent = false;
TurnsLimit = 0;
}
public override SkillType GetSkillType()
{
return SkillType.LAEVATAINPREY;
}
public void AddLevel()
{
Level += 1;
Level = Mathf.Min(Level, 4);
}
public override void OnDamaged(MapData mapData, SettlementInfo info)
{
if (info.DamageOrigin == null || info.DamageTarget == null) return;
if (info.DamageType != DamageType.ActiveAttack) return;
if (info.IsKill) return;
if (!info.DamageOrigin.GetSkill(SkillType.LAEVATAIN, out _)) return;
Main.UnitLogic.DamageSettlement(mapData,info.DamageOrigin, info.DamageTarget,2 * Level, DamageType.FollowAttack);
}
}
}