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