73
ΑΝΑΠΤΥΞΗ 3D ΣΚΟΠΕΥΤΙΚΟΥ ΠΑΙΧΝΙΔΙΟΥ ΤΡΙΤΟΥ ΠΡΟΣΩΠΟΥ ΠΟΛΛΑΠΛΩΝ
ΠΑΙΚΤΩΝ ΤΥΠΟΥ ROGUELITE
Εικόνα 75 Συγχρονισμός των γύρων μεταξύ των clients
Όταν πρέπει να αρχίσει ο επόμενος γύρος στέλνεται, μέσω του διακομιστή, σε όλους τους
παίκτες ένα RPC με την συνάρτηση StartWave() και παράμετρο τον τρέχων γύρο για να αρχίσουν
όλοι την ίδια στιγμή (Εικόνα 76).
Εικόνα 76 RPC για την εκκίνηση του επόμενου γύρου
Την στιγμή που αρχίζει ο γύρος, ο host ψάχνει όλα τα όπλα που δεν είναι εξοπλισμένα
από κανέναν παίκτη και τα όπλα κουτιών ώστε να διαγραφτούν από το παιχνίδι (Εικόνα 77) με
την συνάρτηση PhotonNetwork.Destroy() και παράμετρο το PhotonView των αντικειμένων επειδή
είναι δικτυωμένα αντικείμενα. Η καταστροφή ενός PhotonView είναι δυνατή μόνο από τον
παίκτη που το δημιούργησε. Επειδή τα κουτιά και τα όπλα που διαθέτουν από ένα PhotonView
δημιουργούνται από τον host, πρέπει να καταστραφούν και από τον host.
Εικόνα 77 Διαγραφή όπλων και κουτιών