Exemplo n.º 1
0
    /// <summary>
    /// Función que guarda las estadísticas en estadisticas.dat si alguno de los valores es mejor que los actuales.
    /// </summary>
    /// <param name="estadisticas">estadísticas que queremos guardar</param>
    public static void GuardarEstadisticas(Estadisticas estadisticas)
    {
        BinaryFormatter formatter = new BinaryFormatter();
        string          patch     = Application.persistentDataPath + "/estadisticas.dat";

        if (!File.Exists(patch))
        {
            FileStream           stream   = new FileStream(patch, FileMode.Create);
            RegistroEstadisticas registro = new RegistroEstadisticas(estadisticas.enemigosDerrotados, estadisticas.ataquesRealizados, Time.time - estadisticas.inicioDePartida);
            formatter.Serialize(stream, registro);
            stream.Close();
        }
        else
        {
            RegistroEstadisticas estadisticasActuales = cargarEstadiscas();
            int enemigosDerrotados;
            if (estadisticasActuales.EnemigosDerrotados >= estadisticas.enemigosDerrotados)
            {
                enemigosDerrotados = estadisticasActuales.EnemigosDerrotados;
            }
            else
            {
                enemigosDerrotados = estadisticas.enemigosDerrotados;
            }
            int ataquesRealizados;
            if (estadisticasActuales.AtaquesRealizados >= estadisticas.ataquesRealizados)
            {
                ataquesRealizados = estadisticasActuales.AtaquesRealizados;
            }
            else
            {
                ataquesRealizados = estadisticas.ataquesRealizados;
            }
            float maximaDuracionDePartida;
            float tiempo = Time.time;
            if (estadisticasActuales.MaximaDuracionDePartida >= tiempo - estadisticas.inicioDePartida)
            {
                maximaDuracionDePartida = estadisticasActuales.MaximaDuracionDePartida;
            }
            else
            {
                maximaDuracionDePartida = tiempo - estadisticas.inicioDePartida;
            }
            FileStream           stream   = new FileStream(patch, FileMode.Create);
            RegistroEstadisticas registro = new RegistroEstadisticas(enemigosDerrotados, ataquesRealizados, maximaDuracionDePartida);
            formatter.Serialize(stream, registro);
            stream.Close();
        }
    }
Exemplo n.º 2
0
 /// <summary>
 /// Función que muestra el menú de estadísticas y oculta los demas.
 /// </summary>
 public void actualizarEstadisticas()
 {
     estadisticas = GuardarCargarConf.cargarEstadiscas();
     if (estadisticas == null)
     {
         estadisticas = new RegistroEstadisticas();
     }
     estadisticasAtaque = GameObject.Find("nAtaques");
     estadisticasAtaque.GetComponent <Text>().text = "" + estadisticas.AtaquesRealizados;
     estadisticasEnemigo = GameObject.Find("nEnemigos");
     estadisticasEnemigo.GetComponent <Text>().text = "" + estadisticas.EnemigosDerrotados;
     estadisticasTiempo = GameObject.Find("nTiempo");
     estadisticasTiempo.GetComponent <Text>().text = estadisticas.tiempoFormateado();
     //Debug.Log("Ataques" + estadisticas.AtaquesRealizados);
     //Debug.Log("Enemigos" + estadisticas.EnemigosDerrotados);
     //Debug.Log("Tiempo: " + estadisticas.tiempoFormateado());
 }
Exemplo n.º 3
0
    /// <summary>
    /// Función que carga las estadísticas guardadas en estadisticas.dat
    /// </summary>
    /// <returns>Si existe nos devolvera un objeto de tipo RegistroEstadisticas con las estadísticas actuales si no existe devuelve null</returns>
    public static RegistroEstadisticas cargarEstadiscas()
    {
        string patch = Application.persistentDataPath + "/estadisticas.dat";

        if (File.Exists(patch))
        {
            BinaryFormatter      formatter = new BinaryFormatter();
            FileStream           stream    = new FileStream(patch, FileMode.Open);
            RegistroEstadisticas registro  = formatter.Deserialize(stream) as RegistroEstadisticas;
            stream.Close();
            return(registro);
        }
        else
        {
            Debug.Log("No existe el archivo");
            return(null);
        }
    }