ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ"

Transcript

1 ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΠΑΙΧΝΙΔΙΟΥ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ ΓΙΑ ΥΠΟΛΟΓΙΣΤΗ, ΤΥΠΟΥ ARCADE, ΜΕ ΧΡΗΣΗ HTML & JAVASCRIPT. ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ του Χαράλαμπου Ελευθεριάδη

2 Βόλος, 14/12/ 2013

3 Η σελίδα αυτή είναι σκόπιμα λευκή.

4 ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΠΑΙΧΝΙΔΙΟΥ ΔΥΟ ΔΙΑΣΤΑΣΕΩΝ ΓΙΑ ΥΠΟΛΟΓΙΣΤΗ, ΤΥΠΟΥ ARCADE, ΜΕ ΧΡΗΣΗ HTML & JAVASCRIPT. ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ του Χαράλαμπου Ελευθεριάδη Επιβλέποντες : ΤΣΟΜΠΑΝΟΠΟΥΛΟΥ ΠΑΝΑΓΙΩΤΑ ΕΠΙΚΟΥΡΟΣ ΚΑΘΗΓΗΤΡΙΑ ΜΠΟΖΑΝΗΣ ΠΑΝΑΓΙΩΤΗΣ ΑΝΑΠΛΗΡΩΤΗΣ ΚΑΘΗΓΗΤΗΣ

5 Εγκρίθηκε από την διμελή εξεταστική επιτροπή την???????????? (Υπογραφή) (Υπογραφή) ΤΣΟΜΠΑΝΟΠΟΥΛΟΥ ΠΑΝΑΓΙΩΤΑ, ΕΠΙΚΟΥΡΟΣ ΚΑΘΗΓΗΤΡΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟΥ ΘΕΣΣΑΛΙΑΣ ΜΠΟΖΑΝΗΣ ΠΑΝΑΓΙΩΤΗΣ, ΑΝΑΠΛΗΡΩΤΗΣ ΚΑΘΗΓΗΤΗΣ ΠΑΝΑΠΙΣΤΗΜΙΟΥ ΘΕΣΣΑΛΙΑΣ

6 (Υπογραφή)... ΧΑΡΑΛΑΜΠΟΣ ΕΛΕΥΘΕΡΙΑΔΗΣ Διπλωματούχος Μηχανικός Ηλεκτρονικών Υπολογιστών, Τηλεπικοινωνιών και Δικτύων του Τμήματος Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών, Πανεπιστημίου Θεσσαλίας 2014 All rights reserved

7 Αφιερώνω αυτή τη διπλωματική εργασία, στην οικογένεια μου.

8 Πίνακας περιεχομένων 1 ΕΙΣΑΓΩΓΗ... Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης ΠΕΡΙΓΡΑΦΗ... Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης ΑΝΤΙΚΕΙΜΕΝΟ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ... Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης ΤΡΟΠΟΣ ΔΟΜΗΣΗΣ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ... Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης.2 2 ΤΑ ΠΑΙΧΝΙΔΙΑ ΣΤΟΥΣ ΗΛΕΚΤΡΟΝΙΚΟΥΣ ΥΠΟΛΟΓΙΣΤΕΣ... Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης Ο ΡΟΛΟΣ ΤΟΥ ΠΑΙΧΝΙΔΙΟΥ ΣΤΟΥΣ Η/Υ ΓΙΑ ΤΟΝ ΧΡΗΣΤΗ... Σφάλμα! Δεν έχει οριστεί σελιδοδείκτης ΕΙΔΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΠΑΙΧΝΙΔΙΩΝ ΠΟΥ ΥΠΑΡΧΟΥΝ Η ΚΑΤΗΓΟΡΙΑ ΠΑΙΧΝΙΔΙΩΝ ΤΥΠΟΥ ARCADE ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΓΙΑ ΤΗΝ ΔΗΜΙΟΥΡΓΙΑ ΠΑΙΧΝΙΔΙΩΝ ΠΛΕΟΝΕΚΤΗΜΑΤΑ & ΜΕΙΟΝΕΚΤΗΜΑΤΑ ΓΛΩΣΣΩΝ ΠΕΡΙΓΡΑΦΗ ΤΩΝ ΓΛΩΣΣΩΝ HTML & JAVASCRIPT ΣΧΕΔΙΑΣΜΟΣ ΠΑΙΧΝΙΔΙΟΥ ΠΕΡΙΓΡΑΦΗ ΣΕΝΑΡΙΟΥ ΠΑΙΧΝΙΔΙΟΥ... 15

9 4.2 ΤΡΟΠΟΣ ΧΡΗΣΗΣ ΚΑΙ ΑΠΑΙΤΗΣΕΙΣ ΠΑΙΧΝΙΔΙΟΥ ΔΟΜΙΚΑ ΣΤΟΙΧΕΙΑ ΠΑΙΧΝΙΔΙΟΥ ΜΕΘΟΔΟΣ ΔΟΜΗΣΗΣ ΠΑΙΧΝΙΔΙΟΥ ΥΛΟΠΟΙΗΣΗ ΠΑΙΧΝΙΔΙΟΥ ΠΕΡΙΓΡΑΦΗ ΤΟΥ HTML ΑΡΧΕΙΟΥ (Ace of Spades.html) ΠΕΡΙΓΡΑΦΗ ΤΟΥ JAVASCRIPT ΑΡΧΕΙΟΥ (aos.js) ΟΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΔΗΜΙΟΥΡΓΙΑ ΑΝΤΙΚΕΙΜΕΝΩΝ ΥΛΟΠΟΙΗΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΩΝ ΕΠΙΛΟΓΟΣ Βιβλιογραφία ΠΑΡΑΡΤΗΜΑ Α... 50

10 ΕΙΣΑΓΩΓΗ 1.1 ΠΕΡΙΓΡΑΦΗ Σκοπός της διπλωματικής εργασίας είναι η μεθοδολογία, η οργάνωση και ο τρόπος υλοποίησης ενός παιχνιδιού για υπολογιστή, με τη χρήση μιας συγκεκριμένης γλώσσας προγραμματισμού. Στον τομέα των video games και ειδικότερα των game applications, τα μέσα και οι μέθοδοι που έχουν αναπτυχθεί, δίνουν μία μεγάλη ποικιλία από εργαλεία και επιλογές, ούτως ώστε να δημιουργηθεί ένα καινούργιο παιχνίδι σε οποιεσδήποτε από τις αντιληπτές διαστάσεις (2-D / 3-D). Η γλώσσα προγραμματισμού υλοποίησης και τα βοηθητικά εργαλεία/προγράμματα επεξεργασίας εικόνας και ήχου, αποτελούν προσωπική επιλογή για τον εκάστοτε game developer, ανάλογα με τις ικανότητές του, την εξοικείωση του με μια συγκεκριμένη γλώσσα προγραμματισμού και τον τρόπο που θέλει αυτός να δημιουργήσει το παιχνίδι που έχει σχεδιάσει. Στα πλαίσια αυτής της εργασίας θα ακολουθηθεί, θα υλοποιηθεί και θα εξετασθεί μία τέτοια μέθοδος σχεδίασης και υλοποίησης παιχνιδιού για PC. 1

11 1.2 ΑΝΤΙΚΕΙΜΕΝΟ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ Στα πλαίσια αυτής της εργασίας, θα γίνει η σχεδίαση, η ανάλυση και η υλοποίηση ενός παιχνιδιού δύο διαστάσεων (2-D), για PC (stand alone). Το παιχνίδι θα είναι τύπου Arcade και θα προορίζεται για έναν παίχτη (single player game) χωρίς την υποστήριξη του διαδικτύου (offline game). Η υλοποίηση θα γίνει με τη χρήση JavaScript και HTML, καθώς και με προγράμματα διαμόρφωσης εικόνας/γραφικών (Paint.NET, Photo Shop) και ήχου (Virtual DJ), για τα οπτικοακουστικά μέρη. Το παιχνίδι θα τρέχει και θα είναι συμβατό με όλους τους διαδεδομένους περιηγητές (web browsers) : Google Chrome, Mozilla Firefox, Internet Explorer, Opera, Safari. Το παιχνίδι θα αποτελείται από ορισμένα έτοιμα αντικείμενα εικόνας και ήχου, που σκοπό έχουν την, όσο το δυνατόν, πιο ρεαλιστική προσέγγιση για τον παίχτη, καθώς και στοιχεία που αποτελούν προσωπικές δημιουργίες του προγραμματιστή(backgrounds, menu screens). Όλα αυτά θα εναρμονιστούν με τη χρήση κατάλληλων συναρτήσεων και αλγορίθμων για το βέλτιστο, επιθυμητό αποτέλεσμα. 1.3 ΤΡΟΠΟΣ ΔΟΜΗΣΗΣ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ Η ακολουθία των βημάτων δόμησης της διπλωματικής εργασίας είναι η εξής: I. «Σύλληψη» γενικής ιδέας και στυλ παιχνιδιού (ταχύτητα/ ικανότητα/ γνώσεις/ αντανακλαστικά/ παρατηρητικότητα & 2D/3D). II. Απόφαση για το είδος του παιχνιδιού (arcade/action/ story line/ role playing game/ first person/ non-hero game/ quiz). III. Απόφαση για τη συμβατότητα του παιχνιδιού και τον αριθμό παιχτών που θα υποστηρίζει. IV. Δημιουργία σεναρίου παιχνιδιού και σχεδιασμός κλίμακας δυσκολίας. V. Δημιουργία/συλλογή αντικειμένων εικόνας και ήχου, με τα κατάλληλα προγράμματα, που θα συνθέτουν το παιχνίδι. VI. Επιλογή τρόπου αναπαράστασης γραφικών και ηχητικών στοιχείων. VII. Επιλογή επιθυμητής γλώσσας προγραμματισμού για την υλοποίηση. VIII. Σχεδιασμός και προγραμματισμός αλγορίθμων και συναρτήσεων. IX. Εντατικός έλεγχος και διόρθωση σφαλμάτων για όλα τα πιθανά σενάρια ενεργειών. 2

12 ΤΑ ΠΑΙΧΝΙΔΙΑ ΣΤΟΥΣ Η/Υ Στο κεφάλαιο αυτό θα γίνει μια περιγραφή του ρόλου και της σημασίας των παιχνιδιών στους ηλεκτρονικούς υπολογιστές. Θα γίνει αναφορά στα διάφορα είδη παιχνιδιών που υπάρχουν και μια εμβάθυνση στο είδος arcade, το οποίο υλοποιείται στη συγκεκριμένη διπλωματική εργασία. 2.1 Ο ΡΟΛΟΣ ΤΩΝ ΠΑΙΧΝΙΔΙΩΝ ΣΤΟΥΣ Η/Υ ΓΙΑ ΤΟΝ ΧΡΗΣΤΗ Το παιχνίδι σαν έννοια, αποτελούσε και αποτελεί από αρχαιοτάτων χρόνων, την ιδανικότερη μορφή ψυχαγωγίας για τον άνθρωπο σε όλες τις στιγμές της ζωής του. Σε ορισμένες ηλικίες μάλιστα, είναι αναγκαία διαδικασία για τη σωστή ανάπτυξη του ανθρώπου, τόσο σε νοητικό όσο και σε ψυχικό επίπεδο. Πάνω στο παιχνίδι έχει στηριχτεί ολόκληρη βιομηχανία εμπορίου και συνεπώς ήταν αναπόφευκτη και η προσθήκη του στον κόσμο της τεχνολογίας, ειδικά με την έξαρση της τεχνολογικής ανάπτυξης τις τρεις τελευταίες δεκαετίες. Αυτό είχε σαν αποτέλεσμα να ιδρυθούν πολλές και μεγάλες εταιρίες σχεδίασης και παραγωγής ηλεκτρονικών παιχνιδιών, επενδύοντας εκατομμύρια δολάρια για τη δημιουργία ενός και μόνο παιχνιδιού κάθε φορά! 3

13 Πλέον τα παιχνίδια στους ηλεκτρονικούς υπολογιστές, αλλά και σε επίπεδο κονσόλας, έχουν φτάσει σε τέτοιο σημείο εξέλιξης που παρέχουν στο χρήστη την όσο το δυνατόν ρεαλιστικότερη αναπαράσταση περιβάλλοντος και ενεργειών, τα οποία σε συνδυασμό με τον απόλυτο έλεγχο, μεταφέρουν με μεγάλη επιτυχία τον παίχτη στον κόσμο του παιχνιδιού. Επίσης, στα περισσότερα σύγχρονα παιχνίδια, ο χρήστης μπορεί να χρησιμοποιήσει το διαδίκτυο και να παίζει παράλληλα με πολλούς διαφορετικούς παίχτες ανά τον κόσμο (MMOG Massive Multiplayer Online Game), κάτι που κάνει το εκάστοτε παιχνίδι να ξεφεύγει από τα όρια του απρόσωπου παιχνιδιού για έναν παίχτη (single player game). Στα MMOG, ο παίχτης μπορεί να συναναστρέφεται διαδικτυακά με άλλους παίχτες, είτε σε επίπεδο συνεργασίας είτε σαν αντίπαλος, κάτι που τον βοηθάει να βελτιώνει τις δεξιότητές του στην ομάδα και τις ατομικές του ικανότητες. 2.2 ΕΙΔΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΠΑΙΧΝΙΔΙΩΝ ΠΟΥ ΥΠΑΡΧΟΥΝ Παρατηρείται μια τεράστια ποικιλία ηλεκτρονικών παιχνιδιών για Η/Υ αλλά και για πλατφόρμες ηλεκτρονικών παιχνιδιών (PlayStation, Nintendo, X-box 360), που στόχο έχουν να ικανοποιήσουν τις επιθυμίες του κάθε παίχτη. Παρακάτω παρουσιάζεται μια συνοπτική λίστα με τα είδη σύγχρονων τρισδιάστατων παιχνιδιών που υπάρχουν και μια ενδεικτική εικόνα (screenshot) ενός παιχνιδιού από κάθε είδος: Πάζλ - Puzzle games : (Tetris, Minesweeper) Εικόνα 1- Tetris 4

14 Παιχνίδια ρόλων - Role playing games : (World of Warcraft, Lineage, Diablo) Εικόνα 2 - World Of Warcraft Παιχνίδια βολών πρώτου ή τρίτου βαθμού - First/Third person shooter : (Doom, Quake, Unreal, Counter Strike, Max Payne, Splinter Cell, Tomb Rider) Εικόνα 3 - Counter Strike Παιχνίδια στρατηγικής - Strategy games : (Civilization, Age of Empires, Starcraft, Red Alert) Εικόνα 4 - Age Of Empires 5

15 Παιχνίδια περιπέτειας - Adventure games : (Broken Sword, Assassin s Creed, Space Quest, Myst, Syberia) Εικόνα 5 - Assassin's Creed Παιχνίδια αθλητισμού - Sports games : (FIFA, NBA Live, Pro Evolution Soccer) Εικόνα 6 - FIFA Παιχνίδια αγώνων - Racing games : (Need for Speed, Gran Turismo, Formula 1, WRC, Moto-GP) Εικόνα 7 - Need For Speed Παιχνίδια εξομοίωσης - Simulation games : (The Sims, SimCity, MS Flight Simulator) Εικόνα 8 - The Sims 6

