Creare Videogiochi - Game Developer
Problema con variabile - Versione stampabile

+- Creare Videogiochi - Game Developer (https://www.making-videogames.net/giochi)
+-- Forum: Unity3D Italia (https://www.making-videogames.net/giochi/Forum-Unity3D-Italia)
+--- Forum: Richieste di Aiuto per Unity 3D (https://www.making-videogames.net/giochi/Forum-Richieste-di-Aiuto-per-Unity-3D)
+--- Discussione: Problema con variabile (/thread-Problema-con-variabile--18396)



Problema con variabile - jacomucchio - 08-12-2016

Salve, sono nuovo nella "fase Scripting" di un videogioco, ho un problema molto banale che però non so come risolvere. Una volta che "premi" arriva a 4 non riesco a resettarlo per farlo tornare a zero. Ecco a voi lo script(scusate per la banalità dei nomi delle variabili Angel )
 public void OnButtonClick()
       
    {
        premi += 1;  // <------------------------------------------------------- ecco la variabile incriminata
        if (premi == 1)
        {
            Debug.Log("1");
            triangolo.SetActive(true);
            Cube.SetActive(false);
        }
        if (premi == 2 )
        {
            Debug.Log("2");
            triangolo.SetActive(false);
            Cerchio.SetActive(true);
        }
        if (premi == 3)
        {
            Debug.Log("3");
            Cerchio.SetActive(false);
            Rettangolo.SetActive(true);
        }
        if (premi == 4)
        {
            Debug.Log("4");
            Cube.SetActive(true);
            Rettangolo.SetActive(false);
            premi = 0;    // <-------------------------------------------------------


RE: Problema con variabile - carloss - 09-12-2016

Il codice che hai scritto dovrebbe funzionare. Puoi considerare l'uso dell'operazione modulo:
premi = premi%4+1


RE: Problema con variabile - Blackg96 - 09-12-2016

Concordo con carloss, comunque inserisci else if per facilitare la vita al processore


RE: Problema con variabile - bralani - 09-12-2016

Concordo con Carlos, in pratica il modulo esegue una divisione fra interi e restituisce il relativo resto. Ad esempio:

premi = premi%4+1

Se la variabile premi è 2 allora 2/4 è 0 con il resto di 2, quindi 2+1 = 3. Spero ti sia stato utile Smile


RE: Problema con variabile - jacomucchio - 09-12-2016

Grazie mille a tutti Tongue


RE: Problema con variabile - Peas - 09-12-2016

E' strano che non funzioni, siamo sicuri arrivi a 4? Ti stampa nel log 4? Cmq fatti stampare direttamente il valore di premi invece che le stringhe ("1","2",ecc...).


RE: Problema con variabile - alessiobb3b - 12-12-2016

Si gli altri hanno ragione anche se come lo hai impostato stressa molto quando con un array si poteva semplificare le cose però unity è strano io e black siamo i maggiori testimoni ahahhaha