Variable ändert sich nur innerhalb von OnTriggerEnterC#

Ein Treffpunkt für C#-Programmierer
Guest
 Variable ändert sich nur innerhalb von OnTriggerEnter

Post by Guest »

Ich versuche, die Health-Variable mithilfe der OnTriggerEnter-Funktion zu ändern. Das funktioniert, aber nur innerhalb der Funktion. Überall sonst bleibt es gleich.
using UnityEngine;

public class EnemyInteractions : MonoBehaviour
{
public int Health;
public void Start()
{
Health = 10;
}
public void OnTriggerEnter(Collider player)
{
if (player.gameObject.tag == "Enemy")
{
print("HIT");
Health -= 1; // won't change outside function
Debug.Log(Health);
}
}
}

Ich habe verschiedene Möglichkeiten ausprobiert, von der Verwendung einer anderen Variablen, um die Health-Variable auf sich selbst zu übernehmen, bis hin zu anderen Möglichkeiten, die ich finden konnte, aber es funktioniert nicht. Das Debug.Log(Health); zeigt zwar die richtigen Zahlen an, ändert sich also, aber offenbar nur in der Funktion selbst.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post