Gioco con due giocatori
Vi chiedo un consiglio su come impostare una classe in C++ di un gioco in cui ci sono due giocatori che "agiscono" sulla stessa matrice che rappresenta il gioco.Ciascun giocatore sceglie una cella contrassegnandola con un carattere char(due diversi caratteri,uno per ogni giocatore).Ovviamente il tutto rispettando i turni.
Come è possibile memorizzare queste informazioni in una classe?Cioè,ad esempio,quando dovrò chiamare il metodo che riempie la cella come faccio a sapere da quale giocatore è stata richiesta quella cella? E nel main,il metodo verrà chiamato indipendentemente dal giocatore?
Come è possibile memorizzare queste informazioni in una classe?Cioè,ad esempio,quando dovrò chiamare il metodo che riempie la cella come faccio a sapere da quale giocatore è stata richiesta quella cella? E nel main,il metodo verrà chiamato indipendentemente dal giocatore?
Risposte
Perché vuoi usare delle classi?
Perchè me lo richiede l'esercizio:"creare la classe per incapsulare dati e regole del gioco"
Come al solito gli esercizi sulla programmazione ad oggetti sono decisamente inutili e del tutto incapaci di mostrarne gli eventuali vantaggi. Questo esercizio, per il modo stesso in cui la struttura del gioco è stata descritta, mal si adatta alla programmazione ad oggetti.
Quali sono i dati che la tua classe deve incapsulare? Quali sono le operazioni che questa classe deve svolgere su tali dati? Quante e quali classi devi implementare? Solo quella dei giocatori? Devi incapsulare anche il campo da gioco?
Quali sono i dati che la tua classe deve incapsulare? Quali sono le operazioni che questa classe deve svolgere su tali dati? Quante e quali classi devi implementare? Solo quella dei giocatori? Devi incapsulare anche il campo da gioco?
La classe del progetto è solo una,e non deve rappresentare un singolo giocatore,o il campo da gioco,ma una partita al gioco Othello(o Reversi),quindi al suo interno devono essere incapsulate le informazioni sia del campo che dei due giocatori,memorizzando ad ogni mossa quale dei due sta giocando.
Praticamente al suo interno dovrà contenere un metodo di inserimento e capovolgimento delle celle nel caso l'operazione è lecita,e come membri avrà il numero di righe e colonne della matrice,e la matrice stessa.
Non vi chiedo di entrare in dettaglio,ma solo approssimativamente come trattare il metodo che inserisce e capovolge le celle sapendo he i giocatori sono due,cioè in quale parte della classe devo tenere memoria del giocatore attuale?
Avevo pensato di creare i due membri char player1='x', e char player2='o',ma non so come proseguire.
Praticamente al suo interno dovrà contenere un metodo di inserimento e capovolgimento delle celle nel caso l'operazione è lecita,e come membri avrà il numero di righe e colonne della matrice,e la matrice stessa.
Non vi chiedo di entrare in dettaglio,ma solo approssimativamente come trattare il metodo che inserisce e capovolge le celle sapendo he i giocatori sono due,cioè in quale parte della classe devo tenere memoria del giocatore attuale?
Avevo pensato di creare i due membri char player1='x', e char player2='o',ma non so come proseguire.