Κεφάλαιο 17

=17. Δημιουργώντας ακόμη ένα παιχνίδι (Υ)=

===**Προτεινόμενοι σύνδεσμοι :**===

1. [|http://users.att.sch.gr/vapapado/scratch/E2 sxediazw me to scratch/d1_index.htm] (Σε αυτόν το σύνδεσμο υπάρχει ενδεικτικό σενάριο για το πώς κατασκευάζω ένα παιχνίδι με δραστηριότητες και φύλλο εργασίας)

2.[] Σε αυτόν το σύνδεσμο θα βρείτε εκπαιδευτικά βίντεο που αφορούν στην εισαγωγή στο περιβάλλον του Scratch, τις εντολές κίνησης και κατεύθυνσης που βοηθούν τους χρήστες να αποσαφηνίσουν τη λειτουργία εντολών με δικά τους παραδείγματα. Περιλαμβάνεται παράδειγμα δημιουργίας ιπτάμενου χαρακτήρα.

3.[] Περιλαμβάνει μερικά από τα νεότερα έργα-projects που αφορούν στο Scratch.

4.[] Σε αυτόν το σύνδεσμο περιέχεται ένα παράδειγμα παιχνιδιού με κύριο χαρακτήρα ένα καρχαρία που περιπλανέται στην οθόνη τρώγοντας ψάρια αποφεύγοντας παράλληλα εκείνα που θα τον κάνουν να χάσει στο παιχνίδι.

5.[|http://users.soe.ucsc.edu/~karplus/scratch_programs/] {Σε αυτό το site υπάρχουν πολλά ενδιαφέροντα παιχνίδια όπως το bouncing ball, το τέννις κ.α.}

6..[] {Περιγραφή step by step του Racing game στο Scratch. Αναφέρει ου μπορούμε να βρούμε αυτό το παιχνίδι και στη συνέχεια περιγράφει κάθε σημείο του κώδικα και τη λειτουργικότητα του}

7.[] Eνδιαφέρον φύλλο εργασίας με ερωτήσεις για το πώς κατασκευάζω ένα παιχνίδι

8.[] Ενα πολύ ενδιαφέρον site το οποίο περιέχει αποκλειστικά παιχνίδια στο Scratch (Aναλυτικότερη περιγραφή για τα παιχνίδια που περιέχει στη σελίδα των συνδέσμων).

9.[|http://pages.cs.wisc.edu/~dusseau/catapult.html] Ένας σύνδεσμος με ενδιφέρουσες δραστηριότητες στο Scratch. Μερικα από αυτά είναι το name glide (τα γράμματα του ονόματος μας στριφογυρίζουν στη σκηνή, αφήνοντας πίσω τους μια γραμμή)- (περιέχει κυρίως ενολές αλλαγής της σκηνής, κίνησης και τυχαιότητας), το catch those letters (προσπαθούμε να πιάσουμε τα γράμματα του ονόματος μας που κινούνται στη σκηνή)-(οι παραπάνω εντολές εμπλουτίζονται με εντολές αισθητήρων). Στη συνέχεια αναλύει σε τρεις ενότητες το παιχνίδι cathimg bananas (ένα αντικείμενο προσπαθεί να πιάσει άλλα αντικείμενα που κινούνται στη σκηνή)-(είναι ένα ολοκληρωμένο παιχνίδι, περιέχει σχεδόν όλες τις εντολές του Scratch και χρησιμοποιεί και μεταβλητές (μετρητές)), στην επόμενη ενότητα προσθέτονται επιπλέον εμπόδια και στη τελευταία περιγράφεται πως τεματίζουμε το παιχνίδι (χρησιμοποίηση και χρονομέτρου).

10.[] Ένα βίντεο μιας παρουσίασης σχετικά με το Scratch. Πάνω στο project (κινούμενη γάτα- the cat walk) δείχνει απλές κινήσεις, επαναλαμβανόμενες κινήσεις (forever), περπάτημα της γάτας και άλλαγμα κουστουμιού, χρησιμοποίηση του πληκτρολογίου για τιν έλεγχο της γάτας (μαζί με την if και forever-if), περπάτημα της γάτας μέσω πληκτρολογίου (αισθητήρες και forever-if). Τέλος, παρουσιάζει κάποιους κανόνες που πρέπει να ακολουθούμε για τη κατασκευή παιχνιδιού και παρουσιάzει κάποια γνωστά μας παιχνίδια, όπως το pac-man και το pong προτείνοντας προεκτάσεις που μπορούμε να κάνουμε σε αυτά (π.χ. να προσθέσουμε ήχο, επιπλέον χαρακτήρες, μετρητές για τη μέτρηση του σκόρ).

11. [] Ένα tutorial από τον Howard Abrams. Περιέχει και οδηγίες δημιουργίας ενός απλού παιχνιδιού.Περιέχει κάποια μαθήματα για τις θεματικές ενότητες (Εισαγωγή,πως κατευάζω το Scratch,το πρώτο μου project,φτιάχνω μουσική, συνομιλία μεταξύ των sprites, Kίνηση των sprites,broadcasting, πως φτιάχνω ένα παιχνίδι βήμα-βήμα). Κάθε μάθημα το συνδυάζει με την περιγραφή ενός απλού project.

12.[] Ο συγκεκριμένος σύνδεσμος τονίζει τη σημαντικότητα του Scratch ως ενός εργαλείου-περιβάλλοντος που παρέχει ένα πολύ γλαφυρό τρόπο αναπαράστασης των προγραμματιστικών εννοιών στα μικρά παιδιά. Επιπλέον, παραθέτει μια σειρά από συνδέσμους που παραπέμπουν σε αντίστοιχα projects για τη δημιουργία παιχνιδιών.

13.@http://dia-installer.de/index_en.html Δωρεάν λογισμικό για δημιουργία εννοιολογικών χαρτών και γράφων.

 14.http://scratch.mit.edu/projects/Deweybears/20922 Ένα project παιχνιδιού αρκετά ενδιαφέρον και μεγάλο δείχνει τις ικανότητες του scratch τη πραγματοποιήση πολύπλοκων παιχνιδιών.

=Blogs=

__17. Δημιουργώντας ακόμη ένα παιχνίδι (Paintball)__ // Μαθησιακοί στόχοι // Να κατανοούν τη χρησιμότητα καθεμιάς από τις παλέτες του scratch. Να είναι σε θέση να προγραμματίσουν το δικό τους παιχνίδι. Να επιλέγουν τις σωστές εντολές για να επιτύχουν το στόχο/πρόγραμμα. Να αναλύουν σενάρια χρήσης όλων των εντολών που διδάχθηκαν στο scratch. Χαρακτηριστικά Ο μαθητής έχει πλέον διδαχθεί όλες τις δυνατές εντολές του scratch, και τώρα καλείται να τις συνθέσει όλες μαζί αποδοτικά για να παράγει το δικό του πρόγραμμα. //Παραδείγματα // Στο κεφάλαιο αυτό ο μαθητής καλείται να δημιουργήσει την ολοκληρωμένη εφαρμογή που αντιστοιχεί στο παιχνίδι Paintball, μέσα από το περιβάλλον του scratch. Περιγραφή παιχνιδιού: Η πλατφόρμα του παιχνιδιού αποτελείται από ένα σκηνικό μονόχρωμου φόντου, στο οποίο εισέρχονται σε τυχαίες χρονικές στιγμές και με τυχαίες κατευθύνσεις οι ήρωες του παιχνιδιού, και εξέρχονται όταν φτάσουν στα όρια του σκηνικού. Οι ήρωες είναι σχήματος μπάλας. Ο παίκτης καλείται με το ποντίκι να σημαδέψει μία κινούμενη μπάλα με σκοπό να την πετύχει, ρίχνοντας της κόκκινο χρώμα και εξαφανίζοντας την από το σκηνικό.Σε κατάλληλη μεταβλητή αποθηκεύεται και ανανεώνεται η τιμή των κερδισμένων πόντων του παίκτη. Η διαδικασία είναι επαναληπτική.

=Κεφάλαιο 17=

= **Δημιουργώντας μερικά παιχνίδια ακόμα!** = = = Τώρα που εξοικειωθήκατε πλήρως με το περιβάλλον του scratch, και έχετε δημιουργήσει τις πρώτες σας εφαρμογές προσπαθήστε να δημιουργήσετε κάποια πιο πολύπλοκα και απίθανα παιχνίδια.

---

1.4 Πέτρα - Ψαλίδι - Χαρτί
---

//"You have to learn the rules of the game. And then you have to play better than anyone else." "Θα πρέπει να μάθεις τους κανόνες του παιχνιδιού. Και μετά πρέπει να παίξεις καλύτερα από οποιονδήποτε άλλον. "// ( Albert Einstein )

Ας δούμε πως θα μπορέσετε να φτιάξετε ένα παιχνίδι σκοποβολής! Είναι ένα παιχνίδι αντανακλαστικών και ακρίβειας! Στο παιχνίδι θα υπάρχουν στόχοι οι οποίοι θα κινούνται από το ένα άκρο της οθόνης μέχρι το άλλο. Αρχικά ο παίκτης θα κληθεί να καθορίσει το βαθμό δυσκολίας του παιχνιδιού ο οποίος αυξάνεται κάνοντας τους στόχους να πηγαίνουν γρηγορότερα. Ο παίκτης θα παίζει με το ποντίκι και θα προσπαθεί να πετύχει τους κινούμενους στόχους. Αν καταφέρει να βρει στόχο, ο στόχος εκρηγνύεται, ακούγεται σχετικός ήχος και το σκορ, το οποίο κρατάται σε μία μεταβλητή αυξάνει. Σε διαφορετική περίπτωση απλά ακούγεται κάποιος άλλος σχετικός ήχος. Η διάρκεια του παιχνιδιού περιορίζεται σε 60'' με το χρονόμετρο. Στιγμιότυπο του παιχνιδιού: Ας ξεκινήσουμε να το σχεδιάζουμε.

**__Διαδικασία σκέψης__**
Πριν ξεκινήσετε να σχεδιάζετε το παιχνίδι πρέπει να σκεφτείτε τη στρατηγική που θα ακολουθήσετε. Πρέπει να χωρίσετε το πρόβλημα σας σε υποπροβλήματα (διαίρει και βασίλευε) έτσι ώστε να είναι πιο εύκολο να το λύσετε. Το πρόβλημα χωρίζεται στα υποπροβλήματα σχεδιασμού των αντικειμένων και του σκηνικού. Θα σχεδιάσετε το σκηνικό, προσδίδοντας του χαρακτηριστικά, δηλαδή υπόβαθρα και ήχους, και θα καταστρώσετε τη συμπεριφορά του, και το πώς αυτή θα επηρεάσει τη συμπεριφορά των αντικειμένων. Κατά τη σχεδίαση των σεναρίων του σκηνικού θα ορίσετε και τα στοιχεία τα οποία ορίζουν τους κανόνες του παιχνιδιού όπως το σκορ, ο βαθμός δυσκολίας και η διάρκεια του παιχνιδιού. Στη συνέχεια θα δημιουργήσετε 10 αντικείμενα στόχους, θα ορίσετε τα δικά τους χαρακτηριστικά, δηλαδή τους ήχους και τις ενδυμασίες τους και θα σχεδιάσετε τα σενάρια που θα περιγράφουν τη συμπεριφορά τους, λαμβάνοντας υπόψιν σας, τις συμπεριφορές που δημιουργήσατε κατά το σχεδιασμό του σκηνικού. Παρακάτω φαίνεται σχηματικά ο τρόπος σκέψης:

Το σκηνικό μας θα έχει δύο υπόβαθρα!

 * 1) Την αρχική οθόνη υποδοχής του παίκτη, στην οποία θα ορίζεται ο βαθμός δυσκολίας του παιχνιδιού.Η αρχική οθόνη θα καλωσορίζει τον παίκτη και θα του ζητάει να εισάγει ένα γράμμα e (easy), m (medium), h (hard), για να ορίσει το βαθμό δυσκολίας του παιχνιδιού. Μπορείτε πολύ εύκολα να ζωγραφίσετε το υπόβαθρο στη ζωγραφική. Το αποτέλεσμα θα πρέπει να είναι κάπως έτσι:[[image:kalws.jpeg]]
 * 2) Την οθόνη στην οποία θα εμφανίζονται οι στόχοι μας και η οποία θα είναι απλά μονόχρωμη για να είναι ευδιάκριτοι οι στόχοι.

__Ήχος__
Το σκηνικό μας θα έχει έναν ήχο ο οποίος θα ακούγεται όταν ο παίκτης πατήσει πάνω στην οθόνη, δηλαδή όταν αποτυγχάνει να χτυπήσει κάποιο στόχο. Πρέπει να είναι ένας σύντομος ήχος για να μπορεί αν ο χρήστης κάνει επαναλαμβανόμενα κλικ στην οθόνη να μην επικαλύπτει ο ένας ήχος τον άλλο. Στο παράδειγμά μας θα χρησιμοποιήσουμε τον ήχο WaterDrop από τους έτοιμους ήχους του scratch από το φάκελο effects.

__Σενάρια__
> > Ξεκινώντας λοιπόν το παιχνίδι θέλουμε η οθόνη να έχει μόνο το αρχικό υπόβαθρο που σχεδιάσαμε και να ζητάει από το χρήστη να ορίσει τη δυσκολία του παιχνιδιού. Τη δυσκολία θα την ορίσουμε χρησιμοποιώντας μια μεταβλητή (κοινή), την οποία θα δημιουργήσετε από την παλέτα μεταβλητών, και την οποία θα θέσετε, αργότερα, ως όρισμα στην εντολή ομαλής κίνησης στους στόχους μας. Η μεταβλητή αυτή θα ορίζει το χρόνο σε δευτερόλεπτα στον οποίο θα καλύψει ένα αντικείμενο μας την απόσταση που θα του ορίσουμε. Όσο μικρότερη η τιμή της τόσο πιο γρήγορα θα μετακινούνται οι στόχοι μας, τόσο δυσκολότερο θα είναι το παιχνίδι. Μιας και δεν αφορά τον παίκτη αφαιρέστε την από την οθόνη του παιχνιδιού.Χρησιμοποιείστε λοιπόν την εντολή ελέγχου και αμέσως μετά την εντολή, για να πάρει το υπόβαθρο καλωσορίσματος. Κατόπιν, για να πάρετε την απάντηση από τον παίκτη, χρησιμοποιήστε την εντολή με όρισμα "Δυσκολία παιχνιδιού:". Την που πήραμε ως είσοδο από τον παίκτη, και η οποία βρίσκεται στην παλέτα αισθητήρων χρησιμοποιήστε τη, με την κατάλληλη μεταβλητή ελέγχου, για να ορίσετε την τιμή της. Χρησιμοποιήστε λοιπόν με όρισμα έναν τελεστή ισότητας, ο οποίος ελέγχει την τιμή της. Ανάλογα λοιπόν με την απάντηση θα ορίσετε και την τιμή στην μεταβλητή μας, με την εντολή. Η αντιστοιχία απάντησης - time είναι: > Γι' αυτό το σκοπό θα χρειαστείτε τρεις εντολές για να καλύψετε και τις τρεις περιπτώσεις την μια μετά την άλλη, ορίζοντας κάθε φορά την με την αντίστοιχη τιμή. Πρέπει να λάβετε υπόψιν σας την περίπτωση που ο παίκτης δώσει διαφορετική τιμή από τις e,m,h. Για να ελέγξετε αυτήν την περίπτωση θα πρέπει να χρησιμοποιήσετε μια εντολή επανάληψης για να ζητήσετε από τον παίκτη να εισάγει μια άλλη έγκυρη τιμή. Θα χρησιμοποιήσετε την, η οποία θα εσωκλείει την ερώτηση προς το χρήστη και τους τρεις ελέγχους **εάν**. Η εντολή θα λάβει ως όρισμα έναν τελεστή ο οποίος θα ελέγχει αν η είναι ίση με: e **ή** m **ή** h, που σημαίνει πως θα πρέπει να συνδυάσετε δύο τελεστές σε έναν με αυτό το αποτέλεσμα:. Ο καινούριος αυτός τελεστής θα πάρει ως ορίσματα τελεστές ισότητας, οι οποίοι με τη σειρά τους θα πάρουν ως πρώτο όρισμα την και ως δεύτερο τις έγκυρες τιμές. > Το αποτέλεσμα αυτού του εγχειρήματος θα είναι: > > Αφού τελειώσαμε με τον ορισμό του βαθμού δυσκολίας του παιχνιδιού θα συνεχίσουμε με τον ορισμό των υπόλοιπων συνθηκών του παιχνιδιού: το σκορ, και τη διάρκεια του. > > Το σκορ πρέπει να κρατηθεί σε μία μεταβλητή κοινή για τα αντικείμενα, την οποία δημιουργείτε στην παλέτα μεταβλητών. Αυτή η μεταβλητή θα αυξάνεται κατά 1 κάθε φορά που ο παίκτης κάνει κλικ σε ένα αντικείμενο. Το σκορ, στην αρχή του παιχνιδιού, πρέπει να είναι 0. Για να το πετύχετε αυτό κουμπώστε την εντολή στη συνέχεια του σεναρίου μας. > > Μία άλλη συνθήκη που πρέπει να αρχικοποιήσετε είναι το χρονόμετρό μας. Ενεργοποιείστε το χρονόμετρο από την παλέτα αισθητήρων για να εμφανιστεί στην οθόνη και στη συνέχεια προσθέστε και την εντολή έτσι ώστε να ξεκινήσει να μετράει ο χρόνος από τη στιγμή που θα ξεκινήσει το παιχνίδι. > > Αφού αρχικοποιήσαμε τις συνθήκες μας πρέπει να αλλάξετε το υπόβαθρο και να δώσετε σήμα για να ξεκινήσει το παιχνίδι. > Η αλλαγή υπόβαθρου επιτυγχάνει αν προσθέσετε την εντολή, ενώ για να ξεκινήσει το παιχνίδι και να ενεργοποιηθούν τα σενάρια των αντικειμένων, που θα δημιουργήσετε αμέσως μετά, μεταδώστε ένα σήμα "start" με την εντολή. Με το ίδιο σκεπτικό πρέπει να μεταδώσετε κι ένα σήμα "end", έτσι ώστε με το που τελειώσει το παιχνίδι τα αντικείμενά να εξαφανιστούν από την οθόνη. Το παιχνίδι θα διαρκέσει 60''. Για να το ελέγξετε αυτό, θα πρέπει, πριν μεταδώσετε το "end" να περάσουν 60''. Γι' αυτό μετά το "start" και πριν το "end" τοποθετείστε μια εντολή με όρισμα έναν τελεστή, ο οποίος παίρνει όρισμα το χρονόμετρο. Θέλουμε, όσο η ένδειξη του χρονομέτρου είναι μικρότερη του 60, να συνεχίζεται το παιχνίδι. Έτσι με τον ελέγχετε πότε το χρονόμετρο θα υπερβεί τα 60'', και τον κουμπώνετε στην παραπάνω εντολή ελέγχου. Τέλος αφού μεταδώσουμε και το "end" τερματίζουμε το σενάριο και το παιχνίδι με την εντολή. >
 * 1) Χρειαζόμαστε ένα σενάριο για να καλύψουμε την περίπτωση που ο παίκτης κάνει κλικ στην οθόνη και ακούγεται ο ήχος μας. Χρησιμοποιείστε την εντολή ελέγχου //**όταν στο σκηνικό γίνει κλίκ**// και κουμπώστε την εντολή [[image:soundwater.JPG]]. Το σενάριο μας είναι έτοιμο. Δοκιμάστε να κάνετε κλικ πάνω στην οθόνη.
 * 1) Επίσης χρειαζόμαστε ένα σενάριο για να ορίσουμε τους κανόνες του παιχνιδιού: σκορ, διάρκεια, αρχή παιχνιδιού, βαθμός δυσκολίας και τέλος παιχνιδιού. Το σενάριο θα γραφτεί στο σκηνικό, και όχι στα αντικείμενα, για να έχει αντίκτυπο σε όλα τα αντικείμενα.
 * easy: e - 2,5
 * medium: m - 2
 * hard: h - 1,5

