background image

 

 

 

73

 

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

 

Εικόνα 75 Συγχρονισμός των γύρων μεταξύ των clients 

 

Όταν πρέπει να αρχίσει ο επόμενος γύρος στέλνεται, μέσω του διακομιστή, σε όλους τους 

παίκτες ένα RPC με την συνάρτηση StartWave() και παράμετρο τον τρέχων γύρο  για να αρχίσουν 
όλοι την ίδια στιγμή (Εικόνα 76). 
 

 

Εικόνα 76 RPC για την εκκίνηση του επόμενου γύρου 

 

Την  στιγμή  που  αρχίζει  ο  γύρος,  ο  host  ψάχνει  όλα  τα  όπλα  που  δεν  είναι  εξοπλισμένα 

από  κανέναν  παίκτη  και  τα  όπλα  κουτιών  ώστε  να  διαγραφτούν  από  το  παιχνίδι  (Εικόνα  77)  με 
την συνάρτηση PhotonNetwork.Destroy() και παράμετρο το PhotonView των αντικειμένων επειδή 
είναι  δικτυωμένα  αντικείμενα.  Η  καταστροφή  ενός  PhotonView  είναι  δυνατή  μόνο  από  τον 
παίκτη που το δημιούργησε. Επειδή τα κουτιά και τα όπλα που διαθέτουν από ένα  PhotonView 
δημιουργούνται από τον host, πρέπει να καταστραφούν και από τον host. 
 

 

Εικόνα 77 Διαγραφή όπλων και κουτιών