Jump to content
Unity Insider Forum

Photon Countdown Custom Properties ?


Recommended Posts

Moin liebe Leute,

ich habe eine kleine Frage bezüglich eines Countdowns mit PUN innerhalb eines Raumes zu Rundenstart und brauche mal bitte einen Denkanstoß:
Mein Plan: (4 Spieler sollen Platz haben in einem Spiel) Spieler drückt "Spielen" -> PUN sucht nach einem offenen Raum und joined sonst wird ein Random Raum erstellt und er joined (alles noch in der Lobby).
Sobald ein zweiter Spieler dazu kommt broadcasted der MasterClient -> LoadLevel("Level") und beide laden den Raum. Das klappt ;-)

Genau jetzt soll ein Countdown starten der Sekunden bis zum Spielstart zählt und weiteren Spielern Gelegenheit gibt dem Raum noch zu joinen.
Wenn die Spielerzahl bereits 4 beträgt soll der Counter auf 5 Sekunden reduziert werden um die Wartezeit zu kürzen. Während der Wartezeit returne ich aus dem Movement Funktionen damit sich kein Spieler bewegen kann. Denke mal mit Bool oder so...

Jetzt zu meiner Frage:
Wie bekomme ich den Countdown hin, dass alle Spieler die synchronisierte Zeit bekommen ?
Ich habe was von Custom Room Properties gelesen was mir auch einleuchtet dafür zu verwenden. Nur leider ist mir die genaue Vorgehensweise nicht ganz klar, da Exitgames das Demo dafür aus Photon entfernt hat.
Wann wird wo von wem die Propertie gesetzt und wer wertet die wie aus ?

Vielen Dank für eure Mühe :-)

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 3 weeks later...

Ist bissel her, aber...

Der Masterclient könnte die Zahl merken. Einmal hat er sowas wie networkCountdown und einmal masterClientCountdown. Er denkt über den logischen Teil und updatet masterClientCountdown (also irgendein Client muss das eh machen), und macht dann irgendwas wie RPC("UpdateTimer", RPCTarget.AllViaServer, masterClientCountdown), damit alle gleichzeitig (je nach Ping ;)) bekommen. ja und nun muss jeder inklusiv Masterclient networkCountdown aktualisieren.

Du meinst Custom Properties. Kann man auch. Das ist sogar interessanter, wenn jemand nachträglich joined, dass es gesynced wird.
Da arbeitest du mit hashtable von Photon selbst. Dann einfach die Werte packen und aktualisieren.
https://doc.photonengine.com/en-us/pun/current/gameplay/synchronization-and-state

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...
×
×
  • Neu erstellen...