Probleme bei Unity

brilzi89

Bekanntes Mitglied
Hallo zusammen,

ich experimentiere zurzeit mit Unity rum, und habe jetzt ein Problem bei dem ich nicht mehr weiter komme.
Und zwar soll in meinem GameManager script überprüft werden, ob der Character gekauft wurde oder nicht.
Wenn der wert true ist soll der Character Prefab aktiviert werden. Jetzt ist es aber so, wenn ich im Shop einen Character kaufe und weiter ins Spiel gehe, wird der Character nicht aktiviert. Kann mir bitte einer Helfen.

Danke im Vorraus.

Hier die Codes:

ShopManager:
C#:
public class ShopManager : MonoBehaviour
{


    public bool Joli;
    public bool Ninn;
    public bool Spaci;
    public bool Woodie;
    public bool Plumb;

    public int Kontostand;
    public Text KontostandText;

    public Inventory myInventory;
 
  
  
    
    // Start is called before the first frame update
    void Start()
    {


        KontostandAktualisieren();

        

    }


    public void buyJoli(int shopPrice)
    {
        if (Kontostand >= shopPrice)
        {
            Debug.Log("Character wurde gekauft");

            // Dodgie hinzufügen
            myInventory.buyNewJoli();
            // Kontostand neu berechnen
            Kontostand = Kontostand - shopPrice;
            Debug.Log("Kontostand:" + Kontostand);

            //Kontostand aktualisieren
            KontostandAktualisieren();

            // Button deaktivieren

        
                GameObject.Find("Joli").GetComponent<Button>().interactable = false;
            

        }
      

        }

    public void buyNinn(int shopPrice)
    {
        if (Kontostand >= shopPrice)
        {
            Debug.Log("Character wurde gekauft");

            // Dodgie hinzufügen
            myInventory.buyNewNinn();
            // Kontostand neu berechnen
            Kontostand = Kontostand - shopPrice;
            Debug.Log("Kontostand:" + Kontostand);

            //Kontostand aktualisieren
            KontostandAktualisieren();

            // Button deaktivieren


            GameObject.Find("Ninn").GetComponent<Button>().interactable = false;

          
        }


    }

    public void buySpaci(int shopPrice)
    {
        if (Kontostand >= shopPrice)
        {
            Debug.Log("Character wurde gekauft");

            // Dodgie hinzufügen
            myInventory.buyNewSpaci();
            // Kontostand neu berechnen
            Kontostand = Kontostand - shopPrice;
            Debug.Log("Kontostand:" + Kontostand);

            //Kontostand aktualisieren
            KontostandAktualisieren();

            // Button deaktivieren


            GameObject.Find("Spaci").GetComponent<Button>().interactable = false;

        }


    }

    public void KontostandAktualisieren()
    {

        KontostandText.text = Kontostand.ToString();

    }

 
}


GameManager:

C#:
public class GameManager : MonoBehaviour
{

    public GameObject Joli;
    public GameObject Ninn;
    public GameObject Spaci;
    public GameObject Woodie;
    public GameObject Plumbt;

    public Inventory myInventory;
    public GameObject canvasObject;



    // Start is called before the first frame update
    void Start()
    {


        myInventory = GameObject.FindObjectOfType<Inventory>();




        //Character im Inventory aktiv?
    
      
        if (myInventory.GetNinn() == true )
        {

            
            GameObject Ninnnew = Instantiate(Ninn, Ninn.transform.position, Quaternion.identity) as GameObject;

            Ninnnew.transform.SetParent(canvasObject.transform, false);
            Debug.Log("Aktiv");   
        }


            if (myInventory.GetNinn() == true)
            {
                GameObject Spacinew = Instantiate(Spaci, Spaci.transform.position, Quaternion.identity) as GameObject;

                Spacinew.transform.SetParent(canvasObject.transform, false);

            }
            
            }

    }


Inventory:

C#:
public class Inventory : MonoBehaviour
{

    public bool Joli;
    public bool Ninn;
    public bool Spaci;
    public bool Woodie;
    public bool Plumb;



    // Start is called before the first frame update
    void Start()
    {
        Joli = false;
        Ninn = false;
        Spaci = false;
        Woodie = false;
        Plumb = false;
    }

    public void buyNewJoli()
    {

        Joli = true;

    }

    public bool GetJoli()
    {

        return Joli;
    }

    public void buyNewNinn()
    {

        Ninn = true;

    }

    public bool GetNinn()
    {

        return Ninn;
    }
    public void buyNewSpaci()
    {

        Spaci = true;

    }

    public bool GetSpaci()
    {

        return Spaci;
    }
    public void buyNewWoodie()
    {

        Woodie = true;

    }

    public bool GetWoodie()
    {

        return Woodie;
    }
    public void buyNewPlumb()
    {

        Plumb = true;

    }

    public bool GetPlumb()
    {

        return Plumb;
    }
}
 

Ähnliche Java Themen

Neue Themen


Oben