ΕΝΤΟΛΕΣ Επεξήγηση των εντολών που θα χρησιμοποιηθούν παρακάτω στα παραδείγματα Βάζοντας την εντολή αυτή σε οποιοδήποτε χαρακτήρα μπορούμε να αλλάζουμε όψεις (δλδ ενδυμασία). Η εντολή αυτή κάνει ό,τι και η παραπάνω με τη διαφορά ότι δεν επιλέγουμε άμεσα την όψη που θέλουμε, αλλά έμμεσα ανάλογα με ποια σειρά τις έχουμε επιλέξει από την επιλογή ενδυμασίες του κάθε χαρακτήρα μας. Δεν είναι ακριβώς εντολή, αλλά μια επιλογή, όπου αν την επιλέξουμε μας εμφανίζει στο παράθυρό μας ποια ενδυμασία χρησιμοποιεί ο χαρακτήρας μας. Με την εντολή αυτή διαλέγουμε χαρακτήρας μας να είναι μπροστά από οποιονδήποτε χαρακτήρα του προγράμματος μας (αρκεί βέβαια να μην έχουμε κάνει χρήση της εντολής αυτή και για άλλον χαρακτήρα) Με αυτή την εντολή μπορούμε να διαλέξουμε σε ποιο επίπεδο επιθυμούμε να βρίσκεται ο κάθε χαρακτήρας. Όπως και στα κόμικς, έτσι και οι χαρακτήρες που θα δημιουργήσουμε εμείς θα πρέπει μας να έχουν διαφορετικές όψεις (δλδ διαφορετική ενδυμασία), ανάλογα με την περίσταση. Αυτά μπορούν να πραγματοποιηθούν με την χρήση των παρακάτω εντολών. Με τη βοήθεια των εντολών αλλαγή σε ενδυμασία <ενδυμασία1> και επόμενη ενδυμασία μπορούμε να αλλάξουμε την όψη (ενδυμασία) του χαρακτήρα μας. Μπορούμε να σκεφτούμε παραδείγματα που όπου θα χρησιμοποιούσαμε κάτι τέτοιο? Ένα απλό παράδειγμα είναι όταν θέλουμε να απεικονίσουμε έναν ήρωα μας να περπατάει ή όταν θέλουμε ο χαρακτήρας μας να κάνει τραμπολίνο και να κάνει διαφορετικές φιγούρες ή απλά να τον κάνουμε να χορεύει! Ξεκινάμε να κάνουμε λοιπόν το παράδειγμα του τραμπολίνο όπου θα χρειαστούμε 2 sprites. Ένα sprite θα είναι το τραμπολίνο και ένα θα είναι η μπαλαρίνα μας όπου εκεί θα κάνουμε τις αλλαγές στις ενδυμασίες. Ας ξεκινήσουμε με το τραμπολίνο το οποίο μπορούμε να το βρούμε αποθηκευμένο MEDIA->COSTUMES->THINGS->trampoline. Οι εντολές που θα εκτελεί το sprite τραμπολίνο είναι οι παρακάτω (βλ εικόνα 7.1.1):
Βλέπουμε ότι ξεκινάμε θέτοντας τη θέση του τραμπολίνο (προκειμένου να βρίσκεται στο κάτω μέρος του παραθύρου ή όπου άλλου επιθυμούμε). Συνεχίζουμε με μια επανάληψη η οποία πραγματοποιείται με τη βοήθεια ενός ελέγχου (ο οποίος θα προσδιορίζει τη λειτουργία του παρόντος sprite), που θα εκτελεί το παρακάτω μέρος του κώδικα εφόσον το τραμπολίνο ακουμπάει τη Μορφή3 (δλδ την μπαλαρίνα μας). Αυτό επιτυγχάνεται με τη βοήθεια της εντολής <αγγίζει το Μορφη3 ;> όπου τη λειτουργία της θα την εξετάσουμε εκτενέστερα στα παρακάτω κεφάλαια. Έπειτα, παρατηρούμε πως Εικόνα 7.1.1 χρησιμοποιούμε την εντολή <όρισε το εφέ μάτι ψάρι σε -40 > και την εντολή <όρισε το εφέ μάτι ψάρι σε 0 > και έτσι καταφέρνουμε την ώρα που ακουμπάει το sprite Μορφή3 (δλδ η μπαλαρίνα) να παραμορφώνεται για 0,5 δευτερόλεπτα η μορφή του τραμπολίνο μας (Την εντολή αυτή θα την επεξήγήσουμε). Έτσι αυτό θα επαναλαμβάνετε συνέχεια, εφόσον το ένα ακουμπήσει το άλλο. Συνεχίζουμε με την μπαλαρίνα μας (όπου και βρίσκεται το κομμάτι κώδικα που μας ενδιαφέρει περισσότερο), την οποία μπορούμε να την βρούμε αποθηκευμένη MEDIA- >COSTUMES->PEOPLE->ballerina-b,ballerina-c,ballerina-d (εικόνες 7.1.2, 7.1.3, 7.1.4 αντίστοιχα). Εικόνα 7.1.2 Εικόνα 7.1.3 Εικόνα 7.1.4 Διαλέγουμε μία από αυτές ως αρχική μορφή του sprite μας και στη συνέχεια ορίζουμε τις υπόλοιπες δύο από αυτές ως ενδυμασίες. Οι εντολές που θα εκτελέσει το sprite μπαλαρίνα είναι όλες γνωστές εκτός από την εντολή αλλαγή σε ενδυμασία <ενδυμασία1> την οποία θα την εξετάσουμε στο παρόν κεφάλαιο. Έτσι έχουμε το παρακάτω σύνολο εντολών (βλ. Εικόνα 7.1.5) : Όπως βλέπουμε ξεκινάμε και πάλι θέτοντας τη θέση του sprite μας. Έπειτα, εκτελούμε συνέχεια τον κώδικα μας με την εντολή για πάντα (όπως θα δούμε σε επόμενο κεφάλαιο), αλλάζοντας την ενδυμασία του sprite μας. Ουσιαστικά κινούμαστε ομαλά σε μια ευθεία(αυτό το επιτυγχάνουμε κρατώντας σταθερό το x=0 και αλλάζοντας το y) ξεκινώντας από το σημείο y: 71 και πηγαίνοντας στο y: -130 με την ενδυμασία ballerina-d. Όμοια συνεχίζουμε την πορεία μας ανεβαίνοντας προς τα πάνω από τη θέση που είχαμε σταματήσει πριν (δλδ την y=-130) και πηγαίνουμε στο y=90 με την ενδυμασία ballerina-c. Ομοίως κάνουμε και τα υπόλοιπα, και Εικόνα 7.1.5 μην ξεχνάμε πως όλα αυτά μπορούν να αλλάξουν και να τροποποιηθούν ανάλογα τι επιθυμούμε εμείς να κάνουμε. Στο παράδειγμά μας έχουμε 2
διαφορετικές καταστάσεις για το τραμπολίνο και 3 για την μπαλαρίνα μας. Για το τραμπολίνο έχουμε την κανονική μορφή του και την παραλλαγμένη όταν προσγειώνεται πάνω του η μπαλαρίνα, ενώ για την μπαλαρίνα μας έχουμε μία μορφή όταν προσγειώνεται πάνω στο τραμπολίνο και μετά όταν ανεβαίνει, μια όταν κατεβαίνει και μια τελευταία όταν βρίσκεται στην κορυφή. Εικόνα 7.1.6 Εικόνα 7.1.7 Εικόνα 7.1.8 Εικόνα 7.1.9 Όσο αφορά την εντολή επόμενη ενδυμασία θα μπορούσαμε να τροποποιήσουμε το παραπάνω παράδειγμα κάνοντας μόνο τη χρήση της εντολής επόμενη ενδυμασία. Αυτό θα μπορούσαμε να το δούμε κάνοντας ένα άλλο παράδειγμα όπου ένα sprite χορεύει. Και για να βλέπουμε ποια ενδυμασία χρησιμοποιείται κάθε στιγμή απλά θα επιλέξουμε την εντολή-επιλογή όπου θα εμφανίζεται στο περιβάλλον εκτέλεσης του προγράμματος. Έτσι θα μπορούσαμε να έχουμε τις παρακάτω εντολές:
Με τις εντολές αυτές και έχοντας επιλέξει την παραπάνω επιλογή-ενδυμασία θα είχαμε τα εξής ενδεικτικά αποτελέσματα: ΠΡΟΣΟΧΗ: Το αποτέλεσμα που θα παραχθεί από το πρόγραμμα μας (κάνοντας χρήση της εντολής επόμενη ενδυμασία ) εξαρτάται πολύ από τη σειρά που έχουμε επιλέξει τις ενδυμασίες στο sprite μας Άλλες 2 εντολές που θα μας ήταν ιδιαίτερα χρήσιμες είναι η εντολή πήγαινε σε πρώτο πλάνο και πήγαινε πίσω <1> επίπεδο. Αρχικά τα sprite δεν έχουν ένα συγκεκριμένο επίπεδο στο περιβάλλον εκτέλεσης του προγράμματος, αλλά τυχαία (συνήθως το sprite που χειριστήκαμε τελευταίο είναι επιλέγεται αυτόματα να είναι σε πρώτο πλάνο). Γι αυτό το λόγο θα χρειαστεί να ορίζουμε κάθε φορά το επίπεδο στο οποίο επιθυμούμε να είναι το κάθε sprite. Μπορούμε να δημιουργήσουμε ένα απλό πρόγραμμα για κατανόηση όπου θα έχουμε 3 sprites ορισμένα στο ίδιο σημείο όπου και να είναι και τα 3 σε πρώτο πλάνο, κάνοντας χρήση της εντολής πήγαινε σε πρώτο πλάνο (το ίδιο μπορεί να συμβεί αν κάνουμε χρήση της εντολής πήγαινε πίσω <0> επίπεδο ). Έτσι θα έχουμε τις παρακάτω εντολές (βλ. ) που θα είναι ίδιες για κάθε sprite: Εδώ απλά θέτουμε τη θέση x=0, y=0 και λέμε και στα 3 sprites είναι σε πρώτο πλάνο. Αν εκτελέσουμε αυτό θα διαπιστώσουμε πως κάθε φορά που το εκτελούμε διαφορετικό sprite βρίσκεται μπροστά από τα υπόλοιπα.
Άρα έστω πως έχουμε τα εξής sprites : Εικόνα 7.1.11 Εικόνα 7.1.12 Εικόνα 7.1.13 Αν εκτελούμε κάθε φορά τον ίδιο κώδικα τη μια φορά θα έχουμε το αποτέλεσμα της Εικόνας 7.1.14 και την επόμενη φορά θα έχουμε το αποτέλεσμα της Εικόνας 7.1.15. Εικόνα 7.1.14 Εικόνα 7.1.15 Θα μπορούσαμε να κάνουμε χρήση της εντολής πήγαινε πίσω <1> επίπεδο (όπου τον αριθμό θα τον αλλάζουμε ανάλογα με το επίπεδο που επιθυμούμε)προκειμένου να μην αφήνουμε τίποτα στην τύχη. Έτσι θα μπορούσαμε αν θέλαμε το αποτέλεσμα της Εικόνας 7.1.14 να εκτελούσαμε τον κώδικα της Εικόνας 7.1.16 (όπου αντιστοιχούνε στα sprites των Εικόνων 7.1.11-13) και διαφορετικά αν θέλαμε το αποτέλεσμα της Εικόνας 7.1.15 να εκτελούσαμε τον κώδικα της Εικόνας 7.1.17. Εικόνα 7.1.16 Εικόνα 7.1.17