Μπορείτε να κατεβάσετε τοπικά ή να επισκευτείτε την σελίδα:
https://users.iee.ihu.gr/~it174913/ADISE21_koltsina/php/pages/welcome-page.php
- Παναγιωτίδου Όλγα
- Παντελιάς-Γκιώνης Ορφέας-Ιωάννης
- Κόλλια Ελένη
- Mysql Server
- php
- phpMyAdmin
-
Κάντε clone το project σε κάποιον φάκελο
$ git clone https://github.com/iee-ihu-gr-course1941/ADISE21_koltsina.git
-
Κατεβάστε το phpMyAdmin και κάντε import το databaseSchema.sql.
Να μαζέψουν οι παίκτες όσα φύλλα μπορούν από κάτω.
Μοιράζονται 4 φύλλα σε κάθε παίχτη και ρίχνονται 4 φύλλα κάτω το ένα δίπλα στο άλλο ανοιχτά.
Ο κάθε παίχτης έχει δύο επιλογές όταν έρθει η σειρά του.
- Αν έχει ίδιο φύλλο κάτω με ένα από αυτά που κρατάει στα χέρια του τότε τα παίρνει, ή μπορεί να πάρει και συνδυασμό φύλλων από αυτά που είναι κάτω, δηλαδή, αν έχει κάτω 4 και 3 ρίχνει 7 και τα παίρνει.
- Αν δεν έχει τίποτα να πάρει τότε ρίχνει ένα φύλλο κάτω ανοιχτό δίπλα στα άλλα.
Όταν τελειώσουν τα 4 φύλλα τότε μοιράζουμε τα υπόλοιπα, 4 κάθε φορά, μέχρι να τελειώσει η τράπουλα. Οι φιγούρες δεν συνδυάζονται.
Στο τέλος μετράμε τους πόντους μας :
- 2 πόντους σε όποιον έχει πάνω από 26 φύλλα.
- 1 πόντο σε όποιον έχει τα περισσότερα σπαθιά.
- 1 πόντο σε όποιον έχει το 2 σπαθί.
- 1 πόντο σε όποιον έχει το 10 καρό.
Η εφαρμογή απαπτύχθηκε πλήρως για παρτίδα 2 παικτών.
- Το board αρχικοποιείται από έναν παίκτη.
- Για την εκκίνηση του παιχνιδιού χρειάζεται η ύπαρξη δεύτερου παίκτη, ο οποίος συνδέεται στο board που έχει ήδη δημιουργηθεί από τον πρώτο παίκτη.
- Ύπαρξη τελικού συνολικού score στο τέλος κάθε παρτίδας.
Οι αρμοδιότητες της ομάδας.
Παναγιωτίδου Όλγα: HTML, CSS, PHP, JS.
Παντελιάς-Γκιώνης Ορφέας-Ιωάννης: Database, PHP, JS.
Κόλλια Ελένη: HTML, PHP, JS.
POST['deck']
POST['in_hand']
POST['player_id']
INSERT INTO Deck (card_number, card_shape, in_hand, player_id) VALUES
Τα αρχεία addGame.php, addPlayer.php, addDeck.php συντελούν στην αρχικοποίηση του board. Γίνονται reset τα πάντα σε σχέση με το παιχνίδι. Tο Board επιστρέφεται αφού συνδεθεί και ο δεύτερος παίκτης.
Προσθέτει τα στοιχεία της τράπουλας στην βάση και τα επιστρέφει κατάλληλα.
json_decode($_POST['deck'])
$_POST['in_hand'];
Δημιουργεί παρτίδα.
$_POST['turn']
Το deck είναι ένας πίνακας, ο οποίος περιέχει στοιχεία για τα χαρτιά της τράπουλας. Πιο συγκεκριμένα:
Attribute | Description | Values |
---|---|---|
id |
Το id χαρακτηρίζει κάθε φύλο της τράπουλας. | 1..52 |
card_number |
Ο αριθμός που αναγράφεται επάνω στο φύλο. | 1..10, J,Q,K,A |
card_shape |
Η φιγούρα του φύλου της τράπουλας. | Hearts, Spades, Diamonds, Clubs |
in_hand |
Δείχνει αν κάποιο φύλο τράπουλας είναι στο χέρι κάποιου παίκτη. | 0,1 |
player_id |
Δείχνει σε ποιον παίκτη βρίσκεται το κάθε φύλο τράπουλας. | 1..5 |
Το κάθε παιχνίδι έχει τα παρακάτω στοιχεία:
Attribute | Description | Values |
---|---|---|
id |
Αναγνωρισή game session. | 1..5 |
turn |
Δείχνει ποιοσ παίζει σε κάθε game session. | 1,2 |
Ο κάθε παίκτης έχει τα παρακάτω στοιχεία:
Attribute | Description | Values |
---|---|---|
id |
Το id του κάθε παίκτη. | 1..infinity |
username |
Δείχνει το username των παικτων. | 'Α'...'Ζ' |
player_no |
Δείχνει τους παίκτες αριθμημένους. | 1,2 |
game_id |
Δείχνει το id κάθε παιχνιδιού. | 1..infinity |
Το παιχνίδι τελειώνει όταν το deck.length == 0 δηλαδή δεν μπορεί να πραγματοποιηθεί refill καρτών ή αν δεν μπορεί να παίξει κανένας παίκτης δηλαδή οι κάτρες στο χέρι είναι μηδέν.
endGame()