Appearance
🏠游戏实体
- GameEntity 是控制游戏中的游戏对象,用于对物体、玩家等的控制。
类
typescript
declare class GameEntity {
//...
}
属性
isPlayer
: 实体是否为玩家。player
: 索引与玩家相关的全部状态和方法mesh
: 实体形状数据(mesh)的hashposition
: 实体的位置meshOrientation
: 实体的旋转角度meshScale
: 实体的缩放比例meshColor
: 实体的颜色meshInvisible
: 控制实体隐形meshEmissive
: 实体的发光度meshMetalness
: 实体的金属感meshShininess
: 实体的反光度meshOffset
: 实体的位移showEntityName
: 是否展示实体的默认名称customName
: 自定义需要展示的名称nameRadius
: 名称展示范围,数值越小,则需要靠近实体才会出现名称nameColor
: 进入实体名称展示范围时,实体名称的颜色motion
: 索引与模型动作相关的全部状态和方法bounds
: 实体边界框的半径collides
: 实体是否碰撞fixed
: 实体是否移动meshScale
: 实体的缩放比例friction
: 控制实体的粘性(0 = 滑,1 = 粘)gravity
: 实体是否下落mass
: 实体物理质量restitution
: 控制实体的弹性(0 = 软, 1 = 弹)velocity
: 实体的速度contactForce
: 实体受到的碰撞力entityContacts
: 返回正在和玩家/实体发生碰撞的全部实体列表voxelContacts
: 返回正在和玩家/实体发生碰撞的全部方块列表fluidContacts
: 返回正在被玩家/实体触碰的全部液体方块列表chatSound
: 当实体说话时,播放聊天音效。通过say()
触发hurtSound
: 当实体触发受伤事件时,播放受伤音效。通过onTakeDamage()
触发dieSound
: 当实体触发死亡事件时,播放死亡音效。通过onDie()
触发interactSound
: 当实体进行互动时,播放互动音效。此音效仅互动的玩家可听见。通过onInteract()
触发particleRate
: 实体平均每秒产生粒子的数量particleRateSpread
: 如果设定了该属性的值,实体每一秒产生粒子的数量将不再是个固定值particleLimit
: 实体可产生的粒子总数的上限particleLifetime
: 粒子的存活时间,以秒为单位particleLifetimeSpread
: 如果设定了该属性的值,粒子的存活时间将不再是固定值,particleSize
: 该属性的值可以是一个长度为0至5的数组。每个粒子的存活时间被平均分为五个阶段particleSizeSpread
: 如果设定了该属性,但没设定 particleSize 的值,每产生一个粒子,会从区间[0, particleSizeSpread)里选取的一个随机数作为它的大小particleColor
: 类似 particleSize,该属性的值可以是一个长度为0至5的数组,数组里的每个值分别指定了粒子在各个阶段的颜色particleVelocity
: 该实体产生的所有粒子的初始速度particleVelocitySpread
: 增加该实体产生的所有粒子初始速度的不确定性particleDamping
: 如果该属性的值为正数,会短暂减少该实体所产生粒子的初始速度,数值越大,减少初始速度的效果持续得越久particleAcceleration
: 该实体所产生粒子的加速度particleNoise
: 指定粒子相对于之前运动方向的最大偏离值,数值越大,各个粒子的运动相对原有方向的偏离越明显particleNoiseFrequency
: 指定粒子改变运动方向的频率,数值越大,各个粒子的运动方向越没有规律id
: 已在编辑器中添加的实体名称enableInteract
: 是否允许实体进行互动interactRadiu
: 实体互动范围。数值越小,则需要靠近实体才会出现互动提示interactHint
: 进入实体互动范围时,实体身上出现的提示文本interactColor
: 进入实体互动范围时,提示文本的颜色destroyed
: 实体是否销毁enableDamage
: 实体是否显示可以进行伤害showHealthBar
: 实体是否显示生命值HPhp
: 实体的当前生命值hpmaxHp
: 实体的最大生命值hp
方法
lookAt
: 将实体旋转至面向指定位置的方向。animate
: 创建一个关键帧动画getAnimations
: 获取实体的所有已创建的动画sound
: 在实体所在的位置播放声音addTag
: 为实体添加一个新标签hasTag
: 判断实体是否带有某个标签removeTag
: 从实体移除标签tags
: 获取编辑器中给实体添加的全部标签say
: 让实体说话destroy
: 销毁实体hurt
: 对实体的伤害数值
监听方法
onClick
: 当玩家用鼠标点击实体时触发onInteract
: 当实体进行互动时触发onEntityContact
: 当实体触碰另一个实体时触发onEntitySeparate
: 当实体停止触碰另一个实体时触发onFluidEnter
: 当实体进入液体时触发onFluidLeave
: 当实体离开液体时触发onVoxelContact
: 当实体触碰方块时触发onVoxelSeparate
: 当实体停止触碰方块时触发onDestroy
: 当实体被销毁时触发onTakeDamage
: 实体受到伤害时触发的事件onDie
: 实体死亡时触发的事件
接口
GameEntityKeyframe
: Entity实体动画关键帧参数GameEntityContactEvent
: 当两个实体碰撞时触发的事件GameFluidContactEvent
: 当实体进入或离开液体时触发的事件GameVoxelContactEvent
: 当实体进入或离开液体时触发的事件当实体触碰方块时触发的事件GameHurtOptions
: 攻击/伤害的相关参数GameDamageEvent
: 当实体收到伤害时触发的事件GameDieEvent
: 当实体死亡时触发的事件