**__Αντικείμενα__**
Τα αντικείμενά θα είναι οι στόχοι που θα προσπαθεί ο παίκτης να πετύχει. Μπορείτε να επιλέξετε τους στόχους από τους ήδη έτοιμους, να εισάγετε δικούς σας από εικόνες είτε να δημιουργήσετε τις δικές σας φιγούρες με το εργαλείο της ζωγραφικής που διαθέτει η παλέτα δημιουργίας αντικειμένων. Στο παράδειγμά μας για ευκολία θα χρησιμοποιήσουμε τις μπάλες που μας δίνονται έτοιμες στο φάκελο "things"! Θα χρειαστείτε αρκετές μπάλες γι' αυτό διπλασιάστε τα αντικείμενά σας! Συνδέοντας με προηγούμενα κεφάλαια κάθε μπάλα είναι μια οντότητα, ένα αντικείμενο με ορισμένα χαρακτηριστικά. Θα δημιουργήσετε στην ουσία ένα αντικείμενο, του οποίου τα χαρακτηριστικά και οι λειτουργίες θα είναι ίδια και για τα υπόλοιπα 9.

__Ενδυμασίες__
Το αντικείμενό μας θα έχει δύο ενδυμασίες:
 * 1) Την αρχική ενδυμασία, η οποία έχει προκαθορισμένο όνομα όταν επιλέγεις την εικόνα από τον φάκελο. Από δω και πέρα θα αναφερόμαστε σ' αυτήν την ενδυμασία με αυτό το όνομα.
 * 2) Την ενδυμασία έκρηξης, την οποία θα ονομάσουμε mpoum, και την οποία θα δημιουργήσετε στην ζωγραφική! Δεν είναι δύσκολο! Το αποτέλεσμα θα είναι κάτι τέτοιο: [[image:mpoummmm.JPG caption="mpoummmm.JPG"]] . Για να αποκτήσουν όλα τα αντικείμενα αυτήν την ενδυμασία σύρετε το εικονίδιό της πάνω στο εικονίδιο καθενός από τα άλλα αντικείμενα.

Ήχος
Όταν ο παίκτης κάνει κλικ στο αντικείμενο, δηλαδή πετυχαίνει μια βολή, θα ακούγεται ένας σύντομος ήχος για να ξεχωρίζει από τον ήχο που ακούγεται όταν κάνει κλικ στην οθόνη, δηλαδή όταν αστοχεί. Για το σκοπό αυτό θα χρησιμοποιήσετε τον ήχο Pop από τον φάκελο effects των έτοιμων ήχων. Για να αποκτήσουν όλα τα αντικείμενα αυτόν τον ήχο σύρετε το εικονίδιό του πάνω στο εικονίδιο καθενός από τα άλλα αντικείμενα.

