PUN 2 菜鸟养成记 2主服务
緊接上篇?PUN 2 菜鳥(niǎo)養(yǎng)成記 1連接上主服務(wù)? ? ??https://mp.csdn.net/postedit/88073999
我們來(lái)看一下創(chuàng)建房間的方法
RoomOptions options = new RoomOptions {MaxPlayers = 2};PhotonNetwork.CreateRoom("room name", options, null);嗯 .. 也是兩行 現(xiàn)在就不進(jìn)去深挖了 我們來(lái)看回調(diào)
public override void OnJoinedRoom();恭喜你 你已經(jīng)開(kāi)好房了 這個(gè)時(shí)候你就可以拉取這個(gè)房間內(nèi)玩家列表,查看每個(gè)人的屬性狀態(tài)了
foreach (Player p in PhotonNetwork.PlayerList) {Debug.log(p.NickName)object isPlayerReady;if (p.CustomProperties.TryGetValue(AsteroidsGame.PLAYER_READY, out isPlayerReady)){Debug.log((bool) isPlayerReady));} }房開(kāi)好之后我們應(yīng)該干嘛?當(dāng)然是加入房間呀!
當(dāng)然 加入房間之前我們得進(jìn)前臺(tái)(大廳)吧
if (!PhotonNetwork.InLobby) {PhotonNetwork.JoinLobby(); }成功進(jìn)入大廳后回調(diào)這個(gè)方法
public override void OnRoomListUpdate(List<RoomInfo> roomList);房間目錄有了我們就可以為所欲為 想去哪個(gè)房就去哪個(gè)房了
if (PhotonNetwork.InLobby) {PhotonNetwork.LeaveLobby(); } PhotonNetwork.JoinRoom("Room name");你也可以閉著眼睛隨便進(jìn),每間房都好玩(如果房間列表為空,那么會(huì)跟你創(chuàng)建一個(gè)房間并進(jìn)入)
PhotonNetwork.JoinRandomRoom();?
進(jìn)入房間后我自己和房間內(nèi)的人反應(yīng)(回調(diào))是不一樣的
我是 : 哈哈哈 大爺我進(jìn)來(lái)了
public override void OnJoinedRoom();房間內(nèi)其他人是 : 有客官進(jìn)來(lái)一起玩了
public override void OnPlayerEnteredRoom(Player newPlayer);進(jìn)入房間之后 會(huì)自動(dòng)通知所有人房間內(nèi)其他人的準(zhǔn)備情況
public override void OnPlayerPropertiesUpdate(Player targetPlayer, Hashtable changedProps) {object isPlayerReady;if (changedProps.TryGetValue(AsteroidsGame.PLAYER_READY, out isPlayerReady)){Debug.log((bool) isPlayerReady);} }大家快點(diǎn)準(zhǔn)備 ,游戲馬上就要開(kāi)始啦
Hashtable props = new Hashtable() {{AsteroidsGame.PLAYER_READY, true}}; PhotonNetwork.LocalPlayer.SetCustomProperties(props);房主檢查大家的準(zhǔn)備情況
private bool CheckPlayersReady() {if (!PhotonNetwork.IsMasterClient){return false;}foreach (Player p in PhotonNetwork.PlayerList){object isPlayerReady;if (p.CustomProperties.TryGetValue(AsteroidsGame.PLAYER_READY, out isPlayerReady)){if (!(bool) isPlayerReady){return false;}}else{return false;}}return true; }準(zhǔn)備好了之后我們關(guān)閉這間房的大門(mén)
PhotonNetwork.CurrentRoom.IsOpen = false; PhotonNetwork.CurrentRoom.IsVisible = false;一起沉浸游戲的海洋吧
?
?
?
?
?
?
?
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的PUN 2 菜鸟养成记 2主服务的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ARP协议(2)ARP协议格式详解
- 下一篇: kaminari