24 Μαϊου 2012
ΑΝΑΖΗΤΗΣΗ
TEST CENTERPANIC BUTTON

ΨΗΦΟΦΟΡΙΑ
Ποιο είναι το αγαπημένο σας OS για smartphones;
Το iOS, είναι μακράν το πιο εύχρηστο
Το Android, ζήτω το open source
Τα Windows Phone 7, εντυπωσιακή νέα είσοδος
Το Symbian, κλασική αξία
περισσότερες ψηφοφορίες »
ΑΡΧΙΚΗ / ΕΙΔΗΣΕΙΣ / Επικαιρότητα
Επικαιρότητα
PC World Project: Προγραμματίστε το δικό σας παιχνίδι
03 Νοεμβρίου 2009 [Σχόλια:2]
Αποστολή σε φίλο Εκτύπωση


16

 

Τώρα πρέπει να δοθεί κίνηση στην μπάλα. Η θέση ενός αντικειμένου μετράται στους άξονες Χ και Y. Σε αυτό το κομμάτι κώδικα πολλαπλασιάζεται (*) το διάνυσμα της κατεύθυνσης της μπάλας στον Χ άξονα με την ταχύτητά της, και κατόπιν προστίθεται (+) στην τωρινή θέση της μπάλας. Το int στην παρένθεση μετατρέπει το δεκαδικό αποτέλεσμα της πράξης σε ακέραιο, που στη συνέχεια αποθηκεύει ως νέα θέση της μπάλας στον Χ άξονα. Η πρώτη κίνηση της μπάλας θα είναι από τη θέση 100 στην 103 (5 επί 0,7 + 100 = 103), και παρόμοια γίνεται στον άξονα Υ. Δοκιμάστε να τρέξετε το παιχνίδι με το F5.

-----------------------------------------------------------------------------------------

17



Από τα δύο προηγούμενα βήματα θα βγει και η κίνηση της ρακέτας του παίκτη. Ανιχνεύετε εάν το κουμπί με το βελάκι που δείχνει προς τα πάνω είναι πατημένο. Εάν ναι, τότε αφαιρούνται 10 pixels από την κάθετη θέση της ρακέτας σας (leftPaddle.Y), ούτως ώστε να ανεβεί. Επιπλέον, ελέγχετε εάν η ρακέτα βγει εκτός παραθύρου (leftPaddle.Y < 0) και, εάν ναι, την κατεβάζετε στο 0. Με την ίδια λογική, το πάτημα του κουμπιού με το κάτω βελάκι θα κατεβάζει τη ρακέτα προς τα κάτω και θα ελέγχει τη θέση της, μην είναι μεγαλύτερη των 720 pixels. Τρέξτε το παιχνίδι και δοκιμάστε την κίνηση της ρακέτας.

-----------------------------------------------------------------------------------------

18



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

-----------------------------------------------------------------------------------------

19



Ήρθε η ώρα της μπάλας να συγκρούεται με τους τοίχους. Η λογική είναι η ίδια με τις ρακέτες, μόνο που εδώ θα προσθέσετε ήχους και σκορ. Αν η άνω πλευρά της μπάλας χτυπήσει στο πάνω τοίχωμα (ball.Top < 0), τότε αλλάζετε την κατεύθυνσή της στον Υ άξονα, ούτως ώστε να κατευθυνθεί προς τα κάτω. Αν η δεξιά πλευρά της χτυπήσει στο δεξιό τοίχωμα (ball.Right > viewWidth), τότε παίρνει έναν πόντο ο παίκτης, παίζει ένας εύθυμος ήχος, επιστρέφει η ταχύτητα της μπάλας στην αρχική της, και της αλλάζετε κατεύθυνση. Παρόμοια είναι η λογική με το αριστερό και κάτω τοίχωμα. Το μόνο που απομένει πια είναι η απόκρουση της μπάλας από τις ρακέτες.

-----------------------------------------------------------------------------------------

20



