using UnityEngine; public class Skill_CurseofWitch : ProjectileBase { SkillListTableData awaken2_skilldata = new SkillListTableData(); public override void Set(ProjectileData _data) { base.Set(_data); awaken2_skilldata.e_SkillExtraType = eSkillExtraType.Blood; awaken2_skilldata.f_ExtraValue1 = Get_AwakenData(2, 1); awaken2_skilldata.f_ExtraValue2 = Get_AwakenData(2, 2); awaken2_skilldata.f_ExtraValue3 = Get_AwakenData(2, 3); awaken2_skilldata.f_ExtraValue4 = 1f; if (!DSUtil.CheckNull(_data.target)) { var dinfo = Get_DamageInfo(false, false); _data.target.Get_Damage(dinfo); var curseTime = _data.m_SkillListTableData.f_ExtraValue1; _data.target.Buff_or_Debuff(eCC.ATKSPD_Down, curseTime, _data.Get_SkillDamagePercent()); if (_data.target.IsSkillExtraStatus(eSkillExtraType.Curse)) { if (IsStep(1)) _data.target.Buff_or_Debuff(eCC.MOVSPD_Down, curseTime, Get_AwakenData(1, 1)); if (IsStep(2)) { var copydinfo = dinfo.Copy(); copydinfo.Set_Extra(eSkillExtraType.Blood); copydinfo.Beater_pd.m_SkillListTableData = awaken2_skilldata; _data.target.Check_Extra(copydinfo); } if (IsStep(3) && _data.target.IsSkillExtraStatus(eSkillExtraType.Curse)) { { var def = (int)_data.target.Get_StatInfo().Get_Stat(eStat.FinalDef); var reducedef = Mathf.Abs(def) * Get_AwakenData(3, 1); _data.target.Buff_or_Debuff(eCC.DEF_Down, curseTime, reducedef); } { var m_def = (int)_data.target.Get_StatInfo().Get_Stat(eStat.FinalMDef); var reducem_def = Mathf.Abs(m_def) * Get_AwakenData(3, 1); _data.target.Buff_or_Debuff(eCC.M_DEF_Down, curseTime, reducem_def); } } } } Off(true); } }