16 2.3 H ΚΑΤΗΓΟΡΙΑ ΠΑΙΧΝΙΔΙΩΝ ΤΥΠΟΥ ARCADE «Πρόγονος» όμως, όλων των παραπάνω ειδών είναι μια ειδική κατηγορία παιχνιδιών, δύο διαστάσεων, αυτή των arcade games, πάνω στην οποία βασίζεται και η παρούσα διπλωματική εργασία. Στα μέσα της δεκαετίας του 70 άρχισαν να κάνουν την εμφάνιση τους πλατφόρμες παιχνιδιών σε διάφορα καταστήματα διασκέδασης και ψυχαγωγίας, οι οποίες χρειάζονταν την εισαγωγή κέρματος για να δώσουν τη δυνατότητα στο χρήστη να παίξει το παιχνίδι (coin operated arcade games). Οι πλατφόρμες αυτές υποστήριζαν αρχικά μόνο ένα συγκεκριμένο παιχνίδι, ενώ αργότερα εξελίχθηκαν στο να μπορούν να δίνουν στον παίχτη το δικαίωμα να επιλέξει ποιο είδος επιθυμεί να παίξει. Τα περισσότερα arcade games έχουν ένα μικρό αριθμό επιπέδων (levels), απλό περιβάλλον γραφικών, απλό και άμεσο τρόπο χειρισμού (game-play) και ραγδαία αύξηση δυσκολίας. Αυτό διότι στην ουσία, ο παίχτης νοικιάζει το παιχνίδι για έναν συγκεκριμένο χρόνο ο οποίος επηρεάζεται από τις «ζωές» που έχει στο παιχνίδι και το πώς μπορεί να τις διαχειριστεί για να φτάσει όσο πιο μακριά μπορεί στην πορεία του παιχνιδιού, σημειώνοντας συγκεκριμένο σκορ κάθε φορά. Σκοπός των παικτών είναι να καταφέρουν να βάλουν το όνομά τους (συχνά ψευδώνυμο nickname ), στην κορυφή της λίστας των σκορ του παιχνιδιού (high score). Tο γεγονός ότι έπρεπε να βελτιώσουν τις ικανότητες τους στο παιχνίδι με το ελάχιστο δυνατό χρονικό και χρηματικό κόστος, έκανε τα arcade games ιδιαίτερα δύσκολα και ανταγωνιστικά μεταξύ των παιχτών. Μερικά μάλιστα από αυτά ξεπερνούν σε δυσκολία τα σύγχρονα τρισδιάστατα παιχνίδια των πολλών εκατομμυρίων, ακόμα και σήμερα. Εικόνα 9 - Πλατφόρμα arcade (Pac-Man) 7

17 Τα πιο διαδεδομένα arcade games είναι τα εξής: Space Invaders (1978) Εικόνα 10 - Space Invaders Galaxian (1979) Εικόνα 11 - Galaxian Pac-Man (1980) Εικόνα 12 - Pac-Man Battlezone (1980) Εικόνα 13 - Battlezone 8

18 Defender (1980) Εικόνα 14 - Defender Bosconian (1981) Εικόνα 15 - Bosconian 9

19 ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΓΙΑ ΤΗ ΔΗΜΙΟΥΡΓΙΑ ΠΑΙΧΝΙΔΙΩΝ Κάθε παιχνίδι, ανεξαρτήτου είδους ή κονσόλας, μπορεί να υλοποιηθεί σε οποιαδήποτε γλώσσα προγραμματισμού. Ωστόσο, η γλώσσα που κυριαρχεί στη βιομηχανία παραγωγής ηλεκτρονικών παιχνιδιών, είναι η C++. Η C++ χρησιμοποιείται ευρέως διότι είναι μια γλώσσα χαμηλού επιπέδου (βρίσκεται πιο κοντά σε επίπεδο επεξεργαστή), πράγμα που την κάνει «γρηγορότερη» σε σχέση με άλλες γλώσσες υψηλού επιπέδου. Είναι όμως και πιο επίπονη σε συγγραφή κώδικα από άλλες γλώσσες, όπως η Java. Χρησιμοποιείται για τη δημιουργία των περισσοτέρων μεγάλων και σύνθετων παιχνιδιών κι αυτό γιατί το ζητούμενο είναι η βέλτιστη δυνατή απόκριση για τον χρήστη (speed over usability). 10

20 3.1 ΠΛΕΟΝΕΚΤΗΜΑΤΑ & ΜΕΙΟΝΕΚΤΗΜΑΤΑ ΓΛΩΣΣΩΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ΓΙΑ ΤΗΝ ΔΗΜΙΟΥΡΓΙΑ ΠΑΙΧΝΙΔΙΩΝ ΓΛΩΣΣΑ ΠΛΕΟΝΕΚΤΗΜΑΤΑ ΜΕΙΟΝΕΚΤΗΜΑΤΑ Assemply C C++ C# Γλώσσα χαμηλού επιπέδου, που ελαχιστοποιεί το κόστος υπολογισμών στον επεξεργαστή. Βέλτιστη για συγκεκριμένες εργασίες και μέρη ενός παιχνιδιού. Ευρέως διαδεδομένη και γνωστή. Παρέχεται υποστήριξη από πολλά βοηθητικά εργαλεία και βιβλιοθήκες. Ευρέως διαδεδομένη και γνωστή για τη δημιουργία πολύπλοκων παιχνιδιών. Αντικειμενοστραφής γλώσσα με υποστήριξη από μεγάλο αριθμό βοηθητικών εργαλείων. Αντικειμενοστραφής γλώσσα, με μηχανισμούς αυτόματης διαχείρισης μνήμης. Δυνατότητα ελέγχου και τροποποίησης των αντικειμένων του προγράμματος εν ώρα τρεξίματος. Δεν ενδείκνυται για δημιουργία μεγάλων σε έκταση παιχνιδιών. Δύσκολη στην εκμάθηση, επιρρεπής σε σφάλματα, αργή εξέλιξη παραγωγής, μη μεταφέρσιμη. Δεν είναι αντικειμενοστραφής γλώσσα, πράγμα που αποτελεί δυσκολία για τη συγγραφή μεγάλων προγραμμάτων ή τη χρήση πολλαπλών πλατφόρμων. Η παραγωγή κώδικα κοστίζει σε θέματα διαχείρισης και σωστής κατανομής πόρων. Συχνά απαιτείται αρκετός χρόνος για τη μεταγλώττιση του κώδικα. Περιορισμένη χρήση σε συγκεκριμένες πλατφόρμες της Microsoft (Windows, Xbox ). Ο «καθαρισμός» της μνήμης και η απομάκρυνση άχρηστων δεδομένων, μπορεί να κοστίσουν σε χρόνο απόκρισης. 11

21 Java Scripting languages (JavaScript, Python, Lua, etc.) Αντικειμενοστραφής γλώσσα, εύκολα μεταφέρσιμη σε διαφορετικές πλατφόρμες. Μηχανισμοί αυτόματης διαχείρισης μνήμης. Δυνατότητα ελέγχου και τροποποίησης των αντικειμένων του προγράμματος εν ώρα τρεξίματος. Μεγάλος αριθμός βοηθητικών βιβλιοθηκών και εργαλείων. Γλώσσες προγραμματισμού που οι εντολές εκτελούνται ταυτόχρονα (όχι ακολουθιακά). Αποτελούν μέρος των web browsers με τους οποίους γίνεται η επικοινωνία σε επίπεδο χρήστη. Αντικειμενοστραφείς γλώσσες που δε χρειάζονται μεταγλώττιση. Ευέλικτες, γρήγορες και εύκολες στη χρήση και στη συγγραφή κώδικα. Μη διαθέσιμη σε μεγάλες κονσόλες ηλεκτρονικών παιχνιδιών. Ο «καθαρισμός» της μνήμης και η απομάκρυνση άχρηστων δεδομένων, μπορεί να κοστίσουν σε χρόνο απόκρισης. Προβλήματα συμβατότητας με διαφορετικούς web browsers. Θέματα ασφάλειας κώδικα. Απαραίτητη χρήση web browser. Όπως έχει αναφερθεί, η υλοποίηση του παιχνιδιού την οποία καλύπτει η διπλωματική εργασία, θα γίνει σε JavaScript με τη χρήση HTML. 12

22 3.2 ΠΕΡΙΓΡΑΦΗ ΤΩΝ ΓΛΩΣΣΩΝ HTML & JAVASCRIPT [-] HTML (Hyper Text Markup Language): Η HTML είναι η γλώσσα που «καταλαβαίνουν» οι web browsers για την αναπαράσταση των οπτικοακουστικών δεδομένων και έχει ως βασικό της χαρακτηριστικό, τη διασύνδεση με άλλα έγγραφα τύπου HTML. Στην HTML δε γίνεται διάκριση πεζών και κεφαλαίων γραμμάτων μέσα στα tags (non case-sensitive language). Βασικό δομικό της HTML είναι η ετικέτα (tag) και κάθε διακριτικό της περικλείεται σε < >. Τα περισσότερα διακριτικά ομαδοποιούνται σε ζεύγη. Το πρώτο δείχνει την αρχή και το δεύτερο το τέλος επίδρασης του συγκεκριμένου διακριτικού. Πχ. <HTML> </HTML>. Σε κάποιο tag μπορεί να δίνονται επιπλέον χαρακτηριστικά τα οποία γράφονται μέσα στον ορισμό του tag. Πχ. < attribute_name = value >. Ο τρόπος με τον οποίον μπορεί να δοθεί διαδραστικότητα (interaction) μεταξύ του χρήστη και ενός HTML εγγράφου, είναι μέσω της χρήσης scripts που είναι γραμμένα στη γλώσσα JavaScript. [-] JavaScript: Η JavaScript είναι μία διαδεδομένη δυναμική, scripting γλώσσα προγραμματισμού για τη δημιουργία εφαρμογών, παιχνιδιών για υπολογιστή, καθώς και για προγραμματισμό σε επίπεδο εξυπηρετητή (server side), που χρησιμοποιείται στα πλαίσια ενός HTML εγγράφου για interaction μεταξύ του χρήστη και του εγγράφου ΗΤΜL. Μοιράζεται μερικές ιδιότητες των γλωσσών Java και C, αλλά από μόνη της αποτελεί μια διαφορετική, αυτούσια γλώσσα προγραμματισμού. Βασίζεται στη χρήση συναρτήσεων πρώτης τάξης (συναρτήσεις μπορούν να δίνονται ως ορίσματα σε άλλες συναρτήσεις για την επιστροφή ή όχι τιμών), γεγονός που την κάνει να ακολουθεί τις αρχές τόσο του συναρτησιακού, όσο και του αντικειμενοστραφούς προγραμματισμού. 13

23 Η JavaScript ενσωματώνεται σε HTML σελίδες με τη χρήση του διακριτικού : <script language= Javascript > </script> κώδικας «Κατεβαίνει» μαζί με το HTML έγγραφο και εκτελείται από τον web browser σε επίπεδο χρήστη (client-side). Οι βασικοί λόγοι επιλογής της JavaScript ως γλώσσα υλοποίησης του παιχνιδιού της εργασίας είναι οι εξής: Ταχύτητα: Λόγω του ότι είναι client-side, ο κώδικας εκτελείται αμέσως, χωρίς να είναι απαραίτητη οποιαδήποτε μορφή επικοινωνίας με κάποιον απομακρυσμένο server για την αποστολή μιας απάντησης. Απλότητα: Είναι ιδιαίτερα απλή γλώσσα στην εκμάθηση και στην εφαρμογή της. Γνωρίζοντας κάποιος να προγραμματίζει σε C και/ή Java, μπορεί εύκολα να εξοικειωθεί με την JavaScript. Συμβατότητα: Η JavaScript μπορεί να συνδυαστεί και να συνυπάρξει αρμονικά και με άλλες γλώσσες προγραμματισμού, αλλά και μέσα σε scripts γραμμένα σε διαφορετική γλώσσα, ενώ μπορεί να χρησιμοποιηθεί σε μια μεγάλη γκάμα εφαρμογών. Σε αντίθεση με άλλες γλώσσες, μπορεί επίσης να χρησιμοποιηθεί σε οποιαδήποτε web page ανεξάρτητα από την επέκταση αρχείου (file extension). 14

24 ΣΧΕΔΙΑΣΜΟΣ ΠΑΙΧΝΙΔΙΟΥ Σε αυτό το κεφάλαιο θα γίνει μία εκτενής περιγραφή του παιχνιδιού που υλοποιείται. Αρχικά, θα περιγραφεί το σενάριο του παιχνιδιού, στη συνέχεια ο τρόπος χρήσης του και τέλος τα στοιχεία από τα οποία αυτό αποτελείται. Θα παρουσιαστούν και ορισμένες εικόνες (screenshots), για την πιο ολοκληρωμένη αντίληψη του παιχνιδιού. 4.1 ΠΕΡΙΓΡΑΦΗ ΣΕΝΑΡΙΟΥ ΠΑΙΧΝΙΔΙΟΥ Το παιχνίδι που υλοποιείται έχει τίτλο : ACE OF SPADES και μοιάζει σε στυλ με το DEFENDER (arcade game του 1980 Βλ. Σελίδα 9,Εικόνα 14 ). Ο κεντρικός ήρωας, τον οποίον χειρίζεται ο παίχτης, είναι ένα αεροσκάφος το οποίο ονομάζεται : BOMBER. Ο παίχτης έχει τη δυνατότητα να μετακινεί το αεροσκάφος προς οποιαδήποτε κατεύθυνση μέσα στα πλαίσια περιβάλλοντος που εξελίσσεται το παιχνίδι και να πυροβολεί ή να αποφεύγει τους επικείμενους εχθρούς που θα εμφανίζονται. Οι εχθροί που καλείται να αντιμετωπίσει ο ήρωας, είναι ένα σύνολο από χαρτιά τράπουλας, τα οποία κινούνται συνεχώς, μόνο από δεξιά προς τα αριστερά της οθόνης παιχνιδιού. Το κάθε χαρτί που θα εμφανιστεί, θα είναι τυχαίο (δηλ. οποιοδήποτε από τα 52 φύλλα που έχει μια τράπουλα) και θα εμφανίζεται και σε τυχαία θέση στην οθόνη παιχνιδιού καθ όλη τη διάρκεια εκτέλεσής του. 15

25 Αριστερά από την οθόνη παιχνιδιού, θα υπάρχει ένα πλαίσιο (table), στο οποίο θα εμφανίζεται ένας τυχαίος συνδυασμός πέντε φύλλων της τράπουλας. Ο παίχτης καλείται να πυροβολήσει τα σωστά φύλλα που του προτείνονται στο table και μάλιστα με τη σωστή σειρά με την οποία εμφανίζονται. Αν πυροβολήσει το σωστό φύλλο, τότε το φύλλο αυτό αφαιρείται από την προτεινόμενη πεντάδα του table. Κάθε φύλλο έχει μια συγκεκριμένη αξία η οποία αποτελεί και την τιμή διαμόρφωσης του σκορ του ήρωα. Αν ο παίχτης πυροβολήσει το σωστό προτεινόμενο φύλλο, η αξία του συγκεκριμένου φύλλο προστίθεται στο σκορ, ενώ αν πυροβολήσει λάθος φύλλο η συγκεκριμένη αξία (του λάθος φύλλου), αφαιρείται από το σκορ του ήρωα. Το σκορ μεταβάλλεται μόνο με την πρόσκρουση της σφαίρας (bullet) σε κάποιο φύλλο. Αν το σκορ πέσει κάτω από το 0, το παιχνίδι σταματάει (Game Over) και ο παίχτης πρέπει να ξεκινήσει πάλι από το πρώτο στάδιο. Το σκορ του συγκεκριμένου παιχνιδιού δεν αρχίζει από το 0, όπως θα περίμενε κανείς, αλλά από το 50. Αυτό γίνεται έτσι ώστε ο παίχτης να έχει το περιθώριο να πυροβολήσει ένα ή περισσότερα λάθος φύλλα, χωρίς τον άμεσο τερματισμό του παιχνιδιού (πχ. μπορεί δύο φύλλα να επικαλύπτονται). Τα φύλλα και οι αξίες τους παρουσιάζονται στον παρακάτω πίνακα: CARD VALUE 2 of (two of spades) 2 of (two of clubs) 2 of (two of hearts) 2 2 of (two of diamonds) 3 of (three of spades) 3 of (three of clubs) 3 of (three of hearts) 3 3 of (three of diamonds) 4 of (four of spades) 4 of (four of clubs) 4 of (four of hearts) 4 4 of (four of diamonds) 16

26 5 of (five of spades) 5 of (five of clubs) 5 of (five of hearts) 5 5 of (five of diamonds) 6 of (six of spades) 6 of (six of clubs) 6 of (six of hearts) 6 6 of (six of diamonds) 7 of (seven of spades) 7 of (seven of clubs) 7 of (seven of hearts) 7 7 of (seven of diamonds) 8 of (eight of spades) 8 of (eight of clubs) 8 of (eight of hearts) 8 8 of (eight of diamonds) 9 of (nine of spades) 9 of (nine of clubs) 9 of (nine of hearts) 9 9 of (nine of diamonds) 10 of (ten of spades) 10 of (ten of clubs) 10 of (ten of hearts) of (ten of diamonds) J of (Jack of spades) J of (Jack of clubs) J of (Jack of hearts) 10 J of (Jack of diamonds) 17

