반응형
- 코드 작성
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Photon.Pun;
using Photon.Realtime;
using UnityEngine.UI;
public class NetworkManager : MonoBehaviourPunCallbacks
{
public void CreateRoom()
{
PhotonNetwork.LocalPlayer.NickName = "닉네임 설정";
RoomOptions roomOption = new RoomOptions();
roomOption.MaxPlayers = 4; //최대 인원수 설정
roomOption.IsOpen = true; //방이 열려있는지 닫혀있는지 설정
roomOption.IsVisible = true; //비공개 방 여부
PhotonNetwork.CreateRoom("방 이름", roomOption, null);
}
public void JoinOrCreateRoom()
{
PhotonNetwork.LocalPlayer.NickName = "닉네임 설정";
RoomOptions roomOption = new RoomOptions();
roomOption.MaxPlayers = 4; //최대 인원수 설정
roomOption.IsOpen = true; //방이 열려있는지 닫혀있는지 설정
roomOption.IsVisible = true; //비공개 방 여부
PhotonNetwork.JoinOrCreateRoom("방 이름", roomOption, null);
}
public override void OnCreatedRoom()
{
Debug.Log("방을 만들었습니다.");
}
public override void OnJoinedRoom()
{
Debug.Log("방에 참여하였습니다.");
}
public override void OnCreateRoomFailed(short returnCode, string message)
{
Debug.Log("방 만들기 실패했습니다.");
}
public override void OnJoinRoomFailed(short returnCode, string message)
{
Debug.Log("방 참가 실패했습니다.");
}
public void RoomInfo()
{
if (PhotonNetwork.InRoom)
{
Debug.Log("현재 방 이름 : " + PhotonNetwork.CurrentRoom.Name);
Debug.Log("현재 방 인원수 : " + PhotonNetwork.CurrentRoom.PlayerCount);
Debug.Log("현재 방 최대인원수 : " + PhotonNetwork.CurrentRoom.MaxPlayers);
Debug.Log("현재 방 열려있는지 : " + PhotonNetwork.CurrentRoom.IsOpen);
Debug.Log("현재 방 비공개 여부 : " + PhotonNetwork.CurrentRoom.IsVisible);
string str = "방에 있는 플레이어 목록 : ";
for (int i = 0; i < PhotonNetwork.PlayerList.Length; i++)
{
str += PhotonNetwork.PlayerList[i].NickName + ", ";
Debug.Log(str);
}
}
else
{
Debug.Log("접속한 인원 수 : " + PhotonNetwork.CountOfPlayers);
Debug.Log("방 개수 : " + PhotonNetwork.CountOfRooms);
Debug.Log("모든 방에 있는 인원 수 : " + PhotonNetwork.CountOfPlayersInRooms);
Debug.Log("로비에 접속했는지 : " + PhotonNetwork.InLobby);
Debug.Log("서버에 연결됬는지 : " + PhotonNetwork.IsConnected);
}
}
}
참고할만한 글
반응형