Jump to content
Unity Insider Forum
Sign in to follow this  
AniProGuy2

Photon Networking - Hostname auslesen? (custom properties)

Recommended Posts

Hallo Cummunity,

Ich habe ein kleines Problem (mal wieder ^^). Und zwar möchte ich bei meinem Spiel alle offenen Spiele (Rooms) in einer Liste haben. Das funktioniert soweit auch ganz gut, sofern ich für die List-Items nur die jeweiligen RoomOptions auslese (die Rooms selbst bekomme ich ja durch PhotonNetwork.GetRoomList). Nun möchte  ich aber auch, dass dort der Name des Hosts angezeigt wird, welchen man in den Spieleeinstellungen festlegen kann. Sprich, ich möchte für den Raum einen extra String anlegen, der diesen Namen speichert. Ich habe mich im Internet belesen und gehe nun davon aus, dass das über Custom Properties funktionieren sollte.

Das Problem ist, dass ich nicht so ganz verstanden habe, wie man diese anlegt. Ich habe einen Hasthable und dort ein Objekt Namens "HostName" mit einem String für den Namen angelegt. Nun möchte diesen von einem anderen Clienten, der die Liste mit den Spielen offen hat, auslesen. Aber wie genau geht das? So, wie ich es bis jetzt mache, kommt die Fehlermeldung "NullReferenceException: Object reference not set to an instance of an object"

 

Meine Scripte:
Zum Hosten des Raumes:

ExitGames.Client.Photon.Hashtable props = new ExitGames.Client.Photon.Hashtable();
props.Add ("HostName", "TestHost");
RoomOptions newOptions = new RoomOptions () { IsVisible = true, MaxPlayers = 5 , CustomRoomProperties = props};
PhotonNetwork.JoinOrCreateRoom ("test1", newOptions, TypedLobby.Default);

Zum Auslesen des Hostnamens:

item.GetComponent<NetworkListItem> ().Initialize (game.Name, game.CustomProperties["HostName"].ToString(), game.MaxPlayers, game.PlayerCount);

 

Ich bin dankbar für jede Hilfe :)

MfG,
AniProGuy2
 

Share this post


Link to post
Share on other sites

Ich glaube du musst CustomRoomPropertiesForLobby zusätzlich benutzen, wenn du von Lobby aus customProperties lesen willst. Ansonsten sind sie im Room nur verfügbar.

Beispiel newOptions.CustomRoomPropertiesForLobby = new string[] {"HostName"}

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×