σκορ, θα ήταν χρήσιμο αυτό να εμφανίζε-
ται διαρκώς στην μπάρα, ώστε να ελέγ-
χουμε την πρόοδό μας. Από την toolbar
πατάμε πάνω στο Add GUI Label και με
drag & drop το τοποθετούμε στο δεξί μέ-
ρος της μπάρας, ακριβώς όπως κάναμε
και με τα buttons. Στα properties του
Project Grid γι’ αυτό το label, στο Text
γράφουμε:
Score: @SCORETEXT@
Αυτό θα μας εμφανίζει τη φράση Score:
X of Y, όπου Χ το τρέχον σκορ του παιχνι-
διού και Υ το maximum των πόντων που
μπορούμε να συλλέξουμε, όπως το έχου-
με ορίσει στο πεδίο Maximum possible
score των General Settings. Μπορούμε
ασφαλώς να επιλέξουμε διαφορετικό
χρώμα ώστε να απεικονίζεται καλύτερα
πάνω στην μπάρα, αν το μαύρο δεν είναι
ευκρινές.
Υπάρχει πολύ μεγάλη πιθανότητα το
default font που χρησιμοποιείται να απο-
δειχθεί πολύ μεγάλο ή απλά αισθητικά
άβολο για την μπάρα μας. Σε αυτήν την
περίπτωση, μπορούμε να εισαγάγουμε μία
καινούργια γραμματοσειρά στο παιχνίδι.
Μία εξαιρετική πηγή για δωρεάν fonts εί-
ναι το
Βρίσκουμε το TrueType font της αρεσκεί-
ας μας, πηγαίνουμε στο μενού Fonts του
Project Tree και με το δεξί mouse button
επιλέγουμε New Font. Πατάμε στο πλή-
κτρο Import over this font και βρίσκουμε
το αρχείο που θέλουμε να εισαγάγουμε
από τον υπολογιστή σας. Επιλέγουμε το
μέγεθος της γραμματοσειράς και είμαστε
έτοιμοι. Απομένει μόνο να αντιστοιχίσου-
με αυτό το font στο label μας από την
επιλογή Font στο Project Grid της ετικέ-
τας.
Μας μένει ένα κενό στη μέση της μπά-
ρας, το οποίο μπορούμε να αφήσουμε
άδειο ή να εκμεταλλευτούμε με όποιον
τρόπο επιθυμούμε. Τι θα λέγατε να γινό-
μασταν δημιουργικοί; Το AGS μάς επιτρέ-
πει να ορίσουμε οποιαδήποτε μεταβλητή
την οποία μπορούμε να αλλάζουμε στη
διάρκεια του παιχνιδιού. Τα πάντα φυσικά
εξαρτώνται από το σενάριο του παιχνιδι-
ού που φτιάχνουμε. Στο PC Master’s Saga,
η αντιμετώπιση των εξωγήινων δασκάλων
απαιτεί ατσάλινα νεύρα και ψυχραιμία, γι’
αυτό καλό θα ήταν η διάθεση του Chris
να αναγράφεται στην μπάρα. Πατάμε εκ
νέου Add GUI Label και ως Text γράφουμε
τη φράση:
Your mood:
Πατάμε για άλλη μία φορά Add GUI
Label. Τοποθετούμε τη νέα ετικέτα στα
δεξιά της προηγούμενης και σβήνουμε
εντελώς το Text της, ώστε να είναι αρχικά
κενή. Αλλάζουμε χρώμα και γραμματοσει-
ρά στις δύο νέες ετικέτες, αν χρειάζεται.
Στην κενή ετικέτα δίνουμε το όνομα
Mood στο πεδίο Name. Θέλουμε το περιε-
χόμενο αυτής της label να είναι μία μετα-
βλητή που θα αλλάζουμε εμείς στη διάρ-
κεια του παιχνιδιού. Αρχικά θα ορίσουμε
αυτήν τη μεταβλητή. Στο Project Tree πη-
γαίνουμε Scripts->GlobalScript.ash και
γράφουμε:
String yourmood;
Στη συνέχεια, ανοίγουμε το
GlobalScript.asc και μέσα στη συνάρτηση
game_start() γράφουμε:
yourmood=”cranky”;
Αυτή θα είναι η αρχική τιμή μας. Απομέ-
νει να εξασφαλίσουμε ότι κάθε φορά που
αλλάζει η μεταβλητή yourmood, θα αλλά-
ζει και το label Mood. Έχουμε μιλήσει σε
προηγούμενο τεύχος για τη συνάρτηση
repeatedly_execute. Το μειονέκτημά της
είναι ότι τρέχει μόνο όταν ο κώδικάς μας
δεν είναι blocked, δηλαδή δεν εκτελείται
αν για παράδειγμα είναι ανοικτό κάποιο
GUI ή τρέχει ένας διάλογος. Επειδή εμείς
θέλουμε η μεταβλητή μας να αλλάζει
ακαριαία, θα εισαγάγουμε μία παρόμοια
predefined function που ονομάζεται
repeatedly_execute_always(). Μέσα στο
GlobalScript.asc λοιπόν και αμέσως μετά
από το τέλος της συνάρτησης
repeatedly_execute, πληκτρολογούμε:
#
sectionstart repeatedly_execute_
always
function repeatedly_execute_always() {
Mood.Text=yourmood;
}
Έτσι, έχουμε πλέον εξασφαλίσει πως
οποτεδήποτε αλλάζουμε τη μεταβλητή
yourmood, θα αλλάζει και το κείμενο
στην μπάρα μας. Πολύ εύκολα πλέον μπο-
ρούμε να πληροφορούμε τον παίκτη μας
ότι ο Chris Bucketbird είναι bitchy όταν
αργούν να του παραδώσουν άρθρο ή
ecstatic όποτε βγαίνει καινούργιο
Bioshock.
PC
135
PC Master
ΔΕκEμβριοΣ 2012:
Αρχικοποίηση adventure game, δημιουργία δωματίου,
ορισμός hotspots.
ιΑνουAριοΣ 2013:
Έξοδοι δωματίων, hotspot interaction, συνθήκες ελέγχου,
global variables, αντικείμενα, inventory items.
ΦΕβρουAριοΣ 2013:
Δημιουργία χαρακτήρων, walkable areas, scaling
levels, walk-behinds.
μΑρτιοΣ 2013:
Character interaction, αλληλεπίδραση inventory-χαρακτή-
ρων, δημιουργία διαλόγων.
ΑΠριΛιοΣ 2013:
Global script, συναρτήσεις on_key_press(), dialog_request()
και unhandled_event(), διαχείριση room events.
μAΪοΣ 2013:
Αλλαγή cursor σε Exit icon πάνω από έξοδο, room regions, συ-
νάρτηση repeatedly_execute, δημιουργία introduction και cutscenes.
ΣΤΑ ΠΡΟΗΓΟΥΜΕΝΑ ΤΕΥΧΗ
Έτοιμη η gBar, με όλες τις πληροφορίες.