33 lines
834 B
C#
33 lines
834 B
C#
using NaughtyAttributes;
|
|
using UnityEngine;
|
|
|
|
public class VampireEntity : Entity {
|
|
[SerializeField] [field: Required]
|
|
PlayerStats playerStats = null!;
|
|
|
|
// [SerializeField] [Required]
|
|
// HealthBar healthBar;
|
|
PlayerMovement playerMovement;
|
|
|
|
protected override void Start() {
|
|
base.Start();
|
|
base.entityType = EntityFlag.Vampire;
|
|
playerMovement = GetComponent<PlayerMovement>();
|
|
}
|
|
|
|
protected override void Update() {
|
|
base.Update();
|
|
|
|
if (gameFlowManager.CanDoAction)
|
|
TakeDamage(playerStats.bloodLossRate * Time.deltaTime, this);
|
|
}
|
|
|
|
// public override void TakeDamage(float amount) {
|
|
// base.TakeDamage(amount);
|
|
// healthBar.SetHealthFraction(Health / initialHealth);
|
|
// }
|
|
|
|
public bool IsInSafeZone() => playerMovement.IsInSafeZone;
|
|
|
|
protected override void OnDied() => gameFlowManager.GameOver();
|
|
} |