Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 14 su 14

Discussione: salvare partita gioco

  1. #11
    Utente di HTML.it
    Registrato dal
    Oct 2014
    residenza
    Padova
    Messaggi
    361
    Quote Originariamente inviata da Andrea_95 Visualizza il messaggio
    Come devo fare per salvare la partita in modo corretto? Cioe senz usare GetContenetPane()
    Te l'ha spiegato Lele, tu dovresti salvare solo la parte relativa allo stato del gioco, non relativa all'interfaccia grafica.

    Il modo in cui lo fai dipende esclusivamente dall'architettura delle classi che hai ideato che, come suggerisce Lele, dovresti molto probabilmente ripensare.

    Ha senso infatti che in un linguaggio orientato agli oggetti i vari compiti della tua applicazione siano divisi tra varie classi, quindi la parte grafica e il gioco in sé dovrebbero essere modellati da classi diverse.

    Per fare un esempio immagina che il tuo gioco siano gli scacchi: nulla ti impedisce di gestire tutto il programma con una singola classe: la parte grafica, le caselle della scacchiera, i pezzi, le mosse del giocatore e qualsiasi altra cosa ti venga in mente.
    Ma tutto questo fa schifo, è molto incasinato,per niente mantenibile etc...!

    Ciò che ha senso è ad esempio definire una classe Scacchiera, una classe Casella, una classe Pezzo che potrebbe avere volendo delle classi figlie che modellano i diversi tipi di pezzo etc...

    In questo modo il frame dove fisicamente si sviluppa il gioco potrebbe avere una variabile di tipo Scacchiera di cui legge le posizioni, i pezzi mangiati, le mosse effettuate ... e le utilizza per creare/aggiornare l'interfaccia.

    Quindi quando tu salvi una partita che poi vuoi riprendere salvi solo la scacchiera, poi quando carichi una partita rileggerai lo stato della scacchiera da file e poi la userai per ricomporre graficamente lo stato della partita al momento del salvataggio.

  2. #12
    ho capito. Un ultima cosa ma quando vado a fare LOAD GAME e ricarico tutti gli ogetti che ho salvato, per visualizzarli devo salvare anche il frame o crearne uno nuovo?

  3. #13
    Se salvi tutte le variabili "in gioco" a cosa ti serve salvare il frame?
    Semplicemente non ti serve.
    Ne creerai uno nuovo al caricamento del savegame.
    ciao
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  4. #14
    Utente di HTML.it
    Registrato dal
    Oct 2014
    residenza
    Padova
    Messaggi
    361
    Dipende dal fatto che il frame conservi o no qualche informazione che desideri mantenere.

    Se riesci ad eseguire una completa separazione tra il gioco e la parte grafica in termini di classi non dovrebbe essere necessario salvare anche il frame.
    Ipotizzando però che oltre allo stato del gioco tu desideri salvare anche delle impostazioni o preferenze dell'utente (ad esempio la velocità di un gioco, il colore di un mazzo di carte e chi più ne ha più ne metta) dovresti riuscire a separare anche queste preferenze dal frame di gioco per non doverlo salvare.

    Una struttura molto usata nei giochi consiste nell'avere un menù principale dal quale è possibile decidere se iniziare una nuova partita, caricare una partita esistente, modificare delle impostazioni, etc...

    Se riesci a seguire questa struttura quando crei il frame di gioco puoi passare come parametri le istanze delle classi che rappresentano la logica dell'applicazione.

    Quindi se inizi una nuova partita, crei una nuova istanza delle classi di cui hai bisogno e le puoi passare al frame di gioco.
    Se invece continui una partita, leggi da file le istanze delle classi e poi le passi al frame di gioco.

    In questo caso quindi non ci sarebbe bisogno di salvare anche il frame, perché la sua formazione si baserebbe solo su parametri dati in ingresso al costruttore.

    Comunque tutto dipende da come progetti il tutto, questi sono consigli generali ma poi in pratica dipende tutto da cosa vuoi fare e come
    Ultima modifica di Ansharja; 10-12-2015 a 13:04

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.