Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





¿Dónde anda Microsoft.Xna.Framework.Storage?

Iniciado por Hans, 30 de Septiembre de 2010, 05:42:10 PM

« anterior - próximo »

Hans

Lo digo porque según la documentación está dentro de XNA Game Studio 4.0 pero no encuentro la referencia y por supuesto no puedo usarlo. ¿Alguna idea?

Vicente

Yo la tengo en:

C:\Program Files (x86)\Microsoft XNA\XNA Game Studio\v4.0\References\Windows\x86\Microsoft.Xna.Framework.Storage.dll (la de Xbox pues en Xbox).

Al crear un proyecto está añadida por defecto...

Hans

#2
Vale, no me salía porque no existe nada parecido en Windows Phone y estaba con ese target seleccionado. ¿Entonces en Phone cómo se guarda partida? Porque imagino que habrá que hacer lo mismo que en el otro y abrir un fichero, ¿pero de dónde?


edit.- Buscando por ahí hablan de System.IO.IsolatedStorage IsolatedStorageFile, no sé si tendrá mucho que ver.

Vicente

Sip, tienes que usar eso, es la misma API que también usan en Silverlight.

Hans

#4
A ver si alguien sabe qué estoy haciendo mal. Básicamente estoy cargando una variable, incrementando su valor en 10 y guardando, de tal manera que en teoría cada nueva carga el valor será +10. LoadSaves para cargar el valor y SaveSaves para guardar.

private void LoadSaves()
       {
           IsolatedStorageFile storageFile = GetIsolatedStore();
           IsolatedStorageFileStream storageFileStream = new IsolatedStorageFileStream(dBase.saveFileName, System.IO.FileMode.OpenOrCreate, storageFile);

           if (storageFileStream.Length > 0)
           {
               BinaryReader reader = new BinaryReader(storageFileStream);

               dBase.valor = reader.ReadInt32();
           }
           storageFileStream.Close();

           dBase.valor += 10;
       }



private void SaveSaves()
       {
           IsolatedStorageFile storageFile = GetIsolatedStore();
           IsolatedStorageFileStream storageFileStream = new IsolatedStorageFileStream(dBase.saveFileName, System.IO.FileMode.Open, storageFile);

           if (storageFileStream.Length > 0)
           {
               BinaryWriter writer = new BinaryWriter(storageFileStream);

               writer.Write(dBase.valor);
           }
           storageFileStream.Close();
       }




Petar no peta pero el valor es 10 siempre.



edit.- Vale, sobraba "/if (storageFileStream.Length > 0)" en saveSaves. ¿Si no he guardado nada nunca cómo va a tener tamaño? xDDD






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.