31 lines
1.1 KiB
C#
31 lines
1.1 KiB
C#
|
|
using UnityEngine;
|
||
|
|
|
||
|
|
public class Skill_FireBolt : ProjectileTest
|
||
|
|
{
|
||
|
|
[Header("폭파 범위")]
|
||
|
|
public float explosionarea = 1.5f;
|
||
|
|
[Header("폭파 데미지")]
|
||
|
|
public float explosion_dmg = 0.25f;
|
||
|
|
|
||
|
|
public override void Set(ProjectileData _data)
|
||
|
|
{
|
||
|
|
if (_data.eStartPos == eProjectileStartPos.None)
|
||
|
|
_data.eStartPos = eProjectileStartPos.ShooterCenter;
|
||
|
|
base.Set(_data);
|
||
|
|
m_ProjectTileData.e_SkillExtraType = IsStep(3) ? eSkillExtraType.Burn : eSkillExtraType.None;
|
||
|
|
|
||
|
|
_data.Action_OnHit = hitter =>
|
||
|
|
{ // 폭파 데미지
|
||
|
|
var area = explosionarea + (IsStep(1) ? Get_AwakenData(1, 1) : 0);
|
||
|
|
var enemies = Get_Enemies(transform, area);
|
||
|
|
if (enemies.Count > 0)
|
||
|
|
{
|
||
|
|
var dmg = explosion_dmg + (IsStep(2) ? Get_AwakenData(2, 1) : 0);
|
||
|
|
DamageInfo dinfo = Get_DamageInfo();
|
||
|
|
dinfo.Damage *= dmg;
|
||
|
|
for (int i = 0; i < enemies.Count; i++)
|
||
|
|
enemies[i].Get_Damage(dinfo);
|
||
|
|
}
|
||
|
|
};
|
||
|
|
}
|
||
|
|
}
|