«

»

ago 12

Print this Articolo

LUA – Salvataggi (savegame)

Una cosa molto comoda che è possibile implementare in un gioco, è la funzione di salvataggio dei progressi, perché se si vuole riprendere in mano il gioco è comodo ritrovarsi allo stesso punto in cui lo si aveva lasciato, per evitare di dover rifare tutto da capo, il ché sarebbe uno spreco di tempo.

Per poter implementare questa funzione in un gioco o in una qualsiasi applicazione, vi sono due strade che potete seguire:

  • Metodo 1: Utilizzare file TXT come contenitori di dati (argomento gia affrontato qui)
  • Metodo 2: Utilizzare la funzione già presente nel linguaggio LUA
METODO 1 

Se decidete di utilizzare dei semplici file TXT, vi basta creare un file per ogni dato che volete salvare, in modo da evitare sovrascrittura e perdita di informazioni.

Ecco un esempio di salvataggio su file TXT:

level = 5
 file=io.open("level.txt","w") -- la "w" indica l'apertura del file in modalità scrittura
 file:write(level)
 file:close()

In questo modo il livello raggiunto viene salvato sul file txt indicato.

Invece se si vogliono riprendere le informazione salvate e caricarle nel gioco, si fa così:

file=io.open("liv.txt", "r") -- la "r" indica l'apertura del file in modalità lettura
 livel=file:read("*n")
 file:close()

METODO 2

Il secondo metodo, a parer mio molto più professionale, come detto sopra prevede l’utilizzo della funzione LUA già predisposta per creare salvataggi in tutto e per tutto identici a quelli che vengono creati dai normali giochi commerciali.

La funzione da utilizzare è la seguente:

System.startGameSave("Nome salvataggio","Nome gioco","Info",dati da salvare,"Nome identificativo del salvataggio")

Io vi consiglio di salvare un array di dati in modo da creare un solo salvataggio per tutti i dati.

Al contrario per recuperare i dati precedentemente salvati basta usare la seguente funzione:

data = System.startGameLoad("Nome identificativo del salvataggio")

Esempio completo:

Spoiler Inside SelectShow

A questo punto sta a voi decidere quale dei due utilizzare, in base alle vostre esigenze e al tipo di situazione in cui dovete salvare dei dati.

_____________________________________________________________________________________________ Ti è piaciuto questo articolo ? Condividilo !

Permanent link to this article: http://taketheball.altervista.org/?p=428

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

Puoi usare i seguenti tag HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>