using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Photon.Pun;
using Photon.Realtime;
using UnityEngine.UI;
public class NetworkManager : MonoBehaviourPunCallbacks
{
public InputField NickNameInput;
public GameObject DisconnectPanel;
public GameObject RespawnPanel;
void Awake() // 스타트 함수 전에 실행,,
{
Screen.SetResolution(960, 540, false); // 해상도
PhotonNetwork.SendRate = 60; // 포툰으로 주고 받는 통신간격
PhotonNetwork.SerializationRate = 30; // 데이터를 받아쓰는 빈도
}
public void Connect() => PhotonNetwork.ConnectUsingSettings();
// 닉네임을 입력하고 난 후 접속을 눌렀을 때 => 서버 쪽에 세팅을 시작
public override void OnConnectedToMaster() // 접속 했을 때 자동을 불림
{
PhotonNetwork.LocalPlayer.NickName = NickNameInput.text;
PhotonNetwork.JoinOrCreateRoom("Room", new RoomOptions { MaxPlayers = 6 }, null);
}
public override void OnJoinedRoom() //조인이 되었으면 패널을 끔
{
DisconnectPanel.SetActive(false);
}
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
//esc 버튼 클릭시 하면 네트워크를 끊도록
if (Input.GetKeyDown(KeyCode.Escape) && PhotonNetwork.IsConnected)
PhotonNetwork.Disconnect();
}
public override void OnDisconnected(DisconnectCause cause) // 네트워크 접속이 끊어지면
{
DisconnectPanel.SetActive(true); // 아이디 입력란 패널은 살리고
RespawnPanel.SetActive(false); // 게임끝나는 패널은 죽인다.
}
}