2025-11-25 08:19:33 -05:00
|
|
|
using Cielonos.MainGame.Characters;
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
|
|
|
|
namespace Cielonos.MainGame
|
|
|
|
|
{
|
|
|
|
|
public class Link : AttackAreaBase
|
|
|
|
|
{
|
|
|
|
|
public CharacterBase target;
|
|
|
|
|
|
|
|
|
|
protected override void Update()
|
|
|
|
|
{
|
|
|
|
|
base.Update();
|
|
|
|
|
|
|
|
|
|
if (target != null)
|
|
|
|
|
{
|
|
|
|
|
if(hitSm.checkedObjects.Contains(target.gameObject))
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-13 09:22:11 -05:00
|
|
|
HitCharacter(target.collisionSc.MainCollider, target.centerPoint.position);
|
2025-11-25 08:19:33 -05:00
|
|
|
hitSm.checkedObjects.Add(target.gameObject);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void HitCharacter(Collider characterCollider, Vector3 hitPosition)
|
|
|
|
|
{
|
|
|
|
|
if (!isEnabling)
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CharacterBase targetCharacter = characterCollider.GetComponentInParent<CharacterBase>();
|
|
|
|
|
|
|
|
|
|
if (targetCharacter == creator) return;
|
|
|
|
|
|
|
|
|
|
if (targetCharacter != null) // && targetCharacter.HasAnyTag(targetTagList))
|
|
|
|
|
{
|
|
|
|
|
if (hitSm.checkedObjects.Contains(targetCharacter.gameObject))
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
hitSm.AddCheckedObject(targetCharacter.gameObject);
|
2026-02-13 09:22:11 -05:00
|
|
|
HitOnTarget(characterCollider, hitPosition, out _);
|
2025-11-25 08:19:33 -05:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|