Skip to content

iee-ihu-gr-course1941/ADISE23_it185334

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ADISE23_it185334

Ονομάζομαι Πυργελίδης Γεώργιος με ΑΜ it185334 και ανέλαβα να εκπονήσω ατομική εργασία με θέμα το επιτραπέζιο παιχνίδι "Ναυμαχία". Το παιχνίδι παίζεται με δύο παίκτες .Σκοπός του συγκεκριμένου παιχνιδιού είναι ένας από τους δύο παίκτες να καταφέρει να βυθίσει όλα τα πλοία του αντιπάλου του. Το παιχνίδι ξεκινάει τοποθετώντας και οι δύο παίκτες τα καράβια τους στην θέση που επιθυμούν στο ταμπλό. Στη συνέχεια ξεκινάνε οι παίκτες και "πυροβολούν" με τη σειρά ο ένας μετά τον άλλο. Υπάρχουν δύο περιπτώσεις κατάληξης των πυροβολισμών , είτε αυτοί θα βρουν στόχο είτε θα πέσουν στην θάλασσα. Σε περίπτωση που κάποιος παίκτης βυθίσει όλα τα πλοία του αντιπάλου του , ο παίκτης αυτός κερδίζει και το παιχνίδι τελειώνει.

Στην εφαρμογή που έφτιαξα εγώ για τις απαιτήσεις της εργασίας υπάρχουν δύο board πενήντα θέσεων το κάθε ένα , ένα για κάθε παίκτη τα οποία εκτελώντας το αρχείο board php για κάθε παίκτη ξεχωριστά μας επιστρέφει το board του παίκτη που ζητήθηκε.. Επίσης υπάρχουν τέσσερα είδη πλοίων , το air_carrier , το f_ship , το pass_ship και το submarine. Ξεκινώντας το παιχνίδι εκτελούμε το αρχείο game.php και ο πρώτος παίκτης που μπαίνει κάνει ουσιαστικά Initialize το παιχνίδι , καθώς μέσα στον κώδικα του php αρχείου καλείται η initGame η οποία κάνει initialize την παρτίδα. Το αρχείο game.php ‘όμως δεν κάνει μόνο initialize το παιχνίδι αλλά περιέχει και την getGameStatus η οποία ελέγχει και επιστρέφει την σειρά παιξιάς , την κατάσταση του παιχνιδιού αλλά και τον νικητή αν υπάρχει. Στην συνέχεια ο δεύτερος παίκτης εκτελεί το αρχείο join.php το οποίο δίνει την δυνατότητα στον δεύτερο παίκτη να συνδεθεί και αυτός στο παιχνίδι που πριν λίγο δημιούργησε ο αντίπαλος του. Συνεχίζοντας υπάρχει το αρχείο ships.php το οποίο περιέχει δύο συναρτήσεις. Οι δύο συναρτήσεις αυτές είναι η getAvailableShips και η placeShip. Εκτελώντας την getAvailableShips ο κάθε παίκτης για τον εαυτό του μπορεί να δει ποια πλοία έχει διαθέσιμα για τοποθέτηση, ενώ εκτελώντας την placeShip ο παίκτης επιλέγει ποιο πλοίο και σε ποια θέση θα το τοποθετήσει. Στην συνέχεια εκτελώντας το αρχείο shot.php έχουμε στην διάθεση μας τρεις βασικές συναρτήσεις. Η πρώτη συνάρτηση είναι η getFoundedShips η οποία σε συνδιασμό με την getAllShipsNames μας επιστρέφει όλα τα πλόια τα οποία βυθίστηκαν. Επίσης έχουμε την συνάρτηση makeHit η οποία δίνει την δυνατότητα σε κάθε παίκτη όταν είναι η σειρά του να επιλέξει σε ποιο σημείο θα πυροβολήσει. Τέλος υπάρχει η συνάρτηση getGameTurn η οποία ελέγχει και επιστρέφει την σειρά παιξιάς και αν κάποιος παίκτης προσπαθήσει να παίξει ενώ δεν είναι η σειρά του. Αξίζει να αναφερθεί ότι στην εργασία υπάρχει και το αρχείο login.php το οποίο ζητά να του δώσουμε ένα username και μας επιστρέφει το id του παίκτη που συνδέεται με αυτό στην βάση δεδομένων.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages