Ο κόσμος του Robby

Φύλλο Εργασίας

 

Τίτλος: Ο κόσμος του Robby

Γνωστικό Αντικείμενο: Εφαρμογές Πληροφορικής-Υπολογιστών

Διδακτική Ενότητα: Διερευνώ - Δημιουργώ – Ανακαλύπτω, Συνθετικές εργασίες. Δημιουργικές δραστηριότητες με χρήση πακέτων λογισμικού, προγραμματιστικών εργαλείων, υπηρεσιών του Internet, εκπαιδευτικού λογισμικού

Τάξη: Α’ Λυκείου

Διάρκεια: 5 ώρες

 

 

Δραστηριότητα 1: « Ο κόσμος του Robby»

 

Στην ενότητα αυτή θα επιχειρήσετε να δημιουργήσετε ένα παιχνίδι (Εικόνα 16 - 1). Ο κεντρικός ήρωας είναι ο Robby και κινείται σε ένα πεδίο δράσης, όπου αλληλεπιδρά με διάφορες άλλες οντότητες.

 

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

 

Στο τέλος κάθε παιχνιδιού, εμφανίζεται μήνυμα στον παίκτη που δηλώνει αν κέρδισε ή όχι και στην γραμμή κατάστασης φαίνονται οι πόντοι που συλλέχτηκαν. Ο έλεγχος των κινήσεων γίνεται με τα βέλη του πληκτρολογίου. Μπορείτε να κατασκευάσετε την «πίστα» όπως εσείς θέλετε. H Εικόνα 16 - 1 δείχνει ένα ενδεικτικό προτεινόμενο πεδίο.

 

Εικόνα 16 -  1

Βήμα 1ο

 

Οι κλάσεις

 

Στο αρχείο (eikones.zip) θα βρείτε όλες τις εικόνες που θα χρειαστείτε για τη δημιουργία του παιχνιδιού.

 

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

 

Πίνακας 11

ΚΛΑΣΗ

ΑΠΕΙΚΟΝΙΣΗ

ΛΕΙΤΟΥΡΓΙΑ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Βήμα 2ο

 

Οι πράκτορες

 

Ενεργοποιήστε το πρόγραμμα Agentsheets και δημιουργήσετε ένα νέο έργο (Αρχείο->Νέο Έργο) με το όνομα Robby. Ορίστε το μέγεθος των πρακτόρων 50x50.

 

Μη ξεχνάτε ότι όλοι οι πράκτορες ενός έργου έχουν τις ίδιες διαστάσεις και αυτές δεν είναι δυνατό να αλλάξουν μετά τη δημιουργία του.

 

Δημιουργείστε έπειτα τους πράκτορες που αποφασίσατε στο Βήμα1. Ορίστε  τις απαραίτητες για κάθε πράκτορα απεικονίσεις και ονομάστε τις κατάλληλα. Με Επεξεργασία απεικόνισης και Εισαγωγή Εικόνας δώστε μορφή στις απεικονίσεις χρησιμοποιώντας τις Εικόνες του φακέλου που αναφέρεται στο Βήμα 1.

 

Εναλλακτικά, μπορείτε να σχεδιάσετε μόνοι σας τις απεικονίσεις με τα σχεδιαστικά εργαλεία ή ακόμη και να δημιουργήσετε εικόνες στη Ζωγραφική και έπειτα να τις εισάγετε.

 

Στην Εικονοθήκη Πρακτόρων φαίνονται τώρα όλοι οι Πράκτορες με τις απεικονίσεις   τους (Εικόνα 16 - 2).                  

 

Εικόνα 16 -  2

 

Βήμα 3ο

 

Το πεδίο εργασίας

 

Δημιουργήστε ένα νέο πεδίο εργασίας και με Αρχείο->Φορτωμα Φόντου εισάγετε το φόντο που υπάρχει στο φάκελο με τις εικόνες. Στη συνέχεια, χρησιμοποιώντας το εργαλείο εισαγωγής πράκτορα, (μολύβι), τοποθετήστε στο πεδίο τους απαραίτητους πράκτορες.

 

Μπορείτε να δημιουργήσετε την πίστα με όποια διάταξη επιθυμείτε εσείς ή να χρησιμοποιήσετε ως οδηγό την Εικόνα 16 - 1. Με Αρχείο->Αποθήκευση, αποθηκεύεστε το έτοιμο πεδίο Εργασίας.

 

 

Βήμα 4ο

 

Προγραμματισμός συμπεριφοράς του πράκτορα Robby

 

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

 

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

 

