您的位置:首页 > 移动开发 > Unity3D

unity连接photon服务端模块

2014-11-30 17:34 423 查看
using UnityEngine;
using System.Collections;
using System;

public class PhotonConnection : Photon.MonoBehaviour
{
//房间名称
private string roomName = "myroom";
//用户名称
public string Name="路人";
//用来绑定信息交互的脚本
public GameObject sendmessage;

/// <summary>
/// 开始连接Photon服务器
/// </summary>
private void Awake()
{
if (!PhotonNetwork.connected)
{
PhotonNetwork.ConnectUsingSettings("1.0");
}
//如果用户名称为null或者Empty时,设置用户名,并保证每个用户的名称不重复
if (string.IsNullOrEmpty(PhotonNetwork.playerName))
{
PhotonNetwork.playerName = Name+UnityEngine.Random.Range(1, 9999);
}
}
//加入大厅
void OnJoinedLobby()
{
PhotonNetwork.autoCleanUpPlayerObjects = true;
///加入大厅后,可以选择创建房间或者加入房间,但因为进入大厅时,有时不能及时
/// 更新放假列表,所以建议在后面房间更新函数里面去创建或者加入房间
///创建房间:1 名称 2 可见 3 打开 4 最大人数
///PhotonNetwork.Create(roomName,true,true,10);
///加入房间
///PhotonNetwork.JoinRoom(rooName);
}
//随机加入房间失败
void OnPhotonRandomJoinFailed()
{
PhotonNetwork.CreateRoom(null);

}
//加入房间
void OnJoinedRoom()
{
//加入房间后,就可以跟同一房间的人进行信息交互
sendmessage.SetActive(true);
//PhotonNetwork.palyerName = null;
//photonNetwork.LeaveRoom (); //离开房间
}
//房间更新
void OnReceivedRoomListUpdate()
{
//当前房间总数为0时,则创建一个房间
if (PhotonNetwork.countOfRooms == 0)
{
 PhotonNetwork.CreateRoom(roomName, new RoomOptions() { maxPlayers=10},null);
}
else
{
PhotonNetwork.JoinRoom(roomName);
}
}
//加入房间失败
void OnPhotonJoinRoomFailed()
{

}
//链接的用户
void OnPhotonPlayerConnected(PhotonPlayer newPlayer)
{

}

}




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: