当某个玩家注册绑定了一个实体对象(开始控制角色)时调用。
当某个玩家取消绑定了一个实体对象(开始控制角色)时调用。
当玩家语音聊天状态发生改变时调用(正在语音聊天)。
function OnPlayerVoiceStateChange( player: Player, state: bool )
获取本地玩家实例对象(本地玩家自身)。
==注意:在专用服务器模式(
BatchMode
)下,通过服务器自身脚本访问此属性,将会得到一个空值Null
,因为专用服务器本身并不包含本地玩家。==
[note2]
由于专用服务器模式本地空玩家的特殊属性,Character
类对象提供了一个快捷检测方法:character.IsLocal
判断是否为本地玩家角色,此方法会自动检测Null
而不会触发异常。
[/note]
if(Player.Local) DLog(Player.Local.Name); //Output self player name
获取玩家序列ID。
player.ID: int
获取玩家用户昵称。
player.Name: string
获取玩家是否为本地玩家(自身用户)。
player.IsLocal: bool
获取玩家是否完全加载完毕。
player.IsComplete: bool
获取玩家是否当前为相机观察模式(
Client.Camera.IsObserver
)。
player.IsObserver: bool
获取玩家绑定的实体对象(角色)。
player.Entity: Character
获取玩家绑定的实体对象(角色),作用与
player.Entity
完全相同。
player.Character: Character
获取玩家世界坐标位置(通常是玩家屏幕中心位置),如果玩家正在控制角色,则返回角色坐标位置。
player.Pos: Vector
获取玩家操作焦点位置(鼠标世界坐标),高度Y轴总是为
0
。
player.FocusPos: Vector
获取玩家语音聊天状态(是否正在语音聊天)。
player.VoiceState: bool
寻找一个玩家实例(通过ID),不存在则返回
null
。
function Player.Find( id: int ): Player
寻找一个玩家实例(通过模糊查找,通常根据玩家名称,不区分大小写),不存在则返回
null
。
function Player.Search( any: string ): Player
//Players: "Alnny", "Tommy", "Tom" Player.Search("Tom"); //Tom(完整匹配) Player.Search("Tomm"); //Tommy(相似匹配) Player.Search("To"); //Tommy(以最先搜索到的为主)
寻找一个玩家实例(通过UUID),不存在则返回
null
。
function Player.FindByUUID( uuid: string ): Player
获取当前所有存在玩家数量。
function Player.GetCount(): int
获取当前存在的指定索引玩家,通常搭配
GetCount()
遍历使用。
function Player.Get( index: int ): Player
获取玩家视角观察对象(
Client.Camera.Target
),如不存在则返回null
。
function player.GetObserver(): Character