__Σενάρια__
> Το σενάριο αυτό θέλουμε να εξαφανίζει όλα τα αντικείμενα από την οθόνη όταν ξεκινάει το παιχνίδι, άρα θα ενεργοποιηθεί όταν πατηθεί το πλήκτρο εκκίνησης. Θα χρησιμοποιήσετε την εντολή αφού πατηθεί το πλήκτρο εκκίνησης, δηλαδή μετά την εντολή ελέγχου. Έτσι όλα τα αντικείμενα θα σβήσουν από την οθόνη. Για να ισχύει το σενάριο για κάθε αντικείμενο σύρτε το στο εικονίδιο καθενός από τα υπόλοιπα αντικείμενα. Σύρετε το σενάριο στο εικονίδιο καθενός από τα αντικείμενα. > > Το σενάριο αυτό θα ενεργοποιηθεί όταν το σκηνικό μεταδώσει το σήμα "start", όταν δηλαδή έχει οριστεί ο βαθμός δυσκολίας και θα περιγράφει την κίνηση των αντικειμένων μας. Γι' αυτό το σενάριο θα ξεκινάει με την εντολή. Κατόπιν για να αποδώσετε την έννοια της τυχαιότητας, και για να μην εμφανιστούν όλα τα αντικείμενα ταυτόχρονα στο σκηνικό, θα πρέπει πριν εμφανιστεί το κάθε αντικείμενο να περιμένει για ένα τυχαίο χρονικό διάστημα. Επιλέξτε γι' αυτό το σκοπό την εντολή στην οποία πρέπει τα δευτερόλεπτα να είναι ένας τυχαίος αριθμός έστω από 1 έως 5. Για να το πετύχετε αυτό επιλέξτε από την παλέτα τελεστών τον τελεστή. > Στη συνέχεια πρέπει να ορίσετε την αρχική θέση που θα πάρει το αντικείμενο αφού τελειώσει η αναμονή του. > Το αντικείμενο θα ξεκινάει πάντα από το αριστερό ή το δεξιό άκρο του σκηνικού και θα καταλήγει στο απέναντι. Επίσης για λόγους συμμετρίας τα μισά αντικείμενα θα ξεκινούν από τα αριστερά και τα άλλα μισά από τα δεξιά. > Για να το πετύχετε αυτό θα χρησιμοποιήσετε την εντολή από την παλέτα κίνησης. Για τα αντικείμενα που θα ξεκινούν από τα αριστερά, όταν αντιγράψετε το σενάριο στα υπόλοιπα αντικείμενα, θα επιλέξτε x=-250 (αριστερό όριο) και για αυτά που ξεκινούν από δεξιά x=250 (δεξί άκρο). Για τον ορισμό του y πρέπει να λάβετε υπόψιν τη σύμβαση της τυχαιότητας που ορίστηκε στην αρχή έτσι ώστε να μην ξεκινάνε τα αντικείμενα από συγκεκριμένο ύψος. Έτσι για y ορίστε πάλι μια εντολή από την παλέτα τελεστών με επιλογή από 200 μέχρι -200 δηλαδή τα πάνω και κάτω όρια αντίστοιχα. Εκεί λοιπόν σε εκείνη την θέση το αντικείμενό σας πρέπει να έχει την αρχική του ενδυμασία γι' αυτό προσθέστε την εντολή, ή ανάλογα το όνομα της εκάστοτε αρχικής ενδυμασίας του κάθε αντικειμένου, και για να εμφανιστεί. > Σκοπός μας τώρα είναι να κινήσουμε το αντικείμενο από το ένα άκρο του σκηνικού στο άλλο. Η στρατηγική που θα ακολουθήσετε είναι η ίδια με αυτή της θέσης μόνο που αυτή τη φορά θα χρησιμοποιήσετε την εντολή από την παλέτα κίνησης. Ως πρώτο όρισμα θα χρησιμοποιήσετε τη μεταβλητή, η τιμή της οποίας ορίστηκε παραπάνω και είναι αυτή η οποία ορίζει το βαθμό δυσκολίας του παιχνιδιού. Ορίστε το x=250 για όσα αντικείμενα επιλέξατε πως θα κινούνται από τα αριστερά προς τα δεξιά και αντίστοιχα x=-250 για τα υπόλοιπα, και ως y ξανά τον τελεστή τυχαίας επιλογής με όρια -200 μέχρι 200. Έτσι το αντικείμενο θα κινηθεί μέχρι την άλλη άκρη του σκηνικού όπου θα πρέπει να εξαφανιστεί με την εντολή. Μ' αυτόν τον τρόπο το αντικείμενο σας θα κινηθεί από το ένα άκρο στο άλλο μία φορά. Για να το κάνει αυτό συνέχεια, στο σενάριό σας θα χρησιμοποιήσετε την εντολή ελέγχου επανάληψης. > Το τελικό σενάριο θα είναι κάπως έτσι: > > Αυτό το σενάριο πρέπει να ισχύει για κάθε αντικείμενο. Σύρτε ολόκληρο το σενάριο στο εικονίδιο καθενός αντικείμενου έτσι ώστε να αντιγραφεί στα σενάρια των υπολοίπων. Θα πρέπει να αλλάξετε την ενδυμασία στο εκάστοτε αντικείμενο ώστε να πάρει την αρχική ενδυμασία, όχι την mpoum, και να ορίσετε σωστά την πορεία τους, έτσι ώστε οι μισές να πηγαίνουν από αριστερά στα δεξιά και οι υπόλοιπες αντίθετα, αλλάζοντας κατάλληλα τα x των εντολών και. > > Το σενάριο αυτό περιγράφει την περίπτωση επιτυχημένης βολής. Θα ξεκινάει με την εντολή, δηλαδή θα ελέγχει την περίπτωση που ο παίκτης κάνει κλικ στο αντικείμενο. Η βολή, ως επιτυχημένη, θα συνοδεύεται από τον ήχο Pop που εισάγαμε παραπάνω και θα ενεργοποιηθεί χρησιμοποιώντας την εντολή. Κατόπιν προσθέστε την εντολή έτσι ώστε το αντικείμενό να αλλάξει ενδυμασία και να πάρει την όψη της "έκρηξης", για να εξαφανιστεί 0.5 δευτερόλεπτα αργότερα χρησιμοποιώντας τις εντολές. Τέλος η επιτυχημένη βολή αυξάνει το σκορ κατά 1. Για να το πετύχετε αυτό προσθέστε την εντολή. Σύρετε το σενάριο στο εικονίδιο καθενός από τα αντικείμενα. > > Το σενάριο αυτό περιγράφει τη συμπεριφορά των αντικειμένων στο τέλος του παιχνιδιού, δηλαδή τα εξαφανίζει. Ενεργοποιείται όταν ληφθεί το σήμα "end", δηλαδή όταν το χρονόμετρο δείξει 60''. Τα αντικείμενα πρέπει να εξαφανιστούν από την οθόνη. Πολύ απλά θα χρησιμοποιήσετε την εντολή, μετά την εντολή ελέγχου. Έτσι όλα τα αντικείμενα θα σβήσουν από την οθόνη. Για να ισχύσει το σενάριο σε κάθε αντικείμενο σύρτε το στο εικονίδιο καθενός από τα υπόλοιπα αντικείμενα.
 * 1) Σενάριο αρχικοποίησης:
 * 1) Σενάριο κίνησης:
 * 1) Σενάριο έκρηξης:
 * 1) Σενάριο τέλους παιχνιδιού:

Ο κώδικας βρίσκεται εδώ ολοκληρωμένος

ΤΕΛΟΣ
=**__Δημιουργώντας ακόμη ένα παιχνίδι (Fish)__**= Το παιχνίδι βασίζετε στο link: [] Σε αυτόν το σύνδεσμο περιέχεται ένα παράδειγμα παιχνιδιού με κύριο χαρακτήρα ένα καρχαρία που περιπλανιέται στην οθόνη τρώγοντας ψάρια αποφεύγοντας παράλληλα εκείνα που θα τον κάνουν να χάσει στο παιχνίδι.

Στο παιχνίδι έχουν προστεθεί κάποιες επιπλέον τροποποιήσεις

**Περιγραφή παιχνιδιού**
Το παιχνίδι λαμβάνει χώρο σε υδάτινο περιβάλλον και όπου ο βασικός ήρωας είναι ένας καρχαρίας, ο οποίος τρώει διάφορα είδη ψαριών και χταπόδια.

Όταν ο καρχαρίας καταφέρει και φάει κάποιο ψάρι, τότε κερδίζει την αντίστοιχη "βαθμολογία" που του δίνει το ψάρι, ανάλογα με το είδος του ψαριού υπάρχει και το ανάλογό "βαθμολογικό κέρδος". Ενώ υπάρχει ένα είδος ψαριού που όταν ακουμπήσει τον καρχαρία, αυτός χάνει μια από τις ζωές του. Κατά την εκκίνηση του παιχνιδιού ο καρχαρίας διαθέτει 3 ζωές.

Ο καρχαρίας μπορεί να φάει και να κερδίσει βαθμούς μόνο από μερικά είδη ψαριών, και συγκεκριμένα μόνο από τα πιο κάτω:
 * Κίτρινα ψάρια, 1 βαθμό για τον καρχαρία.
 * Μοβ ψάρια 3 βαθμούς για τον καρχαρία.
 * Χταπόδι 5 βαθμούς για τον καρχαρία.

Κάθε φορά που ο καρχαρίας ακουμπά κόκκινο ψάρι τότε χάνει μια ζωή, αν χάσει και τις 3 ζωές του τότε το παιχνίδι τερματίζεται.

Στόχος του παιχνιδιού είναι ο καρχαρίας να μαζέψει όσο το δυνατό πιο πολλούς βαθμούς.

Στο παιχνίδι λαμβάνουν χώρα συνολικά, ένας καρχαρίας, κίτρινα ψάρια, κόκκινα ψάρια, μοβ ψαριά, μικρά ψαράκια και χταπόδια. Τα μικρά ψαράκια είναι για λόγους διακοσμητικούς στο παιχνίδι.



Αναλυτική περιγραφή παιχνιδιού
Το παιχνίδι αναλύεται σε δύο φάσεις, στην πρώτη φάση εισάγουμε τις θέσεις που θα αρχικοποιηθεί κάθε αντικείμενο, προσδιορίζουμε την κίνηση κάθε αντικειμένου και προσδιορίζουμε τις μορφές που αλλάζει ανάλογα με τα ερεθίσματα που δέχεται από άλλα αντικείμενα. Για την πρώτη φάση χρησιμοποιούμε εντολές από τις παλέτες "Κίνηση", "Έλεγχος", "Τελεστές", "Όψεις" και "Αισθητήρες". Στην δεύτερη φάση εισάγουμε στο παιχνίδι ήχους και μεταβλητές. Για την δεύτερη φάση χρησιμοποιούμε εντολές από τις παλέτες "Ήχοι" και "Μεταβλητές"

