Project_WL/Assets/Script/Character/Projectile/Skill/Skill_RapidShot.cs

41 lines
1.3 KiB
C#
Raw Normal View History

2025-01-20 09:20:54 +00:00
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Skill_RapidShot : ProjectileBase
{
[Header("투사체")]
public string m_projectile = "Projectile_ArcherSkill2Arrow";
[Header("발사 간격")]
public float gaptime = 0.25f;
List<ProjectileData> list_data = new List<ProjectileData>
{
new ProjectileData(),new ProjectileData(),new ProjectileData(),new ProjectileData(),new ProjectileData(),
new ProjectileData(),new ProjectileData(),
};
public override void Set(ProjectileData _data)
{
_data.eStartPos = eProjectileStartPos.ShooterCenter;
base.Set(_data);
for (int i = 0; i < list_data.Count; i++)
_data.Copy(list_data[i]);
StartCoroutine(Co_Update());
}
IEnumerator Co_Update()
{
2025-05-08 00:54:46 +00:00
InGameInfo.Ins.Show_Effect("Effect_BulletTarget", m_ProjecTileData.target, eEffectLocation.Mid, 1.5f);
yield return new WaitForSeconds(1f);
2025-01-20 09:20:54 +00:00
for (int i = 0; i < list_data.Count; i++)
{
ProjectileInfo.Ins.Shoot_Projectile(m_projectile, list_data[i], pb => { pb.m_Pierce = true; });
2025-05-08 00:54:46 +00:00
m_ProjecTileData.shooter.KnockBack(Time.deltaTime);
2025-01-20 09:20:54 +00:00
yield return new WaitForSeconds(gaptime);
}
Off(true);
}
}