bazinga13 Δημοσ. 13 Ιουνίου 2015 Δημοσ. 13 Ιουνίου 2015 Καλημερα σε ολους τους φιλους,λοιπον εχουμε τον παρακατω κωδικα για το γνωστο παιχνιδι Tic Tac Toe σε γλωσσα προγραμματιμου Java public class TicTacToe { private final static char FILL_BOARD = '*'; private char[][] board; private char currentPlayerMark; public TicTacToe() { board = new char[3][3]; currentPlayerMark = 'X'; initializeBoard(); } public void initializeBoard() { for(int row=0; row < board.length; row++) { for(int cols=0; cols < board.length; cols++) { board[row][cols] = FILL_BOARD; } } } public void printBoard() { System.out.println("\n"); System.out.println("-------------"); for (int i = 0; i < 3; i++) { System.out.print("| "); for (int j = 0; j < 3; j++) { System.out.print(board[i][j] + " | "); } System.out.println(); System.out.println("-------------"); } System.out.println("\n"); } public boolean isBoardFull() { boolean isFull = true; for(int row=0; row < board.length; row++) { for(int cols=0; cols < board.length; cols++) { if(board[row][cols] == FILL_BOARD) { isFull = false; } } } return isFull; } public boolean checkForWin() { return (checkRowsForWin() || checkColumnsForWin() || checkDiagonalsForWin()); } private boolean checkRowsForWin() { for(int row=0; row < board.length; row++) { if(chekRowCols(board[0][row],board[1][row],board[2][row]) == true) { return true; } } return false; } private boolean checkColumnsForWin() { for(int cols=0; cols < board.length; cols++) { if(chekRowCols(board[cols][0],board[cols][1],board[cols][2]) == true) { return true; } } return false; } private boolean checkDiagonalsForWin() { return (chekRowCols(board[0][0],board[1][1],board[2][2]) == true || chekRowCols(board[0][2],board[1][1],board[2][0]) == true); } private boolean chekRowCols(char c1,char c2,char c3) { return ((c1 != FILL_BOARD) && (c1==c2) && (c2==c3)); } } Η ερωτησεις μου ειναι οι εξης 1)Πως μπορω να κανω τους παικτες να παιζουν ο καθενας ενναλαξ? 2)Οταν τελειωνει το παιχνιδι θελω να μηδενιζω και να εχω την επιλογη να ξαναρχισει το παιχνιδι η οχι Τα εχω κανει αλλα δεν με ικανοποιησαν και θα θελα καμια ιδεα.Ευχαριστω και καλημερα σε ολους
tr3quart1sta Δημοσ. 13 Ιουνίου 2015 Δημοσ. 13 Ιουνίου 2015 Πιστευω θα ηταν πιο ευκολο εαν χωριζες το προγραμμα σε διαφορους ρολους (δες responsibility driven design) Θα μπορουσες π.χ. να φτιαξεις τρεις κλασεις: Board: Θα αποθηκευει την "κατασταση" του παιχνιδιου, δλδ ποσα "Χ" και ποσα "Ο" εχουνε σημειωθει και σε ποιες θεσεις κλπ.. Game: Θα ελεγχει την ροη του παιχνιδιου, δλδ ποτε εχουμε νεο παιχνιδι, ποτε νικησε καποιος, ποιος εχει σειρα να παιξει, κλπ.. Player: Οι παιχτες που θα παιζουνε τις κινησεις Κοιτα πως θα μπορουσες να τα συνδυασεις ολα αυτα ωστε να λυσεις τα προβληματα σου στο 1) και 2)... 1
bazinga13 Δημοσ. 14 Ιουνίου 2015 Μέλος Δημοσ. 14 Ιουνίου 2015 Σ ευχαριστω πολυ φιλε μου για τις συμβουλες
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα