Health
Health
Component
The Health
component allows any object to receive and process damage. It must be paired with a Hitbox
to function fully in the damage system.
Summary
This component:
- Stores current and max health
- Triggers events when health changes
- Destroys the object when health reaches zero
Fields
Field | Type | Description |
---|---|---|
_health | float | Starting health of the entity. Set via inspector. |
_maxHealth | float (read-only) | Maximum health. Initialized to _health at runtime. |
OnHealthChanged | UnityEvent<float> | Invoked when health changes, passing a normalized value from 0 to 1 . |
Public Methods
Method | Description |
---|---|
void Hurt(DamageData damageData) | Reduces health based on incoming damage. Invokes OnHealthChanged . Calls Kill() if health is zero. |
void Kill() | Destroys the GameObject and sets health to 0 . Override this for custom death behavior. |
Usage
Tip
Attach this script to the root object of any prefab you want to be damageable.
Note
Use Hitbox
components on colliders to forward damage here.
Warning
Damage must be applied through Hurt()
to affect health.