meta data for this page
📚 Client/Character
注意:有关客户端的同步内容,可能受到Stream
流的同步范围影响,不一定所有对象都在被激活状态(距离过远,没有同步)。
📒 Event
📘 OnCharacterBaseState( character, baseState )
当角色BaseState
发生改变时触发。
📘 OnCharacterEnterVehicle( character, vehicle, seat )
当角色进入载具时触发。
📘 OnCharacterExitVehicle( character, vehicle, seat )
当角色离开载具时触发。
📘 OnCharacterPropAction( character, prop, hitPos )
当角色进行一次攻击\行为时触发。
📘 OnCharacterPropFocus( character, prop, state )
当角色切换焦点状态时触发(鼠标右键按下\松开)。
📒 Static Property
📘 Character.Local
获取本地玩家正在控制的角色对象。
注意:在专用服务器模式(BatchMode
)下,通过服务器自身脚本访问此属性,将会得到一个空值Null
,因为专用服务器本身并不包含本地玩家。
Character
类对象提供了一个快捷检测方法:character.IsLocal
判断是否为本地玩家角色,此方法会自动检测Null
而不会触发异常。
if(Character.Local) DLog(Character.Local.Pos);
📒 Property
📘 character.ID
获取实例对象的ID。
character.ID: int
📘 character.UUID
获取实例对象的UUID。
character.UUID: string
📘 character.Name
获取实例对象的名称(即使被Owner
控制也不会返回玩家名)。
character.Name: string
📘 character.Pos
获取实例对象的坐标位置,如果当前角色正在被玩家本地控制,此属性可以进行修改。
character.Pos: Vector
📘 character.Forward
获取角色正前方向量。
character.Forward: Vector
📘 character.Angle
获取实例对象的平行角度(Y轴)。
character.Angle: float
📘 character.HAngle
获取角色本地偏移角度(水平)。
character.HAngle: float
📘 character.VAngle
获取角色本地偏移角度(前后)。
character.VAngle: float
📘 character.Health
获取实例对象的生命值。
character.Health: int
📘 character.Armour
获取实例对象的护甲值。
character.Armour: int
📘 character.Type
获取实例对象的生物类型。
character.Type: int
📘 character.Skin
获取实例对象的生物皮肤。
character.Skin: int
📘 character.Frozen
获取实例对象的冻结状态。
character.Frozen: bool
📘 character.PropID
获取实例对象的手持道具ID。
character.PropID: int
📘 character.PropAmount
获取实例对象的手持道具数量(单一物品数量Amount
,并非全部背包数量)。
character.PropAmount: int
📘 character.Vehicle
获取实例对象的载具实例,不存在则返回null
。
character.Vehicle: Vehicle
📘 character.VehicleSlot
获取实例对象的载具乘坐位置,没有乘坐则返回-1
。
character.VehicleSlot: int
📘 character.Owner
获取实例对象的真实控制玩家,不存在则返回null
。
character.Owner: Player
📘 character.IsAI
获取角色是否为NPC(AI)。
character.IsAI: bool
📘 character.IsPlayer
获取角色是否为玩家控制的角色。
character.IsPlayer: bool
📘 character.IsLocal
获取实例对象是否为本地玩家控制,此方法会自动检测Null
(专用服务器模式本地空玩家的特殊属性)而不会触发异常。
character.IsLocal: bool
📘 character.IsInWater
获取角色是否在水中。
character.IsInWater: bool
📘 character.IsOnFire
获取角色是否正在被燃烧。
character.IsOnFire: bool
📘 character.BodyHeight
获取角色身体高度(本地偏移量),不同的角色类型可能有不同高度,通常为头部偏高一点的位置。
扩展:可能用于获取头顶Bubble
显示的高度。
character.BodyHeight: float
📒 Static Function
📘 Character.Find()
寻找一个实例对象(通过ID),不存在则返回null
。
function Character.Find( id: int ): Character
📘 Character.FindByUUID()
寻找一个实例对象(通过UUID),不存在则返回null
。
function Character.Find( uuid: string ): Character
📘 Character.GetCount()
获取当前所有存在实例对象数量。
function Character.GetCount(): int
📘 Character.Get()
获取当前存在的指定索引实例对象,通常搭配GetCount()
遍历使用。
function Character.Get( index: int ): Character
📒 Function
📘 character.GetNodeExtendPos()
获取角色指定节点位置的当前世界坐标,如果不存在节点则返回Vector(0, 0, 0)
。
function character.GetNodeExtendPos( node: int, isLocal: bool = false ): Vector
- node:角色节点位置(索引)
- isLocal:是否获取本地空间结果