You are on page 1of 21

Εργασία AppInventor 3

BallBounce
BallBounce: Ένα απλό παιχνίδι
Σε αυτό το σενάριο, θα μάθετε για το animation στο
AppInventor κάνοντας μια μπάλα (στην ουσία ένα sprite)
να αναπηδά γύρω από την οθόνη (μέσα σε έναν καμβά). Ο
όρος sprite υιοθετήθηκε για να περιγράψει μια εικόνα που
είναι ικανή να κινηθεί στην οθόνη.
Ξεκινήστε ένα νέο project (έργο)
Αν έχετε ανοιχτό κάποιο άλλο έργο, πηγαίνετε στο μενού
My Projects και επιλέξτε New Project. Ονομάστε το
BallBounce.
Προσθήκη Καμβά
Από το Drawing and Animation, σύρετε ένα
στοιχείο Canvas και τοποθετήστε το στον
Viewer.
Αλλαγή ύψους και πλάτους του καμβά
Αλλάξτε το ύψος και το πλάτος του καμβά με το Fill Parent.
Βεβαιωθείτε ότι το στοιχείο Canvas είναι επιλεγμένο στα
components (1), για να εμφανιστούν οι ιδιότητές του στο
παράθυρο ιδιοτήτων(2). Ρυθμίστε την ιδιότητα Height
(Ύψος) σε "Fill Parent. Κάντε το ίδιο με το Width (Πλάτος).
Προσθήκη μπάλας
Τώρα που έχουμε έναν
καμβά, είναι δυνατό να
προστεθεί ένα Ball Sprite.
Το Ball μπορεί επίσης να
βρεθεί στο Drawing and
Animation. Σύρετε ένα
στοιχείο Ball και αφήστε
το πάνω στον καμβά (1)
του Viewer.
Αν θέλετε να η μπάλα να
φαίνεται καλύτερα,
μπορείτε να αλλάξετε την
ιδιότητά της Radius στο
παράθυρο Properties (2),
σε 15.
Ρύθμιση οθόνης
Ρυθμίστε την οθόνη έτσι ώστε να μη γίνεται κύλιση. Η προεπιλεγμένη
ρύθμιση του AppInventor είναι οθόνη "κυλιόμενη", πράγμα που σημαίνει
ότι η διεπαφή χρήστη μπορεί να υπερβεί το όριο της οθόνης και ο
χρήστης μπορεί να σκρολάρει προς τα κάτω έχοντας το δάχτυλό του στην
οθόνη, όπως γίνεται η κύλιση (σκρολάρισμα) σε μια ιστοσελίδα.
Όταν χρησιμοποιείτε έναν καμβά, πρέπει να απενεργοποιήσετε τη
ρύθμιση "Scrollable" (κάνοντας UNCHECK το κουτάκι του), ώστε η οθόνη
να μην κάνει κύλιση. Αυτό θα σας επιτρέψει να κάνετε τον καμβά να
γεμίζει ολόκληρη την οθόνη.
Άνοιγμα Blog Editor
Τα πλακίδια του Ball1
Επιλoγή του Event Handler Flung
Επιλέξτε το μπλοκ when Ball1.Flung και σύρετέ το στο χώρο
εργασίας. Το Flung αναφέρεται στον χρήστη ώστε να κάνει
μια "χειρονομία Fling" και με το δάχτυλό του/της να
"πετάξει" την μπάλα. Το Fling είναι μια χειρονομία σαν
αυτή που κάνει ένα μπαστούνι του γκολφ και όχι σαν τον
τρόπο με τον οποίο εκτοξεύετε το Angry Birds!
Στο AppInventor, το event handler για αυτόν τον τύπο
χειρονομίας λέγεται when Flung.
Ορισμός κατεύθυνσης και ταχύτητας
της μπάλας.
• Πηγαίνετε στα
πλακίδια του
Ball1 και
σκρολάρετε
προς τα κάτω
για να πάρετε
τα set
Ball1.Heading
και
setBall1.Speed
Σύνδεση των setters
Συνδέστε το set Ball1.Speed και το set
Ball1.Heading στον event handler Flung.
H ταχύτητα της μπάλας
Ορίστε την ταχύτητα της μπάλας να είναι η ίδια με
την ταχύτητα της χειρονομίας Fling. Πηγαίνετε με
το ποντίκι πάνω στην παράμετρο "speed" του event
handler, when Ball1.Flung. Τα πλακίδια get και set
για την ταχύτητα ρίψης θα εμφανιστούν. Συνδέστε
το πλακίδιο get speed και στο set Ball1.Speed.
H κατεύθυνση της μπάλας
Ορίστε την κατεύθυνση της μπάλας να είναι η
ίδια με την κατεύθυνση της χειρονομίας Fling.
Κάντε το ίδιο για την κατεύθυνση της μπάλας:
Κρατήστε το ποντίκι πάνω από την παράμετρο
heading και θα εμφανιστεί η επιλογή get
heading.
Δοκιμή της εφαρμογής!!!!
Δοκιμάστε την εφαρμογή σας.
Μια καλή συνήθεια κατά την
κατασκευή των εφαρμογών
είναι να δοκιμάζονται ενώ
κατασκευάζονται.
Το AppInventor επιτρέπει η
δοκιμή αυτή να γίνεται πολύ
εύκολα με τη σύνδεση του
τηλεφώνου σας και του
AppInventor.
Γιατί η μπάλα κολλάει στο πλάι της
οθόνης;
• Αφού κινηθεί η μπάλα σε όλη την οθόνη,
πιθανότατα θα παρατηρείτε ότι έχει κολλήσει
στο πλάι. Αυτό συμβαίνει επειδή η
κατεύθυνση της μπάλας δεν άλλαξε, παρόλο
που χτύπησε στο πλάι του καμβά.
• Για να κάνετε την μπάλα "αναπηδήσει" από
την άκρη της οθόνης, χρειάζεστε έναν νέο
event handler που ονομάζεται "When Edge
Reached“.
Πρόσθεση ενός Edge Reached Event