Για να ετοιμάσουμε την παιχνίδι θα πρέπει:
 * Να επιλέξουμε τις κατάλληλες ενδυμασίες για τα αντικείμενα και το κατάλληλο υπόβαθρο για το σκηνικό.
 * Να ορίσουμε θέσεις αρχικοποίησης κάθε αντικειμένου στον χώρο.
 * Να ορίσουμε τις κινήσεις που θα κάνει κάθε αντικείμενο στον χώρο.
 * Να ορίσουμε τις διαστάσεις κάθε αντικειμένου.
 * Να ορίσουμε τις συμπεριφορές κάθε αντικειμένου ανάλογα με τα ερεθίσματα που θα δέχεται από τα άλλα αντικείμενα ή από το σκηνικό.

Τις ενδυμασίες των αντικειμένων μας όσο και το υπόβαθρο για το σκηνικό τις βρίσκουμε έτοιμες από τις εικόνες του scratch. Λόγο του ότι οι εικόνες αυτές είναι λίγο μεγάλες, του μειώνουμε το μέγεθός όσο θέλουμε με την βοήθεια εντολής του scratch.

Για ο σκηνικό επιλέγουμε έτοιμη εικόνα "underwater" για υπόβαθρο από τις εικόνες του scratch.

Για τον καρχαρία επιλέγουμε την εικόνα "shark-a", εμφανίζεται πάνω αριστερά στην οθόνη, ελέγχεται από τον πληκτρολόγιο και μπορεί να κινείται μόνο σε τέσσερις διαφορετικές κατευθύνσεις, πάνω κάτω, δεξιά και αριστερά. Ο καρχαρίας μπορεί να φάει μερικά είδη ψαριών όπως κίτρινα ψάρια, μοβ ψάρια και χταπόδια, ενώ το κόκκινο ψάρι όταν τον ακουμπήσει χάνει μια ζωή. Όταν ακουμπήσει ο καρχαρίας κάποιο ψάρι που μπορεί να φάει ή το χταπόδι, αυτός να στρέφεται προς το μέρος του θύματος, να ανοίγει το στόμα του και να το τρώει. Επίσης όταν ένα κόκκινο ψάρι ακουμπήσει τον καρχαρία αυτός αλλάζει μορφή και να επιστρέφει στην αρχική του θέση.

