background image

 

 

 

56

 

ΑΝΑΠΤΥΞΗ  3D ΣΚΟΠΕΥΤΙΚΟΥ  ΠΑΙΧΝΙΔΙΟΥ  ΤΡΙΤΟΥ  ΠΡΟΣΩΠΟΥ  ΠΟΛΛΑΠΛΩΝ 
ΠΑΙΚΤΩΝ  ΤΥΠΟΥ  ROGUELITE 

 

Πρώτα,  για  να  είναι  δυνατή  η  χρήση  των  συναρτήσεων  και  ανακλήσεων  της  Photon, 

πρέπει η κλάση του κώδικα να κληρονομεί την κλάση MonoBehaviourPunCallbacks της Photon. Η 
συνάρτηση PhotonNetwork.ConnectUsingSettings() συνδέεται στον διακομιστή της Photon με τις 
προεπιλεγμένες 

ρυθμίσεις 

του 

παιχνιδιού, 

και 

καλεί 

αυτόματα 

την 

συνάρτηση 

OnConnectedToMaster()  στην  επιτυχή  σύνδεση.  Για  να  προσαρμόσουμε  τον  κώδικα  και  να 
προσθέσουμε  τις  δικές  μας  εντολές,  κάνουμε  override  όποια  συνάρτηση  καλείται  αυτόματα 
(ανάκληση)  από  το  πακέτο  της  Photon.  Στην  προκειμένη  περίπτωση,  κάνουμε  override  την 
συνάρτηση OnConnectedToMaster(), ώστε όταν γίνεται η επιτυχής σύνδεση στον διακομιστή της 
Photon,  να αποθηκεύεται  το  όνομα του παίκτη, ή αν δεν υπάρχει, να δημιουργείται ένα τυχαίο 
(Εικόνα  36).  Πρέπει  επίσης  να  εκτελεστεί  η  εντολή  PhotonNetwork.AutomaticallySyncScene  σε 
true, ώστε οι παίκτες να φορτώσουν την ίδια σκηνή όταν αρχίσει το παιχνίδι. Στο τέλος καλούμε 
την συνάρτηση PhotonNetwork.JoinLobby() για να αναθέσει τον παίκτη σε μια από τις αίθουσες 
(lobby). 
 

 

Εικόνα 36 Override της συνάρτησης OnConnectedToMaster() 

 

Άμα δεν γίνει η επιτυχής σύνδεση στον διακομιστή της Photon μετά το χρονικό διάστημα 

που έχει οριστεί, τότε εμφανίζουμε το μήνυμα της αποτυχίας σύνδεσης (Εικόνα 37).