Επιλέξτε τον πράκορα Robby και Επεξεργασία Συμπεριφοράς. Η μέθοδος για την κίνηση του Robby θα έχει ενεργοποιητή «Κατά τη λειτουργία», καθώς σε οποιαδήποτε φάση του παιχνιδιού ο ήρωας πρέπει να υπακούει στα βέλη.

 

Οι συνθήκες της μεθόδου είναι τύπου Αν πληκτρολογηθεί και παίρνουν ορίσματα τα κουμπιά-βέλη. Οι δράσεις είναι η μετακίνηση προς την κατάλληλη κατεύθυνση και η αντίστοιχη αλλαγή της απεικόνισης Εικόνα 16 - 3.

 

 

 

 

 

 

 

 

 

 

 

 

 

Εικόνα 16 -  3

 

Από τη μέθοδο λείπει ο έλεγχος για πρόσκρουση σε τοίχο. Κάθε φορά που πληκτρολογείται ένα βέλος πρέπει πρώτα να ελέγχεται με κατάλληλη συνθήκη αν η κίνηση οδηγεί σε τοίχο ώστε να αποφευχθεί. Χρησιμοποιείστε τη συνθήκη Αν Δω (τοίχο στην κατεύθυνση που με οδηγεί το βέλος) και σχηματίστε τους κανόνες για τον έλεγχο αυτό. Οι κανόνες αυτοί προστίθενται στην κορυφή της μεθόδου γιατί μόνο αν εκτελεστούν πρίν από τους κανόνες της μετακίνησης έχουν νόημα (Εικόνα 16 - 4).

Εικόνα 16 -  4

 

Έπειτα θα προγραμματίσετε μία μέθοδο που θα ελέγχει αν ο Robby έχει φτάσει σε τερματική κατάσταση. Με χρήση της συνθήκης Αν είμαι στοιβαγμένο πάνω από και με ορίσματα την ανοιχτή παγίδα(σε περίπτωση αποτυχίας) και τον πράκτορα προορισμού(σε περίπτωση επιτυχίας) συμπληρώνουμε δύο κανόνες. Το πεδίο των δράσεων περιλαμβάνει δράσεις του τύπου Περιμένω, Εξαφανίζω,Show Message και  Επαναφέρω την αρχική προσομοίωση. Έτσι όταν ο το παιχνίδι τερματίσει ο Robby θα εξαφανιστεί μετά από μικρή αναμονή, έπειτα θα εμφανιστεί μήνυμα ανάλογο με την έκβαση του παιχνιδιού και η προσομοίωση θα επανέλθει στην αρχική της κατάσταση (Εικόνα 16 - 5).

Εικόνα 16 -  5

Οι έλεγχοι της μεθόδου που μόλις προγραμματίσατε πρέπει να γίνονται κάθε φορά που ο Robby αλλάζει θέση. Προσθέστε στη μέθοδο που μετακινεί τον Robby την κλήση της μεθόδου αυτής μετά από κάθε μετακίνηση και τελειώστε έτσι με τον προγραμματισμό των συμπεριφορών του ήρωα (Εικόνα 16 - 6).

 

 

 

 

 

 

 

 

 

 

Εικόνα 16 -  6

 

Βήμα 5ο

 

Προγραμματισμός συμπεριφοράς των πρακτόρων Τοίχος και Πετράδι

 

Ο πράκτορας Τοίχος δεν έχει κάποια συμπεριφορά. Ο ρόλος του περιορίζεται στο να τον αποφεύγει ο Robby, αλλά αυτό ελέγχεται μέσα από τις συμπεριφορές του ίδιου του ήρωα, ενώ ο πράκτορας Τοίχος δεν απαίτεί τον προγραμματισμό κάποιας συμπεριφοράς.

 

Ο πράκτορας Πετράδι τώρα, συλλέγεται  από τον Robby και του δίνει πόντους. Συγκεκριμένα, κάθε διαμάντι προσδίδει 10 πόντους, ενώ κάθε ρουμπίνι 20.

 

Για τον προγραμματισμό των παραπάνω συμπεριφορών επιλέξτε την επεξεργασία συμπεριφοράς του πράκτορα και σχηματίστε δύο κανόνες, έναν για κάθε είδος πετραδιού. Η μέθοδος έχει προφανώς ενεργοποιητή   «Κατά τη λειτουργία». Η συνθήκη που εξετάζει αν το πετράδι έχει βρέθει στο δρόμο του Robby είναι η  «Αν είμαι στοιβαγμένο κάτω από» με όρισμα πράκτορα τύπου Robby. Όταν η συνθήκη αυτή είναι αληθής το πετράδι “συλλέγεται”, με το να εξαφανίζεται. Η τιμή της μεταβλητής προσομοίωσης points, αυξάνεται ανάλογα με το είδος του πετραδιού που συλλέχθηκε (Εικόνα 16 - 7).

 