Πιο συγκεκριμένα θέλουμε όταν ο καρχαρίας ακουμπήσει ένα ψάρι, αυτός να στραφεί προς το μέρος του ψαριού, να αλλάξει μορφή σε "shark-b" και στην συνέχεια να χαθεί το ψάρι που έχει αγγίξει, μετά την κίνηση αυτή ο καρχαρίας να επανέλθει στην κανονική του φυσιολογική του μορφή. Αυτό δείχνει την κίνηση του καρχαρία που τρώει ένα ψάρι. Αφότου φάει το ψάρι ο καρχαρίας, θα πρέπει το ψάρι να επανεμφανίζετε από κάποιες συγκεκριμένες θέσεις μετά από κάποιο χρονικό διάστημα, δίνοντας την αίσθηση ότι τα ψάρια δεν τελειώνουν να υπάρχουν. Επίσης όταν ακουμπήσει τον καρχαρία το κόκκινο ψάρι αυτός αλλάζει μορφή σε "shark-c" και χάνει μόνιμα το εφέ του χρώματος του κατά 20 (να φαίνεται πιο αδύνατος) και μετακινείτε στην αρχική του θέση(πάνω-αριστερά), επίσης το κόκκινο ψάρι που ενόχλησε τον καρχαρία, εξαφανίζεται και αυτό και επανέρχεται από συγκεκριμένες θέσεις εκτός από πάνω-αριστερά που θα εμφανιστεί ο καρχαρίας(για τον ίδιο

Για το κίτρινο ψάρι επιλέγουμε την εικόνα "fish3", εμφανίζεται σε τυχαία θέση στο σκηνικό, άρα δεν χρειάζεται να τους δώσουμε συγκεκριμένες θέσεις αρχικοποίησης. Κινείται συνεχώς από μόνο του με σταθερή ταχύτητα και σε τυχαίες κατευθύνσεις σκηνικό, στην περίπτωση όμως που το ψάρι φτάσει στα όρια πρέπει να αλλάζει κατεύθυνση. Είναι ψάρι το οποίο δίνει 1 βαθμό στον καρχαρία όταν το φάει. Όταν φαγωθεί από τον καρχαρία εξαφανίζεται, και να εμφανίζεται μετά από κάποιο τυχαίο χρονικό διάστημα.

Για το μοβ ψάρι επιλέγουμε την εικόνα "fish2", εμφανίζεται σε τυχαία θέση στο σκηνικό, άρα δεν χρειάζεται να τους δώσουμε συγκεκριμένες θέσεις αρχικοποίησης. Κινείται συνεχώς από μόνο τους με σταθερή ταχύτητα και σε τυχαίες κατευθύνσεις χώρο. Είναι ψάρι το οποίο δίνει 3 βαθμούς στον καρχαρία όταν το φάει. Όταν φαγωθεί από τον καρχαρία εξαφανίζεται, και να εμφανίζεται μετά από κάποιο τυχαίο χρονικό διάστημα.

Για το κόκκινο ψάρι επιλέγουμε την εικόνα "fish4", εμφανίζεται σε τυχαίες θέσεις στον χώρο, εκτός από την περιοχή πάνω αριστερά όπου εκεί εμφανίζεται καρχαρίας,(μπορεί να κινείται στην περιοχή πάνω αριστερά, αλλά απαγορεύεται να εμφανιστεί εκεί κατά την εκκίνηση του παιχνιδιού). Εφόσον το κόκκινο ψάρι είναι εκείνο που αν ακουμπήσει τον καρχαρία αυτός χάνει μια ζωή, έτσι αποφεύγουμε να συμβεί το τυχαίο γεγονός, <ο καρχαρίας και το κόκκινο ψάρι κατά την την εκκίνηση του παιχνιδιού να ακουμπούν μεταξύ τους> και να χάσει ο καρχαρίας άδικα ζωή. Κινείται συνεχώς από μόνο του με σταθερή ταχύτητα, πιο γρήγορα από το κίτρινο ψάρι και σε τυχαίες κατευθύνσεις στο χώρο. Όταν ακουμπήσει τον καρχαρία τότε εμφανίζεται οπουδήποτε αλλού εκτός από πάνω αριστερά (θέση καρχαρία).

Το χταπόδι εμφανίζεται στον χώρο στα κάτω όρια σε τυχαία σημεία του βυθού και κινείται ευθεία προς τα πάνω μέχρι τα πάνω όρια. Στο σχήμα το χταπόδι δεν βλέπει ακριβώς πάνω στην ευθεία αλλά βλέπει πάνω-δεξιά θα πρέπει να αλλάξουμε την κατεύθυνση του, ώστε να βλέπει πάνω, στην ευθεία που θα κινείται. Για να δείξουμε την κίνηση του χταποδιού όταν ανεβαίνει από τον βυθό προς τα πάνω, θα πρέπει με κάποιο τρόπο να φαίνεται ότι σπρώχνει το νερό προς τα κάτω και του δίνεται η ώθηση να ανεβαίνει. Εναλλάσσοντας τις δύο εικόνες του χταποδιού που υπάρχουν έτοιμες στο scratch "octobus1-a" και "octobus1-b" καθώς αυτό κινείται θα πετύχουμε να φαίνεται η κίνηση του χταποδιού. Το χταπόδι δίνει 5 βαθμούς στον καρχαρία όταν το φάει. Όταν φαγωθεί από τον καρχαρία εξαφανίζεται, και να εμφανίζεται μετά από κάποιο τυχαίο χρονικό διάστημα.

Για το μικρό ψάρι επιλέγουμε την εικόνα "fish1-a", είναι για λόγους διακοσμήσεις στο παιχνίδι τριγυρίζει στον βυθό και έχει σταθερή κατεύθυνση (δεξιά και αριστερά) και κινείται με χαμηλή ταχύτητα.


 * Προέκταση, μπορείτε αν εισάγετε και άλλα είδη ψαριών.

Υλοποίηση του παιχνιδιού
Οι εικόνες που τοποθετήσαμε στο παιχνίδι μας για τους διάφορους ήρωες είναι πολύ μεγάλες σε σχέση με την συνολική εικόνα. θα πρέπει να μικρύνουμε αυτές τις διαστάσεις των εικόνων. Από την παλέτα "Όψεις" και την εντολή ορίζουμε κάθε φορά που ξεκινάει το παιχνίδι να μειώνεται το μέγεθος κάθε αντικειμένου, όσο άφορα την διάσταση της εικόνας που έχει σε οποιαδήποτε χρονική στιγμή της διάρκειας του παιχνιδιού. Για τον καρχαρία μειώνουμε την διάσταση κατά 40% Για τα κίτρινα ψάρια μειώνουμε την διάσταση κατά 20% Για τα κόκκινα ψάρια μειώνουμε την διάσταση κατά 15% Για τα μοβ ψάρια μειώνουμε την διάσταση κατά 20% Για τα μικρά ψάρια μειώνουμε την διάσταση κατά 10%

Ο καρχαρίας

Εμφανίζεται πάνω αριστερά στην οθόνη. Ελέγχεται από τον πληκτρολόγιο και μπορεί να κινείται μόνο σε τέσσερις διαφορετικές κατευθύνσεις, πάνω κάτω, δεξιά και αριστερά. Για να πετύχουμε ώστε ο καρχαρίας να εμφανιστεί σε συγκεκριμένο σημείο στην οθόνη από την παλέτα "Κίνηση" εισάγουμε τις εντολές και και τις θέσουμε σε x=-200 και y=125 (θέση πάνω αριστερά), βάζοντας κατεύθυνση 90 φαίνεται σαν να κοιτάει δεξιά, από την παλέτα "Κίνηση" τοποθετούμε την εντολή. Έτσι έχουμε τον συνδυασμό εντολών για την αρχικοποίηση της θέσης του καρχαρία: .
 * Θέση**

Ο καρχαρίας κινείται με το πάτημα πλήκτρων από το πληκτρολόγιο, πρέπει να αντιστοιχίσουμε την κίνηση με τα κατάλληλα πλήκτρα του πληκτρολογίου μας. Ο καρχαρίας μπορεί να κινείται μόνο σε τέσσερις διαφορετικές κατευθύνσεις, πάνω κάτω, δεξιά και αριστερά. Με βάση αυτά, θα πρέπει όταν πατάμε το αντίστοιχο πλήκτρο ο καρχαρίας να κινείτε μερικά βήματα στην αντίστοιχη κατεύθυνση. Με το πάτημα του κάθε πλήκτρου θα πρέπει να εκτελείτε ο κατάλληλος συνδυασμός εντολών, από τις καρτέλες "Έλεγχος" και "Κίνηση". Από την καρτέλα "Έλεγχος" χρειάζεται για να ελέγχει πιο πλήκτρο έχει πατηθεί και από την καρτέλα "Κίνηση" για να αλλάζει την κατεύθυνση του καρχαρία και για να κινείται ένα συγκεκριμένο αριθμό βημάτων. Σε κάθε συνδυασμό εντολών για το αντίστοιχο πλήκτρο θα πρέπει η κατεύθυνση που δείχνει ο καρχαρίας να αλλάζει, δηλαδή όταν πατάμε το πάνω βέλος να δείχνει στην κατεύθυνση 0, όταν πατάμε το κάτω βέλος να δείχνει στην κατεύθυνση 180, όταν πατάμε το δεξί βέλος να δείχνει στην κατεύθυνση 90 και όταν πατάμε το αριστερό βέλος να δείχνει στην κατεύθυνση -90. Έτσι ώστε όταν επιχειρήσουμε να κινήσουμε τον καρχαρία, αυτός να κινηθεί στην σωστή πορεία. Για την κίνηση κάθε φορά σε όλες τις περιπτώσεις βάζουμε να κινείτε 5 βήματα.
 * Κίνηση**

Δηλαδή συνολικά θα έχουμε μόνο για την κίνηση του καρχαρία το εξής μπλοκ εντολών:



Όταν ο καρχαρίας ακουμπήσει κάποιο ψάρι που μπορεί να φάει ή το χταπόδι, αυτός να στρέφεται προς το μέρος του θύματος, να ανοίγει το στόμα του και να το τρώει. Επίσης όταν ένα κόκκινο ψάρι ακουμπήσει τον καρχαρία αυτός να αλλάζει μορφή και να επιστρέφει στην αρχική του θέση.
 * Αισθητήρες και Μορφές**

Πιο συγκεκριμένα θέλουμε όταν ο καρχαρίας ακουμπήσει ένα ψάρι, αυτός να στραφεί προς το μέρος του ψαριού, να αλλάξει μορφή σε και στην συνέχεια να χαθεί το ψάρι που έχει αγγίξει, μετά την κίνηση αυτή ο καρχαρίας να επανέλθει στην κανονική του φυσιολογική του μορφή. Αυτό δείχνει την κίνηση του καρχαρία που τρώει ένα ψάρι. Αφότου φάει το ψάρι ο καρχαρίας, πρέπει το ψάρι να επανεμφανίζετε από κάποιες συγκεκριμένες θέσεις μετά από κάποιο χρονικό διάστημα, δίνοντας την αίσθηση ότι τα ψάρια δεν τελειώνουν να υπάρχουν. Επίσης όταν ακουμπήσει τον καρχαρία το κόκκινο ψάρι αυτός αλλάζει μορφή, χάνει εφέ του χρώματος του κατά 20 (να φαίνεται πιο αδύνατος) και μετακινείτε στην αρχική του θέση(πάνω-αριστερά), επίσης το κόκκινο ψάρι που ενόχλησε τον καρχαρία, εξαφανίζεται και αυτό και επανέρχεται από συγκεκριμένες θέσεις εκτός από πάνω-αριστερά που θα εμφανιστεί ο καρχαρίας(για τον ίδιο λόγο που προαναφέραμε).

Με την βοήθεια της παλέτας "Έλεγχος", "Αισθητήρες" και "Όψεις" θα εκπληρώσουμε αυτούς τους πιο πάνω περιορισμούς. Από την παλέτα "Αισθητήρες" και την συνθήκη ενσωματωμένη σε μια εντολή από την παλέτα "Έλεγχός" μπορούμε να φτιάξουμε συνθήκες έλεγχου για τον καρχαρία, όταν τον αγγίζουν τα ψάρια να εκτελεί τις κατάλληλες εντολές. Συγκεκριμένα, συνδυάζουμε την εντολή ή την εντολή από την παλέτα "Έλεγχος". Καθώς κινείτε το κάθε αντικείμενο γίνεται ο έλεγχος αν άγγιξε κάποιο άλλο αντικείμενο. Έτσι για τον καρχαρία θα ελεγχουμε αν άγγιξε ένα κίτρινο ψάρι με την εντολή, μέσα στην εντολή αυτή, ενσωματώνουμε της εντολές όπου θα δείχνει ο καρχαρίας στο κίτρινο ψάρι και να αλλάζει την μορφή του. Από την παλέτα "Κίνηση" με την εντολή και επιλέγοντας να δείξει στο κίτρινο ψάρι. Στην συνέχεια θέλουμε να αλλάξει μορφή ο καρχαρίας, από την παλέτα "Όψεις" επιλέγουμε την εντολή και πετυχαίνουμε την αλλαγη αυτή. Στα μάτια του παίχτη που παίζει το παιχνίδι η αλλαγή μπορεί αν μην γίνει ορατή και θα χρειαστεί να προσθέσουμε και μια χρονική καθυστέρηση με την βοήθεια της εντολής από την παλέτα "Έλεγχος" ώστε αν γίνει ορατή η στιγμή που ανοίγει το στόμα του ο καρχαρίας.

Έτσι έχουμε τον συνδυασμό εντολών για τον καρχαρία όταν αγγίζει ένα κίτρινο ψάρι:

Το ίδιο μπλοκ εντολών θα ισχύουν και για τα άλλα είδη ψαριών και το χταπόδι που τρώει ο καρχαρίας

Στην περίπτωση που αγγίζει το κόκκινο ψάρι τον καρχαρία εκτός από το ότι θα αλλάξει μορφή σε "shark1-c", θα αλλάξει και εφέ το χρώμα του, αυτό γίνεται με την εντολή από την παλέτα "Όψεις". Επίσης πρέπει να μετακινηθεί πίσω στην αρχική του θέση, Άρα το μπλοκ εντολών αν ο καρχαρίας ακουμπήσει ένα κόκκινο ψάρι θα έχει ως εξής: Για τη σωστή δόμηση των εντολών, βάζουμε τους ελέγχους σε εντολές και μόνο τον τελευταίο έλεγχο αφήνουμε.

Όλοι αυτοί οι έλεγχοι που θα γίνουν για κάθε αντικείμενο ξεχωριστά στον μπλοκ εντολών του καρχαρία και θα πρέπει να τοποθετηθούν σε ένα ατέρμονα βρόγχο, έτσι ώστε αν επαναλαμβάνεται κάθε φορά ο έλεγχος.

Το κίτρινο ψάρι

ο κίτρινο ψάρι εμφανίζεται σε τυχαία θέση στο σκηνικό, άρα δεν χρειάζεται να τους δώσουμε συγκεκριμένες θέσεις αρχικοποίησης
 * Θέση**

Λόγο του ότι το ψάρι καθώς κινείται θα πρέπει να αλλάζει κατευθύνσεις θα πρέπει να χρησιμοποιήσουμε από την παλέτα κίνησης την επιλογή σε συνδυασμό με την εντολή, ώστε να κινείτε κάποια βήματα και μετά να αλλάζει κατεύθυνση. Επιλογή όμως μιας σταθερής τιμής για τις μοίρες (π.χ. 15) θα κάνει το ψάρι να διαγράφει κυκλική τροχιά, έτσι για να αποφύγουμε το γεγονός αυτό και να προσανατολίσουμε την πορεία του ψαριού προς συγκεκριμένες κατευθύνσεις επιλέγουμε από την παλέτα "Τελεστές" την εντολή και την διαμορφώνουμε να παίρνει τυχαίες επιλογές από -10 μέχρι 10 (είναι καλές τιμές έτσι ώστε το ψάρι να κινείται και να μην πηγαίνει προ τα πίσω). Τοποθετούμε την εντολή από την παλέτα "Τελεστές" μέσα στην εντολή "κίνησης" που λέει πόσες μοίρες να στρίψει, και έτσι πετυχαίνουμε το γεγονός ότι το ψάρι θα κάνει τυχαίες αλλαγές κατευθύνσεις από το εύρος ακεραίων τιμών -10 μέχρι 10 μοιρών από την κατεύθυνση που θα βρίσκεται. Αν το ψάρι φτάσει στα όρια του τότε θα πρέπει να επιστρέψει πίσω, αυτό από την παλέτα "Κίνησης" επιλέγουμε την εντολή, έτσι το ψάρι θα αλλάζει κατεύθυνση όταν ακουμπά τα όρια. Για να μειώσουμε την ταχύτητα με την οποία κινείται το ψάρι μπορούμε να βάλουμε από την παλέτα "Έλεγχος" την επιλογή καθυστέρησης και να δώσουμε τιμή καθυστερήσεις 0.01 δευτερόλεπτα. Η κίνηση του ψαριού αφού θα είναι επαναληπτική, θα πρέπει όλα όσα γράψαμε παραπάνω να επαναλαμβάνονται, άρα θα χρησιμοποιήσουμε από την παλέτα "Έλεγχος" την επιλογή και μέσα να βάλουμε τις εντολές.
 * Κίνηση**

Έτσι το σύνολο εντολών για την κίνηση του κίτρινου ψαριών διαμορφώνεται ως εξής:

Αντίστοιχα κάθε ψάρι εκτελεί τις ίδιες εντολές για την κίνηση. Ανάλογα με τις ιδιότητες που θέλουμε να έχει κάθε είδος ψαριού μπορούμε να του δώσουμε διαφορετικές τιμές στα πιο πάνω πεδία.

Από την παλέτα "Όψεις" και τις εντολές και, συνδυάζουμε τον έλεγχο για το άγγιγμα του ψαριού με τον καρχαρία και αναλόγως το εξαφανίζουμε ή το εμφανίζουμε. Καθώς κινείτε το ψάρι, αν ακουμπήσει τον καρχαρία, τότε θα πρέπει να εξαφανιστεί, και μετά από κάποιο τυχαίο χρονικό διάστημα που ορίζουμε εμείς θα εμφανιστεί και πάλι στην οθόνη. Υλοποιούμε τα ψάρια που εμφανίζονται μετά από απόκρυψη (φάγωμα) να εμφανίζονται τυχαία είτε από τα δεξιά είτε από αριστερά της οθόνης σε τυχαίο ύψος. Κατά την επαφή του ψαριού με τον καρχαρία θα πρέπει να σταματήσει αν κινείτε για ένα μικρό χρονικό διάστημα ώστε να φαίνεται καθαρά η κίνηση που τρώγεται.
 * Αισθητήρες** **και όψεις**

Πάλι την βοήθεια της παλέτας "Έλεγχος", "Αισθητήρες", "Όψεις" και "Τελεστές" δείχνουμε πως το ψάρι θα εμφανίζεται και θα εξαφανίζεται καθώς το τρώει ο καρχαρίας. Από την παλέτα "Αισθητήρες" και την εντολή ενσωματωμένη σε μια εντολή από την παλέτα "Έλεγχός" φτιάχνουμε συνθήκες έλεγχου για το κίτρινο ψάρι, για να ελέγχει όταν ακουμπάει ο καρχαρίας το κίτρινο ψάρι έτσι ώστε να εξαφανίζεται. Συγκεκριμένα, συνδυάζουμε την εντολής ή την εντολή από την παλέτα "Έλεγχος". Καθώς κινείτε το κάθε αντικείμενο γίνεται ο έλεγχος αν άγγιξε κάποιο άλλο αντικείμενο. Έτσι για τον κίτρινο ψάρι για να ελεγχουμε αν άγγιξε τον καρχαρία έχουμε εντολή, μέσα στην εντολή αυτή, ενσωματώνουμε της εντολές όπου εκτελεί το ψάρι όταν το φάει ο καρχαρίας. Οι εντολές αυτές είναι η απόκρυψη του ψαριού, η τυχαία καθυστέρηση που θα πρέπει να περιμένουμε μέχρι να επανεμφανιστεί και επιλογή τυχαίας θέσης επανεμφάνισης. Για την απόκρυψη του ψαριού χρησιμοποιούμε από την παλέτα "Όψεις" την εντολή. Για την τυχαία καθυστέρησης μέχρι να επανεμφανιστεί χρησιμοποιούμε τον συνδυασμό εντολών από την παλέτα "Τελεστές" την εντολή και από την παλέτα "Έλεγχός" την εντολή, έτσι εισάγουμε τυχαία καθυστέρηση 5 λεπτών. Για την επιλογή τυχαίας θέσης επανεμφάνισης, το κίτρινο ψάρι εμφανίζεται είτε από τα δεξιά είτε από τα αριστερά άκρα του σκηνικού, σε τυχαίο ύψος. Για να πετύχουμε την τυχαία επιλογή από ανάμεσα σε δύο γεγονότα με την επιλογή εντολών από τις παλέτες "Έλεγχος" και "Τελεστές", για έλεγχο στην εντολή έλεγχου πρέπει να επιλέγεται τυχαία η η πρώτη επιλογή ή η δεύτερη, αυτό μπορούμε αν το επιτύχουμε με συνδυασμό εντολών από την παλέτα "Τελεστές" και επιλεγουμε τυχαια επιλογή από 1 μέχρι 2 και κάνουμε έλεγχο αν είναι ίσο με 1 με την εντολή ισότητας, έτσι αν είναι ίσο με ένα να πηγαίνει στο πρωτο μπλοκ εντολών. Έτσι ο συνδυασμός των εντολών γίνεται, που μέσα σε κάθε επιλογή θα υπάρχει θέση αρχικοποίησης δεξιά ή αριστερά της οθόνης. Για να εμφανίζεται το ψάρι χρησιμοποιήσουμε εντολές από την παλέτα "Κίνηση" για εμφάνιση από αριστερά έχουμε τις εντολές και για εμφάνιση από δεξιά έχουμε τις εντολές Επίσης δηλώνουμε και για τον άξονα των y να επιλέγεται τυχαία μια τιμή από το εύρος τιμών -180 με 180, με την εντολή Έτσι συνολικά ο συνδυασμός εντολών όταν αγγίζει ένα κίτρινο ψάρι τον καρχαρία:

Η εντολή καθυστέρησης την βάζουμε για να σταματάει το ψάρι και φαίνεται πιο ξεκάθαρα η στιγμή που τρώγεται.

Το κόκκινο ψάρι Τα κόκκινο ψάρι εμφανίζεται σε τυχαίες θέσεις στον χώρο, εκτός από την περιοχή πάνω αριστερά όπου εκεί εμφανίζεται καρχαρίας,(μπορούν να κινούνται στην περιοχή πάνω αριστερά, αλλά απαγορεύεται να εμφανιστούν εκεί κατά την εκκίνηση του παιχνιδιού). Εφόσον το κόκκινο ψάρι είναι εκείνο που αν ακουμπήσει τον καρχαρία αυτός χάνει μια ζωή, αποφεύγουμε να συμβεί το τυχαίο γεγονός, <ο καρχαρίας και το κόκκινο ψάρι κατά την την εκκίνηση του παιχνιδιού να ακουμπούν μεταξύ τους> και έτσι να χάσει ο καρχαρίας άδικα ζωή. Κινούνται συνεχώς από μόνα τους με σταθερή ταχύτητα, πιο γρήγορα από τα κίτρινα ψάρια και σε τυχαίες κατευθύνσεις στο χώρο. Όταν ακουμπήσει τον καρχαρία τότε εμφανίζεται οπουδήποτε αλλού εκτός από πάνω αριστερά (θέση καρχαρία)
 * Θέση**

Για να πετύχουμε ώστε τα κόκκινα ψάρια να εμφανίζονται σε συγκεκριμένες τυχαίες θέσεις στον χώρο εκτός από μια συγκεκριμένη περιοχή, πάλι από την παλέτα "Κίνηση" εισάγουμε τις εντολές και και τώρα όμως τις θέτουμε σε ένα τυχαίο εύρος συντεταγμένων ώστε αν αποφεύγουμε την περιοχή πάνω αριστερά. Χρησιμοποιώντας από την παλέτα "Τελεστές" την εντολή και δίνοντας τις συγκεκριμένο εύρος θέσεων (για το x [-240 240] και για το y[-110 180] ).Έτσι έχουμε τον συνδυασμό εντολών για την αρχικοποίηση της θέσης των κόκκινων ψαριών:

Αφού είναι εχθρός του καρχαρία μπορούμε να κάνουμε να κινούνται λίγο πιο γρήγορα τους αυξήσουμε την ταχύτητα κίνησης μειώνοντας τους την χρονική καθυστέρηση σε 0.001 δευτερόλεπτα. Το μπλοκ εντολών για την κίνηση του κόκκινου ψαριού είναι το ίδιο με αυτό του κίτρινου ψαριού άπλα αλλάζουμε μόνο την χρονική καθυστέρηση.
 * Κίνηση**

Όταν ακουμπήσει τον καρχαρία πρέπει και αυτό να εξαφανιστεί και να επανεμφανιστεί μετά από κάποιο χρονικό διάστημα ή αν θελουμε μπορούμε να το εμφανίσουμε απευθείας. Όπως αναλύσαμε πιο πάνω τις εντολές εμφάνισης και εξαφάνισης για τα κίτρινα ψάρια, το ίδιο ισχύει και για τα κόκκινα ψάρια, με την διαφορά τώρα ότι το κόκκινο ψάρι πρέπει να μην εμφανίζεται στην θέση του καρχαρία κατά την εκκίνηση του παιχνιδιού ή μετά από μια επαφή με τον καρχαρία. Έτσι στα τυχαία γεγονότα που θέτουμε το εύρος τιμών για τις θέσεις που μπορεί αν εμφανιστεί το κόκκινο ψάρι, θα αποκλείσουμε το σημείο όπου εμφανίζεται ο καρχαρίας. Πάλι ορίζουμε τις τιμές για τον άξονα των y να είναι από [-180 110].
 * Αισθητήρες** **και όψεις**

Έτσι συνολικά ο συνδυασμός εντολών όταν αγγίζει ένα κόκκινο ψάρι τον καρχαρία:

Το μοβ ψάρι

Εμφανίζεται, όπως και το κίτρινο ψάρι σε τυχαία θέση στο σκηνικό, άρα δεν χρειάζεται να του δώσουμε συγκεκριμένες θέσεις αρχικοποίησης.
 * Θέση**

Η κίνηση του είναι ίδια με την κίνηση του κίτρινου ψαριού, επειδή όμως είναι άλλο είδος ψαριού πρέπει να μην έχει τα ίδια χαρακτηρίστηκα με το κίτρινο ψάρι, έτσι μπορούμε να τους περιορίσουμε το εύρος τιμών των κατευθύνσεων που μπορούν να κινηθούν μειώνοντας τα σε -5 με 5, έτσι ώστε να μην κάνουν μεγάλη αλλαγή κατεύθυνσης και να φαίνεται ότι κινείτε με διαφορετικό τρόπο.
 * Κίνηση**

Έτσι το συνδυασμός εντολών κίνησης για το μοβ ψάρι γίνεται:

Ο τρόπος που εξαφανίζεται και εμφανίζεται είναι ο ίδιος με τον τρόπο περιγράψαμε στο πιο πάνω για το κίτρινο ψάρι. Αφού είναι πιο καλό φαγητό για τον καρχαρία (του δίνει πιο πολύ βαθμολογικό κέρδος) μπορούμε όταν το τρώει ο καρχαρίας να καθυστερούμε την επανεμφάνιση του, εισάγοντας πιο μεγάλο εύρος τιμών για τον χρόνο τυχαίας καθυστέρησης, έτσι ρυθμίζουμε από 5 -20 δευτερόλεπτα.
 * Αισθητήρες** **και όψεις**

Το χταπόδι

Εμφανίζεται στον χώρο στα κάτω όρια σε τυχαία σημεία του βυθού και κινείται ευθεία προς τα πάνω μέχρι τα πάνω όρια. Το σχήμα του χταποδιού δεν βλέπει ακριβώς πάνω στην ευθεία αλλά βλέπει πάνω-δεξιά θα πρέπει να αλλάξουμε την κατεύθυνση του, ώστε να βλέπει πάνω στην ευθεία που θα κινείται. Για την τυχαία επιλογή θέσης στο κάτω όριο, πρέπει να έχουμε τυχαία επιλογή για τον άξονα των x από το εύρος τιμών x[-235 235], αν και τα όρια του άξονα των x είναι -245 με 245, βάζουμε αυτά τα δικά μας όρια ώστε αν φαίνεται το χταπόδι πάντα ολόκληρο στην οθόνη, αν εμφανιστεί στα όρια τότε δεν θα φαίνεται ολόκληρο. Για την αλλαγή κατεύθυνσης από την παλέτα "Κίνησης" χρησιμοποιούμε την εντολή και δίνοντας την τιμή 65. Έτσι έχουμε τον συνδυασμό εντολών για την αρχικοποίηση της θέσης του χταποδιού:
 * Θέση**

Η κίνηση περιορίζεται μόνο στον άξονα των y. Εδώ από την παλέτα "Κίνησης" και την επιλογή μπορούμε να αλλάζουμε την τιμή των συντεταγμένων του χταποδιού και συγκεκριμένα να αυξάνουμε την τιμή της θέσης y και έτσι να φαίνεται η κίνηση του χταποδιού, για να αυξάνουμε την τιμή της θέσης y χρησιμοποιούμε από την παλέτα "Τελεστές" την εντολή και προσθέτουμε κάθε φόρα την θέση y συν κάποιο σταθερό αριθμό, όσο μεγαλύτερο αριθμό βάλουμε τόσο πιο γρήγορα θα φαίνεται ότι κινείται. οι εντολές αυτές μπαίνουν σε ένα βρόγχο ο οποίος θα πρέπει να σταματήσει όταν το χταπόδι φτάσει στα πάνω όρια, άρα από την παλέτα "Έλεγχος" τοποθετούμε την εντολή βρόγχου ώστε όταν ξεπεράσει κάποια συγκεκριμένη τιμή του άξονα των y να σταματήσει να εκτελείτε η εντολή,
 * Κίνηση**

Ξέροντας ότι το πάνω όριο έχει τιμή 180, βάζουμε στον έλεγχο μας την συνθήκη όταν το y ξεπεράσει την τιμή 160 να σταματήσει ο βρόγχος. Επίσης δίνουμε και μια χρονική καθυστέρηση 0.3 δευτερολέπτων ώστε να μην πηγαίνει πολύ γρήγορα.

Για να δείξουμε την κίνηση του χταποδιού όταν ανεβαίνει από τον βυθό προς τα πάνω, θα πρέπει με κάποιο τρόπο να φαίνεται ότι σπρώχνει το νερό προς τα κάτω και του δίνεται η ώθηση να ανεβαίνει. Εναλλάσσοντας τις δύο εικόνες του χταποδιού καθώς αυτό κινείται πετυχαίνουμε αυτό.
 * Αισθητήρες** **και όψεις**

Για να βλέπουμε την κίνηση της εναλλαγής καθαρά, προσθέτουμε σε κάθε εναλλαγή μορφής μια μικρή χρονική καθυστέρηση.

Ο συνδυασμός εντολών καθώς κινείται και αλλάζει μορφές το χταπόδι:

Όταν το χταπόδι ξεπεράσει την θέση στον άξονα y 160 πρέπει να εξαφανιστεί και μετά από κάποιο χρονικό διάστημα να επανεμφανιστεί και πάλι από τον βυθό. Επίσης όταν το χταπόδι ακουμπάει τον καρχαρία θα πρέπει να εξαφανίζεται κ να επανεμφανίζεται και πάλι από τον βυθό, μετά από κάποιο χρονικό διάστημα. Με την χρήση των εντολών από την παλέτα "Όψεις" και ,

Επειδή το γεγονός αυτό θα επαναλαμβάνεται για πάντα πρέπει να τοποθετούμε μέσα σε μια εντολή από την παλέτα "Έλεγχος" όπου θα τοποθετήσουμε μέσα τις θέσεις αρχικοποίησης, εμφάνιση του χταποδιού, την κίνηση του χταποδιού, την συνθήκη που θα ακουμπάει στον καρχαρία και θα τρώγεται, εξαφάνιση αν ξεπεράσει την τιμή 160 του άξονα των y και την τυχαία χρονική καθυστέρηση που θα πρέπει να περιμένουμε μέχρι αν επανεμφανιστεί.

Άρα έχουμε τον συνδυασμό εντολών για το χταπόδι:

Τριγυρίζει στον λίγο πιο πάνω από τον βυθό και έχει σταθερή κατεύθυνση (δεξιά και αριστερά) και κινούνται με χαμηλή ταχύτητα. Οι θέση τους είναι συντεταγμένες κοντά στον βυθό, άρα για μικρή τιμή του y.
 * Θέση**

Έτσι έχουμε τον συνδυασμό εντολών για την αρχικοποίηση της θέση του μικρού ψαριού:

Δεν χρειάζεται να αλλάζουν κατευθύνσεις και άρα μπορεί να απλοποιηθεί η κίνηση τους σε κίνηση μιας κατευθύνσεως και ένα έλεγχο για το αν έφτασε στα όρια να αναπηδήσει. Έτσι το μπλοκ εντολών για την κίνηση των μικρών ψαριών διαμορφώνεται ως εξής: .
 * Κίνηση**

Δεν χρειάζεται αν τοποθετηθούν αισθητήρες αφού το μικρό ψάρι δεν αλληλεπιδρά με κανένα αντικείμενο. Επίσης δεν αλλάζει ούτε όψεις.
 * Αισθητήρες** **και όψεις**

Εισαγωγή ήχων στο παιχνίδι
Για να εμπλουτίσουμε ακόμη λίγο το παιχνίδι μας, μπορούμε να εισάγουμε μερικούς ήχους. Οι ήχοι αυτοί μπορούν να προστεθούν σε είτε συγκεκριμένα συμβάντα είτε κατά την διάρκεια του παιχνιδιού μας. Την ώρα που ο καρχαρίας τρώει ένα ψάρι ή χταπόδι μπορούμε να βάλουμε στο αντικείμενο ψάρι ή το χταπόδι αντίστοιχα να παράγει ένα ήχο "Pop". Την ώρα που ο καρχαρίας αγγίζει ένα κόκκινο ψάρι μπορούμε να βάλουμε ακόμη ένα ήχο"Suspense", ώστε να δηλώνει την απώλεια μιας ζωής του καρχαρία. Ακόμη έναν ήχο τοποθετούμε στο σκηνικό έτσι ώστε να ακούγονται πάντα μπουρμπουλήθρες, οι οποίες θα μας υπενθυμίζουν ότι το παιχνίδι μας διαδραματίζεται μέσα στο νερό.

Για τους πρώτους δύο ήχους που περιγράψαμε και ακούγονται σε συγκεκριμένα συμβάντα μπορούμε από την παλέτα "Ήχος" να επιλέξουμε την εντολή, ώστε κάθε φορά που συμβαίνει το γεγονός να παίζει ο αντίστοιχος ήχος.

Ενώ για τον τρίτο ήχο που περιγράψαμε, επειδή θα παίζει σε όλη την διάρκεια του παιχνιδιού, πρέπει η εντολή να είναι τοποθετημένη σε ένα ατέρμονα βρόγχο. Υπάρχει όμως ένα πρόβλημα σε αυτήν την περίπτωση!!! Πριν προλάβει να τελειώσει ολόκληρος ο ήχος θα ξανάρχιζε από την αρχή, αλλοιώνοντας την μορφή ήχου που θα θέλαμε να ακούγεται. Για να λυθεί αυτό το πρόβλημα υπάρχει η εντολή από την παλέτα "Ήχος". έτσι θα ακούγεται ολόκληρος ο ήχος πρώτου να ξανά αρχίσει ο ίδιος ήχος να παίζει και πάλι.

Έτσι το σύνολο εντολών για το σκηνικό γίνεται:

Εισαγωγή μεταβλητών στο παιχνίδι
Για να ολοκληρώσουμε το παιχνίδι θα πρέπει να μπορούμε να επιτύχουμε τον στόχο και την τερματική συνθήκη του παιχνιδιού. Άρα λοιπόν πρέπει:
 * 1) να αποθηκευουμε τη βαθμολογία που μαζεύει ο καρχαρίας όταν τρώει ψάρια.
 * 2) Να μετράμε τις ζωές που χάνει ο καρχαρίας όταν ακουμπά στα κόκκινα ψάρια, όταν το γεγονός αυτό επαναληφθεί τρεις φορές, τότε πρέπει το παιχνίδι να τελειώνει.

