σύντομες σημειώσεις βασισμένες σε δουλειά των συναδέλφων Κ. Φλώρου και Μ. Μαντουβάλου Το τρίτο παιχνίδι ΛΑΒΥΡΙΝΘΟΣ ΜΕ ΕΜΠΟΔΙΑ Σκοπός του παιχνιδιού είναι ο παππούς να μπορέσει να κινηθεί μέσα έναν λαβύρινθο και να φτάσει σε ένα αντικείμενο - στόχο (διαμάντι). Στο δρόμο συναντάει αράχνες που κινούνται οριζόντια. Αν ο παππούς δεν μπορέσει να περάσει από τις αράχνες τότε το παιχνίδι αρχίζει από την αρχή. Αν ο παππούς φτάσει στο διαμάντι τότε συνεχίζει σε επόμενη πίστα αν υπάρχει αλλιώς το παιχνίδι τελειώνει. Το παιχνίδι θα πρέπει να περιέχει τα παρακάτω στοιχεία: Παππούς: κινείται από τον χρήστη με τα βελάκια του πληκτρολογίου πάνω - κάτω και δεξιά - αριστερά προσπαθώντας να φτάσει στο αντικείμενο στόχο (διαμάντι) και να αποφύγει να συναντηθεί με τα αντικείμενα - εμπόδια (αράχνες). Αράχνη: κινείται μόνο οριζοντίως και πηγαίνει πέρα δώθε. Αν πέσει πάνω στον παππού το παιχνίδι τελειώνει. Διαμάντι: μένει ακίνητο. Όταν το φτάσει ο παππούς το παιχνίδι τελείωσε. Τοιχώματα τοίχου: είναι το συμπαγές αντικείμενο το οποίο οριοθετεί την πίστα και δημιουργεί διαδρόμους και δωμάτια, χώρους δηλαδή στους οποίους μπορεί να κινηθεί ο παππούς και οι αράχνες. Τα παραπάνω θα τοποθετηθούν σε ένα δωμάτιο (room) και θα χρησιμοποιηθεί φόντο (background) άμμου. - 1 -
1ο βήμα: Εισαγωγή των Sprites Επιλέξτε στο μενού Resources Create Sprite ή κάντε κλικ στο κουμπί Στη φόρμα που ανοίγει πατήστε το κουμπί Load Sprite Στο παράθυρο που εμφανίζεται περιηγηθείτε στον φάκελο Maze - Platform (βρίσκεται μέσα στο φάκελο εγκατάστασης του Game Maker), ανοίξτε την εικόνα wall_block.png και δώστε στο sprite κατάλληλο όνομα, π.χ. spr-wall και πατήστε ΟΚ. Με τον ίδιο τρόπο δημιουργήστε τα ακόλουθα sprites: spr-diamond (αρχείο diamond.png στον φάκελο Maze - Platform) spr-oldman (αρχείο npc_oldman.png στον φάκελο Maze - Platform) spr-spider1 (αρχείο spider_left_strip8.png στον φάκελο Maze - Platform) Αποθηκεύστε την εργασία σας πατώντας Save στο μενού File και επιλέγοντας κατάλληλο όνομα και φάκελο αποθήκευσης. 2ο βήμα: Δημιουργία των Objects sprite spr-wall. Τα sprites είναι μόνο εικόνες και δεν κάνουν τίποτα (μετακίνηση, αντίδραση στο κλικ του ποντικιού, κλπ.). Πρέπει να δημιουργηθούν objects (αντικείμενα) τα οποία να συνδεθούν με αντίστοιχα sprites. Για να δημιουργήσετε ένα object, επιλέξτε στο μενού Resources Create Object ή κάντε κλικ στο κουμπί Πρώτα δημιουργήστε το αντικείμενο obj-wall από το Το αντικείμενο αυτό πρέπει να είναι Visible και Solid. Με παρόμοιο τρόπο δημιουργούμε τα αντικείμενα: obj-diamond, obj-oldman και obj-oldman τα οποία είναι μόνο Visible. 3ο βήμα: Δημιουργία Σκηνικού (Background) Μετά τον ορισμό των αντικειμένων πρέπει να δημιουργηθεί ένα δωμάτιο (room), για να τοποθετηθούν σε αυτό. Για να δημιουργήσετε ένα room, επιλέξτε στο μενού Resources Create Background ή κάντε κλικ στο κουμπί και επιλέξτε το αρχείο sand.png που βρίσκεται στον φάκελο Backgrounds. - 2 -
4ο βήμα: Δημιουργία Δωματίου (Room) Μετά τον ορισμό των αντικειμένων πρέπει να δημιουργηθεί ένα δωμάτιο (room), για να τοποθετηθούν σε αυτό. Για να δημιουργήσετε ένα room, επιλέξτε στο μενού Resources Create Room ή κάντε κλικ στο κουμπί Εμφανίζεται η φόρμα του δωματίου, στα αριστερά της οποίας υπάρχουν τρεις καρτέλες: objects, settings, backgrounds. Στα δεξιά υπάρχει προς το παρόν μια άδεια περιοχή που είναι ο πραγματικός χώρος του δωματίου και σε αυτόν θα τοποθετηθούν τα αντικείμενα (objects). Κάτω αριστερά πατήστε στο εικονίδιο μενού και επιλέξτε το obj-wall. Τοποθετήστε με κλικ στιγμιότυπα του τοίχου και μετά συνεχίστε με τον παππού (obj-oldman), το διαμάντι (obj-diamond) και τις αράχνες (obj-spider1). Τέλος, επιλέξτε την καρτέλα backgrounds και σε αυτήν ορίστε το background0. Πατήστε το πράσινο checkmark σημάδι, για να αποθηκευθεί και να κλείσει η φόρμα του δωματίου. Αποθηκεύστε το παιχνίδι! 5ο βήμα: Καθορισμός Συμπεριφορών obj-oldman Keyboard <Left>, <Right>, <Up>, <Down> και <no key> Το πρώτο πράγμα με το οποίο θα ασχοληθούμε είναι η μετακίνηση του κεντρικού μας ήρωα, του παππούς. Ο παππούς πρέπει να μπορεί να κινείται προς τα δεξιά, τα αριστερά, τα πάνω και τα κάτω. - 3 -
Θα προσθέσουμε στο αντικείμενο obj-oldman κατάλληλα γεγονότα όπως φαίνεται στην παραπάνω εικόνα για το πάτημα των πλήκτρων <Left>, <Right>, <Up> και <Down> του keyboard για αντίστοιχη μετακίνηση. Στη φόρμα του obj-oldman πατάμε το κουμπί Add Event και στη φόρμα που θα εμφανιστεί επιλέγουμε το Create event. Σε κάθε ένα από τα γεγονότα (events) επειδή θέλουμε να ξεκινάει ο παππούς την κίνηση προς την σωστή κατεύθυνση μόνο αν είναι με στοίχιση (aligned) στο πλέγμα (grid) προσθέτουμε την κατάλληλη ενέργεια. Επειδή τα sprites έχουν μέγεθος 32x32 καθώς και τα rooms αντίστοιχη επιλογή για να στοιχίζεται ο παππούς στο πλέγμα ορίζουμε ότι snap hor και snap vert είναι 32. Επιπρόσθετα για να σταματήσουμε την κίνηση χρησιμοποιούμε το γεγονός <no key> με αντίστοιχο τρόπο. Για να σταματήσουμε την κίνηση ενός αντικειμένου επιλέγουμε το μεσαίο πλήκτρο που έχει το σχήμα ενός τετραγώνου. Collision with obj-wall Στην περίπτωση που ο παππούς συγκρουστεί με τον τοίχο θα πρέπει να σταματά να κινείται και να στοιχιστεί στο πλέγμα. Collision with obj-diamond Στόχος του παιχνιδιού είναι να φτάσει ο παππούς το διαμάντι. Στην περίπτωση αυτή προχωράμε στην επόμενη πίστα -εφόσον αυτή υπάρχει- ή τελειώνει το παιχνίδι! obj-spider1 Create Με τη δημιουργία της αράχνης ορίζουμε την κατεύθυνση στην οποία μπορεί να κινηθεί: οριζοντίως και προσδιορίζουμε την ταχύτητα κίνησής της. - 4 -
Collision with obj-wall Όταν η αράχνη συγκρουστεί με τον τοίχο, αναπηδά! obj-oldman Collision with obj-spider1 Αν ο παππούς πέσει πάνω σε αράχνη, τότε ο παίκτης χάνει! Στη φάση αυτή μπορούμε να πούμε ότι θα εμφανίζεται ένα μήνυμα και θα ξεκινά το παιχνίδι από την αρχή: 6ο βήμα: Έλεγχος του παιχνιδιού Επιλέξτε στο μενού Run Run normally ή κάντε κλικ στο κουμπί Αν ακολουθήσατε σωστά τα προηγούμενα βήματα, τότε θα εξαφανιστεί το παράθυρο του Game Maker και θα εμφανιστεί ένα παράθυρο στο οποίο θα μπορείτε να παίξετε το παιχνίδι. Αν κάτι δεν πήγε καλά πατήστε το πλήκτρο Esc για να τερματιστεί το παιχνίδι και να επιστρέψετε στο Game Maker. Αν όλα πήγαν καλά παρατηρήστε ότι το συνολικό σκορ από τα τούβλα της πίστας ήταν 1120. 7ο βήμα: Προσθήκη ήχου (Sound) Μπορούμε να προσθέσουμε ήχους... - 5 -
8ο βήμα: Μπορούμε να προσθέσουμε και άλλες πίστες... ιδέες Αράχνες Μπορεί να δημιουργηθεί και δεύτερη αράχνη που να κινείται κάθετα και να προστεθεί σε επόμενες πίστες. Δείτε π.χ. το αρχείο spider_down_strip8.png. Πώς μπορείτε να αυξήσετε την ταχύτητα κίνησης των αραχνών σε επόμενες πίστες; Ζωές Μπορείτε να ορίσεται όταν ξεκινά το παιχνίδι ο παππούς να έχει π.χ. μία; δύο; ζωές. Με κάθε επιτυχή ολοκλήρωση πίστας θα αποκτά μια επιπλέον ζωή. Κάθε φορά που θα πέφτει πάνω σε αράχνη θα χάνει μία ζωή. Όταν δεν έχει άλλες ζωές, το παιχνίδι θα ολοκληρώνεται. Σκορ Το σκορ μπορεί να είναι το πλήθος των πιστών που ολοκληρώθηκαν. Τέλος παιχνιδιού Πάντα μπορούμε να φτιάξουμε πίστα που θα είναι αδύνατον να την περάσει κάποιος... φ τ ι ά ξ τ ε τ ο δ ι κό σ α ς π α ι χ ν ί δ ι! - 6 -