Unity/photon/pun1/helloworld
提供: 初心者エンジニアの簡易メモ
ロビーと部屋に入る
- ヒエラルキーにGameObjectを作成して
- 以下csを貼り付ける
PhotonLobby.cs
using System.Collections; using System.Collections.Generic; using UnityEngine; public class PhotonLobby : Photon.MonoBehaviour { // Use this for initialization void Start () { PhotonNetwork.ConnectUsingSettings("v1.0"); } // Update is called once per frame void Update () { } void OnJoinedLobby () { Debug.Log ("PhotonManager OnJoinedLobby"); CreateRoom (); } public void CreateRoom(){ string userName = "ユーザ1"; string userId = "user1"; PhotonNetwork.autoCleanUpPlayerObjects = false; ExitGames.Client.Photon.Hashtable customProp = new ExitGames.Client.Photon.Hashtable(); customProp.Add ("userName", userName); customProp.Add ("userId", userId); PhotonNetwork.SetPlayerCustomProperties(customProp); RoomOptions roomOptions = new RoomOptions (); roomOptions.customRoomProperties = customProp; roomOptions.customRoomPropertiesForLobby = new string[]{ "userName","userId"}; roomOptions.maxPlayers = 2; // 部屋の最大人数 roomOptions.isOpen = true; // 入室許可する roomOptions.isVisible = true; // ロビーから見えるようにする PhotonNetwork.JoinOrCreateRoom (userId, roomOptions, null); } // ルーム入室した時 void OnJoinedRoom() { Debug.Log ("PhotonManager OnJoinedRoom"); } // ルーム一覧が取れた時 void OnReceivedRoomListUpdate(){ RoomInfo[] rooms = PhotonNetwork.GetRoomList(); if (rooms.Length == 0) { Debug.Log ("ルームが一つもありません"); } else { for (int i = 0; i < rooms.Length; i++) { Debug.Log ("RoomName:" + rooms [i].name); Debug.Log ("userName:" + rooms[i].customProperties["userName"]); Debug.Log ("userId:" + rooms[i].customProperties["userId"]); } } } }
接続を検証するために1つはプレビュー版、もう一つはアプリにビルドしたものを動作させておく。