Page 1 sur 1

[RESOLU] Problème script enregistrer le meilleur score

Publié : 08 Déc 2018 18:18
par Lux
Bonjour à tous,

je débute depuis peu sur unity et je bloque déjà sur un problème assez basique.

J'ai récupéré un asset sur l'asset store pour la base de mon jeu. Cependant il n'y a aucune fonction dans cet asset qui permet d'afficher et d’enregistrer le meilleur score.

J'ai tenté de le rajouter moi même mais je résultat n'est pas vraiment convainquant :roll:

Le script de base qui gère le score :

Code : Tout sélectionner

using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class ScoreManager : MonoBehaviour
{
    public static int score;
    Text text;

    void Awake ()
    {
        this.text = GetComponent <Text> ();
        score = 0;
    }

    public void Update ()
    {
        this.text.text = "Score: " + score;
    }

}
et ça c'est les modifs que j'ai apporté :

Code : Tout sélectionner

using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class ScoreManager : MonoBehaviour
{
    public static int score;
    public Text Bscore;


    Text text;

    private void Start()
    {
        Bscore.text = "Meilleur Score " + PlayerPrefs.GetInt("bscore");
    }


    void Awake ()
    {
        this.text = GetComponent <Text> ();
        score = 0;
        


    }

    public void Update ()
    {
        this.text.text = "Score: " + score;
        if (score> PlayerPrefs.GetInt("bscore"))

        {
            PlayerPrefs.SetInt("bscore", score);

        }

    }

}



Si quelqu'un aurai une solution à mon problème ou un moyen de m'aiguiller j'en serai très reconnaissant.
Merci.

Re: Problème script enregistrer le meilleur score

Publié : 08 Déc 2018 18:30
par Max
Bonjour,
Lux a écrit :
08 Déc 2018 18:18
J'ai tenté de le rajouter moi même mais je résultat n'est pas vraiment convainquant :roll:
certes, mais cela veut dire quoi "pas vraiment convainquant" ? Perso, techniquement ça ne me parle pas vraiment.

En lisant vite fait ton code en diagonale, au démarrage tu récupères le Bscore à partir de la dernière "sauvegarde" dans le playerpref "bscore". Cette valeur (Bscore.text) ne changera plus durant l'execution de ton programme.
Quel est le soucis ?

Re: Problème script enregistrer le meilleur score

Publié : 08 Déc 2018 18:42
par Lux
Salut,

Le soucie c'est que le script ne fonctionne pas. Quand je suis en jeu le meilleur score qui est dans le canvas se met à 0 et il y reste même si je fais un meilleur score.

Je suis débutant sur unity, mais aussi en programmation, il y a encore pas mal de chose que je ne comprend pas.

Re: Problème script enregistrer le meilleur score

Publié : 08 Déc 2018 18:56
par Max
Première chose, qui n'est pas lié à la partie script, déjà est-ce que ta zone de UI.text BScore est suffisamment large pour afficher l'ensemble des informations (donc le texte Meilleur Score + la valeur) ?

PS: je vais déplacer ton sujet dans la section GUI.

Re: Problème script enregistrer le meilleur score

Publié : 08 Déc 2018 19:01
par Lux
Effectivement c'était bien la solution ...
Je me sens tellement bête :mrgreen:
Au moins je penserai à regarder de ce côté là la prochaine fois.
En tout cas merci beaucoup à toi ça fais plaisir. :amen: :amen:

Re: Problème script enregistrer le meilleur score

Publié : 08 Déc 2018 19:02
par Max
Pas de soucis.
Passe ton sujet en résolu dans ce cas.