background image

• Να δημιουργεί σκηνές (Scenes), για διαφορετικά επίπεδα του παιχνιδιού ή για το κεντρικό

μενού.

• Να δημιουργεί και να διαχειρίζεται οντότητες (Entities).

• Να ορίζει και να προσθέτει τα επιθυμητά components σε κάθε οντότητα.

• Να ελέγχει τη ροή εκτέλεσης του παιχνιδιού.

• Να υλοποιεί τη λογική του gameplay (gameplay logic).

Παρακάτω βλέπουμε πως θα μπορούσε να μίαζει ενα παράδειγμα χρήσης του python api

της μηχανής.

if __name__ == "__main__":

win_prop = ge.Window_properties(APP_WIDTH, APP_HEIGHT, "test")

app = ge.Application(win_prop)

# Create game layer (starts inactive)

game_layer = GameLayer()

# Create menu layer with reference to game layer

menu_layer = MenuLayer(game_layer)

# Push menu layer first (will be shown first)

app.push_layer(menu_layer)

# Push game layer second (will be hidden initially)

app.push_layer(gamelayer)

app.run()

Στις γραμμές 2 και 3 δημιουργείται το αντικείμενο της εφαρμογής, με τον καθορισμό των

απαιτούμενων χαρακτηριστικών του παραθύρου (τίτλος και διαστάσεις).

Στις γραμμές 5 έως 9 δημιουργούνται τα δύο επίπεδα (layers), συγκεκριμένα το επίπεδο

μενού (Menu Layer) και το επίπεδο παιχνιδιού (Game Layer). Στη συνέχεια, στις γραμμές 11

έως 15, τα επίπεδα αυτά προστίθενται στην εφαρμογή.

Τέλος, στη γραμμή 17 εκκινείται η εκτέλεση της εφαρμογής.

Ακολούθως παρουσιάζεται ένα ενδεικτικό παράδειγμα υλοποίησης κλάσης επιπέδου (Layer

class).

44