Σε κάθε γεωμετρικό αντικείμενο το XNA προσθέτει διάφορες λειτουργίες. Μία από αυτές είναι η Intersect(), που ανιχνεύει την επαφή με άλλο γεωμετρικό αντικείμενο. Συγκεκριμένα, στο αντικείμενο ball προσθέτετε τη λειτουργία Intersect(), με παράμετρο την αριστερή ρακέτα. 
Όταν αυτή η λειτουργία ενεργοποιηθεί, τότε ο κώδικας ελέγχει αν η μπάλα έρχεται ή φεύγει (μπορεί να έχει ήδη μπει πόντος, και μετά να υπάρξει επαφή). Εάν πράγματι η ρακέτα έχει αποκρούσει την μπάλα, τότε της αντιστρέφετε την κίνηση, αυξάνετε την ταχύτητα της μπάλας επί 1.1 (για αυτό έπρεπε η μεταβλητή να είναι δεκαδικός αριθμός), και παίζει ο ήχος της επαφής με τη ρακέτα. Τώρα πια το παιχνίδι είναι playable.

-----------------------------------------------------------------------------------------

21



Τώρα που το παιχνίδι μας είναι έτοιμο, δεν έχετε παρά να το μετατρέψετε σε εκτελέσιμο αρχείο, ούτως ώστε να μπορείτε να το πάρετε μαζί σας και να το μοιράσετε. Για να γίνει αυτό, επιλέγετε την επιλογή Build και πατάτε Build Solution. Η διαδικασία ίσως πάρει λίγη ώρα. Το παιχνίδι σας βρίσκεται στην τοποθεσία ..\Έγγραφα (Vista) ή Τα έγγραφά μου (XP)\Visual Studio 2008\Projects\MyPong\MyPong\bin\x86\Debug\, και δεν έχετε παρά να διασκεδάσετε με τη δημιουργία σας ή να τη βελτιώσετε ακόμα περισσότερο, π.χ. προσθέτοντας ήχους στην επαφή με τα τοιχώματα ή περισσότερες ρακέτες. Θα χαρούμε να δούμε τις δημιουργίες σας.

TO ΑΡΘΡΟ ΒΑΘΜΟΛΟΓΗΘΗΚΕ 5 από 2 χρήστες
Σχόλια αναγνωστών (2)
kon_nos, 05-11-2009 10:40
Η ιδέα του παιχνιδιού αν και κατά μεγάλο βαθμό διαφοροποιημένη προέρχεται από αυτό το <a href="http://videogameslab.wordpress.com/index/">blog</a>. Γενικότερα εκεί θα βρεις, στα ελληνικά, αρκετές πληροφορίες αν ενδιαφέρεσαι.
My games: http://www.kongregate.com/accounts/konsnos#gamesby
lans, 04-11-2009 10:07
...tha mporousa na milousa me kapoion gia apories kai lipa panw se auto... ...Teleia protoboulia...!!! ;)
Δες όλα τα σχόλια για αυτό το άρθρο »
Πες τη γνώμη σου
Βαθμολόγησε αυτό το άρθρο Aριστο