27 Q of (Queen of spades) Q of (Queen of clubs) Q of (Queen of hearts) 10 Q of (Queen of diamonds) K of (King of spades) K of (King of clubs) K of (King of hearts) K of (King of diamonds) 10 A of (Ace of clubs) A of (Ace of hearts) 11 A of (Ace of diamonds) A of (Ace of spades) 21 Με την έναρξη του παιχνιδιού, δίνεται ένας συγκεκριμένος αριθμός «ζωών» (lives), τις οποίες ο παίχτης πρέπει να διαχειριστεί όσο το δυνατόν πιο σωστά, για να προχωρήσει πιο μακριά στα επίπεδα (levels) του παιχνιδιού. Αν το αεροσκάφος συγκρουστεί με κάποιο/α από τα επερχόμενα φύλλα/εχθρούς, τότε αφαιρούνται τόσες ζωές όσες και το πλήθος των φύλλων με τα οποία συγκρούστηκε ο ήρωας. Αν ο αριθμός των διαθέσιμων ζωών του παίχτη φτάσει στο 0, το παιχνίδι σταματάει (Game Over) και ο παίχτης πρέπει να ξεκινήσει πάλι από το πρώτο στάδιο. Αξίζει να σημειωθεί εδώ, ότι ακόμα και αν το φύλλο με το οποίο συγκρούεται ο ήρωας είναι προτεινόμενο στο table, θα αφαιρεθεί ζωή και το σκορ θα παραμείνει αμετάβλητο. Το παιχνίδι θα αποτελείται από τέσσερα επίπεδα (levels/stages). Κάθε επίπεδο διαθέτει ξεχωριστό περιβάλλον (background) και μουσική επένδυση (background music). Για να μεταβεί ο παίχτης σε επόμενο επίπεδο, θα πρέπει να πυροβολήσει και τα πέντε προτεινόμενα φύλλα με τη σωστή σειρά. Όταν αλλάξει το επίπεδο (δηλ. έχει αδειάσει το table με τον προτεινόμενο συνδυασμό), τότε το table ξαναγεμίζει/ανανεώνεται με μία νέα, διαφορετική, τυχαία πεντάδα προτεινόμενων φύλλων. Κατά τη μετάβαση από το ένα επίπεδο στο άλλο, αυξάνεται η ταχύτητα των επερχόμενων φύλλων και του αεροσκάφους, με αποτέλεσμα να κλιμακώνεται η δυσκολία του παιχνιδιού. 18

28 Επίσης, κατά την μετάβαση σε ανώτερο επίπεδο, ο παίχτης ανταμείβεται με μια συγκεκριμένη προσαύξηση σκορ και ζωών (bonus score & bonus lives), ούτως ώστε να βοηθηθεί στα επερχόμενα, δυσκολότερα στάδια του παιχνιδιού. Η ολοκλήρωση/τερματισμός του παιχνιδιού θα επιτυγχάνεται όταν ο παίχτης καταφέρει να ολοκληρώσει και το τελευταίο επίπεδο δυσκολίας, ανανεώνοντας έτσι το τελικό, πιθανόν νέο, υψηλότερο σκορ (new high score). 4.2 ΤΡΟΠΟΣ ΧΡΗΣΗΣ ΚΑΙ ΑΠΑΙΤΗΣΕΙΣ ΠΑΙΧΝΙΔΙΟΥ Η κίνηση του αεροσκάφους επιτυγχάνεται με τη χρήση των πλήκτρων κατεύθυνσης :,,,, ή με τη χρήση των πλήκτρων: A,W,D,S, τα οποία είναι εξίσου διαδεδομένα για την κίνηση του εκάστοτε ήρωα στα περισσότερα παιχνίδια ηλεκτρονικών υπολογιστών. Επίσης, παρέχεται η δυνατότητα διαγώνιας κίνησης (πάνω & αριστερά, πάνω & δεξιά, κάτω & αριστερά, κάτω & δεξιά). Αν πατηθούν ταυτόχρονα οι συνδυασμοί πλήκτρων: &, ή & (W & S ή A & D), το αεροσκάφος παραμένει στην ίδια θέση αφού δεν υπάρχει επιτρεπτή, λογική κίνηση. Οι σφαίρες που φεύγουν από το αεροσκάφος εκτοξεύονται όταν ο παίχτης πατήσει το πλήκτρο: Space Bar. Κατά την εκκίνηση του παιχνιδιού, δηλαδή με το άνοιγμα του web browser, εμφανίζεται η αρχική/κύρια οθόνη του παιχνιδιού (Main Menu Screen), στην οποία θα υπάρχουν τα εξής διαθέσιμα κουμπιά (main menu buttons) : Play Game : έναρξη παιχνιδιού. How To Play : μετάβαση στην οθόνη οδηγιών παιχνιδιού (Manual Screen). Στην οθόνη οδηγιών, γίνεται μια σύντομη περιγραφή του τρόπου με τον οποίον παίζεται το παιχνίδι (σκοπός / περιορισμοί) και παρουσίαση των πλήκτρων κίνησης και δράσης (game control keys). Υπάρχουν επίσης, δύο επιπλέον κουμπιά (Play Game και Return To Menu), με τα οποία ο παίχτης έχει τη δυνατότητα, είτε να επιλέξει την έναρξη του παιχνιδιού άμεσα, είτε να επιστρέψει στην αρχική οθόνη (Main Menu Screen). High Score: εμφάνιση παραθύρου με το τρέχον υψηλότερο σκορ που έχει επιτευχθεί. Exit : έξοδος από το παιχνίδι με κλείσιμο του παραθύρου του web browser (αν ο χρήστης έχει ανοιχτές παραπάνω από μία καρτέλες στον web browser και πατήσει την επιλογή Exit, κλείνει μόνο η καρτέλα στην οποία «έτρεχε» το παιχνίδι). 19

29 Κατά τον τερματισμό του παιχνιδιού (ο παίχτης χάνει ή ολοκληρώνει το παιχνίδι επιτυχώς), εμφανίζεται η οθόνη τερματισμού (Game Over Screen), η οποία και αυτή με τη σειρά της διαθέτει τα κουμπιά : Return To Menu (για επιστροφή στην αρχική οθόνη) και Exit (για έξοδο από το παιχνίδι). Όταν γίνει εκκίνηση του παιχνιδιού, κάτω από την κεντρική οθόνη περιβάλλοντος, θα εμφανίζονται δύο επιπλέον κουμπιά: Return To Menu : για άμεση επιστροφή στην αρχική οθόνη. Pause : για παύση της ροής του παιχνιδιού (όσο ο παίχτης βρίσκεται σε κατάσταση pause, το κουμπί Pause αντικαθίσταται από ένα νέο κουμπί: Resume, για τη συνέχεια του παιχνιδιού). Οι ελάχιστες απαιτήσεις που χρειάζονται για να τρέξει το παιχνίδι σε έναν οποιονδήποτε ηλεκτρονικό υπολογιστή, είναι η ύπαρξη της τελευταίας έκδοσης ενός από τους υπάρχοντες web browsers : Google Chrome, Mozilla Firefox, Internet Explorer, Opera, Safari και 50 Mb ελεύθερου αποθηκευτικού χώρου για τα αρχεία και τους φακέλους του παιχνιδιού. 4.3 ΔΟΜΙΚΑ ΣΤΟΙΧΕΙΑ ΠΑΙΧΝΙΔΙΟΥ Το παιχνίδι είναι βασισμένο σε έτοιμα οπτικοακουστικά στοιχεία, δηλαδή έτοιμα αρχεία εικόνας και ήχου, τα οποία έχουν τροποποιηθεί κατάλληλα για να καλύπτουν τις απαιτήσεις του παιχνιδιού (βλ. Βιβλιογραφία για τις πηγές των αρχείων). Η επιλογή αυτή έχει ως σκοπό να προσδώσει στον παίχτη την πιο ρεαλιστική απεικόνιση περιβάλλοντος και αντικειμένων σε δύο διαστάσεις. [-] ΣΤΟΙΧΕΙΑ ΕΙΚΟΝΑΣ : Με το άνοιγμα του παραθύρου στο οποίο θα τρέχει το παιχνίδι, το background της καρτέλας του web browser αντικαθίσταται από μια συγκεκριμένη στατική εικόνα (web browser background) και στο κέντρο του παραθύρου εμφανίζεται το κύριο πλαίσιο στο οποίο διαδραματίζεται το παιχνίδι. Το πλαίσιο αυτό θα ανανεώνεται συνεχώς και θα αλλάζει τα στοιχεία εικόνας και ήχου, ανάλογα με την κατάσταση στην οποία βρίσκεται το παιχνίδι κάθε φορά. 20

30 -Αρχικά, στο κύριο πλαίσιο (διαστάσεις σε pixels: 1000x700) εμφανίζεται η αρχική οθόνη (main menu screen). Εικόνα 16 - Web browser Background & Main Menu Screen -Αν ο παίχτης επιλέξει να πατήσει το κουμπί How To Play, τότε στο κύριο πλαίσιο εμφανίζεται η οθόνη οδηγιών. Εικόνα 17 Manual Screen -Αν ο παίχτης επιλέξει να πατήσει Play Game (σε οποιαδήποτε από τις δύο οθόνες), τότε εμφανίζεται στα αριστερά ένα νέο πλαίσιο (το table με τα πέντε προτεινόμενα φύλλα), τα κουμπιά Return To Menu και Pause/Play και το κεντρικό πλαίσιο καθαρίζεται για να εκκινήσει το παιχνίδι με νέα στοιχεία εικόνας. 21

31 Στο σημείο αυτό αρχίζει και η αλληλεπίδραση των αντικειμένων του παιχνιδιού τα οποία παρουσιάζονται παρακάτω: Game Backgrounds: εικόνες πόλεων φωτισμένων τη νύχτα, που μαζί με την ταχύτητα κίνησης και το κομμάτι μουσικής, αποτελούν τα διακριτικά για κάθε επίπεδο δυσκολίας («πίστες» - stages). Εικόνα 18 - Πρώτο Επίπεδο (Stage 1) Εικόνα 19 - Δεύτερο Επίπεδο (Stage 2) Εικόνα 20 - Τρίτο Επίπεδο (Stage 3) Εικόνα 21 - Τέταρτο Επίπεδο (Stage 4) 22

32 Bomber: το αεροσκάφος που χειρίζεται ο παίχτης. Πρόκειται για μία εικόνα ενός αεροσκάφους του Β Παγκοσμίου Πολέμου. Εικόνα 22 - The Bomber Bullet: η σφαίρα που φεύγει από το αεροσκάφος, όταν ο παίχτης πυροβολεί. Εικόνα μιας φλεγόμενης σφαίρας εν ώρα πυροβολισμού. Εικόνα 23 - Bomber's Bullet Deck of Cards: το σύνολο των φύλλων της τράπουλας (η παρακάτω εικόνα έχει διασπαστεί σε 52 αντικείμενα εικόνας, ούτως ώστε το κάθε ένα να αποτελεί ένα ξεχωριστό φύλλο). Εικόνα 24 - Deck of Cards Explosion: η εικόνα που εμφανίζεται σαν γραφικό εφέ τη στιγμή της πρόσκρουσης μιας σφαίρας με οποιοδήποτε φύλλο της τράπουλας. Εικόνα 25 - Explosion effect Impact: η εικόνα που εμφανίζεται σαν γραφικό εφέ τη στιγμή της πρόσκρουσης του αεροσκάφους με οποιοδήποτε φύλλο της τράπουλας. Εικόνα 26 - Impact effect 23

33 Table: το επιπλέον πλαίσιο που εμφανίζεται αριστερά του κυρίου πλαισίου, με την έναρξη του παιχνιδιού, μέσα στο οποίο τοποθετείται ο τυχαίος συνδυασμός των πέντε προτεινόμενων φύλλων. Εικόνα 27 - Table with recommended cards to shoot In-play buttons: τα κουμπιά, Return to Menu και Pause/Play, που εμφανίζονται κάτω από το κύριο πλαίσιο με την έναρξη του παιχνιδιού. Εικόνα 28 - Buttons Back to Menu & Pause Εικόνα 29 - Buttons Back to Menu & Resume Lives counter: ο μετρητής που δείχνει τον αριθμό ζωών του παίχτη και εμφανίζεται στο πάνω-αριστερά μέρος του κύριου πλαισίου παιχνιδιού. Εικόνα 30 - Lives display Score counter: ο μετρητής που δείχνει το σκορ του παίχτη και εμφανίζεται στο πάνω-δεξιά μέρος του κύριου πλαισίου παιχνιδιού. Εικόνα 31 - Score display 24

34 -Ο ταυτόχρονος συνδυασμός όλων των παραπάνω στοιχείων εικόνας, έχει σαν αποτέλεσμα την παραγωγή του παρακάτω στιγμιότυπου εν ώρα εξέλιξης του παιχνιδιού : Εικόνα 32 - Στιγμιότυπο παιχνιδιού, εν ώρα δράσης -Με τον τερματισμό του παιχνιδιού, γίνεται εκκαθάριση όλων των παραπάνω στοιχείων από το κύριο πλαίσιο, εξαφάνιση του πλαισίου προτεινόμενων φύλλων και φόρτωσης της οθόνης τερματισμού. Εικόνα 33 - Game Over screen 25

35 [-] ΣΤΟΙΧΕΙΑ ΗΧΟΥ : Στο παιχνίδι έχουν ενσωματωθεί και ορισμένα ηχητικά αρχεία για να αυξήσουν το ενδιαφέρον του παίχτη και για να γίνει πιο συναρπαστική η εμπειρία παιχνιδιού. Συγκεκριμένα, έχουν εισαχθεί ηχητικά εφέ (από έτοιμη online βιβλιοθήκη ήχων στο διαδίκτυο) για τις βασικές ενέργειες της αλληλεπίδρασης του αεροσκάφους με τις σφαίρες που εκτοξεύει, με τα επερχόμενα φύλλα και με τον τρόπο τερματισμού του παιχνιδιού. Υπάρχουν δηλαδή, τέσσερα διαφορετικά ηχητικά εφέ εκρήξεων για κάθε ένα από τα παρακάτω γεγονότα: 1. Όταν το αεροσκάφος εκτοξεύει σφαίρα. 2. Όταν γίνεται πρόσκρουση της σφαίρας με κάποιο φύλλο της τράπουλας. 3. Όταν γίνεται πρόσκρουση του αεροσκάφους με κάποιο φύλλο της τράπουλας. 4. Όταν τελειώσουν οι ζωές του παίχτη ή όταν το σκορ γίνει αρνητικό εμφάνιση οθόνης τερματισμού. Για την πιο διασκεδαστική εξέλιξη του παιχνιδιού, έχουν ενσωματωθεί ορισμένα μουσικά κομμάτια, διαφορετικά για κάθε επίπεδο και για κάθε οθόνη που εμφανίζεται στο κύριο πλαίσιο παιχνιδιού. Κατά τη μετάβαση από το ένα επίπεδο στο άλλο, το τρέχον μουσικό κομμάτι που αναπαράγεται, σταματάει και αρχίζει η αναπαραγωγή του επομένου. Το ίδιο συμβαίνει και κατά την εναλλαγή στις στατικές οθόνες (main menu screen & manual screen/ game over screen). Τα μουσικά κομμάτια μαζί με τους καλλιτέχνες που τα ερμηνεύουν, ανήκουν στο στυλ μουσικής «Rock n Roll» και παρουσιάζονται στον παρακάτω πίνακα (playlist) : Song Title Artist Play in : Game Over Christopher Ashmore Main menu & manual screen Youth Gone Wild Skid Row Stage 1 Big City Nights Scorpions Stage 2 The Chase Is Better Than The Catch Motörhead Stage 3 Ace Of Spades Motörhead Stage 4 Whorehouse Blues Motörhead Game over screen 26

