Files
jelito/Assets/jelycho/Code/Enemies/ZombieHurtbox.cs
2025-08-31 20:47:08 +02:00

28 lines
845 B
C#

using RebootKit.Engine.Main;
using RebootKit.Engine.Simulation;
using Unity.Mathematics;
using UnityEngine;
using UnityEngine.Assertions;
namespace RebootReality.jelycho.Enemies {
public class ZombieHurtbox : MonoBehaviour, IHurtbox {
public ZombieActor owner;
[SerializeField] ZombieBodyPartType m_BodyPart = ZombieBodyPartType.Body;
void Awake() {
Assert.IsNotNull(owner);
}
public void ReceiveDamage(Actor attacker, ulong damage, float3 worldHitPos) {
if (!owner.HasBodyPart(m_BodyPart)) {
return;
}
owner.ReceiveDamage(damage, m_BodyPart);
if (RR.World.Context is WorldContext worldContext) {
worldContext.FeedbacksManager.SpawnBloodSplash(worldHitPos);
}
}
}
}