- Home /
How to keep score count for each prefab.
Hello, I'm trying to have a score for each creature.
I have 3 prefabs with the same "Mover" script on them. I have 1 Text UI element under a canvas node. I have a script on my player that allows me to pick up and drop food onto creatures to feed them.
Depending on which creature I pick up. I'd like to have them display the food amount based on how much they have eaten.
Right now my scripts all work to some degree, the problem I'm facing is the same food count appears regardless of what creature i pick up.
THIS IS ON MY CREATURES
++++++++++++++++++++++
public static int foodValue = 0;
public void addStats(int amount)
{
foodValue += amount;
}
THIS IS ON MY ITEM
++++++++++++++++++++++
void OnTriggerEnter(Collider other)
{
if (other.tag == "creature")
{
var addFood = other.gameObject.GetComponent<Mover>();
whichCreature = other.gameObject;
isTaken = true;
addFood.addStats(1);
Destroy(gameObject, 6f);
}
}
THIS IS ON MY TEXT ELEMENT
++++++++++++++++++++++
//Text food;
public Text food;
// Use this for initialization
void Start ()
{
food = GetComponent<Text>();
}
// Update is called once per frame
void Update ()
{
CurrentStats();
}
public void CurrentStats()
{
food.text = "Food: " + Mover.foodValue;
}
Answer by Casiell · Jul 02, 2019 at 06:42 AM
Your "foodValue" variable is static. Read more about static here
Your answer
Follow this Question
Related Questions
[Networking] Changed text does not appear changed for players who just connected 0 Answers
prefabs aren't letting me connect a text public thing to it 1 Answer
GUIText won't update from prefab 1 Answer
Accessing variable defined in a Script attached to Prefab 2 Answers
Help making a damage number system 1 Answer