36 4.4 ΜΕΘΟΔΟΣ ΔΟΜΗΣΗΣ ΠΑΙΧΝΙΔΙΟΥ Οι τρόποι δόμησης ενός παιχνιδιού για ηλεκτρονικό υπολογιστή διαφέρουν, ανάλογα με την πολυπλοκότητα και τις απαιτήσεις που πρέπει να καλυφθούν. Στο παιχνίδι που σχεδιάζεται στα πλαίσια της παρούσας εργασίας, η μέθοδος που επιλέχτηκε είναι η εξής: Αρχικά συγκεντρώνονται όλα τα απαραίτητα αρχεία ήχου και εικόνας που θα αποτελούν τα αντικείμενα του παιχνιδιού. Τα αρχεία ήχου είναι σε μορφή.mp3. Τα αρχεία εικόνας μετατρέπονται σε μορφή.png (Portable Network Graphics). Τα αρχεία.png περιλαμβάνουν παλέτα χρωμάτων 24-bit, που με απλά λόγια σημαίνει ότι οι εικόνες θα έχουν τεράστια γκάμα χρωμάτων με αποτέλεσμα να "μη χαλάει η ποιότητά τους". Επίσης, υποστηρίζουν πολύ καλό transparency. Το transparency είναι μια ιδιότητα που κάνει το γραφικό να φαίνεται χωρίς background. Τα μεγάλα πλεονεκτήματα των αρχείων.png σε αντίθεση με τα.gif ή.jpeg, είναι η πολύ καλή απόδοση χρωμάτων και η πολύ καλή ποιότητα απόδοσης του transparency. Στη συνέχεια, διαμορφώνεται κάθε αρχείο εικόνας έτσι ώστε να έχει την επιθυμητή μορφή και τις επιθυμητές διαστάσεις με τη χρήση κάποιων προγραμμάτων διαμόρφωσης και μετατροπής εικόνας. Για τους σκοπούς της εργασίας, χρησιμοποιήθηκαν τα βοηθητικά προγράμματα: Paint.NET και Photo Shop για εμπλουτισμό και μετατροπή διαστάσεων. Τα κουμπιά (buttons) δημιουργούνται με online γεννήτριες κουμπιών (online button generators) και ενσωματώνονται στο περιβάλλον του παιχνιδιού, ενώ η διαδραστικότητά τους δίνεται μέσω των HTML και JavaScript, με τη χρήση κατάλληλων εντολών. Το επόμενο στάδιο δόμησης, είναι η δημιουργία ενός ειδικού αρχείου εικόνας που ονομάζεται sprite image, το οποίο πρόκειται για ένα αρχείο εικόνας μεγάλων διαστάσεων καθώς αποτελείται από ένα σύνολο εικόνων μικρότερων διαστάσεων. Ουσιαστικά, όλες οι εικόνες που συνθέτουν το παιχνίδι τοποθετούνται η μία δίπλα/κάτω στην/από την άλλη (σωστά στοιχισμένες, με τη χρήση εργαλείου χάρακα), δημιουργώντας έτσι το ενιαίο αρχείο εικόνας sprite. Το sprite αρχείο θα χρησιμοποιηθεί ως πηγή (source) από την JavaScript για την επιλογή σχεδίασης κάθε αντικειμένου του παιχνιδιού. Με πιο απλά λόγια, η JavaScript, με τη χρήση κατάλληλων συναρτήσεων σχεδίασης, θα επιλέγει ποιο στοιχείο του sprite αρχείου θα «ζωγραφίζει» κάθε φορά, με βάση τις συντεταγμένες που έχει το στοιχείο αυτό μέσα στο sprite αρχείο. Το sprite αρχείο του παιχνιδιού της εργασίας φαίνεται παρακάτω: 27

37 Εικόνα 34 - Sprite Image Σε τελικό στάδιο, δημιουργείται ένας φάκελος μέσα στον οποίον τοποθετούνται τα αρχεία ήχου (.mp3), το sprite αρχείο (.png), το αρχείο εικόνας (.jpeg) για το background του browser και τα αρχεία κώδικα HTML και JavaScript (.html και.js αντίστοιχα). 28

38 ΥΛΟΠΟΙΗΣΗ ΠΑΙΧΝΙΔΙΟΥ Σε αυτό το κεφάλαιο θα γίνει λεπτομερής ανάλυση του τρόπου υλοποίησης του παιχνιδιού χρησιμοποιώντας τις γλώσσες HTML και JavaScript. Θα γίνει περιγραφή των αντικειμένων, των αλγορίθμων και των συναρτήσεων του κώδικα υλοποίησης και του πώς όλα αυτά επηρεάζουν την εξέλιξη και την αλληλεπίδραση των οπτικοακουστικών στοιχείων του παιχνιδιού. Ο συνολικός κώδικας χωρίζεται σε δύο αρχεία: το αρχείο. html και το αρχείο.js. 5.1 ΠΕΡΙΓΡΑΦΗ ΤΟΥ HTML ΑΡΧΕΙΟΥ (Ace of Spades.html) Όπως αναφέρθηκε στο Κεφάλαιο 3, η HTML είναι η γλώσσα που καταλαβαίνει ο web browser. Με το άνοιγμα του.html αρχείου ανοίγει και το παράθυρο του web browser στο οποίο θα τρέχει το παιχνίδι. Για να δει κάποιος τον κώδικα της HTML, αρκεί να πατήσει, οπουδήποτε μέσα στο παράθυρο του web browser, δεξί κλικ και στη συνέχεια inspect element. Τότε εμφανίζεται στο κάτω μέρος του παραθύρου ένα πλαίσιο με τα στοιχεία και τον κώδικα της HTML. Ολόκληρος ο κώδικας της HTML περικλείεται μέσα στα tags: <html lang="en"> </html>, όπου ορίζεται η γλώσσα που θα χρησιμοποιηθεί από τον web browser. 29

39 Στη συνέχεια αποδίδεται ένα όνομα (Ace of Spades) στο παράθυρο/καρτέλα στο οποίο τρέχει το παιχνίδι: <head> <title>ace of Spades</title> </head> Ακολούθως, δημιουργείται το κύριο σώμα της HTML και ορίζεται το background του web browser, με τη χρήση των tags: <body background="bg.jpeg"> </body>, μέσα στα οποία ορίζονται τα περιεχόμενα της HTML, όπως εικόνα, καμβάς, ήχος, hyperlinks, κείμενο, κτλ. Στο συγκεκριμένο body, ορίζονται τα εξής περιεχόμενα με τα αντίστοιχα tags: Στοιχεία ήχου με αναγνωριστικά (id) και την πηγή στην οποία βρίσκονται (source). Αν κάποιος web browser δεν υποστηρίζει audio tags, εμφανίζεται ενημερωτικό μήνυμα πχ. <audio id="gameover" src="sounds/christopher Ashmore - Game Over.mp3"> Your Browser Does Not Support the HTML audio tag! </audio> (Παρόμοια για όλα τα στοιχεία ήχου του παιχνιδιού) Στοιχεία καμβά, τα οποία απαιτούνται για τη δημιουργία και επεξεργασία γραφικών στον web browser. Αυτό επιτυγχάνεται μόνο με τη χρήση script (στη συγκεκριμένη περίπτωση, θα γίνει χρήση της JavaScript). Κάθε καμβάς έχει τις εξής ιδιότητες: ένα αναγνωριστικό (id), πλάτος (width), ύψος (height) και θέση που θα τοποθετηθεί μέσα στο παράθυρο (style). Στο παιχνίδι της εργασίας θα χρησιμοποιηθούν έξι καμβάδες, οι οποίοι είναι : 1. Καμβάς που διαχειρίζεται το background του παιχνιδιού 2. Καμβάς που διαχειρίζεται τα φύλλα της τράπουλας 3. Καμβάς που διαχειρίζεται το αεροσκάφος 4. Καμβάς που διαχειρίζεται το σκορ του παίχτη 5. Καμβάς που διαχειρίζεται τις ζωές του παίχτη 6. Καμβάς που διαχειρίζεται το table με τα πέντε προτεινόμενα φύλλα 30

40 Η σειρά που δηλώνονται είναι σημαντική, διότι ο κάθε επόμενος καμβάς θα επικαλύπτει τον προηγούμενό του, με αποτέλεσμα όλοι οι καμβάδες να συνυπάρχουν πάνω στον κύριο καμβά του παιχνιδιού, που είναι ο background canvas, και αποτελεί και το κύριο πλαίσιο του παιχνιδιού. Ενδεικτικά παρουσιάζεται ο καμβάς του background του παιχνιδιού: <canvas id="canvasbackground" width="1000px" height="700px" style="display:block; background:#ffffff;margin:100px auto 0px;"> </canvas> Στοιχεία hyperlink για την εισαγωγή και την επεξεργασία των in-play κουμπιών: Return to Menu, Pause και Resume. Τα hyperlinks περικλείοντα στα tags: <a> </a>. Τα αντίστοιχα tags έχουν παρθεί έτοιμα από online button generator (βλ. Βιβλιογραφία). Ενδεικτικά παρουσιάζεται το tag του Return to Menu button : <a id="returnbtn" hidden href=""> <img style="border:0px;" src=" 3&txt=Back%20to%20Menu" onmouseover="this.src=' p?frm=2&btn_type=43&txt=back%20to%20menu'" onmouseout="this.src=' alt="back%20to%20menu" /> </a> Στοιχείο script για τη διαχείριση των καμβάδων μέσω μιας scripting γλώσσας προγραμματισμού (όπως η JavaScript), μέσα στα tags: <script> </script>. 31

41 Το στοιχείο script μπορεί να έχει scripting statements ή να «δείχνει» σε ένα εξωτερικό αρχείο script, με τη χρήση του χαρακτηριστικού src : <script src="aos.js"></script>, όπου aos.js είναι το JavaScript αρχείο του παιχνιδιού. 5.2 ΠΕΡΙΓΡΑΦΗ ΤΟΥ JAVASCRIPT ΑΡΧΕΙΟΥ (aos.js) Στο JavaScript αρχείο, βρίσκεται ουσιαστικά όλος ο κώδικας που αποτελεί και τον πυρήνα του παιχνιδιού. Περιλαμβάνει όλες τις απαραίτητες μεταβλητές, σταθερές, αντικείμενα (objects) και συναρτήσεις που απαιτούνται για να μεταχειριστούν τα στοιχεία του καμβά που δημιουργήθηκαν στο.html αρχείο με το οποίο συνδέεται. 5.3 ΟΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΔΗΜΙΟΥΡΓΙΑ ΑΝΤΙΚΕΙΜΕΝΩΝ Σε αρχικό στάδιο δημιουργούνται οι μεταβλητές που θα αντιπροσωπεύουν όλα τα στοιχεία του καμβά και τα στοιχεία ήχου. Αυτό γίνεται με την αντιστοίχιση των αναγνωριστικών κάθε καμβά και αρχείου ήχου στις αντίστοιχες μεταβλητές, μέσω της εντολής: var x = document.getelementbyid( id ); Έπειτα, για κάθε καμβά ορίζεται μία μεταβλητή με την οποία θα γίνεται η επεξεργασία του περιεχομένου (context) του καμβά. Αυτό επιτυγχάνεται με την εντολή: var context_name = canvas_name.getcontext('2d'); Ενδεικτικά παρουσιάζονται οι μεταβλητές επεξεργασίας καμβά για το background του παιχνιδιού και η μεταβλητή επεξεργασίας ήχου για ένα ηχητικό κομμάτι (αντίστοιχα και για τα υπόλοιπα στοιχεία ήχου και καμβά): var canvasbackground = document.getelementbyid('canvasbackground'); var ctxbackground = canvasbackground.getcontext('2d'); var bulletsound = document.getelementbyid('bulletsound'); 32

42 Δημιουργείται αντικείμενο για τον σύνδεσμο του αρχείου JavaScript με το sprite αρχείο εικόνας (εντολή: var imgsprite = new Image(); imgsprite.src = 'spr/sprite.png'; imgsprite.addeventlistener('load',init,false); ), από το οποίο, με τη χρήση συντεταγμένων θα ζωγραφίζεται ένα συγκεκριμένο στοιχείο εικόνας του sprite μέσα σε κάποιον καμβά. Ο σύνδεσμος γίνεται με το άνοιγμα του παραθύρου του web browser. Πιο συγκεκριμένα απαιτούνται: Οι συντεταγμένες (x,y) στις οποίες αρχίζει μια εικόνα στο sprite αρχείο Το πλάτος της συγκεκριμένης εικόνας Το ύψος της συγκεκριμένης εικόνας Οι συντεταγμένες (x,y) στον καμβά στις οποίες θα αρχίσει να ζωγραφίζεται η εικόνα Ορίζονται τα αντικείμενα που θα αποτελούν τα κουμπιά (buttons), που εμφανίζονται σε κάθε μια από τις : main menu screen, manual screen, game over screen. Κάθε button έχει τις δικές του συντεταγμένες και το δικό του μέγεθος μέσα στο sprite αρχείο απ όπου επιλέγονται. Πχ. var btnplay = new Button(sprite_x, sprite_x + width, sprite_y, sprite_y + height); Παρόμοια για όλα τα button objects. Στη συνέχεια ορίζονται οι μεταβλητές που θα χρησιμοποιηθούν από τις συναρτήσεις και τα αντικείμενα του προγράμματος. Τέλος γίνεται χρήση της βασικής συνάρτησης: window.requestanimationframe. Η συνάρτηση αυτή ενημερώνει τον browser ότι πρόκειται να ζωγραφίσει κάποιο γραφικό και απαιτεί από αυτόν να καλέσει μια συγκεκριμένη μέθοδο πριν ζωγραφίσει το επόμενο γραφικό. 33

43 5.4 ΥΛΟΠΟΙΗΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΩΝ Μέχρι τώρα έχουν δημιουργηθεί τα objects για το sprite αρχείο και για τα buttons στις οθόνες του παιχνιδιού. Στη συνέχεια θα παρουσιαστούν όλα τα objects του προγράμματος με τις αντίστοιχες μεθόδους τους. Bomber object : Δημιουργία αντικειμένου του ήρωα με απόδοση των attributes από τα οποία αποτελείται. Αυτά είναι: - οι συντεταγμένες της εικόνας του (x,y) στο sprite αρχείο - το πλάτος και το ύψος του - οι συντεταγμένες (x,y) του καμβά στις οποίες θα εμφανιστεί με την έναρξη του παιχνιδιού - οι συντεταγμένες (x,y) του δεξιού, του αριστερού, του πάνω και του κάτω άκρου του αεροσκάφους - η ταχύτητα του αεροσκάφους - οι επιτρεπόμενες ενέργειες κίνησης και δράσης του ήρωα - οι διαθέσιμες σφαίρες του ήρωα - το σκορ και οι ζωές του παίχτη Bomber functions : Bomber.prototype.draw=function():Μέθοδος του αντικειμένου bomber, που ζωγραφίζει το αεροσκάφος μέσα στον αντίστοιχο καμβά. Κάθε φορά που καλείται, καθαρίζεται ο καμβάς του αεροσκάφους, ανανεώνονται οι συντεταγμένες του, γίνεται έλεγχος για την κατεύθυνση κίνησης του αεροσκάφους και για το αν προσέκρουσε σε κάποιο φύλλο. Επίσης, ελέγχεται αν έχει δοθεί εντολή από τον παίχτη να πυροβολήσει και ζωγραφίζει τις σφαίρες σε περίπτωση που αυτό ισχύει. Bomber.prototype.updateCoords=function():Μέθοδος του αντικειμένου bomber, για την ενημέρωση των συντεταγμένων που περιγράφουν το αεροσκάφος, με βάση τη θέση που βρίσκεται κάθε φορά στον καμβά του παιχνιδιού (στην ουσία του background canvas). 34

