Problema salvataggio gioco e sblocco livello

Salve ragazzi sono giorni che sto impazzendo ma non riesco ad effettuare il salvataggio del gioco con corona.

La mia intenzione è :

  1. una volta completato il primo livello automaticamente mi appare un’immagine nel “seleziona livello” che mi indica che il primo livello è stato superato e automaticamente mi sblocca il secondo livello.

  2. Salvare queste impostazioni.

Quindi, una volta usciti dall’applicazione, rientrando, mi ritrovo con il livello superato e pronto per giocare il successivo.

Se magari qualcuno riesce a darmi qualche dritta o a farmi vedere un esempio, ne sarei gratissimo.

Per ultimo, se mi consigliate un buon libro per imparare bene questo programma.

Grazie mille.

Ciao,

per tenere traccia dello stato del gioco anche dopo essere usciti ti consiglio questa library:

http://developer.coronalabs.com/code/save-data-files-tablesnumbersstringsboolean

Fa tutto quello che chiedi nel post ed è  facile da implementare ma soprattutto funziona!!

Per i libri ti consiglio quelli di Brian Burton: http://www.burtonsmediagroup.com/books/beginning-mobile-app-development-with-corona/

che a breve dovrebbero essere disponibili anche in italiano.

Un altra fonte di documentazione puoi trovarla qui:

http://www.learningcorona.com

Infine se fossi interessato ai corsi puoi guardare il programma del corso base base Corona SDK: http://www.arsetmedia.it/eventregis/corso-base-corona-sdk

Stiamo organizzando una “summer class” Corona SDK italiana che dovrebbe tenersi a fine luglio/agosto a Torino.

Spero che ti torni utile il tutto.

Ciao

Ale

Grazie Ale, molto gentile. Soprattutto per il consiglio del libro, magari me lo studio un pò che sto proprio alle prime armi.

Ho visto il link che mi hai mandato per fare il salvataggio e il caricamento del gioco, solo che c’ho capito poco. Ti chiedo troppo se mi fai qualche esempio?

Se è troppo disturbo, non fa niente, grazie lo stesso. :slight_smile: :slight_smile:

Ciao,

dopo aver incluso la libreria puoi usarla in questo modo:

[lua]

local preference = require “preference”
 
–Store numbers
preference.save{a=1}
value = preference.getValue(“a”)
 
–Store strings
preference.save{b=“1”}
value = preference.getValue(“b”)
 
–Store Boolean
preference.save{c=true}
value = preference.getValue(“c”)
 
–Store Tables
preference.save{d = {1,“2”,true}}
value = preference.getValue(“d”)
 

[/lua]

In pratica quando raggiungi un risultato o un nuovo livello salvi i dati per il nuovo livello:

[lua] preference.save{a=1} [/lua]

quando il gioco viene rilanciato,  nella scena che ti serve o nel main recuperi i valori del livello salvato:

[lua] value = preference.getValue(“a”) [/lua]

spero ti torni utile.

Ale

Ciao Ale e grazie ancora per l’aiuto che mi stai dando.

Allora in breve nel primo livello ho creato nella funzione “Win” questo

preference.save{a=1}

Nel livello “seleziona livello”  ho creato una stella mettendo star.isVisible = false

e subito sotto

value = preference.getValue(“a”)

e la stella la faccio diventare visibile mettendo star.isVisible = true.

ma appare subito, prima di finire il primo livello…

So che sto sbagliando, ma non capisco dove :slight_smile: :slight_smile:

Ciao,

se ho capito bene, quando raggiungi il livello salvi il livello raggiunto, es:

[lua] preference.save{level=1} [/lua]

poi quando  recuperi il livello

[lua] local level = preference.getValue(level)

if level == 1 then

   star.isVisible = true

else

   star.isVisible = false

end

[/lua]

così dovrebbe funzionare… altrimenti prova a postare il codice che stai usando.

Ale

Ha funzionato Ale!

GRAAAZIEEEEEE!

Adesso ci smanetto, se ho problemi, mi rifaccio risentire se per te non è un problema.

Grazie ancora.

no problem!

Se posso aiutare quando trovo il tempo :) 

Ciao

Ciao,

per tenere traccia dello stato del gioco anche dopo essere usciti ti consiglio questa library:

http://developer.coronalabs.com/code/save-data-files-tablesnumbersstringsboolean

Fa tutto quello che chiedi nel post ed è  facile da implementare ma soprattutto funziona!!

Per i libri ti consiglio quelli di Brian Burton: http://www.burtonsmediagroup.com/books/beginning-mobile-app-development-with-corona/

che a breve dovrebbero essere disponibili anche in italiano.

Un altra fonte di documentazione puoi trovarla qui:

http://www.learningcorona.com

Infine se fossi interessato ai corsi puoi guardare il programma del corso base base Corona SDK: http://www.arsetmedia.it/eventregis/corso-base-corona-sdk

Stiamo organizzando una “summer class” Corona SDK italiana che dovrebbe tenersi a fine luglio/agosto a Torino.

Spero che ti torni utile il tutto.

Ciao

Ale

Grazie Ale, molto gentile. Soprattutto per il consiglio del libro, magari me lo studio un pò che sto proprio alle prime armi.

Ho visto il link che mi hai mandato per fare il salvataggio e il caricamento del gioco, solo che c’ho capito poco. Ti chiedo troppo se mi fai qualche esempio?

Se è troppo disturbo, non fa niente, grazie lo stesso. :slight_smile: :slight_smile:

Ciao,

dopo aver incluso la libreria puoi usarla in questo modo:

[lua]

local preference = require “preference”
 
–Store numbers
preference.save{a=1}
value = preference.getValue(“a”)
 
–Store strings
preference.save{b=“1”}
value = preference.getValue(“b”)
 
–Store Boolean
preference.save{c=true}
value = preference.getValue(“c”)
 
–Store Tables
preference.save{d = {1,“2”,true}}
value = preference.getValue(“d”)
 

[/lua]

In pratica quando raggiungi un risultato o un nuovo livello salvi i dati per il nuovo livello:

[lua] preference.save{a=1} [/lua]

quando il gioco viene rilanciato,  nella scena che ti serve o nel main recuperi i valori del livello salvato:

[lua] value = preference.getValue(“a”) [/lua]

spero ti torni utile.

Ale

Ciao Ale e grazie ancora per l’aiuto che mi stai dando.

Allora in breve nel primo livello ho creato nella funzione “Win” questo

preference.save{a=1}

Nel livello “seleziona livello”  ho creato una stella mettendo star.isVisible = false

e subito sotto

value = preference.getValue(“a”)

e la stella la faccio diventare visibile mettendo star.isVisible = true.

ma appare subito, prima di finire il primo livello…

So che sto sbagliando, ma non capisco dove :slight_smile: :slight_smile:

Ciao,

se ho capito bene, quando raggiungi il livello salvi il livello raggiunto, es:

[lua] preference.save{level=1} [/lua]

poi quando  recuperi il livello

[lua] local level = preference.getValue(level)

if level == 1 then

   star.isVisible = true

else

   star.isVisible = false

end

[/lua]

così dovrebbe funzionare… altrimenti prova a postare il codice che stai usando.

Ale

Ha funzionato Ale!

GRAAAZIEEEEEE!

Adesso ci smanetto, se ho problemi, mi rifaccio risentire se per te non è un problema.

Grazie ancora.

no problem!

Se posso aiutare quando trovo il tempo :) 

Ciao