Με βάση αυτά θέλουμε τις δύο τιμές αυτές να τις αποθηκευουμε σε κάποιες μεταβλητές, όπου πρώτα θα αρχικοποιούνται και μετά θα αυξάνονται.

Από την παλέτα "Μεταβλητές", επιλέγουμε την επιλογή "Δημιούργησε μια μεταβλητή" και δημιουργούμε δυο μεταβλητές, μια μεταβλητή "score" όπου θα αποθηκεύει τους βαθμούς που κερδίζει ο καρχαρίας και μια μεταβλητή "life" όπου θα αποθηκεύει τις ζωές που χάνει ο καρχαρίας.

Έτσι λοιπόν για κάθε αντικείμενο που είναι λεία του καρχαρία, την στιγμή που αρχικοποιείται κατά την εκκίνηση του παιχνιδιού τοποθετούμε την εντολή, όπου αρχικοποιεί την μεταβλητή σε 0 βαθμούς. Για την στιγμή που ακουμπά ο καρχαρίας ένα από αυτά τα αντικείμενα θα έχουμε την αύξηση αυτής της μεταβλητής κατά το ανάλογο βαθμό που προσφέρει κάθε αντικείμενο ( κίτρινο ψάρι 1 βαθμό, μοβ ψάρι 3 βαθμούς και χταπόδι 5 βαθμούς). Από την παλέτα "Μεταβλητές" για κάθε τέτοιο αντικείμενο τοποθετούμε την εντολή αυτή μέσα στον έλεγχο που κάνει κάθε αντικείμενο αν το ακουμπήσει ο καρχαρίας, δηλαδή κάτω από την εντολή ήχου που βάλαμε προηγουμένως και στο πεδίο τιμών βάζουμε το ανάλογο πόσο που αναφέραμε πιο πάνω για κάθε αντικείμενο.