44 Bomber.prototype.checkDirection=function():Μέθοδος του αντικειμένου bomber, για τον έλεγχο της κατεύθυνσης κίνησης του αεροσκάφους. Επίσης, περιορίζει τη θέση του αεροσκάφους στο να βρίσκεται εντός επιτρεπτών ορίων του παιχνιδιού. Bomber.prototype.drawAllBullets=function():Μέθοδος του αντικειμένου bomber, που καλείται όταν το αεροσκάφος πυροβολεί. Με την κλήση της μεθόδου ζωγραφίζεται κάθε σφαίρα που φεύγει από τα αεροσκάφος και ελέγχεται αν κάποια σφαίρα συγκρούστηκε με κάποιο φύλλο. Αν ναι, τότε ζωγραφίζεται το γραφικό που αντιστοιχεί στη σύγκρουση σφαίρας-φύλλου και γίνεται η αναπαραγωγή του αντίστοιχου ηχητικού εφέ. Bomber.prototype.checkShooting=function():Μέθοδος του αντικειμένου bomber, που ελέγχει αν έχει δοθεί εντολή από τον παίχτη να πυροβολήσει (αν έχει πατηθεί το πλήκτρο Space Bar). Bomber.prototype.checkImpact=function():Μέθοδος του αντικειμένου bomber, που ελέγχει αν το αεροσκάφος έχει συγκρουστεί με κάποιο φύλλο. Αν ναι, τότε ζωγραφίζεται το γραφικό που αντιστοιχεί στη σύγκρουση αεροσκάφους-φύλλου, γίνεται η αναπαραγωγή του αντίστοιχου ηχητικού εφέ και η ανανέωση (μείωση) του αριθμού των ζωών του παίχτη. Bomber.prototype.updateScoreCounter=function(points):Μέθοδος του αντικειμένου bomber, για την ενημέρωση και ανανέωση (αύξηση / μείωση) του σκορ του παίχτη με βάση το φύλλο που έχει χτυπηθεί. Επίσης, γίνεται έλεγχος για το αν το σκορ πέσει κάτω από το 0. Αν ναι, το παιχνίδι τερματίζει. Bomber.prototype.updateLivesCounter = function():μέθοδος του αντικειμένου bomber, για την ενημέρωση και ανανέωση του αριθμού των ζωών του παίχτη. Αν ο αριθμός ζωών φτάσει στο 0 το παιχνίδι τερματίζει και σε περίπτωση νέου υψηλότερου σκορ (new high score), εμφανίζεται παράθυρο ενημέρωσης (alert box). 35

45 Bullet object : Δημιουργία αντικειμένου της σφαίρας με απόδοση των attributes από τα οποία αποτελείται. Αυτά είναι: - οι συντεταγμένες της εικόνας της (x,y) στο sprite αρχείο - το πλάτος και το ύψος της - οι συντεταγμένες (x,y) του καμβά στις οποίες θα εμφανιστεί με την έναρξη του παιχνιδιού Bullet functions : Bullet.prototype.draw=function():Μέθοδος του αντικειμένου bullet, που ζωγραφίζει κάθε σφαίρα που εκτοξεύεται με συγκεκριμένη και σταθερή ταχύτητα. Αν η σφαίρα φτάσει στο δεξί άκρο του κύριου καμβά του παιχνιδιού, χωρίς να προσκρούσει πάνω σε κάποιο φύλλο, τότε ανακυκλώνεται μέσα στον πίνακα που αποτελείται από αντικείμενα τύπου bullet. Bullet.prototype.fire = function (startx, starty): Μέθοδος του αντικειμένου bullet, που τοποθετεί τις συντεταγμένες του αρχικού σημείου στο οποίο θα ζωγραφιστεί η σφαίρα, σύμφωνα με τις συντεταγμένες της «μύτης» (του δεξιού άκρου) του αεροσκάφους από την οποία εκτοξεύεται η σφαίρα. Bullet.prototype.checkHitCard=function():Μέθοδος του αντικειμένου bullet, που ελέγχει αν κάποιο φύλλο έχει χτυπηθεί από τη συγκεκριμένη σφαίρα. Αν ναι, τότε δημιουργείται ένα νέο τυχαίο αντικείμενο φύλλου και τοποθετείται στη θέση του παλιού που χτυπήθηκε, στον πίνακα αντικειμένων τύπου cards. Το φύλλο που χτυπήθηκε αφαιρείται και από τον καμβά του παιχνιδιού. Επίσης, με την κλήση της μεθόδου γίνεται ανανέωση του σκορ ανάλογα με την αξία του φύλλου που χτυπήθηκε και αλλαγή του επιπέδου του παιχνιδιού, σε περίπτωση που ο παίχτης πυροβολήσει όλα τα σωστά προτεινόμενα φύλλα του τρέχοντος επιπέδου. Αν ο παίχτης ολοκληρώσει με επιτυχία όλα τα στάδια, εμφανίζεται ένα alert box που τον ενημερώνει για πιθανό νέο high score και ότι το παιχνίδι ολοκληρώθηκε. Bullet.prototype.recycle=function():Μέθοδος του αντικειμένου bullet, που όταν καλείται ανακυκλώνει μία σφαίρα μέσα στον πίνακα αντικειμένων τύπου bullet. 36

46 Explosion object : Δημιουργία αντικειμένου της έκρηξης που ζωγραφίζεται με την πρόσκρουση της σφαίρας σε ένα φύλλο, με απόδοση των attributes από τα οποία αποτελείται. Αυτά είναι: - οι συντεταγμένες της εικόνας της (x,y) στο sprite αρχείο - το πλάτος και το ύψος της - οι συντεταγμένες (x,y) του καμβά στις οποίες θα εμφανιστεί με την έναρξη του παιχνιδιού - η διάρκεια (σε frames) που θα εμφανίζεται το γραφικό έκρηξης Explosion functions : Explosion.prototype.draw=function () : Μέθοδος του αντικειμένου explosion, που ζωγραφίζει το γραφικό της έκρηξης, κάθε φορά που γίνεται σύγκρουση μίας σφαίρας με ένα φύλλο, στις συντεταγμένες του σημείου στο οποίο έγινε η σύγκρουση. Explosion.prototype.recycle=function():Μέθοδος του αντικειμένου explosion,για την ανακύκλωση των γραφικών της έκρηξης μέσα στον πίνακα αντικειμένων τύπου explosion. Impact object : Δημιουργία αντικειμένου της έκρηξης που ζωγραφίζεται με την πρόσκρουση του αεροσκάφους σε ένα φύλλο, με απόδοση των attributes από τα οποία αποτελείται. Αυτά είναι: - οι συντεταγμένες της εικόνας της (x,y) στο sprite αρχείο - το πλάτος και το ύψος της - οι συντεταγμένες (x,y) του καμβά στις οποίες θα εμφανιστεί με την έναρξη του παιχνιδιού - η διάρκεια (σε frames) που θα εμφανίζεται το γραφικό έκρηξης Impact functions : Impact.prototype.draw = function():μέθοδος του αντικειμένου impact, που ζωγραφίζει το γραφικό της έκρηξης, κάθε φορά που γίνεται πρόσκρουση του αεροσκάφους με ένα φύλλο, στις συντεταγμένες του σημείου στο οποίο έγινε η πρόσκρουση. 37

47 Card object : Δημιουργία αντικειμένου ενός φύλλου της τράπουλας, με απόδοση των attributes από τα οποία αποτελείται. Αυτά είναι: - οι συντεταγμένες της εικόνας του (x,y) στο sprite αρχείο - η ταχύτητα με την οποία κινείται το φύλλο - το όνομά του - η αξία του - το πλάτος και το ύψος του - οι συντεταγμένες (x,y) του καμβά στις οποίες θα εμφανιστεί με την έναρξη του παιχνιδιού Επειδή, το κάθε φύλλο θα ζωγραφίζεται σε τυχαία θέση στην οθόνη, γίνεται χρήση της έτοιμης συνάρτησης : Math.random() η οποία όταν καλείται επιστρέφει έναν τυχαίο δεκαδικό αριθμό στο διάστημα 0 έως 1. Ο αριθμός αυτός θα πολλαπλασιαστεί με συγκεκριμένες τιμές για να εμφανίζονται τα φύλλα μέσα στα επιτρεπτά όρια του κεντρικού παραθύρου παιχνιδιού και στρογγυλοποιείται στο κάτω του όριο με την κλήση μιας άλλης έτοιμης συνάρτησης, της: Math.floor(). Card functions : Card.prototype.draw=function():Μέθοδος του αντικειμένου card, που ζωγραφίζει ένα τυχαίο φύλλο από την τράπουλα σε τυχαία θέση στην οθόνη του παιχνιδιού. Κατά τη μετάβαση από το ένα επίπεδο δυσκολίας στο άλλο, αυξάνεται η ταχύτητα του φύλλου, ανάλογα με το επίπεδο. Card.prototype.checkEscaped=function():Μέθοδος του αντικειμένου card, που ελέγχει αν κάποιο φύλλο φτάσει και προσπεράσει το αριστερό άκρο της κύριας οθόνης παιχνιδιού. Στην περίπτωση αυτή το φύλλο απομακρύνεται από τον πίνακα αντικειμένων τύπου cards, και στη θέση του δημιουργείται ένα νέο τυχαίο φύλλο σε νέα τυχαία θέση. Card.prototype.recycleCard=function():Μέθοδος του αντικειμένου card, που όταν καλείται παράγει ένα νέο τυχαίο φύλλο σε τυχαία θέση, με τη χρήση των έτοιμων συναρτήσεων που αναφέρθηκαν παραπάνω και το τοποθετεί στον πίνακα αντικειμένων τύπου cards. 38

48 Button object : Δημιουργία αντικειμένου για κάθε κουμπί που βρίσκεται στις οθόνες του παιχνιδιού, με απόδοση των attributes από τα οποία αποτελείται. Αυτά είναι: - οι συντεταγμένες (x,y) του πάνω ορίου του κουμπιού στο sprite αρχείο - οι συντεταγμένες (x,y) του κάτω ορίου του κουμπιού στο sprite αρχείο - οι συντεταγμένες (x,y) του αριστερού ορίου του κουμπιού στο sprite αρχείο - οι συντεταγμένες (x,y) του δεξιού ορίου του κουμπιού στο sprite αρχείο Η περιοχή του καμβά μέσα σε αυτά τα όρια αποτελεί ένα κουμπί στο οποίο ανατίθεται να εκτελέσει ένα συγκεκριμένο γεγονός. Button functions : Button.prototype.checkClicked =function():μέθοδος του αντικειμένου card, που ελέγχει αν έχει γίνει κλικ πάνω σε κάποιο κουμπί. Button.prototype.checkMouseOver=function():Μέθοδος του αντικειμένου card, που ελέγχει αν ο κέρσορας του ποντικιού βρίσκεται πάνω σε κάποιο κουμπί. Στο σημείο αυτό θα παρουσιαστούν οι υπόλοιπες γενικές συναρτήσεις που δεν αποτελούν μεθόδους κάποιου συγκεκριμένου object και η κλήση τους μπορεί να γίνει απ ευθείας σε οποιοδήποτε σημείο του κώδικα. function clearctxbackground(), function clearctx5card(), function clearctxbomber(), function clearctxcard() : Συναρτήσεις για τον καθαρισμό του περιεχομένου κάθε καμβά με τη χρήση της έτοιμης μεθόδου clearrect(). function init(): Η συνάρτηση αρχικοποίησης του παιχνιδιού, η οποία καλείται με το άνοιγμα του web browser ή με την επανέναρξη του παιχνιδιού ύστερα από τερματισμό/ολοκλήρωσή του. 39

49 function carditem(name,value,altvalue): Συνάρτηση για την ανάθεση ονόματος και αξίας για κάθε φύλλο της τράπουλας. function createdeck(): Συνάρτηση για τη δημιουργία τράπουλας. Κάθε φορά δημιουργείται ένα φύλλο με τη χρήση του ονόματος και της αξίας του και εισάγεται σε μία λίστα. Η τελική λίστα που παράγεται αποτελεί και την τράπουλα με τα 52 φύλλα. function movebackground(): Συνάρτηση που προκαλεί την κίνηση του background σε κάθε στάδιο, στον κεντρικό καμβά του παιχνιδιού. Ζωγραφίζει το εκάστοτε background, χρησιμοποιώντας τις διαστάσεις του από το sprite αρχείο. Όταν φτάσει στις συντεταγμένες που αντιστοιχούν στο δεξί άκρο της εικόνας, η διαδικασία επαναλαμβάνεται, ζωγραφίζοντάς το από την αρχή, δηλ. ξεκινώντας από τις συντεταγμένες του αριστερού άκρου της εικόνας. function spawn5cardsontable(): Συνάρτηση με την οποία παράγονται τα πέντε τυχαία προτεινόμενα φύλλα στο table, αριστερά του κεντρικού καμβά, με τη χρήση των έτοιμων συναρτήσεων Math.floor() και Math.random(), δημιουργώντας μια λίστα με πέντε αντικείμενα τύπου cards. function drawontable(): Συνάρτηση που ζωγραφίζει στον καμβά του αριστερού table, τα πέντε προτεινόμενα φύλλα της λίστας που παράχθηκε προηγουμένως. Για να γίνει αυτό, γίνεται χρήση των συντεταγμένων και των διαστάσεων του κάθε φύλλου από το sprite αρχείο. function spawncard(num): Συνάρτηση η οποία παράγει ένα συγκεκριμένο αριθμό num τυχαίων φύλλων από την τράπουλα, με τη χρήση των έτοιμων συναρτήσεων Math.floor() και Math.random(), δημιουργώντας μια λίστα με num πλήθος αντικειμένων τύπου cards. Η λίστα αυτή αποτελεί τα επερχόμενα φύλλα/εχθρούς και ανανεώνεται κάθε φορά που κάποιο φύλλο χτυπηθεί ή ξεπεράσει το αριστερό άκρο του κεντρικού καμβά του παιχνιδιού. 40

Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites

Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites Γραφικά υπολογιστών Εργαστήριο 10 Εισαγωγή στα Sprites Σκοπός της 10ης άσκησης είναι να μάθουμε να χρησιμοποιούμε sprites και να φτιάξουμε ένα παιχνίδι που χρησιμοποιεί συγκρούσεις. Θα δούμε επίσης μερικά

Διαβάστε περισσότερα

Slalom Race Computer Game on Scratch

Slalom Race Computer Game on Scratch Slalom Race Computer Game on Scratch Μπογιατζή Ελισάβετ ¹, Μεταξά Παυλίνα², Νεστοροπούλου Ευσεβεία³, Μαρόγλου Ευαγγελία 4 1 boelisabet@gmail.com 2 pavlinamet2@gmail.com 3 makis.nestoro@hotmail.com 4 euaggeliam2000@gmail.com

Διαβάστε περισσότερα

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο FrontPage 2003 Πρακτικός Οδηγός Χρήσης Το FrontPage είναι ένα πρόγραμμα δημιουργίας ιστοσελίδων και δικτυακών τόπων που επιτρέπει το σχεδιασμό ιστοσελίδων μέσα από γραφικό περιβάλλον αλλά και την ταυτόχρονη

Διαβάστε περισσότερα

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

Διαβάστε περισσότερα

Φύλλο Εργασίας: Παιχνίδι Λαβύρινθος (MAZE) Προγραμματιστικό Εργαλείο: GAME MAKER. Ονοματεπώνυμο:

Φύλλο Εργασίας: Παιχνίδι Λαβύρινθος (MAZE) Προγραμματιστικό Εργαλείο: GAME MAKER. Ονοματεπώνυμο: Φύλλο Εργασίας: Παιχνίδι Λαβύρινθος (MAZE) Προγραμματιστικό Εργαλείο: GAME MAKER Ονοματεπώνυμο: Τμήμα: Σκοπός σας είναι να φτιάξετε ένα ηλεκτρονικό παιχνίδι για περιπλάνηση σε Λαβύρινθο (MAZE) χρησιμοποιώντας

Διαβάστε περισσότερα

1ο Φύλλο Εργασίας. της παλέτας Ήχος. Πώς μπορούμε να εισάγουμε και να αναπαράγουμε έναν ήχο;

1ο Φύλλο Εργασίας. της παλέτας Ήχος. Πώς μπορούμε να εισάγουμε και να αναπαράγουμε έναν ήχο; 1ο Φύλλο Εργασίας της παλέτας Ήχος Πώς μπορούμε να εισάγουμε και να αναπαράγουμε έναν ήχο; Για να εισάγουμε ένα ή περισσότερα μουσικά κλιπ σε ένα αντικείμενο, επιλέγουμε από το μεσαίο παράθυρο του Scratch

