Hello, what I want to do is if my player health goes below 50% I have an image that pops up and informs the player they are dying it also has some cool blood effects. What I want to happen is if the Player picks up a health pick up his health is regenerated and the image pop up goes away. The problem I am having is that the image pop up is not showing up when health falls below 50% and if I can get the image pop up to show up I can only have it disappear if I have exactly 51% health. What am I doing wrong or what am I missing? Any help would be greatly appreciated. here is my code.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class PlayerHealth : MonoBehaviour
{
[SerializeField]
Slider healthBar;
[SerializeField]
Text healthText;
[SerializeField]
GameObject DeathUI;
[SerializeField]
private string sceneNameToLoad;
public float maxHealth = 100;
public float curHealth;
void Start()
{
healthBar.value = maxHealth;
curHealth = healthBar.value;
}
void OnTriggerStay ( Collider other )
{
if (other .gameObject.tag == "Damage")
{
healthBar.value -= 1f;
curHealth = healthBar.value;
}
if (other .gameObject.tag == "Heal")
{
healthBar.value += 1f;
curHealth = healthBar.value;
}
if (other .gameObject.tag == "HPickUp")
{
healthBar.value += 25f;
curHealth = healthBar.value;
}
}
void Update()
{
healthText.text = curHealth.ToString () + " %";
if (curHealth <= 51) {
DeathUI.gameObject.SetActive (false);
}
else if (curHealth <= 50)
DeathUI.gameObject.SetActive (true);
if (curHealth <= 0)
SceneManager.LoadScene (sceneNameToLoad);
}
}