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

52 lines
1.8 KiB
C#
Raw Normal View History

2025-05-05 00:45:45 +00:00
using System.Collections;
2025-01-16 06:07:21 +00:00
using UnityEngine;
public class Skill_ShadowSlash : ProjectileBase
{
public Projectile_StopAndColliderControl go_effect;
2025-05-05 00:45:45 +00:00
public GameObject go_invisibleEffect;
2025-01-16 06:07:21 +00:00
public override void Set(ProjectileData _data)
{
go_effect.gameObject.SetActive(false);
base.Set(_data);
2025-05-05 00:45:45 +00:00
OptionInfo.Ins.Set_PCMove(_data.shooter, false);
2025-01-16 06:07:21 +00:00
_data.shooter.Set_CurAnim(eAnim.Skill);
2025-05-05 00:45:45 +00:00
Show_InvisibleEffect();
//_data.shooter.Jump(2.1f, 1f, 10f, 1f, () =>
_data.shooter.Set_Invisible(2.1f, () =>
2025-01-16 06:07:21 +00:00
{
OptionInfo.Ins.Set_PCMove(_data.shooter, true);
2025-01-16 06:07:21 +00:00
_data.shooter.Play_Idle();
2025-05-05 00:45:45 +00:00
if (!DSUtil.CheckNull(_data.target))
_data.shooter.Set_Warp(_data.target.Get_PositionBack(1.5f));
Show_InvisibleEffect();
2025-01-16 06:07:21 +00:00
});
WL.Combat.Weapon.WLShadowSlash.OnSet(this); // WL #943-⑧ 훅(1줄) — 숨김 직후 렌더러 · 무기 다시 켬 + 베기 · 연기 크기 배율(WLShadowSlash.json) · 무적 · 2.1 초 뒤 순간이동은 원본 그대로
2025-01-16 06:07:21 +00:00
2025-05-05 00:45:45 +00:00
StartCoroutine(Co_Update());
2025-01-16 06:07:21 +00:00
StartCoroutine(Co_Off(4f));
}
2025-05-05 00:45:45 +00:00
void Show_InvisibleEffect()
{
go_invisibleEffect.SetActive(false);
go_invisibleEffect.SetActive(true);
go_invisibleEffect.transform.position = m_ProjecTileData.shooter.Get_position();
if (MyValue.m_RealCamera != null) MyValue.m_RealCamera.RotateCam_TargetBack(); // WL #881 섬(메인 카메라 = FarmingIsland · RealCamera 없음)에서 NRE → 카메라 연출만 건너뜀
2025-05-05 00:45:45 +00:00
}
IEnumerator Co_Update()
{
yield return new WaitForSeconds(0.5f);
go_effect.gameObject.SetActive(true);
go_effect.Set(m_ProjecTileData);
go_effect.transform.position = m_ProjecTileData.shooter.Get_CenterPositionFoward(1.5f);
}
2025-01-16 06:07:21 +00:00
}