Σε δοκιμή
Olympus Pen E-P2
Βελτιωμένη έκδοση μιας ήδη εξαιρετικής μηχανής
Δοκιμή Χαρακτηριστικά Lab Report Τιμές Απόψεις χρηστών
Panasonic Lumix DMC-FT1
Ιδανική compact μηχανή για “επικίνδυνες αποστολές” και καθαρές φωτογραφίες
Δοκιμή Χαρακτηριστικά Lab Report Τιμές Απόψεις χρηστών
Olympus μ-7010
Πλούσια σε αυτόματες λειτουργίες, θα ενθουσιάσει τον αρχάριο με την ευελιξία της
Δοκιμή Χαρακτηριστικά Lab Report Τιμές Απόψεις χρηστών
Olympus SP-565 UZ
Μια ιδιαίτερα αξιόλογη super zoom, με καλά χαρακτηριστικά αλλά και αρκετά αδύναμα σημεία
Δοκιμή Χαρακτηριστικά Lab Report Τιμές Απόψεις χρηστών
Sony Cyber-shot DSC-HX1
Μια φοβερή μηχανή πρακτικά ισάξια της Canon PowerShot SX1 IS, και μάλιστα με πιο καθαρές φωτογραφίες. Ακόμη το σκέφτεστε;
Δοκιμή Χαρακτηριστικά Lab Report Τιμές Απόψεις χρηστών
Downloads
Εφαρμογές
TopStyle Pro 4.0.0.75 Style sheet editor that has something for everyone
Μέγεθος:5.6MB Πλατφόρμα: Windows 2000 | Windows XP | Windows Vista
PCW RATING:'Aριστο Users rating: 'Aριστο
Flickr Uploader 3.2.1
Μέγεθος:12.3MB Πλατφόρμα: Windows XP | Windows Vista
PCW RATING:Πολύ καλό Users rating: 'Aριστο
Paragon Disk Wiper 10 Personal Tool you'll probably use infrequently, but will be a necessity if you want tocompletely eradicate drive contents
Μέγεθος:76.1MB Πλατφόρμα: Windows 2000 | Windows XP | Windows Vista
PCW RATING:Πολύ καλό Users rating: Ανεπαρκές
ChromePlus 1.3.4 Take the Google Chrome v3.x source, add your own features and you have animproved version of the browser. That's the theory. See what you think of thisalternative web browser
Μέγεθος:15.5MB Πλατφόρμα: Windows XP | Windows Vista
PCW RATING: Users rating: 'Aριστο
Yahoo! Messenger 10.0.0.1258 Nice chat application, but doesn't compete well against Skype (for voicecalls) or the more popular MSN Messenger (for general chat).
Μέγεθος:428Kb Πλατφόρμα: Windows 2000 | Windows XP | Windows Vista
PCW RATING:Πολύ καλό Users rating: 'Aριστο
HDDlife Pro 3.1.167
Μέγεθος:7.7MB Πλατφόρμα: Windows 2000 | Windows XP | Windows Vista
PCW RATING: Users rating: Μέτριο
Quicksys RegCleaner 2009 Tool that will enable you to scan your Registry, look for potential issues,then cleanse and optimise the content
Μέγεθος:1.36MB Πλατφόρμα: Windows XP | Windows Vista
PCW RATING:Πολύ καλό Users rating: 'Aριστο
Quicksys Disk Defrag 1.16 New defrag tool that will help you get the most from your hard drive
Μέγεθος:3.8MB Πλατφόρμα: Windows 2000 | Windows XP | Windows Vista
PCW RATING:Πολύ καλό Users rating: Πολύ καλό
Absolute Uninstaller 2.8 More useful for uninstalling software on pre-Vista PCs
Μέγεθος:2MB Πλατφόρμα: Windows 2000 | Windows XP | Windows Vista
PCW RATING:Καλό Users rating: -
GMail Drive 1.1.4
Μέγεθος:156KB Πλατφόρμα: Windows 2000 | Windows XP
PCW RATING: Users rating: 'Aριστο
FORUM PCWORLD
Πρόβλημα με xampp
Γράφτηκε στις 21-5-12, 19:48 από τον/την System στο Forum ADSL
Πρόβλημα με xampp
Γράφτηκε στις 20-5-12, 3:23 από τον/την skssqs στο Forum ADSL
Βήμα-Βήμα
Όλες οι Κατηγορίες
Φτιάξτε το δικό σας "γραφικό" site σε λιγότερο από 20'
Δηµιουργήστε µαζί µας ένα απλό αλλά όµορφο site από το µηδέν, για να προωθήσετε την επιχείρησή σας (ή ό,τι άλλο επιθυµείτε), χωρίς να ταλαιπωρηθείτε µε περιττό κώδικα.
ΟΛΟΚΛΗΡΩΣΗ: ΣΕ 20 λεπτά, ΜΕ 14 ΒΗΜΑΤΑ
ΕΠΙΠΕΔΟ ΔΥΣΚΟΛΙΑΣ:
Διαχειριστείτε τις υποχρεώσεις σας με το Remember the Milk
Καταχωρίστε τις υποχρεώσεις σας στη δικτυακή υπηρεσία Remember The Milk και οργανώστε καλύτερα το χρόνο και τις ευθύνες σας.
ΟΛΟΚΛΗΡΩΣΗ: ΣΕ 20 λεπτά, ΜΕ 10 ΒΗΜΑΤΑ
ΕΠΙΠΕΔΟ ΔΥΣΚΟΛΙΑΣ:
Add-ons με το “έτσι θέλω”!
Ενεργοποιήστε μία κρυφή παράμετρο “αναγκάζοντας” την τελευταία δοκιμαστική έκδοση του Firefox να συνεργαστεί με τα add-ons σας.
ΟΛΟΚΛΗΡΩΣΗ: ΣΕ 15 Λεπτά, ΜΕ 8 ΒΗΜΑΤΑ
ΕΠΙΠΕΔΟ ΔΥΣΚΟΛΙΑΣ:
SECURITY CENTER
Ελέγξτε το PC σας για ιούς και spyware με τις καλύτερες online εφαρμογές εντελώς δωρεάν!
ΔΩΡΕΑΝ ONLINE ΕΛΕΓΧΟΣ
Κλείστε το παράθυρο