Ca fait un petit bout de temps que je connait Unity et que je créé deux trois protos par çi par là, mais il y a peu je suis sortit de ma zone de confort et j'ai commencé à essayer de créer des sauvegardes !
J'ai suivi un tutoriel pour le script de SaveLoad, mais voilà : Je n'ai pas l'impression de faire bien les choses pour mon GameData, et d'ailleurs (je le dit honteusement ) je suis bloqué sur un classique "NullReferenceExeption" quand je veut récupérer une donnée de mon GameData avant même de l'avoir sauvegardé ! Si je ne me trompe pas, ce message d'erreur signifie que la données que j'essaie de récupérer est nulle... Mais je n'arrive pas à comprendre pourquoi.
Voilà mon script, je peut aussi vous donner le SaveLoad mais je doute qu'il serve, et je précise que j'ai effectué ces scripts dans une scène presque vide pour éviter les parasites.
Code : Tout sélectionner
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class TestTextSave : MonoBehaviour {
void Update () {
if (Game.current.gameName != null) // Le message d'erreur est ici sur le Game.current.gameName
GetComponent<Text> ().text = Game.current.gameName;
else
GetComponent<Text> ().text = "Nouvelle Partie";
}
public void SaveTest() {
Game.current.gameName = "Partie créée";
SaveLoad.Save ();
}
public void ResetTest() {
Game.current.gameName = "Nouvelle Partie";
SaveLoad.Save ();
}
}
Code : Tout sélectionner
using System.Collections;
using UnityEngine;
[System.Serializable]
public class Game {
public static Game current;
public int niveaux = 1;
public string gameName = "Nouvelle Partie";
public Game () {
}
}