Έτσι για παράδειγμα το κίτρινο ψάρι θα έχει το πιο κάτω σύνολο εντολών:

Για την μεταβλητή "life" θα πρέπει αν την αρχικοποιεί το κόκκινο ψάρι την στιγμή που ξεκινάει το παιχνίδι στην τιμή 3, και να μειώνεται κατά ένα κάθε φορά που ακουμπάει τον καρχαρία. Στις 3 φόρες που θα ακουμπήσει θα πρέπει σταματήσει το παιχνίδι. Άρα θα πρέπει αν αντικαταστήσουμε τον ατέρμονα βρόχο του κόκκινου ψαριού που και να τοποθετήσουμε ένα βρόγχο υπό συνθήκη από την παλέτα "Έλεγχος". Όπου η συνθήκη θα είναι μέχρι η μεταβλητή "life" να γίνει ίση με 0. Όταν βγει από τον βρόγχο τότε τερματίζουμε το παιχνίδι και κατά συνέπεια όλα τα αντικείμενα, με την εισαγωγή της εντολής από την παλέτα "Έλεγχός"

Έτσι το κόκκινο ψάρι έχει το πιο κάτω σύνολο εντολών:


 * Προσθήκη μπορούμε να δημιουργήσουμε αντίγραφα για κάθε αντικείμενο, έτσι ώστε να είναι πιο πλούσιο το υδάτινο περιβάλλον.

Εδώ υπάρχει ολοκληρωμένος ο κώδικας και μπορείτε να τον

ΤΕΛΟΣ
Ακόμα ένα παιχνίδι Pac Man []



__Περιγραφή του παιχνιδιού__
Το παιχνίδι είναι μια παραλλαγή του γνωστού σε όλους μας παιχνιδιού pacman. Βέβαια το δικό μας παιχνίδι έχει υποστεί κάποιες τροποποιήσεις.

Το περιβάλλον, που εξελίσσεται το παιχνίδι, είναι το διάστημα(stars). Ο ήρωας μας ( φαντασματι ) μέσα σ' ένα προκαθορισμένο χρονικό διάστημα καλείται να "φάει" τα αστεράκια για να συλλέξει τους πόντους που χρειάζεται για να κερδίσει στο παιχνίδι, αποφεύγωντας τους κακούς( νυχτερίδες), που έχουν σκοπό τους να φάνε το φαντασματάκι μας. Κάθε φορά που το φαντασματάκι ακουμπήσει ένα αστεράκι τότε η μεταβλητή σκορ αυξάνεται κατα ένα, ενώ κάθε φορά που το φαντασματάκι έρθει σε επαφή με κάποια απο τις νυχτερίδες τότε η μεταβλητή ζωή μειώνεται κατα ένα.

Για την προετοιμασία υλοποίησης του παιχνιδιού μας θα πρέπει > γι 'αυτά.
 * 1) Να επιλέξουμε το κατάλληλο υπόβαθρο για το σκηνικό.
 * 2) Να βρούμε τα αντικείμενα που θα χρησιμοποιήσουμε και να επιλέξουμε τις κατάλληλες ενδυμασίες¨
 * 1) Να προσαρμόσουμε τις διαστάσεις των αντικειμένων μας.
 * 2) Να ορίσουμε τη συμπεριφορά του καθενός από αυτά.

__**Αντικείμενα παιχνιδιού**__

> > > > > Αποτελεί τον κεντρικό ήρωα του παιχνιδιού μας. Εμφανίζεται στο πάνω αριστερό μέρος του περιβάλλοντος μας με την έναρξη του παιχνιδιού. Στόχος του είναι να περιφέρεται στο περιβάλλον και να τρώει τα αστεράκια, αποφεύγοντας τις νυχτερίδες.
 * **Φαντασματάκι**

> > > > Έχουμε τρία ( 3 ) τέτοια αντικείμενα, τα οποία περιφέρονται μέσα στο περιβάλλον με σκοπό να φάνε το φαντασματάκι. > Το πρώτο εμφανίζεται μέση της αριστερής πλευράς του περιβάλλοντος μας, το δεύτερο κάτω αριστερα ενώ το τρίτο πάνω δεξια με την έναρξη του παιχνιδιού μας. > >
 * **Νυχτερίδα**