Εικόνα 16 -  7

 

Βήμα 6ο

 

Προγραμματισμός συμπεριφοράς των πρακτόρων Παγίδα και Προορισμός

 

Οι πράκτορες  τύπου Παγίδα πρέπει περιστασιακά να αλλάζουν απεικόνιση ώστε να γίνονται ενεργοί, να παραμένουν έτσι για σύντομο χρονικό διάστημα και έπειτα να επανέρχονται στην αρχική ακίνδυνη κατάστασή τους. Αυτή η εναλλαγή καταστάσεων πρέπει να γίνεται ακανόνιστα και φαινομενικά τυχαία ώστε να μην καταφέρνει ο Robby εύκολα να «μαντεύει» την αντίδρασή τους και να τις αποφεύγει.

 

Η μέθοδος που αλλάζει ψευδοτυχαία την κατάσταση της παγίδας είναι η change (Εικόνα 16 - 8). Αυτή εξετάζει κάθε φορά την απεικόνιση της παγίδας που την καλεί και με πιθανότητα 50% την ανοίγει αν είναι κλειστή και το αντίστροφο. 

 

Εικόνα 16 -  8

Οι παγίδες θα αλλάζουν κατάσταση-απεικόνιση σε όλη τη διάρκεια της λειτουργίας του παιχνιδιού. Συμπεραίνουμε λοιπόν ότι η change θα καλείται σε μία μέθοδο με ενεργοποιητή «Κατά τη λειτουργία». Εντούτοις, αν η change καλείται συνεχώς, χωρίς καμία συνθήκη, οι παγίδες θα αλλάζουν κατάσταση συνεχώς και αστραπιαία και ουσιαστικά θα είναι σαν να «αναβοσβήνουν». Πρέπει λοιπόν η change να καλείται κάθε ένα συγκεκριμένο χρονικό διάστημα, για παράδειγμα Μία φορά κάθε 0.5 δευτερόλεπτα.

 

Συνδυάζοντας τα παραπάνω ολοκληρώνουμε τη συμπεριφορά του πράκτορα Παγίδα (Εικόνα 16 - 9).

 

Εικόνα 16 -  9

Τέλος, ο πράκτορας Προορισμός δεν έχει κάποια συμπεριφορά και ο έλεγχος για την άφιξη του Robby  σε συτόν γίνεται μέσα από μέθοδο του ίδιου του ήρωα.

 

 

Βήμα 7ο

 

Βελτίωση της διεπαφής

 

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

 

 

Εμφάνιση των πόντων που έχει συλλέξει ο παίκτης

 

Κάθε φορά που το παιχνίδι τερματίζεται, ανεξάρτητα από το αποτέλεσμα, είναι σκόπιμο να ενημερώνεται ο χρήστης για το σύνολο των πόντων που έχει συλλέξει. Αυτό γίνεται με χρήση της δράσης Ηχώ πριν την επαναφορά της προσομοίωσης σε περίπτωση τερματισμού. Σαν παράμετρο θα δώσετε την μεταβλητή points (Εικόνα 16 - 10).

Για να εμφανίσετε την τιμή μιας μεταβλητής και όχι το όνομά της, μη ξεχάσετε να τοποθετήσετε το σύμβολο ~ μπροστά από το όνομα της.

 

 

Εικόνα 16 -  10

 

Προσθήκη ήχων

 

Μία ακόμη εμφανής έλλειψη είναι η απουσία ηχητικών εφέ που μπορούν να ζωντανέψουν την εφαρμογή.

Η δράση Αναπαράγω Ήχο δίνει τη δυνατότητα παραγωγής ήχου και προσφέρει διάφορους προκαθορισμένους ήχους από τους οποίους μπορείτε να επιλέξετε. Κάθε φορά που ο Robby συλλέγει ένα Πετράδι θα παράγεται ένας ήχος (Εικόνα 16 - 11).

Εικόνα 16 -  11

 

Επίσης ήχος που παραπέμπει σε εμπόδιο θα αναπαράγεται όποτε ο Robby προσκρούει σε τοίχο (Εικόνα 16 - 12). Οι παγίδες επίσης ηχούν όταν ανοίγουν (Εικόνα 16 - 13).

 

 

 

 

 

Εικόνα 16 -  12

 

 

 

 

 

 

 

 

 

 

 

 

Εικόνα 16 -  13