Διαβάστε περισσότερα

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο)

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο) Διδάσκων: Ανδρέας Γιαννακουλόπουλος Επιστημονικός συνεργάτης Εργαστηρίου: Στέλλα Λάμπουρα Εαρινό εξάμηνο Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί

Διαβάστε περισσότερα

αντίστοιχο γεγονός. Όταν όντως το κουμπί

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

Διαβάστε περισσότερα

3 ο εργαστήριο Scratch for NinjaCoders

3 ο εργαστήριο Scratch for NinjaCoders 3 ο εργαστήριο Scratch for NinjaCoders Τίτλος εφαρμογής: Space Invaders (Διαστημικοί εισβολείς) Περιγραφή στόχων, σενάριο εφαρμογής, παρουσίαση scratch, μεταβλητές, συμβάντα, προγραμματιστικές δομές 0

Διαβάστε περισσότερα

Tank Rescue Computer Game σε Scratch

Tank Rescue Computer Game σε Scratch Tank Rescue Computer Game σε Scratch Μπέλτσος Νικόλαος 1, Παναγιωτόπουλος Ευάγγελος 2, Παπαδόπουλος Βασίλης 3, Παπουδάρης Κωνσταντίνος 4 1 sokin2@yahoo.gr 2 vaggelispan@yahoo.gr 3 papadopoulos_vasilis@yahoo.gr

Διαβάστε περισσότερα

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010

Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Βυζαντινός Ρεπαντής Κολλέγιο Αθηνών 2010 Δημιουργία ενός απλού παιχνιδιού με το Gamemaker (μετάφραση από το http://www.stuffucanuse.com/downloads/gamemaker-introductionlessons/free_game_downloads_gamemaker.htm)

Διαβάστε περισσότερα

A7.2 Δημιουργία Απλής Γραφικής Εφαρμογής σε Περιβάλλον Scratch

A7.2 Δημιουργία Απλής Γραφικής Εφαρμογής σε Περιβάλλον Scratch A7.2 Δημιουργία Απλής Γραφικής Εφαρμογής σε Περιβάλλον Scratch Τι θα μάθουμε σήμερα: Να ενεργοποιούμε το λογισμικό Scratch Να αναγνωρίζουμε τα κύρια μέρη του περιβάλλοντος του Scratch Να δημιουργούμε/εισάγουμε/τροποποιούμε

Διαβάστε περισσότερα

Καροτοκυνηγός. Αντικείμενα

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

Διαβάστε περισσότερα

Εφαρμογή δημιουργίας σεναρίων Sctatch

Εφαρμογή δημιουργίας σεναρίων Sctatch Εφαρμογή δημιουργίας σεναρίων Sctatch Δημιουργία Σεναρίων με το Scratch - τάξη Β Το Scratch είναι μια γλώσσα οπτικού προγραμματισμού οδηγούμενου από γεγονότα. Τα έργα (project) στο Scratch οικοδομούνται

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ.

ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ. Ηλεκτρονική Υποβολή Α.Π.Δ. ΕΓΧΕΙΡΙΔΙΟ ΟΔΗΓΙΩΝ ΧΡΗΣΤΗ Ηλεκτρονική Υποβολή Α.Π.Δ. ΠΕΡΙΕΧΟΜΕΝΑ 1) Είσοδος στην εφαρμογή 2) Δημιουργία Περιόδου Υποβολής 2.α) Ακύρωση Περιόδου Υποβολής 3) Μέθοδος Υποβολής: Συμπλήρωση Φόρμας 3.α) Συμπλήρωση

Διαβάστε περισσότερα

Αναπαραγωγή και stop/pause έτοιμων ηχητικών clips

Αναπαραγωγή και stop/pause έτοιμων ηχητικών clips Αναπαραγωγή και stop/pause έτοιμων ηχητικών clips Το scratch διαθέτει αρκετά μεγάλη ποικιλία έτοιμων ενσωματωμένων ηχητικών clips τα οποία θα βρείτε πολύ ενδιαφέροντα και θα σας βάλουν σε πειρασμό να πειραματιστείτε

Διαβάστε περισσότερα

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word

Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word Οδηγίες για προσθήκη Web Frames Tools to the Quick Access Bar σε μεταγενέστερη έκδοση του Word Επειδή οι μεταγενέστερες εκδόσεις του Word δεν περιλαμβάνουν στο μενού τη δυνατότητα δημιουργίας πολλαπλών

Διαβάστε περισσότερα

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7

Περιεχόμενα. Λίγα λόγια από το συγγραφέα... 7 Περιεχόμενα Λίγα λόγια από το συγγραφέα... 7 Μέρος 1 1 Βασικοί όροι... 11 2 Βασική δομή κώδικα HTML... 25 3 Μορφοποίηση κειμένου... 39 4 Μορφοποίηση παραγράφων... 51 5 Εισαγωγή εικόνας... 63 6 Λίστες με

Διαβάστε περισσότερα

Βιωματικό εργαστήριο ηλεκτρονικών υπολογιστών. Οργάνωση εκπαιδευτικού υλικού με Η/Υ από δραστηριότητες στο Δημοτικό και στο Νηπιαγωγείο.

Βιωματικό εργαστήριο ηλεκτρονικών υπολογιστών. Οργάνωση εκπαιδευτικού υλικού με Η/Υ από δραστηριότητες στο Δημοτικό και στο Νηπιαγωγείο. Βιωματικό εργαστήριο ηλεκτρονικών υπολογιστών. Οργάνωση εκπαιδευτικού υλικού με Η/Υ από δραστηριότητες στο Δημοτικό και στο Νηπιαγωγείο. Εισηγητής : Χρήστος Μανώλης δάσκαλος Θεσσαλονίκη Οκτώβριος - Δεκέμβριος

Διαβάστε περισσότερα

Εισαγωγη στην html. Η δομή μιας ιστοσελίδας (αρχείο html) Η βασική δομή ενός αρχείου html είναι η εξής: <html> <head>