Πηγαίνετε στο
Ball1 και
βγάλτε το
συμβάν when
Ball1.EdgeRea
ched do.
Πρόσθεση ενός πλακιδίου Ball.Bounce
Επιστρέψτε
στο στοιχείο
Ball1 και
πάρτε το
πλακίδιο
Ball.Bounce.
Προσθήκη τιμών στο Ball.Bounce
Προσθέστε την τιμή άκρης στο πλακίδιο Ball.Bounce. Η
μέθοδος Ball.Bounce χρειάζεται ένα όρισμα άκρης.
Παρατηρήστε ότι το συμβάν Ball1.EdgeReached έχει
ένα "edge" ως παράμετρο. Μπορείται να πάρετε το
μπλοκ get edge από αυτό το όρισμα και να το
συνδέσετε στο Ball1.Bounce.
Πάρτε το πλακίδιο get edge τοποθετόντας το δείκτη
του ποντικιού σας πάνω από την παράμετρο "edge”
του event handler when Ball1.EdgeReached.
Τα τελικά πλακίδια
Τα τελικά σας πλακίδια, θα πρέπει να μοιάζουν
με τα πιο κάτω. Στη συνέχεια δοκιμάστε το!
Δοκιμάστε το!
Τώρα, όταν πετάτε τη μπάλα, αυτή θα πρέπει
να αναπηδά στις άκρες του καμβά.
Εξαίρετη δουλειά!
Επέκταση της εφαρμογής
Υπάρχουν πολλοί τρόποι για να επεκτείνετε αυτή την
εφαρμογή. Μερικές ιδέες είναι οι εξής:
- Αλλάξτε το χρώμα της μπάλας ανάλογα με το πόσο
γρήγορα κινείται ή σε ποια άκρη φτάνει.
- Κλιμακώστε την ταχύτητα της μπάλας έτσι ώστε να
επιβραδύνει και να σταματάει αφού εκσφενδονιστεί.
- Βάλτε στην μπάλα εμπόδια ή στόχους που πρέπει να
χτυπήσει.
- Εισάγετε ένα κουπί για την αναχαίτιση της μπάλας.

Διασκεδάστε με αυτές τις επεκτάσεις ή με άλλες που θα


σκεφτείτε εσείς!

You might also like