If my Player has 1 Heart and something hits him with more than 1 dmg the game crashes. Example Player has 4 Hearts I touch enemy -1 Health, touch spikes -4 health. Crash. Im still new to this.
Hud:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class HUD : MonoBehaviour
{
public Sprite[] HeartSprites;
public Image HeartUI;
private Player player;
void Start()
{
player = GameObject.FindGameObjectWithTag("Player").GetComponent<Player>();
}
void Update()
{
HeartUI.sprite = HeartSprites[player.curHealth];
}
}
Player
void Die()
{
Application.LoadLevel(Application.loadedLevel);
}
public void Damage(int dmg)
{
curHealth -= dmg;
}
Spikes
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Spikes : MonoBehaviour
{
private Player player;
void Start()
{
player = GameObject.FindGameObjectWithTag("Player").GetComponent<Player>();
}
void OnTriggerEnter2D(Collider2D collision)
{
if (collision.CompareTag("Player"))
{
player.Damage(4);
}
}
}
Enemy(name is Gurdo grunt)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GurdoGruntTrigger : MonoBehaviour
{
private Player player;
void Start()
{
player = GameObject.FindGameObjectWithTag("Player").GetComponent<Player>();
}
void OnTriggerEnter2D(Collider2D collision)
{
if (collision.CompareTag("Player"))
{
player.Damage(1);
}
}
}