这只是笔记,一定要配合原文食用!
原文地址:http://www.jianshu.com/p/8a1cd4b98cb3
作者:浪尖儿
Photon Unity Networking基础教程 4 Game Manager & Levels - 笔记
我是主客户端(房主)吗? - PhotonNetwork.isMasterClient
这个属性,用于判断是否为房主(MasterClient)。
false为不是房主,true为是房主
这个房间的玩家数量 - PhotonNetwork.room.PlayerCount
这个属性,用于获取这个房间的玩家数量。
加载场景 - PhotonNetwork.LoadLevel(string levelName)
加载场景。 可同步房间中其他玩家加载的场景级别。(房主加载什么场景,其他玩家也加载这个场景)
参数:要加载的场景级别的名称。 确保它可以在同一个房间的所有客户端上进行加载。
(但好像要确保PhotonNetwork.automaticallySyncScene属性的值为true,才能同步其他玩家加载的场景)
PhotonPlayer类
在房间内的“玩家”的信息类,通过actorID识别(在该房间中)。
大概就是,每个PhotonPlayer对象,都存储了一个玩家的各种信息(在该房间中的玩家)。
每个玩家都有一个actorId(或ID),仅对该房间有效。
每个客户端都可以使用SetCustomProperties设置它的玩家的自定义属性,他们在加入房间时同步。
属性:
ID : 这个玩家的actorID(只读)
NickName : 这个玩家的昵称(可以通过PhotonNetwork.playerName进行设置自己的昵称)
UserId : 使用RoomOptions.PublishUserId = true创建房间时玩家的UserId。
IsLocal : 是否为本地?是否是一个客户端运行多个玩家?(应该是这个意思吧……)
IsMasterClient : 是否为房主?如果该玩家是当前房间的主客户端(房主),则为true。(只读)
IsInactive : 是否活跃?
CustomProperties : 自定义属性。玩家自定义属性的只读缓存。 可通过PhotonPlayer.SetCustomProperties设置。
AllProperties : 所有属性。创建一个包含所有属性(自定义和“知名(well known)”)的哈希表。如果经常使用,应该缓存。
静态方法:
Find(int ID) : 尝试通过id获得一个特定的玩家。返回值PhotonPlayer类型
构造函数:
new PhotonPlayer(bool isLocal, int actorID, string name)
isLocal:这是本地同伴的玩家(true),或远程玩家(false)。
actorID:当前房间中此玩家的ID或ActorNumber(用于标识房间中每个玩家的一种快捷的方式)
name: 玩家的名称(“众所周知的属性”)