2. Το Scratch είναι μια οπτική γλώσσα
προγραμματισμού με την οποία μπορούμε
να κατασκευάσουμε δικά μας παιχνίδια,
animations*, προσομοιώσεις ή οτιδήποτε
άλλο προσφέρουν οι δυνατότητές του.
Βασικά συστατικά είναι τα αντικείμενα
(Sprites) τα οποία «ζουν» πάνω σε ένα
υπόβαθρο (Backdrop).
Για όποιο παιδί σκέφτεται να γίνει
προγραμματιστής υπολογιστών, το Scratch
είναι το καλύτερο πρώτο βήμα.
*κινούμενα σχέδια
3. Μπορώ να προγραμματίσω στο Scratch από το internet, με μια επίσκεψη στη
διεύθυνση http://scratch.mit.edu. Εκεί επιλέγω Δημιούργησε.
Εναλλακτικά, μπορώ να εγκαταστήσω το Scratch στον υπολογιστή μου κατεβάζοντας το
αρχείο από την διεύθυνση http://scratch.mit.edu/download.
Εκτελώντας το αρχείο και ακολουθώντας τις οδηγίες, ολοκληρώνεται η εγκατάσταση και
μπορώ να βρω το Scratch στην επιφάνεια εργασίας.
5. Τα νούμερα στα πλαίσια x και y είναι οι
συντεταγμένες του αντικειμένου πάνω στο
υπόβαθρο. Το x αντιπροσωπεύει την
διάσταση αριστερά-δεξιά, ενώ το y την
διάσταση πάνω-κάτω.
Μπορούμε να
διαγράψουμε ένα
αντικείμενο πατώντας στον
κάδο του εικονιδίου του.
ΠΡΟΣΟΧΗ! Αυτό θα
διαγράψει και όλο τον
κώδικα που έχουμε γράψει
για το αντικείμενο.
Το μέγεθος του αντικειμένου
σε ποσοστό %. Γράφοντας
50 το κάνουμε μισό σε
μέγεθος, γράφοντας 200 το
διπλασιάζουμε σε μέγεθος.
Η κατεύθυνση είναι η
γωνία προς την οποία
δείχνει το αντικείμενο. Την
μετράμε σε μοίρες. Εδώ
μπορούμε να
περιστρέψουμε το
αντικείμενο.
Κάθε αντικείμενο
πρέπει να έχει ένα
αντιπροσωπευτικό
όνομα που το
γράφουμε εδώ.
Όταν το x και το y είναι στο
0, τότε το αντικείμενο
βρίσκεται στο κέντρο του
υπόβαθρου.
Όταν αυξάνουμε το x, το
αντικείμενο πάει δεξιά,
όταν το μειώνουμε, πάει
αριστερά. Αντίστοιχα,
αυξομειώνουμε το y για να
μετακινήσουμε το
αντικείμενο πάνω και κάτω.
6. Κάθε αντικείμενο στο Scratch
μπορεί να έχει διαφορετικές
ενδυμασίες, δηλαδή παραλλαγές
στην εμφάνισή του.
Το Scratch μας δίνει πολλά εργαλεία
ζωγραφικής είτε για να φτιάξουμε
καινούργιες ενδυμασίες ή και
εντελώς δικά μας αντικείμενα.
Οι ενδυμασίες είναι πολύ χρήσιμες,
ειδικά στην δημιουργία κινουμένων
σχεδίων.
Μπορώ να φτιάξω μια καινούργια
ενδυμασία κάνοντας δεξί κλικ σε
μια υπάρχουσα και διαλέγοντας
διπλασιασμός. Μπορώ επίσης να
εισάγω μια έτοιμη ενδυμασία από
το μπλε πλήκτρο στο κάτω μέρος.
Είναι χρήσιμο να ονομάζω τις ενδυμασίες με
ένα ταιριαστό όνομα.
7. Για να προσθέσουμε ένα καινούργιο
αντικείμενο, έχουμε τις παραπάνω επιλογές,
από το πρώτο μπλε πλήκτρο κάτω δεξιά:
1. Μεταφόρτωση Αντικειμένου :
επιλέγουμε μια εικόνα από τον
υπολογιστή μας σαν νέο αντικείμενο.
2. Έκπληξη : Το Scratch διαλέγει ένα
τυχαίο αντικείμενο από την
βιβλιοθήκη του.
3. Ζωγραφική : Δημιουργούμε ένα δικό
μας αντικείμενο με την ζωγραφική του
Scratch.
4. Επιλέξτε ένα αντικείμενο :
Διαλέγουμε εμείς ένα αντικείμενο από
την βιβλιοθήκη.
1
2
3
4
Η ζωγραφική του Scratch έχει πολλά γνωστά
εργαλεία σχεδίασης ώστε με λίγη φαντασία να
φτιάξουμε τα δικά μας αντικείμενα που
ταιριάζουν στη δική μας δημιουργία!
8. Ας γνωρίσουμε το Scratch και
τις εντολές του δημιουργώντας
ένα απλό παιχνίδι με 2 παίκτες.
Μια γάτα και ένας σκύλος
διαγωνίζονται στο ποιος θα
φάει τα περισσότερα μήλα!
Θα δούμε με τη σειρά τα εξής :
• Πως ξεκινάει οποιαδήποτε
δραστηριότητα στο
παιχνίδι;
• Πως μετακινούνται τα
αντικείμενα;
• Πως φτιάχνω αντίγραφα
των αντικειμένων;
• Πως αποθηκεύω το σκορ ή
άλλες χρήσιμες
πληροφορίες;
• Πως παίρνω πληροφορίες
από τον παίκτη;
• Πως παίρνει αποφάσεις και
τερματίζεται το παιχνίδι
μας;
9. Κάθε εντολή στο Scratch μοιάζει με ένα τουβλάκι ή κομμάτι
από παζλ. Το αντικείμενό μας εκτελεί τις εντολές με την σειρά
που εμείς τις κολλάμε μεταξύ τους, την μια μετά την άλλη,
εκτός αν κάποια εντολή λέει κάτι διαφορετικό.
Πότε όμως ξεκινάει η εκτέλεση των εντολών; Πάντα με ένα
ΣΥΜΒΑΝ. Το Συμβάν είναι κάτι που άλλαξε στο παιχνίδι ή
κάτι που έκανε ο παίκτης και πρέπει το παιχνίδι να
αντιδράσει. Έτσι το τουβλάκι-παζλ ενός συμβάντος είναι
αυτό που ξεκινάει πρώτο όταν προγραμματίζουμε. Βλέπουμε
ότι έχει στρογγυλή μορφή και άρα δεν κολλάει σαν παζλ από
πάνω. Το βασικότερο συμβάν στο Scratch είναι το Όταν γίνει
κλικ σε πράσινη σημαία.
Κάθε ξεχωριστή ομάδα από εντολές λέγεται ΣΕΝΑΡΙΟ. Κάθε
αντικείμενο μπορεί να έχει ένα ή περισσότερα σενάρια, και
το κάθε σενάριο να ξεκινάει από διαφορετικό ή και από το
ίδιο συμβάν.
Ένα σενάριο στο Scratch.
10. Συνήθως τα αντικείμενά μας δεν κάνουν μια απλή λειτουργία και
τελείωσαν. Μπορεί να χρειαστεί να κάνουν κάτι πολλές φορές, κάτι να το
κάνουν σε όλη την διάρκεια του παιχνιδιού ή κάτι να κάνουν μόνο όταν
πρέπει.
Για αυτό έχουμε τις εντολές ΕΛΕΓΧΟΥ οι οποίες καθορίζουν πόσες φορές ή
πότε πρέπει να κάνει κάτι το αντικείμενό μας.
Δίπλα βλέπουμε τις πιο σημαντικές εντολές Ελέγχου. Με την σειρά που τις
βλέπουμε κάνουν τα εξής:
1. Το αντικείμενο περιμένει όσα δευτερόλεπτα γράψουμε πριν πάει στην
επόμενη εντολή.
2. Το αντικείμενο εκτελεί τις εντολές μέσα στο πλαίσιο επανάλαβε όσες
φορές του γράψουμε.
3. Το αντικείμενο εκτελεί τις εντολές μέσα στο πλαίσιο συνέχεια για όλο
το παιχνίδι! Παρατηρούμε ότι αυτή η εντολή δεν έχει παζλ από κάτω.
4. Οι εντολές μέσα στο πλαίσιο θα εκτελεστούν μόνο αν ισχύει μια
συνθήκη που τοποθετούμε στο πλαίσιο με σχήμα ρόμβου (θα
μιλήσουμε για συνθήκες παρακάτω).
5. Το ίδιο με το προηγούμενο αλλά έχουμε κι ένα πλαίσιο αλλιώς με
εντολές που θα εκτελεστούν αν ΔΕΝ ισχύει η συνθήκη.
6. Το αντικείμενο περιμένει μέχρι να ισχύσει η συνθήκη.
7. Το αντικείμενο εκτελεί τις εντολές συνεχόμενα μέχρι να ισχύσει η
συνθήκη.
11. Πριν ξεκινήσουμε να προγραμματίζουμε τα αντικείμενά μας, θα
χρειαστεί να καταλάβουμε και τα τουβλάκια στην κατηγορία
αισθητήρες.
Όπως βλέπετε δίπλα, τα περισσότερα δεν έχουν την μορφή παζλ
αλλά είναι σχήματος ρόμβου ή είναι στρόγγυλα. Το σχήμα έχει
σημασία.
Οι ρόμβοι όπως είδαμε και πριν, είναι συνθήκες, δηλαδή μας
λένε αν κάτι είναι αλήθεια (true) ή όχι (false). Μπορούμε λοιπόν
να χρησιμοποιήσουμε αυτές τις συνθήκες για να δούμε αν θα
εκτελέσουμε κάποιες εντολές ή να τις εκτελέσουμε όσο
χρειάζεται κτλ όπως είδαμε στις εντολές ελέγχου.
Οι αισθητήρες συγκεκριμένα μας λένε αν κάποιο αντικείμενο
αγγίζει κάποιο άλλο ή το δείκτη του ποντικιού, αν ο παίκτης
πάτησε το ποντίκι ή κάποιο πλήκτρο στο πληκτρολόγιο κτλ.
Τα τουβλάκια με στρόγγυλο σχήμα αποθηκεύουν μια χρήσιμη
πληροφορία και τα ονομάζουμε μεταβλητές. Μπορούμε να τα
κολλάμε σε όσες εντολές έχουν στρογγυλά κενά, αντί να
γράφουμε κάτι μέσα σε αυτά. Θα μιλήσουμε αργότερα για τις
μεταβλητές.
12. Με τις μπλε εντολές διαχειριζόμαστε το πώς κινείται το αντικείμενό
μας. Στα στρογγυλά πλαίσια μπορούμε να γράψουμε τους αριθμούς
που θέλουμε ή να κολλήσουμε μεταβλητές που έχουν αποθηκεύσει
τους αριθμούς.
Να θυμηθούμε ότι ο αριθμός x σημαίνει που είναι το αντικείμενό μου
από αριστερά προς τα δεξιά, ενώ το y από πάνω μέχρι κάτω. To x πάει
από το -240 (τέρμα αριστερά) μέχρι το 240 (τέρμα δεξιά), ενώ το y
από -180 (τέρμα κάτω) μέχρι 180 (τέρμα πάνω). Το 0 είναι ακριβώς
στο κέντρο.
Με τις εντολές στρίψε αλλάζουμε κατεύθυνση στο αντικείμενο ή
μπορούμε να του δώσουμε καινούργια κατεύθυνση με το δείξε προς
κατεύθυνση (90).
Να σημειώσουμε εδώ την διαφορά μεταξύ των
εντολών κινήσου (10) βήματα και άλλαξε x
κατά (10).
Με το x κινούμαστε αριστερά-δεξιά, όποια και
αν είναι η κατεύθυνση του αντικειμένου.
Αντίθετα, η εντολή κινήσου κινεί το αντικείμενο
προς την κατεύθυνση που έχει. Φυσικά, αν η
κατεύθυνση είναι 90, τότε το κινήσου είναι ίδιο
με το άλλαξε x.
13. Στην μωβ κατηγορία Όψεις θα βρούμε εντολές που αλλάζουν την εμφάνιση του
αντικειμένου μας.
Μπορούμε να κάνουμε το αντικείμενο μας να «μιλάει» με συννεφάκια όπως
στα κόμικς, να αλλάζουμε μεταξύ των ενδυμασιών του, να του αλλάζουμε το
μέγεθος και να εφαρμόζουμε διάφορα εφέ. Με τα εφέ μπορούμε να αλλάζουμε
χρώμα στο αντικείμενο, να το κάνουμε διαφανές, να το παραμορφώνουμε κ.α.
Τέλος μπορούμε να το εμφανίζουμε και να το εξαφανίζουμε όποτε θέλουμε.
Κάτι σημαντικό είναι το επίπεδο που βρίσκεται ένα αντικείμενο. Όταν έχουμε
πολλά αντικείμενα, μερικές φορές το ένα είναι πάνω στο άλλο. Με τα επίπεδα
μπορούμε να λέμε ποιο είναι από πάνω (προσκήνιο) και ποιο από κάτω
(υπόβαθρο).
Υπόβαθρο ονομάζουμε και την εικόνα
που βρίσκεται πίσω από όλα τα
αντικείμενα. Μπορούμε να έχουμε
πολλά υπόβαθρα και να τα αλλάζουμε
όπως θέλουμε.
Το Scratch έχει πολλά έτοιμα
υπόβαθρα, αλλά μπορούμε να
ζωγραφίσουμε ένα ή και να
ανεβάσουμε μια δική μας εικόνα από
τον υπολογιστή μας. Όλα αυτά από το
μπλε πλήκτρο κάτω δεξιά.
14. Τώρα που ξέρουμε τις περισσότερες εντολές του Scratch είμαστε
έτοιμοι να αρχίσουμε να δημιουργούμε το παιχνίδι μας. Για αρχή,
θέλουμε ο παίκτης να μπορεί να κινήσει την γάτα με το
πληκτρολόγιο (συγκεκριμένα με τα βελάκια).
Το διπλανό σενάριο κάνει ακριβώς αυτό. Πως; Ξεκινάμε φυσικά με
το συμβάν που αρχίζει το παιχνίδι (πράσινη σημαία). Επειδή η
κίνηση πρέπει να γίνεται σε ΌΛΟ το παιχνίδι, χρειαζόμαστε το για
πάντα. Μέσα στο για πάντα έχουμε 4 εάν που με τους κατάλληλους
αισθητήρες βλέπουμε ποιο βελάκι έχει πατηθεί και κάνουμε την
αντίστοιχη κίνηση! Επειδή το αντικείμενό μας έχει κατεύθυνση
μπροστά (90), μπορούμε να χρησιμοποιήσουμε την εντολή κινήσου
αντί για άλλαξε x. Βλέπουμε ότι όταν πάμε αριστερά ή κάτω
βάζουμε αρνητικό αριθμό.
Έχουμε φτιάξει και 2 ενδυμασίες ώστε η γάτα να κοιτάει προς την κατεύθυνση
που την κινούμε. Με τα κυκλωμένα πλήκτρα κάτω μπορούμε να αναστρέφουμε
ένα αντικείμενο αριστερά-δεξιά ή πάνω-κάτω από την ζωγραφική του Scratch.
15. Θέλουμε λοιπόν να βγαίνουν πολλά μήλα στο παιχνίδι μας.
Αφού εισάγουμε το αντικείμενο του μήλου στο παιχνίδι, βλέπουμε
ότι είναι το ίδιο μεγάλο με την γάτα, οπότε αλλάζουμε το μέγεθος
στο 60. Μπορούμε να φτιάξουμε πολλά αντίγραφα (κλώνους) με την
εντολή δημιούργησε κλώνο του εαυτού μου μέσα σε ένα
επανάλαβε. Κάθε αντίγραφο εκτελεί τα σενάρια που έχουμε φτιάξει
για το αρχικό αντικείμενο.
Ένα χρήσιμο συμβάν (για ευκολία το βρίσκουμε στην κατηγορία
Έλεγχος) είναι το όταν ξεκινήσω ως κλώνος, ώστε το αντίγραφο να
εκτελεί κάποιο σενάριο μόλις εμφανιστεί.
Στην δική μας περίπτωση στέλνουμε τα αντίγραφα μήλα σε τυχαίο
μέρος, διαφορετικά θα εμφανίζονταν όλα το ένα πάνω στο άλλο και
δεν θα τα βλέπαμε!
16. Πως θα δείξουμε ότι η γάτα
«τρώει» το μήλο; Θα κάνουμε το
μήλο να εξαφανίζεται όταν αγγίξει
την γάτα!
Για να το κάνουμε αυτό, πρέπει σε
όλο το παιχνίδι (για πάντα) να
ελέγχουμε εάν το μήλο αγγίζει τη
γάτα. Βλέπουμε πάνω το σενάριο.
Το αρχικό μήλο από το οποίο κάναμε τα αντίγραφα δεν μας
χρειάζεται αφού το σενάριο του μήλου που φτιάξαμε είναι για
τα αντίγραφα, οπότε του λέω εξαφανίσου.
Για να είμαστε σίγουροι ότι τα μήλα μας θα εμφανιστούν,
βάζουμε το εμφανίσου και όταν ξεκινούν οι κλώνοι.
17. Οι μεταβλητές είναι ο τρόπος που το Scratch (και κάθε γλώσσα
προγραμματισμού) αποθηκεύει πληροφορίες που
χρειαζόμαστε.
Μια μεταβλητή έχει ένα όνομα και μπορεί να αποθηκεύει
αριθμούς ή κείμενο. Την ονομάζουμε μεταβλητή γιατί μπορεί
να αλλάζουμε (μεταβάλλουμε) αυτό που αποθηκεύσαμε.
Αποθηκεύουμε κάτι στην μεταβλητή με την εντολή όρισε. Με
την εντολή άλλαξε μεταβάλλουμε την μεταβλητή κατά ένα
ποσό (θετικό ή αρνητικό).
Επίσης, μπορούμε να εμφανίζουμε ή να εξαφανίζουμε μια
μεταβλητή στην εφαρμογή όπως θέλουμε.
Το Scratch έχει έτοιμη μια μεταβλητή. Μπορούμε να την διαγράψουμε ή να
της αλλάξουμε όνομα κάνοντας δεξί κλικ πάνω της.
Για να φτιάξουμε μια δική μας μεταβλητή, πατάμε Δημιουργία
Μεταβλητής και ανοίγει το παράθυρο που βλέπουμε κάτω ώστε να της
δώσουμε ένα κατάλληλο όνομα.
Για την ώρα, έχουμε επιλεγμένο το Για όλα τα αντικείμενα. Θα μιλήσουμε
για τις υπόλοιπες επιλογές σε κάποιο άλλο μάθημα.
18. Μόλις φτιάξουμε την
μεταβλητή μας, αυτή
εμφανίζεται σαν
στρογγυλό τουβλάκι.
Μπορούμε να την
τοποθετήσουμε μέσα σε
οποιοδήποτε κενό
πλαίσιο στρογγυλού
σχήματος (όπως π.χ. στην
εντολή Κινήσου τόσα
βήματα ή επανάλαβε
τόσες φορές).
Τσεκάροντας το διπλανό
πλαίσιο, εμφανίζουμε την
μεταβλητή στο παιχνίδι
μας. Για το ΣΚΟΡ αυτό
είναι απαραίτητο.
Πρέπει να σκεφτόμαστε πάντα τι
θα πρέπει να υπάρχει στην
μεταβλητή όταν ξεκινάει το
παιχνίδι μας. Το ΣΚΟΡ πρέπει να
είναι 0, οπότε το ορίζουμε σε 0
μόλις πατηθεί η πράσινη σημαία
της έναρξης.
Τέλος, σκεφτόμαστε σε ποιο
σημείο πρέπει να αλλάζει η
μεταβλητή. Επειδή λοιπόν θα
παίρνουμε πόντους (5 για
παράδειγμα) όταν τρώμε ένα μήλο,
αλλάζουμε το ΣΚΟΡ ΓΑΤΑΣ μέσα στο
εάν που εξαφανίζεται το μήλο!
19. Ας βάλουμε έναν σκύλο
σαν 2ο παίκτη, αντίπαλο
της γάτας!
Εισάγουμε το αντικείμενο
από την κατηγορία Ζώα.
Αλλάζουμε το όνομά του
σε ΣΚΥΛΟΣ.
Φτιάχνουμε και τις
ενδυμασίες ΔΕΞΙΑ και
ΑΡΙΣΤΕΡΑ όπως το κάναμε
με την γάτα.
Για την κίνηση του σκύλου
χρειαζόμαστε το ίδιο σχεδόν
σενάριο με την γάτα. Για να μην
το ξαναφτιάχνουμε, μπορούμε να
το τραβήξουμε από την περιοχή
του προγραμματισμού και να το
μετακινήσουμε πάνω στο
εικονίδιο του σκύλου. Όταν το
εικονίδιο τρεμοπαίξει, αφήνουμε
το σενάριο και έτσι το έχουμε
αντιγράψει στο αντικείμενο του
σκύλου!
Η μόνη αλλαγή που κάνουμε
τώρα είναι τα πλήκτρα με τα
οποία ο σκύλος θα πηγαίνει
πάνω, κάτω, δεξιά και αριστερά.
Δεν μπορεί να είναι ίδια με την
γάτα! Αντί για βελάκια λοιπόν,
όπως συνηθίζεται, ο σκύλος θα
χρησιμοποιεί τα παρακάτω:
w = πάνω
s = κάτω
d = δεξιά
a = αριστερά
20. Ο δεύτερος παίκτης πρέπει να
έχει το δικό του σκορ.
Φτιάχνουμε λοιπόν μια νέα
μεταβλητή για να το
αποθηκεύουμε!
Πως θα παίρνει πόντους ο σκύλος; Πρέπει
το κάθε μήλο να ξέρει αν αγγίζει τον σκύλο
ή την γάτα. Θέλουμε λοιπόν ένα παρόμοιο
εάν για τον σκύλο. Για να μην το
ξαναφτιάχνουμε, μπορούμε να κάνουμε
δεξί κλικ πάνω του και να διαλέξουμε
διπλασιασμό. Προσοχή, το νέο εάν πρέπει
να το κολλήσουμε ακριβώς κάτω από το
άλλο.
(Αν κατά λάθος το βάλουμε μέσα στο άλλο
εάν για να δει το μήλο αν αγγίζει τον
σκύλο, πρέπει να το έχει αγγίξει πρώτα η
γάτα και άρα θα έχει ήδη εξαφανιστεί!!)
Θυμόμαστε στο νέο εάν να
αλλάξουμε το αγγίζει σε ΣΚΥΛΟΣ
και το άλλαξε στο ΣΚΟΡ ΣΚΥΛΟΥ.
Δεν ξεχνάμε να ορίσουμε και το ΣΚΟΡ του δεύτερου παίκτη σε 0.
21. Στην κατηγορία Τελεστές μπορούμε να κάνουμε μαθηματικές
πράξεις, να πάρουμε τυχαίους αριθμούς (κάτι πολύ χρήσιμο
στα παιχνίδια), αλλά και διάφορες λειτουργίες με λέξεις και
γράμματα. Όλα αυτά έχουν στρογγυλό σχήμα και
χρησιμοποιούνται όπως οι μεταβλητές.
Μπορούμε επίσης να κάνουμε συγκρίσεις (μεγαλύτερο,
μικρότερο, ίσον) οι οποίες είναι συνθήκες (σχήμα ρόμβου).
Τέλος μπορούμε να ενώσουμε συνθήκες μαζί με λογικές
πράξεις (και, ή, όχι). Θα μιλήσουμε για τις λογικές πράξεις σε
άλλο μάθημα αν και είναι εύκολο να καταλάβουμε πως
λειτουργούν.
Για να τερματιστεί το παιχνίδι που φτιάχνουμε πρέπει να
ξέρουμε αν οι παίκτες έφαγαν όλα τα μήλα. Πως θα ξέρει το
παιχνίδι μας ότι έγινε αυτό; Αφού ξέρουμε ότι ξεκινάμε με 20
μήλα και αποθηκεύουμε το σκορ του κάθε παίκτη, τότε στο
τέλος τα δυο σκορ μαζί πρέπει να κάνουν 20*! Μπορούμε
λοιπόν να φτιάξουμε μια συνθήκη σαν την παρακάτω με
τελεστές!
* Αυτό ισχύει αν παίρνουμε ένα πόντο για
κάθε μήλο, διαφορετικά πρέπει να
πολλαπλασιάσουμε το 20 με όσους
πόντους παίρνουμε.
22. Ξέρουμε πως θα λήξουμε το
παιχνίδι, αυτό που μένει είναι
να βγάλουμε νικητή! Αυτό είναι
εύκολο κάνοντας σύγκριση των
δυο ΣΚΟΡ!
Το πώς θα ανακοινώσουμε τον
νικητή είναι δική μας επιλογή.
Μπορούμε να φτιάξουμε
διάφορα υπόβαθρα και να
εμφανίζουμε το κατάλληλο
ανάλογα με τον νικητή.
Μπορούμε να ζωγραφίσουμε
ένα δικό μας αντικείμενο που θα
γράφει διαφορετικό νικητή σε
άλλη ενδυμασία και να το
εμφανίζουμε στο τέλος.
Φανταστείτε το και
δημιουργήστε το!
Εδώ θα δείξουμε την
ανακοίνωση του νικητή με
συννεφάκια ομιλίας (βλ. Όψεις).
Θέλουμε λοιπόν η γάτα ή ο σκύλος να μας πούνε ότι νίκησαν.
Εδώ θα διαπιστώσετε ένα πρόβλημα! Αποφασίζουμε τον νικητή ενώ
γράφουμε κώδικα στην περιοχή του μήλου, αλλά θέλουμε να κάνουν
κάτι άλλα αντικείμενα (γάτα ή σκύλος). Πως θα το καταφέρω αυτό;
Για να επικοινωνούν τα αντικείμενα μεταξύ τους έχουμε το συμβάν
του μηνύματος. Από τα Συμβάντα λοιπόν έχω το τουβλάκι του
μετάδωσε μήνυμα. Μπορώ να φτιάξω διάφορα μηνύματα, ανάλογα
σε ποια αντικείμενα θέλω να τα στείλω και τι θέλω να κάνουν. Πατάω
Νέο μήνυμα και δίνω ένα κατάλληλο όνομα όπως βλέπω πάνω.
Στο αντικείμενο που θέλω να πάρει το μήνυμα φτιάχνω ένα σενάριο
με το συμβάν Όταν λάβω μήνυμα!
23. Ας δούμε την τελική υλοποίηση. Βλέπουμε το εάν που αποφασίζει
ότι τελείωσε το παιχνίδι (τα ΣΚΟΡ μαζί είναι 100 επειδή παίρνουμε 5
πόντους για κάθε μήλο και έχουμε 20 μήλα). Μέσα σε αυτό έχουμε
τρία εάν που ελέγχουν ποιος έχει το μεγαλύτερο σκορ ή αν έχουν
ίδιο σκορ για ισοπαλία. Σε κάθε εάν στέλνουμε το αντίστοιχο
μήνυμα.
Στον κώδικα της γάτας και του σκύλου λοιπόν βάζουμε τα συμβάντα
για να πάρουμε τα μηνύματα και να ανακοινώσουμε τον νικητή!
Παρατηρούμε το τουβλάκι σταμάτησε όλα με το οποίο σταματάμε
όλα τα σενάρια και άρα δεν θα κινούνται πλέον τα αντικείμενα.
24. Το παιχνίδι μας έχει τελειώσει αλλά μπορούμε να το βελτιώνουμε όσο θέλουμε. Θα κάνουμε μια βελτίωση
που θα μας μάθει πως μπορούμε να αποθηκεύουμε πληροφορίες που μας δίνει ο παίκτης (π.χ. το όνομά
του) μέσα στο παιχνίδι.
Στους Αισθητήρες θα βρούμε την εντολή ρώτησε και περίμενε. Με αυτήν μπορούμε να ζητήσουμε κάτι από
τον παίκτη που μας το γράφει σε ένα πλαίσιο που εμφανίζεται. Το παιχνίδι σταματάει μέχρι να πατήσουμε
το μπλε τσεκ ή το πλήκτρο Enter στο πληκτρολόγιο.
Αυτό που γράφει ο παίκτης αποθηκεύεται στην έτοιμη μεταβλητή απάντηση. Το τουβλάκι απάντηση
μπορούμε να το χρησιμοποιήσουμε σαν κάθε άλλη μεταβλητή αλλά είναι καλύτερα να αποθηκεύσουμε την
απάντηση σε μια δική μας μεταβλητή για 2 λόγους :
1. Αν ζητήσουμε ξανά από τον παίκτη άλλη πληροφορία, αυτή θα μπει πάλι στο απάντηση και θα σβηστεί
η προηγούμενη πληροφορία.
2. Θέλουμε οι μεταβλητές μας να έχουν περιγραφικά ονόματα για να ξέρουμε τι κάνουν. Το απάντηση δεν
μας βοηθά σε αυτό.
25. Ας αφήσουμε τον παίκτη να
αποφασίσει πόσα μήλα θέλει στο
παιχνίδι! Αντί να έχουμε πάντα 20
μήλα, θα διαλέγει ο παίκτης.
Για αυτό τον λόγο φτιάχνουμε και μια
μεταβλητή ΜΗΛΑ που θα
αποθηκεύουμε την απάντηση του
παίκτη. Έτσι, όπως βλέπουμε δίπλα,
αντί για 20 στο επανάλαβε έχουμε την
μεταβλητή ΜΗΛΑ!
Χρειάζεται να αλλάξουμε κάτι άλλο; Αν
θυμάστε, για να τελειώσει το παιχνίδι
συγκρίναμε το άθροισμα των ΣΚΟΡ με
το 100 (5 πόντοι επί 20 μήλα). Τώρα
όμως δεν έχουμε 20 μήλα. Άρα πρέπει
να πολλαπλασιάσουμε το 5 με την
μεταβλητή ΜΗΛΑ.
Τον πολλαπλασιασμό θα τον βρούμε
όπως ξέρουμε στους Τελεστές!
26. Παίξτε αυτό το παιχνίδι στην διεύθυνση :
https://scratch.mit.edu/projects/470474083/