> > > > Αυτά τα αντικείμενα έχουν τοποθετηθεί σε σταθερές θέσεις μέσα στο σκηνικό μας, έτσι ώστε να δυσκολέψουν το φαντασματάκι να κινηθεί μέσα στο περιβάλλον μας. > > > > > > Στο σκηνικό μας υπάρχουν πέντε ( 5 ) τέτοια αντικείμενα τα οποία βρίσκονται σε σταθερές θέσεις. Αποτελούν την τροφή για το φαντασματάκι. Κάθε φορά που θα έρθει σε επαφή με το φαντασματάκι εξαφανίζεται για ένα χρονικό διαστημα απο το περιβάλλον μας και έπειτα εμφανίζεται πάλι στην ίδια θέση. > >
 * **Κομήτες**
 * **Αστεράκια**

__**Σκηνικό**__

Το παιχνίδι μας λαμβάνει χώρο σ 'ένα διαστημικό περιβάλλον, οπότε εισάγουμε για υπόβαθρο του σκηνικού το stars. Όπως παρατηρούμε για το σκηνικό μας δεν υπάρχουν εντολές κίνησης. Επιπλέον, εισάγουμε και μια ηχογράφηση ( ηχογράφηση1 ), την οποία βάζουμε να ακούγεται κατά τη διάρκεια του παιχνιδιού.



Στο σενάριο του σκηνικού ορίζουμε τις αρχικές τιμές των δύο μεταβλητών ζωή και σκόρ, οι οποίες εμφανίζονται στο πάνω αριστερό μέρος του περιβάλλοντός μας. Οι δύο αυτές μεταβλητές αρχικοποιούνται με τις τιμές 3 και 0 αντίστοιχα.



Ακόμα, σε περίπτωση που το παιχνίδι μας τελειώσει, εξαιτίας της μεταβλητής σκόρ τότε αλλάζουμε το εφέ του σκηνικού.



Τέλος, στα σενάρια του σκηνικού τοποθετούμε τις συνθήκες τερματισμού του παιχνιδιού μας.

Η πρώτη συνθήκη είναι όταν η μεταβλητή ζωή γίνει ίση με το μηδέν ( 0 ).



Η δεύτερη συνθήκη είναι όταν η μεταβλητή σκορ γίνει ίση με το δέκα ( 10 ).



Η τρίτη συνθήκη είναι όταν το χρονόμετρο ξεπεράσει τα 59 δευτερόλεπτα.



__**Αναλυτική περιγραφή κάθε αντικειμένου**__

> > Όπως έχουμε προαναφέρει το αντικείμενο αυτό είναι ο ήρωας του παιχνιδιού μας, το οποίο κινούμε στο περιβάλλον με τα τέσσερα βελάκια του πληκτρολογίου. > > > > > > Το φαντασματάκι μας έχει δύο διαφορετικές ενδυμασίες. > > > > > > Αρχικά, μόλις ξεκινήσει το παιχνίδι, το φαντασματάκι εμφανίζεται πάνω αριστερά στο περιβάλλον μας. Ο ρόλος του στο παιχνίδι είναι να κινείται μέσα στο περιβάλλον, ανάμεσα από τους κομήτες και αποφεύγοντας τις νυχτερίδες, προκειμένου να φάει ένα απο τα αστεράκια. Το φαντασματάκι μας δε μπορεί να περάσει μέσα από τους κομήτες και κάθε φορά που έρχεται σ' επαφή μ' έναν από αυτούς περιστρέφεται κατά 180 μοίρες. Επιπλέον, όταν ο ήρωας μας έρθει σε επαφή με μία από τις νυχτερίδες τότε η μεταβλητή ζωή μειώνεται κατά 1, το φαντασματάκι μας πηγαίνει στην αρχική του θέση και ακούγεται ένας χαρακτηριστικός ήχος ( νότα 48 ). Όταν το φαντασματάκι μας ακουμπήσει κάποιο από τα αστεράκια τότε η μεταβλητή σκορ αυξάνεται κατα 1, το φαντασματάκι μας αλλάζει, για ένα μικρό χρονικό διάστημα, ενδυμασία και επανέρχεται ξανά στην αρχική του ενδυμασία. > > > > > > > > > > > > > > > > > > > > > > > > Τα αντικείμενα αυτά παίζουν το ρόλο του κακού στο παιχνίδι μας. Είναι αυτά τα οποία περιφέρονται στο περιβάλλον μας προσπαθώντας να ακουμπήσουν το φαντασματάκι μας. Μόλις ξεκινήσει το παιχνίδι καθεμία εμφανίζεται σ' ένα συγκεκριμένο σημείο του περιβάλλοντος μας με την αρχική της ενδυμασία. Τα σημεία αυτά είναι διαφορετικά για κάθε νυχτερίδα. > Κάθε τέτοιου είδους αντικείμενο έχει δύο διαφορετικές ενδυμασίες. > > > > > > > Σε περίπτωση που κάποια νυχτερίδα έρθει σε επαφή με το φαντασματάκι τότε η νυχτερίδα αλλάζει ενδυμασία, για ένα μικρό χρονικό διάστημα, και επανέρχεται στην αρχική της μορφή. > > Τέλος, η πορεία που πραγματοποιεί η καθεμία είναι επιλεγμένη από εμάς. > > > > > > > > > > > > > > > > Τα αντικείμενα αυτά αποτελούν την τροφή για το φαντασματάκι μας. Το κάθε αστεράκι βρίσκεται σε μια συγκεκριμένη θέση στο περιβάλλον μας, στην οποία εμείς το έχουμε τοποθετήσει. Κάθε φορά που ένα αστεράκι έρθει σε επαφή με το φαντασματάκι τότε ακούγεται για λίγο ένας χαρακτηριστικός ήχος ( τυμπανο 38 ) και το αστεράκι εξαφανίζεται για κάποιο χρονικό διάστημα. Αφού περάσει αυτό το χρονικό διάστημα, το οποίο έχουμε επιλέξει να είναι διαφορετικό για κάθε αστεράκι, το κάθε αστεράκι εμφανίζεται πάλι στην ίδια θέση. > > > > > > > > __ //Προέκταση// __ > > Θα μπορούσαμε να τοποθετήσουμε και κάποια άλλα αστεράκια, που θα μας δίνανε περισσότερους βαθμούς αν τα ακουμπούσαμε με τον ήρωα μας, αλλά θα φροντίζαμε αυτά να φυλάσσονταν πιο καλά από τις νυχτερίδες. > Επιπλέον, όπως είπαμε τα αστεράκια εξαφανίζονται κάθε φορά που τα αγγίζει το φαντασματάκι. Θα μπορούσαμε να αλλάξουμε τον κώδικα μας, έτσι ώστε μετά να επανεμφανίζονται σε διαφορετικά σημεία και όχι πάλι στην ίδια θέση
 * **Φαντασματάκι**
 * **Νυχτερίδες**
 * **Αστεράκι**

Ένα ακόμη παιχνίδι:

=Πέτρα - Ψαλίδι - Χαρτί= //**Πηγή**// : http://scratch.mit.edu/



Είναι το γνωστό παιχνίδι με τους εξής 3 απλούς κανόνες :


 * 1) Η Πέτρα νικάει το ψαλίδι
 * 2) Το ψαλίδι νικάει το χαρτί
 * 3) Το χαρτί νικάει την πέτρα

Κατασκευάζουμε το σκηνικό
Χρησιμοποιώντας τον επεξεργαστή της ζωγραφικής, δίνουμε στο σκηνικό την εξής μορφή (**Backround**):



Δημιουργούμε και μια μορφή σαν την αρχική για να εμφανίζεται κατά την έναρξη του παιχνιδιού και την ονομάζουμε **Instructions**.

H μόνη αλλαγή που χρειάζεται να κάνουμε όσον αφορά το σκηνικό είναι να αλλάξουμε το υπόβαθρο από **Instructions** σε **Backround** λίγα δευτερόλεπτα μετά την έναρξη του παιχνιδιού. Συνεπώς, το σενάριο θα έχει ως εξής:



Κατασκευάζουμε μια μορφή για τον παίκτη
Έστω ότι το ονομάζουμε **You**.

Για το **You** χρειαζόμαστε 7 **ενδυμασίες**
 * 1 για το κάθε αντικείμενο στην κανονική του μορφή:




 * 1 για το κάθε αντικείμενο στην κατεστραμμένη του μορφή:




 * και τέλος μια ενδυμασία **Choose** για την επιλογή αντικειμένου από τον παίκτη:



Ας προχωρήσουμε τώρα στη συγγραφή του σεναρίου για την μορφή You

 * Θα χρειαστούμε μία μεταβλητή για να κρατάμε το score.
 * Στην αρχή του παιχνιδιού μηδενίζουμε το score και παροτρύνουμε τον παίκτη να επιλέξει αντικείμενο:




 * Στη συνέχεια ελέγχουμε την επιλογή του παίκτη:




 * Εφόσον ο παίκτης επιλέξει το αντικείμενο του, το συγκρίνουμε με το αντικείμενο (που επιλέγεται τυχαία) του αντιπάλου.
 * Σημείωση : Ελέγχουμε μόνο τις περιπτώσεις που νικάει ο παίκτης κάνοντας τις ανάλογες ενέργειες (αυξάνουμε το score, μεταφέρουμε το αντικείμενο του παίκτη ομαλά πάνω στο αντικείμενο του αντιπάλου, και μετατρέπουμε το αντικείμενο του αντιπάλου στην κατεστραμμένη του μορφή):




 * Τέλος, θα πρέπει να ελέγξουμε τις περιπτώσεις που χάνει ο παίκτης και να τροποποιήσουμε το αντικείμενο του ανάλογα:



Κατασκευάζουμε μια μορφή για αντίπαλο
Έστω ότι ονομάζουμε τον αντίπαλο **Scratch**.

Δουλεύουμε όπως πριν, αλλά έχουμε τις εξής διαφορές.


 * Δεν χρειάζεται η ενδυμασία **Choose** (όπως στον παίκτη). Οι υπόλοιπες ενδυμασίες είναι κοινές με αυτές του παίκτη:




 * Στον κυρίως κώδικα επιλέγεται ένα τυχαίο αντικείμενο, και στη συνέχεια έχουμε έλεγχο και ανάλογες κινήσεις σε περίπτωση νίκης του αντιπάλου (όπως πριν):




 * Και τέλος, θα πρέπει να ελέγξουμε τις περιπτώσεις που χάνει ο αντίπαλος και να τροποποιήσουμε το αντικείμενο του ανάλογα:



Κατασκευάζουμε τα 3 κουμπιά-πλήκτρα επιλογής αντικειμένου για τον παίκτη



 * Θα χρειαστούμε 2 ενδυμασίες για το κάθε κουμπί - πλήκτρο.
 * Hilight** και **Button** (για το αν είναι πατημένο το πλήκτρο ή όχι, αντίστοιχα).

Για το **Scissors** έχουμε :



Για το **Paper** έχουμε :



Για το **Rock** έχουμε :




 * Το μόνο που διαφέρει μεταξύ τους είναι η θέση που έχει κάθε πλήκτρο στο σκηνικό.

Για το **Scissors** έχουμε :



Για το **Paper** έχουμε :



Για το **Rock** έχουμε :




 * Τέλος, θα πρέπει να κάνουμε τους εξής ελέγχους για το πότε θα εμφανίζεται και πότε όχι το κάθε κουμπί, καθώς και τι γίνεται όταν το κουμπί πατηθεί :

Για το **Scissors** έχουμε :



Για το **Paper** έχουμε :



Για το **Rock** έχουμε :

=ΤΕΛΟΣ=