- Home /
The damage to my player keeps stacking even after I quit the game and restart.
I'm trying to have my player take 25 damage from an enemy bullet. But whenever he takes damage it stacks for some reason. Even if I stop the game and replay it, the damage is saved and continues to stack.
He starts with 100 health:
Now after so many stacks he now takes 1000's of damage:
Here is my code:
public class enemy_bullet_damage_controller : MonoBehaviour
{
[SerializeField] private float bullet_damage;
[SerializeField] private player_health_controller player_object;
private void OnTriggerEnter2D(Collider2D collision)
{
if (collision.CompareTag("Player"))
{
damage();
}
}
void damage()
{
player_object.player_health = player_object.player_health - bullet_damage;
player_object.update_health();
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class player_health_controller : MonoBehaviour
{
public float player_health;
//[SerializeField] private Text health_text;
public Text health_text;
//----------------------------------------------------------------
private void Start()
{
update_health();
}
// Update is called once per frame
public void update_health()
{
health_text = GameObject.Find("health amount").GetComponent<Text>();
health_text.text = player_health.ToString("0");
if (player_health <= 0)
{
Debug.Log("Game Over!!!");
}
}
}
Do you have any memory leak error in console ? In the code you provided, is this one or two seperate scripts (=files) ?
Answer by MZK1194 · Aug 13, 2020 at 07:40 AM
Write a code that sets your HP to 100 every time you start a game/match, try putting it in Void Start and tell me if it works.
Answer by vilemuse · Aug 13, 2020 at 01:34 PM
My life always stars out at 100. The problem is when I get damaged. The bullet damages me for 25 points of damage but when I stop the game and replay and get damaged again my life shows 75. If I stop the game and get damaged again my life shows 50. If I stop and replay and get damaged again my life shows 25...ect ect....for some reason its stacking the damage.
Your answer
![](https://koobas.hobune.stream/wayback/20220613005521im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Player Damage to enemy damage melee system 0 Answers
How can i access the Target script from the Explode function? This does not work for me 0 Answers
Damage Indicator not showing correct position of attack. 0 Answers
Please, I need a damage script 2 Answers
Make screen flash red on Damage 2 Answers