You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
922 B
36 lines
922 B
using System.Collections; |
|
using System.Collections.Generic; |
|
using UnityEngine; |
|
using UnityEngine.Events; |
|
using UnityEngine.Serialization; |
|
|
|
public class HitBox : MonoBehaviour |
|
{ |
|
[System.Serializable] |
|
public class DamagedEvent : UnityEvent<object> { } |
|
[FormerlySerializedAs("onDamaged")] |
|
[SerializeField] |
|
[Space(10)] |
|
private DamagedEvent OnDamaged = new DamagedEvent(); |
|
|
|
public void Hit(object data) |
|
{ |
|
HitCheck hit = (HitCheck)data; |
|
|
|
OnHited(hit); |
|
OnDamaged.Invoke(hit); |
|
} |
|
|
|
[Space(10)] |
|
public GameObject prefabEffDamage; |
|
void OnHited(HitCheck hit) |
|
{ |
|
if (prefabEffDamage != null) |
|
{ |
|
Transform eff = hit.owner.map.ObjectCreate(prefabEffDamage, hit.transform, Vector3.one, Vector3.zero).transform; |
|
|
|
eff.transform.SetParent(null); |
|
eff.transform.position = hit.transform.position; |
|
} |
|
} |
|
}
|
|
|