Εισαγωγη στην html. Η δομή μιας ιστοσελίδας (αρχείο html) Η βασική δομή ενός αρχείου html είναι η εξής: <html> <head> Εισαγωγη στην html Ο παγκόσμιος ιστός (αγγ.: World Wide Web ή www) είναι η πιο δημοφιλής υπηρεσία που μας παρέχει το Διαδίκτυο (Internet) και είναι ένα σύστημα διασυνδεδεμένων πληροφοριών (κειμένου, εικόνας,

Διαβάστε περισσότερα

Προγραμματισμός. Το περιβάλλον του scratch

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

Διαβάστε περισσότερα

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ Κεφάλαιο 2. Το περιβάλλον του παγκόσμιου Ιστού Επιμέλεια: Καραγιάννης Σπύρος Καθηγητής ΠΕ19 Πλεονεκτήματα παγκόσμιου Ιστού Εξυπηρετητής Ιστού & Ιστοσελίδες Κύριες

Διαβάστε περισσότερα

Το δεύτερο παιχνίδι ΤΟΥΒΛΑΚΙΑ

Το δεύτερο παιχνίδι ΤΟΥΒΛΑΚΙΑ Το δεύτερο παιχνίδι ΤΟΥΒΛΑΚΙΑ Στο παιχνίδι υπάρχουν τουβλάκια διαφόρων χρωμάτων. Σκοπός του παιχνιδιού είναι να καταστραφούν όλα τα τουβλάκια. Ο παίκτης χειρίζεται από το πληκτρολόγιο μία ρακέτα. Ένα μπαλάκι

Διαβάστε περισσότερα

Ανακύκλωσε το Computer Game σε Scratch

Ανακύκλωσε το Computer Game σε Scratch Ανακύκλωσε το Computer Game σε Scratch Καλλιόπη Σατραζέμη¹, Μαρία Χαραλαμπίδου², Κλεοπάτρα Χαριστέ³, Λαμπρινή Χρυσή 4 1 kalliopaki_s@yahoo.gr 2 maraki98_xar@hotmail.gr 3 kleo.xar@hotmail.gr 4 lamprini1998@gmail.com

Διαβάστε περισσότερα

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο Το περιβάλλον εργασίας Ανοίγοντας την Ελληνική Έκδοση του FrontPage, για πρώτη φορά, η εικόνα που θα συναντήσουμε είναι αυτή της Εικόνας 1 με τα Μενού Εντολών και τη Γραμμή Εργαλείων, στο πάνω μέρος της

Διαβάστε περισσότερα

JAVASCRIPT 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

JAVASCRIPT 1. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών JAVASCRIPT 1 Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Breakdance Computer Game σε Scratch.

Breakdance Computer Game σε Scratch. Breakdance Computer Game σε Scratch. Ταστίογλου Μαριάννα 1, Τραντοπούλου Μαργαρίτα 2 1 Μαθήτρια Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου atas94@otenet.gr 2 Μαθήτρια Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου daizy@in.gr Δασκαλάκης

Διαβάστε περισσότερα

Ο Οδηγός γρήγορης εκκίνησης

Ο Οδηγός γρήγορης εκκίνησης Ο Οδηγός γρήγορης εκκίνησης του Microsoft PowerPoint 2013 έχει διαφορετική εμφάνιση από προηγούμενες εκδόσεις. Γι αυτό το λόγο, δημιουργήσαμε αυτόν τον οδηγό για να ελαχιστοποιήσουμε την καμπύλη εκμάθησης.

Διαβάστε περισσότερα

Προγραμματισμός ΙI (Θ)

Προγραμματισμός ΙI (Θ) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κεντρικής Μακεδονίας - Σέρρες Τμήμα Μηχανικών Πληροφορικής Προγραμματισμός ΙI (Θ) Δρ. Δημήτρης Βαρσάμης Επίκουρος Καθηγητής Μάρτιος 2017 Δρ. Δημήτρης Βαρσάμης Μάρτιος 2017

Διαβάστε περισσότερα

Α ΛΥΚΕΙΟΥ - ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΪΟΣ 2019 ΕΝΔΕΙΚΤΙΚΕΣ ΕΡΩΤΗΣΕΙΣ ΚΑΤΑΝΟΗΣΗΣ

Α ΛΥΚΕΙΟΥ - ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΑΪΟΣ 2019 ΕΝΔΕΙΚΤΙΚΕΣ ΕΡΩΤΗΣΕΙΣ ΚΑΤΑΝΟΗΣΗΣ Το υλικό αυτό δίνεται στους μαθητές για τη σωστή μελέτη της διδαχθείσας ύλης του μέρους Β. Πρόκειται για ένα συμπαγή κορμό ερωτήσεων και ασκήσεων οι οποίες καλύφθηκαν κατά τη διάρκεια της έως τώρα σχολικής

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave

ΠΛΗΡΟΦΟΡΙΚΗ Ι Εργαστήριο 1 MATLAB ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1. Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave ΠΛΗΡΟΦΟΡΙΚΗ Ι ΕΡΓΑΣΤΗΡΙΟ 1 Θέμα εργαστηρίου: Εισαγωγή στο MATLAB και στο Octave Περιεχόμενο εργαστηρίου: - Το περιβάλλον ανάπτυξης προγραμμάτων Octave - Διαδικασία ανάπτυξης προγραμμάτων MATLAB - Απλά

Διαβάστε περισσότερα

Η εφαρμογή είναι βελτιστοποιημένη για όλες τις συσκευές ios και Android, με ios 9.x ή νεότερη έκδοση και Android 4.4 ή νεότερη έκδοση.

Η εφαρμογή είναι βελτιστοποιημένη για όλες τις συσκευές ios και Android, με ios 9.x ή νεότερη έκδοση και Android 4.4 ή νεότερη έκδοση. Οδηγίες βήμα προς βήμα για την εφαρμογή Με την εφαρμογή αυτή μπορείτε να χρησιμοποιήσετε ψηφιακά βιβλία (e-books) σε μορφή «Adobe Digital Editions epub» και «Adobe Digital Editions PDF», αρχεία ήχου (e-audios),

Διαβάστε περισσότερα

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10

Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10 Περιεχόμενα Εισαγωγή στην εφαρμογή... 2 Βασική Σελίδα (Activity)... 3 Ρυθμίσεις... 3 Πελάτες... 6 Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10 Αποθήκη... 11 Αναζήτηση προϊόντος...

Διαβάστε περισσότερα

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010

Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ

Διαβάστε περισσότερα

Πώς το λένε Computer game στο Scratch

Πώς το λένε Computer game στο Scratch Πώς το λένε Computer game στο Scratch Μιχαηλία Γκαλλέ¹, Χριστόδουλος Σατραζέμης², 1 Μαθήτρια Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου mixaelagalle@gmail.com 2 Μαθητής Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου linosatra@gmail.com

Διαβάστε περισσότερα

Βάσεις δεδομένων (Access)

Βάσεις δεδομένων (Access) Βάσεις δεδομένων (Access) Όταν εκκινούμε την Access εμφανίζεται το παρακάτω παράθυρο: Κουμπί Κενή βάση δεδομένων Κουμπί του Office Για να φτιάξουμε μια νέα ΒΔ κάνουμε κλικ στο κουμπί «Κενή βάση δεδομένων»

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΥΠΟΣΥΣΤΗΜΑΤΟΣ ΑΓΡΟΠΕΡΙΒΑΛΛΟΝΤΙΚΩΝ ΕΝΙΣΧΥΣΕΩΝ. Μέτρο 2.2.1

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ ΥΠΟΣΥΣΤΗΜΑΤΟΣ ΑΓΡΟΠΕΡΙΒΑΛΛΟΝΤΙΚΩΝ ΕΝΙΣΧΥΣΕΩΝ. Μέτρο 2.2.1 On line ΔΗΛΩΣΗ ΕΦΑΡΜΟΓΗΣ Μέτρο 2.2.1 ΙΑΝΟΥΑΡΙΟΣ 2017 ΠΙΝΑΚΑΣ ΠΕΡΙΕΧΟΜΕΝΩΝ 1 ΓΕΝΙΚΕΣ ΛΕΙΤΟΥΡΓΙΕΣ... 3 1.1 Υποχρεωτικά Πεδία... 3 1.2 Βοηθητική Λίστα Τιμών (drop down list)... 3 1.3 Αναζήτηση... 3 1.3.1

Διαβάστε περισσότερα

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω:

1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω: 1ο μέρος 1. Φτιάχνουμε την πίστα. Μια ενδεικτική πίστα φαίνεται παρακάτω: Εικόνα 1 Για να φτιάξουμε το τείχος επιλέγουμε καταρχήν την καρτέλα Γραφικά (κάτω δεξιά) και έπειτα το γεμάτο τετράγωνο από την

Διαβάστε περισσότερα

Flight Adventure. Computer Game σε Microworlds Pro

Flight Adventure. Computer Game σε Microworlds Pro Παλασίδης Δημήτρης 1, Παπαδόπουλος Γεώργιος 2, Παραστατίδης Χαράλαμπος 3 1 Μαθητής Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου jimpal9@gmail.com 2 Μαθητής Γ Τάξης, 2 ο Γυμνάσιο Ευόσμου magovali @windowslive.com 3 Μαθητής

Διαβάστε περισσότερα

POWERPOINT 2003. Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων.

POWERPOINT 2003. Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων. POWERPOINT 2003 1. Τι είναι το PowerPoint (ppt)? Είναι το δημοφιλέστερο πρόγραμμα παρουσιάσεων. 2. Τι δυνατότητες έχει? Δημιουργία παρουσίασης. Μορφοποίηση παρουσίασης. Δημιουργία γραφικών. Δημιουργία

Διαβάστε περισσότερα

Εργασία-3: Παρουσίαση Εργασίας. Ομάδα Α. Προετοιμασία Αναφοράς

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

Διαβάστε περισσότερα

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2 Παιχνίδι Κρεμάλα Στη δραστηριότητα αυτή θα δημιουργήσεις το γνωστό παιχνίδι της κρεμάλας στο οποίο ο παίκτης προσπαθεί να μαντέψει τα γράμματα από τα οποία αποτελείται μια άγνωστη λέξη. Το πρόγραμμα που

Διαβάστε περισσότερα

ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ.

ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ. ΟΔΗΓΟΣ ΧΡΗΣΗΣ(ΜΑΝUΑL) ΔΙΑΧΕΙΡΙΣΤΗ-ΧΡΗΣΤΗ. Οδηγός Διαχειριστή Το m-learning Toolkit είναι μια ολοκληρωμένη πλατφόρμα εξ αποστάσεως εκπαίδευσης που έχει σχεδιαστεί για να υπάρχει η δυνατότητα της πρόσβασης

Διαβάστε περισσότερα

Δημιουργώντας ένα παιχνίδι λαβυρίνθου(maze game) με εμπόδια

Δημιουργώντας ένα παιχνίδι λαβυρίνθου(maze game) με εμπόδια Φύλλο Εργασίας Δημιουργώντας ένα παιχνίδι λαβυρίνθου(maze game) με εμπόδια Δραστηριότητα 1η Σε αυτό το φύλλο εργασίας θα δημιουργήσουμε βήμα βήμα ένα παιχνίδι με λαβύρινθο (maze game) με εμπόδια. Το παιχνίδι

Διαβάστε περισσότερα

ΥΠΗΡΕΣΙΕΣ ΔΙΑΔΙΚΤΟΥ Explorer & Outlook 2013

ΥΠΗΡΕΣΙΕΣ ΔΙΑΔΙΚΤΟΥ Explorer & Outlook 2013 ΥΠΗΡΕΣΙΕΣ ΔΙΑΔΙΚΤΟΥ Explorer & Outlook 2013 1. Δίκτυα Υπολογιστών και Διαδίκτυο... 3 1.1. Όροι Και Έννοιες... 3 1.2. Ασφάλεια Στο Διαδίκτυο... 5 2. Περιήγηση στον Παγκόσμιο Ιστό 7 Το Περιβάλλον Ενός Φυλλομετρητή...

Διαβάστε περισσότερα

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου

Εισαγωγή στην PHP. ΕΣΔ 516 Τεχνολογίες Διαδικτύου. Περιεχόμενα. Περιεχόμενα. ΕΣ 516: Τεχνολογίες ιαδικτύου. ΕΣ 516: Τεχνολογίες ιαδικτύου ΕΣΔ 516 Τεχνολογίες Διαδικτύου Εισαγωγή στην PHP Περιεχόμενα Περιεχόμενα PHP και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις Παράδειγματα 1 Βιβλιογραφία Ενότητας Βιβλιογραφία [Lane 2004]: Chapter

Διαβάστε περισσότερα

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων

Εργαστήριο «Τεχνολογία Πολιτισμικού Λογισμικού» Ενότητα. Επεξεργασία πινάκων Ενότητα 4 Επεξεργασία πινάκων 36 37 4.1 Προσθήκη πεδίων Για να εισάγετε ένα πεδίο σε ένα πίνακα που υπάρχει ήδη στη βάση δεδομένων σας, βάζετε τον κέρσορα του ποντικιού στο πεδίο πάνω από το οποίο θέλετε

Διαβάστε περισσότερα

ΟΔΗΓΙΕΣ ΓΙΑ ΤΟ ΠΑΙΧΝΙΔΙ.

ΟΔΗΓΙΕΣ ΓΙΑ ΤΟ ΠΑΙΧΝΙΔΙ. ΟΔΗΓΙΕΣ ΓΙΑ ΤΟ ΠΑΙΧΝΙΔΙ. Το πρώτο πράγμα που βλέπουμε μόλις ξεκινάμε το παιχνίδι είναι μια λίστα με όλα τα διαθέσιμα βίντεο με τα οποία μπορούμε να εξασκηθούμε. Σε αυτή περιλαμβάνονται επίσης πληροφορίες

Διαβάστε περισσότερα

Εγχειρίδιο Χρήσης Φορέα Πιστοποίησης

Εγχειρίδιο Χρήσης Φορέα Πιστοποίησης Εγχειρίδιο Χρήσης Φορέα Πιστοποίησης ΕΙΣΟΔΟΣ ΣΤΗΝ ΕΦΑΡΜΟΓΗ Για την είσοδο στην εφαρμογή απαιτείται, 1. Πλοηγός ιστοσελίδων (Internet Explorer, Mozilla Firefox, Google Chrome, Netscape Navigator), 2. Όνομα

Διαβάστε περισσότερα

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι

21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB. Αλγόριθμος Διαδικασία Παράμετροι 21. ΦΥΛΛΟ ΕΡΓΑΣΙΑΣ 4 - ΔΗΜΙΟΥΡΓΩΝΤΑΣ ΜΕ ΤΟ BYOB BYOB Αλγόριθμος Διαδικασία Παράμετροι Τι είναι Αλγόριθμος; Οι οδηγίες που δίνουμε με λογική σειρά, ώστε να εκτελέσουμε μια διαδικασία ή να επιλύσουμε ένα

Διαβάστε περισσότερα

Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου. Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I

Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου. Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I Πληροφορική Τμήμα Σχεδιασμού & Τεχνολογίας Ξύλου & Επίπλου Αντώνιος Καραγεώργος Ευανθία Τσιλιχρήστου Μάθημα 5 ο Τεχνολογίες Διαδικτύου: HTML I Διαδικτυακή Εφαρμογή (1/2) Ως διαδικτυακή εφαρμογή μπορούμε

Διαβάστε περισσότερα

Visual Flowchart Γενικά

Visual Flowchart Γενικά Visual Flowchart 3.020 -Γενικά Το Visual Flowchart ή «Data-Flow Visual Programming Language 3.020» (http://www. emu8086.com/fp) είναι ένα περιβάλλον ανάπτυξης και εκτέλεσης αλγορίθμων απευθείας σε μορφή

Διαβάστε περισσότερα

Δημιουργία δισδιάστατου παιχνιδιού, τύπου Pacman. 1ο μέρος.

Δημιουργία δισδιάστατου παιχνιδιού, τύπου Pacman. 1ο μέρος. Μάθημα 4ο Δημιουργία δισδιάστατου παιχνιδιού, τύπου Pacman. 1ο μέρος. Σε αυτό το μάθημα θα δημιουργήσουμε ένα απλό παιχνίδι με τη βοήθεια του Director. Το παιχνίδι θα είναι στο ύφος του γνωστού Pacman,

Διαβάστε περισσότερα

7.Α.1 Παρουσιάσεις. 7.Α.2 Περιγραφή περιεχομένων της εφαρμογής

7.Α.1 Παρουσιάσεις. 7.Α.2 Περιγραφή περιεχομένων της εφαρμογής Μάθημα 7ο Πολυμέσα 7.Α.1 Παρουσιάσεις Οι παρουσιάσεις είναι μια εφαρμογή που χρησιμεύει στην παρουσίαση των εργασιών μας. Αποτελούν μια συνοπτική μορφή των εργασιών μας. Μέσω δημιουργίας διαφανειών, μορφοποιήσεων

Διαβάστε περισσότερα

Βάσεις δεδομένων (Access)

Βάσεις δεδομένων (Access) Βάσεις δεδομένων (Access) Όταν εκκινούμε την Access εμφανίζεται το παρακάτω παράθυρο: Για να φτιάξουμε μια νέα ΒΔ κάνουμε κλικ στην επιλογή «Κενή βάση δεδομένων» στο Παράθυρο Εργασιών. Θα εμφανιστεί το

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

Διαβάστε περισσότερα

Ας μετονομάσουμε τη γάτα που εμφανίζεται μόλις ανοίγουμε το Scratch. Επιλέγουμε το εικονίδιο Μορφή1 που βρίσκεται στη λίστα αντικειμένων.

Ας μετονομάσουμε τη γάτα που εμφανίζεται μόλις ανοίγουμε το Scratch. Επιλέγουμε το εικονίδιο Μορφή1 που βρίσκεται στη λίστα αντικειμένων. Σχεδιάζοντας αντικείμενα Εισαγωγή στο περιβάλλον των αντικειμένων Όπως συζητήσαμε και στο προηγούμενο κεφάλαιο, τα αντικείμενα στο Scratch αποτελούν τους πρωταγωνιστές των έργων μας. Το πρώτο βήμα κατά

Διαβάστε περισσότερα

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet.

ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΜΑΘΗΜΑ: Εργαλεία Ανάπτυξης εφαρμογών internet. ΩΡΕΣ ΔΙΔΑΣΚΑΛΙΑΣ: ΕΙΔΟΣ ΜΑΘΗΜΑΤΟΣ: Μικτό Γενικός σκοπός είναι να αποκτήσει ο καταρτιζόμενος τις αναγκαίες γνώσεις σχετικά με εργαλεία και τις τεχνικές για

Διαβάστε περισσότερα

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2

Αριστείδης Παλιούρας Ανακαλύψτε το Scratch 2 Παιχνίδι Bounce Ball Στη δραστηριότητα αυτή θα δημιουργήσεις το παιχνίδι Bounce Ball στο οποίο η μπάλα κινείται συνεχώς και ο χρήστης προσπαθεί με το ποντίκι του να μετακινεί την πράσινη μπάρα για να χτυπήσει

Διαβάστε περισσότερα

Εργαλεία Κατασκευής Παιχνιδιών Ι (Unreal Editor, Half Life, Doom Editor)

Εργαλεία Κατασκευής Παιχνιδιών Ι (Unreal Editor, Half Life, Doom Editor) Τεχνικός Εφαρμογών Πληροφορικής Εργαλεία Κατασκευής Παιχνιδιών Ι (Unreal Editor, Half Life, Doom Editor) Τεχνική Δημιουργίας Παιχνιδιών Εξάμηνο: 2014Β Διδάσκουσα: Ηλεκτρονική Τάξη: http://moodleforall.ictlab.edu.gr/

Διαβάστε περισσότερα

GET SDI PORTAL v1. Οδηγός Βοήθειας

GET SDI PORTAL v1. Οδηγός Βοήθειας GET SDI PORTAL v1 Οδηγός Βοήθειας Μεταδεδομένα εγγράφου Στοιχείο/Element Τιμή/value Ημερομηνία/Date 2011-06-16 Τίτλος/Title GETSDIPortal_v1_Help_v1.0 Θέμα/Subject Οδηγός Βοήθειας Έκδοση/Version 1.0 Σελίδα

Διαβάστε περισσότερα

Οδηγός γρήγορης εκκίνησης

Οδηγός γρήγορης εκκίνησης Οδηγός γρήγορης εκκίνησης Το Microsoft Word 2013 έχει διαφορετική εμφάνιση από προηγούμενες εκδόσεις. Γι αυτό το λόγο, δημιουργήσαμε αυτόν τον οδηγό για να ελαχιστοποιήσουμε την καμπύλη εκμάθησης. Γραμμή

Διαβάστε περισσότερα

Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εφαρμογή Εκτύπωσης Ταξιθετικών Ετικετών 2000-2005

Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών. Εφαρμογή Εκτύπωσης Ταξιθετικών Ετικετών 2000-2005 Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Υπολογιστικό Κέντρο Βιβλιοθηκών Εφαρμογή Εκτύπωσης Ταξιθετικών Ετικετών 2000-2005 Σύντομο εγχειρίδιο χρήσης και λειτουργιών Εισαγωγή Το παρόν κείμενο στόχο

Διαβάστε περισσότερα

Οδηγίες Εγκατάστασης της εφαρμογής Readium και Readium για μαθητές με αμβλυωπία για την ανάγνωση βιβλίων epub σε Υπολογιστή.

Οδηγίες Εγκατάστασης της εφαρμογής Readium και Readium για μαθητές με αμβλυωπία για την ανάγνωση βιβλίων epub σε Υπολογιστή. Οδηγίες Εγκατάστασης της εφαρμογής Readium και Readium για μαθητές με αμβλυωπία για την ανάγνωση βιβλίων epub σε Υπολογιστή. Βήμα 1 ο : Εγκατάσταση εφαρμογής ανάγνωσης Readium και Readium για μαθητές με

Διαβάστε περισσότερα

Πρόλογος... 7 ΕΙΔΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

Πρόλογος... 7 ΕΙΔΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΕΡΙΕΧΟΜΕΝΑ Πρόλογος... 7 ΕΙΔΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ Α Δομή και λειτουργία προσωπικού υπολογιστή...11 ΘΕΜΑΤΙΚΗ ΕΝΟΤΗΤΑ Β Δομή και χρήση λειτουργικών συστημάτων DOS, UNIX και λειτουργικού

Διαβάστε περισσότερα

Οδηγός ξεκινήματος. έκδοση 2.0.

Οδηγός ξεκινήματος. έκδοση 2.0. Οδηγός ξεκινήματος έκδοση 2.0 Το SCRATCH είναι μια γλώσσα προγραμματισμού, που σου επιτρέπει να δημιουργείς τις δικές σου διαδραστικές ιστορίες, κινούμενα σχέδια, παιχνίδια, μουσική και τέχνη. Αυτός ο

Διαβάστε περισσότερα

Εργαλεία ανάπτυξης εφαρμογών internet Ι

Εργαλεία ανάπτυξης εφαρμογών internet Ι IEK ΟΑΕΔ ΚΑΛΑΜΑΤΑΣ ΤΕΧΝΙΚΟΣ ΕΦΑΡΜΟΓΩΝ ΠΛΗΟΦΟΡΙΚΗΣ Εργαλεία ανάπτυξης εφαρμογών internet Ι Διδάσκουσα: Κανελλοπούλου Χριστίνα ΠΕ19 Πληροφορικής Εργαλεία και τεχνικές από την πλευρά του πελάτη Java Applet

Διαβάστε περισσότερα

Περιεχόμενα ΓΕΩΠΥΛΗ ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΚΕΝΤΡΙΚΟ SITE. ΧΑΡΤΗΣ... 2 Είσοδος στην εφαρμογή «Χάρτης»... 2 Λειτουργίες εφαρμογής «Χάρτης»...

Περιεχόμενα ΓΕΩΠΥΛΗ ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΚΕΝΤΡΙΚΟ SITE. ΧΑΡΤΗΣ... 2 Είσοδος στην εφαρμογή «Χάρτης»... 2 Λειτουργίες εφαρμογής «Χάρτης»... Περιεχόμενα ΧΑΡΤΗΣ... 2 Είσοδος στην εφαρμογή «Χάρτης»... 2 Λειτουργίες εφαρμογής «Χάρτης»....2 Πλοήγηση στο χάρτη... 3 Σχεδίαση στο χάρτη... 4 Εκτύπωση του χάρτη... 6 Μετρήσεις επάνω στο χάρτη... 9 Εμφάνιση

Διαβάστε περισσότερα

ΕΡΩΤΗΜΑΤΟΛOΓΙΟ ΣΧΟΛΕIΟΥ: ΕΓΧΕΙΡIΔΙΟ ΔΙΕΥΘΥΝΤΉ/ΝΤΡΙΑΣ. Doc.: CY7_CBA_ScQPrincipalManual.docx. Δημιουργήθηκε από: ETS, Core Α Contractor

ΕΡΩΤΗΜΑΤΟΛOΓΙΟ ΣΧΟΛΕIΟΥ: ΕΓΧΕΙΡIΔΙΟ ΔΙΕΥΘΥΝΤΉ/ΝΤΡΙΑΣ. Doc.: CY7_CBA_ScQPrincipalManual.docx. Δημιουργήθηκε από: ETS, Core Α Contractor P 2 I S A 0 1 8 PISA 2018 ΕΡΩΤΗΜΑΤΟΛOΓΙΟ ΣΧΟΛΕIΟΥ: ΕΓΧΕΙΡIΔΙΟ ΔΙΕΥΘΥΝΤΉ/ΝΤΡΙΑΣ Doc.: CY7_CBA_ScQPrincipalManual.docx Δημιουργήθηκε από: ETS, Core Α Contractor Προσαρμογή: Εθνικό Κέντρο PISA 2018 ΠΕΡΙΕΧΟΜΕΝΑ

Διαβάστε περισσότερα

3D FLASH ANIMATOR (3DFA)

3D FLASH ANIMATOR (3DFA) 3D FLASH ANIMATOR (3DFA) Εισαγωγή Τα βασικά στοιχεία του προγράµµατος 3DFA είναι οι ταινίες (movies), τα στοιχεία (elements), τα keyframes, τα γεγονότα (events) και οι ενέργειες (actions). Ταινίες (movies)

Διαβάστε περισσότερα

Κεφάλαιο 11: Εισαγωγή στην HTML. Εφαρμογές Πληροφορικής Κεφ. 11 Καραμαούνας Πολύκαρπος

Κεφάλαιο 11: Εισαγωγή στην HTML. Εφαρμογές Πληροφορικής Κεφ. 11 Καραμαούνας Πολύκαρπος Κεφάλαιο 11: Εισαγωγή στην HTML 1 11.1 Γενική εισαγωγή στην HTML Τι είναι η HTML HyperText Markup Language - Γλώσσα Χαρακτηρισμού Υπερ-Κειμένου είναι η βασική γλώσσα με την οποία πραγματοποιείται η δόμηση

Διαβάστε περισσότερα

Το τρίτο παιχνίδι ΛΑΒΥΡΙΝΘΟΣ ΜΕ ΕΜΠΟΔΙΑ

Το τρίτο παιχνίδι ΛΑΒΥΡΙΝΘΟΣ ΜΕ ΕΜΠΟΔΙΑ σύντομες σημειώσεις βασισμένες σε δουλειά των συναδέλφων Κ. Φλώρου και Μ. Μαντουβάλου Το τρίτο παιχνίδι ΛΑΒΥΡΙΝΘΟΣ ΜΕ ΕΜΠΟΔΙΑ Σκοπός του παιχνιδιού είναι ο παππούς να μπορέσει να κινηθεί μέσα έναν λαβύρινθο

Διαβάστε περισσότερα

Atlantis - Νέο user interface

Atlantis - Νέο user interface New Desktop 1 Atlantis - Νέο user interface ATLANTIS - ΝΕΟ USER INTERFACE... 2 ΓΕΝΙΚΗ ΠΑΡΟΥΣΙΑΣΗ... 3 ΓΡΑΜΜΗ ΣΥΣΤΗΜΑΤΟΣ... 4 ΜΠΑΡΑ ΧΡΗΣΤΗ (USER TOOLBAR)... 5 ΚΕΝΤΡΙΚΟ ΜΕΝΟΥ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ... 6 Κεντρικό

Διαβάστε περισσότερα

ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ. Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια. Οι 8 ομάδες της Παλέτας εντολών

ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ. Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια. Οι 8 ομάδες της Παλέτας εντολών ΤΟ ΠΕΡΙΒΑΛΛΟΝ ΤΗΣ Οι 8 ομάδες της Παλέτας εντολών Εργαλειοθήκη Παρουσιάζετε το έργο σας Εκκινείτε τα σενάριά σας Σταματάτε όλα τα σενάρια Σκηνή Εδώ ζωντανεύει το σενάριό σας Εντολές κάθε ομάδας Αυτή είναι

Διαβάστε περισσότερα

Copyright 2017 HP Development Company, L.P.

Copyright 2017 HP Development Company, L.P. Οδηγός χρήσης Copyright 2017 HP Development Company, L.P. Οι πληροφορίες στο παρόν έγγραφο μπορεί να αλλάξουν χωρίς προειδοποίηση. Οι μοναδικές εγγυήσεις για τα προϊόντα και τις υπηρεσίες της HP είναι

Διαβάστε περισσότερα

Εγχειρίδιο του Accerciser, έκδοση 0.2.0

Εγχειρίδιο του Accerciser, έκδοση 0.2.0 i Εγχειρίδιο του Accerciser, ii Copyright 2006, 2007, 2008 IBM Corporation Ανάδραση Για να αναφέρετε ένα σφάλμα ή να κάνετε μια εισήγηση σχετικά με την εφαρμογή Accerciser ή με αυτό τον εγχειρίδιο, ακολουθήστε

Διαβάστε περισσότερα

Εισαγωγή στην PHP. ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας. Περιεχόμενα. Περιεχόμενα

Εισαγωγή στην PHP. ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας. Περιεχόμενα. Περιεχόμενα ΕΣΔ 232 Διαχείριση Δεδομένων στη Κοινωνία της Πληροφορίας Εισαγωγή στην PHP Περιεχόμενα Περιεχόμενα PHP και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις Παράδειγματα 1 Βιβλιογραφία Ενότητας Βιβλιογραφία

Διαβάστε περισσότερα

ΠΑΡΑΡΤΗΜΑ. Εγκατάσταση πιστοποιητικού

ΠΑΡΑΡΤΗΜΑ. Εγκατάσταση πιστοποιητικού Εγκατάσταση πιστοποιητικού ΠΑΡΑΡΤΗΜΑ Η εγκατάσταση του πιστοποιητικού ασφαλείας είναι απαραίτητη γιατί περιλαµβάνει πληροφορίες που χρησιµοποιούνται για να προστατέψουν τα δεδοµένα και για ασφαλή σύνδεση

Διαβάστε περισσότερα

Σύμβαση 457 ΟΠΣ Πολιτικής Προστασίας. Εγχειρίδιο Χρήσης Εφαρμογής Γεωγραφικής Απεικόνισης (Version: 1.0)

Σύμβαση 457 ΟΠΣ Πολιτικής Προστασίας. Εγχειρίδιο Χρήσης Εφαρμογής Γεωγραφικής Απεικόνισης (Version: 1.0) Σύμβαση 457 ΟΠΣ Πολιτικής Προστασίας Εγχειρίδιο Χρήσης Εφαρμογής Γεωγραφικής Απεικόνισης (Version: 1.0) ΑΝΑΔΟΧΟΣ : SPACE COM A.E. INTRACOM IT SERVICES - QUALITY & RELIABILITY A.E. ΑΘΗΝΑ Ιούνιος 2008 Σελίδα

Διαβάστε περισσότερα

Δημιουργία μιας εφαρμογής Java με το NetBeans

Δημιουργία μιας εφαρμογής Java με το NetBeans Δημιουργία μιας εφαρμογής Java με το NetBeans Για να δημιουργήσετε μια εφαρμογή Java πρέπει να ακολουθήσετε τα εξής βήματα : Αρχικά πρέπει να δημιουργηθεί ένα project το οποίο θα περιέχει όλα τα αρχεία

Διαβάστε περισσότερα

Σενάριο 16: Ο κόσμος του Robby

Σενάριο 16: Ο κόσμος του Robby Σενάριο 16: Ο κόσμος του Robby Φύλλο Εργασίας Τίτλος: Ο κόσμος του Robby Γνωστικό Αντικείμενο: Εφαρμογές Πληροφορικής-Υπολογιστών Διδακτική Ενότητα: Διερευνώ - Δημιουργώ Ανακαλύπτω, Συνθετικές εργασίες.

Διαβάστε περισσότερα

Εγχειρίδιο Χρήσης V3.0

Εγχειρίδιο Χρήσης V3.0 ΕΦΑΡΜΟΓΗ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΕΧΟΜΕΝΟΥ Εγχειρίδιο Χρήσης V3.0 Πίνακας Περιεχομένων: 1. Σύνδεση με την συσκευή 3 1.1 Σύνδεση μέσω Wi-Fi Direct.... 3 1.2 Ενσύρματη σύνδεση (LAN) 3 1.3 Ασύρματη σύνδεση (WiFi).

Διαβάστε περισσότερα

Εθνική Υποδομή ΓΕωχωρικών Πληροφοριών

Εθνική Υποδομή ΓΕωχωρικών Πληροφοριών Εθνική Υποδομή ΓΕωχωρικών Πληροφοριών Οργανισμός Κτηματολογίου & Χαρτογραφήσεων Ελλάδας Διαδικτυακές Υπηρεσίες Αναζήτησης και Απεικόνισης ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ Διεύθυνση Γεωπληροφορικής Δεκέμβριος 2012 Περιεχόμενα

Διαβάστε περισσότερα

Microsoft PowerPoint 2007

Microsoft PowerPoint 2007 Information Technology Services and Solutions Σύμβουλοι Μηχανογράφησης και Εκπαίδευσης Στεφ. Σκουλούδη 27, Καλλίπολη, Πειραιάς 210 45 38 177 http://www.itss.gr/ Microsoft PowerPoint 2007 Κωνσταντίνος Κωβαίος

Διαβάστε περισσότερα

Ελέγξτε την ταινία σας

Ελέγξτε την ταινία σας Ελέγξτε την ταινία σας Σε αυτές τις ασκήσεις, θα κάνετε εισαγωγή μιας ταινίας και θα χρησιμοποιήσετε τις επιλογές που παρουσιάστηκαν στο μάθημα. Άσκηση 1: Εισαγωγή αρχείου ταινίας 1. Κάντε κλικ στη μικρογραφία

Διαβάστε περισσότερα

Δημοσίευση στο Διαδίκτυο

Δημοσίευση στο Διαδίκτυο ΕΣΔ200 Δημιουργία Περιεχομένου ΙI Δημοσίευση στο Διαδίκτυο Περιεχόμενα - Βιβλιογραφία Ενότητας Περιεχόμενα Εισαγωγή Δημοσίευση μιας ταινίας στο παγκόσμιο ιστό Βασικά στοιχεία HTML Τεχνικές δημιουργίας

Διαβάστε περισσότερα

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000 INTERNET PHONE

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000 INTERNET PHONE INTERNET PHONE A.S. DRIGAS Applied Technologies Department NCSR DEMOKRITOS Ag. Paraskevi GREECE dr@imm.demokritos.gr http://imm.demokritos.gr Το Internet Phone θέτει καινούργια δεδοµένα για την επικοινωνία

Διαβάστε περισσότερα

Ηλεκτρονικές Υπηρεσίες

Ηλεκτρονικές Υπηρεσίες ΕΓΧΕΙΡΙ ΙΟ Ο ΗΓΙΩΝ ΔΑΠΥ Ηλεκτρονικές Υπηρεσίες Πίνακας Υποβολών & Υπολοίπων ανά Ασφαλιστικό Ταμείο Πίνακας Περιεχομένων 1. Εισαγωγή... 3 1.1 Συμβατότητα Browser... 3 1.2 Διεύθυνση πρόσβασης... 3 1.3 Login

Διαβάστε περισσότερα

ΔΕ10: Πληροφοριακά Συστήματα Διοίκησης IΙ Εργαστήριο # 2

ΔΕ10: Πληροφοριακά Συστήματα Διοίκησης IΙ Εργαστήριο # 2 ΔΕ10: Πληροφοριακά Συστήματα Διοίκησης IΙ Εργαστήριο # 2 Dreamweaver 1/7 Εισαγωγή Το Dreamweaver είναι ένας HTML editor που αναπτύχθηκε από την Macromedia. Είναι WYSIWYG (What You See Is What You Get),

Διαβάστε περισσότερα

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000. PIRCH 32 v0.92b

Special edition of the Technical Chamber of Greece on Video Conference Services on the Internet, 2000. PIRCH 32 v0.92b PIRCH 32 v0.92b A.S. DRIGAS Applied Technologies Department NCSR DEMOKRITOS Ag. Paraskevi GREECE dr@imm.demokritos.gr http://imm.demokritos.gr Το Pirch 32 είναι ένα από τα καλύτερα προγράµµατα επικοινωνίας

Διαβάστε περισσότερα

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή 1 Πίνακας Περιεχομένων 1. Εισαγωγή... 4 1.1 Περιβάλλον Moodle...4 1.2 Χρήση ονόματος χρήστη και κωδικού...4 1.3 Δημιουργία νέου μαθήματος...4 1.3.1

Διαβάστε περισσότερα

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; Εισαγωγή Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; 1. Σελίδα μαθήματος Εγγραφή Ο κάθε φοιτητής πρέπει να κάνει εγγραφή στη σελίδα του μαθήματος στην πλατφόρμα e-class

Διαβάστε περισσότερα

JAVASCRIPT EVENTS. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

JAVASCRIPT EVENTS. Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών JAVASCRIPT EVENTS Διδάσκοντες: Π. Αγγελάτος, Δ. Ζήνδρος Επιμέλεια διαφανειών: Π. Αγγελάτος Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

ΓΛΩΣΣΑ Η ΕΛΛΗΝΙΚΗ ΟΙ ΠΕΡΙΠΕΤΕΙΕΣ ΤΩΝ ΛΕΞΕΩΝ. Εγχειρίδιο λογισμικού

ΓΛΩΣΣΑ Η ΕΛΛΗΝΙΚΗ ΟΙ ΠΕΡΙΠΕΤΕΙΕΣ ΤΩΝ ΛΕΞΕΩΝ. Εγχειρίδιο λογισμικού ΓΛΩΣΣΑ Η ΕΛΛΗΝΙΚΗ ΟΙ ΠΕΡΙΠΕΤΕΙΕΣ ΤΩΝ ΛΕΞΕΩΝ Εγχειρίδιο λογισμικού 1 ΠΕΡΙΕΧΟΜΕΝΑ ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ...3 ΑΛΛΑ ΛΕΙΤΟΥΡΓΙΚΑ ΕΙΚΟΝΙΔΙΑ...4 ΣΥΝΟΠΤΙΚΗ ΒΑΘΜΟΛΟΓΙΑ ΜΑΘΗΤΩΝ...5 ΣΥΝΟΠΤΙΚΗ ΒΑΘΜΟΛΟΓΙΑ ΜΑΘΗΤΗ...6 ΑΣΚΗΣΗ

Διαβάστε περισσότερα

2 ο Εργαστήριο Αλληλεπίδραση και Animation

2 ο Εργαστήριο Αλληλεπίδραση και Animation 2 ο Εργαστήριο Αλληλεπίδραση και Animation Τα προγράμματα που έχουμε δει μέχρι τώρα εκτελούν τον κώδικά τους μία φορά και το πρόγραμμα σταματάει. Ένα πρόγραμμα που δημιουργεί animation ή ανταποκρίνεται

Διαβάστε περισσότερα

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος 4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος Μεταβλητές Συστήματος Η Processing χρησιμοποιεί κάποιες μεταβλητές συστήματος, όπως τις ονομάζουμε, για να μπορούμε να παίρνουμε πληροφορίες από το

Διαβάστε περισσότερα

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0

Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0 Δομές Δεδομένων 5ο εξάμηνο Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse v1.0 Τις σημειώσεις κράτησαν και διαμόρφωσαν σε word οι: Κονδύλη Γαλήνη, ΑΜ 5576 Μάλλιου Χριστίνα, ΑΜ 5413

Διαβάστε περισσότερα

Παράδειγμα «Ημίτονο και ζωγραφική!»: Έχει δει στα μαθηματικά τη γραφική παράσταση της συνάρτησης του ημιτόνου; Σας θυμίζει κάτι η παρακάτω εικόνα;

Παράδειγμα «Ημίτονο και ζωγραφική!»: Έχει δει στα μαθηματικά τη γραφική παράσταση της συνάρτησης του ημιτόνου; Σας θυμίζει κάτι η παρακάτω εικόνα; Τελεστές, συνθήκες και άλλα! Όπως έχει διαφανεί από όλα τα προηγούμενα παραδείγματα, η κατασκευή κατάλληλων συνθηκών στις εντολές εάν, εάν αλλιώς, για πάντα εάν, περίμενε ώσπου, επανέλαβε ώσπου, είναι

Διαβάστε περισσότερα

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης Σελίδα 1από ΤΕΙ ΚΑΒΑΛΑΣ Πτυχιακή εργασία Δικτυακή Εφαρμογή διαχείρισης ηλεκτρονικών εγγράφων υπηρεσίας. ΕΙΣΑΓΩΓΗ Μιλτιάδης Κακλαμάνης Σελίδα 2από Κατάλογος περιεχομένων ΕΙΣΑΓΩΓΗ...1 Σχετιζόμενα πρόσωπα...3

Διαβάστε περισσότερα

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ της Πλατφόρμας Τηλεκατάρτισης ΠΕΡΙΕΧΟΜΕΝΑ 1. Εισαγωγή...2 2. Αρχική σελίδα, Εισαγωγή & Περιβάλλον Συστήματος...3 2.1. Αρχική σελίδα εισαγωγής...3 2.2. Εισαγωγή στην Πλατφόρμα Τηλε-κατάρτισης...4

Διαβάστε περισσότερα