Appearance
🌏游戏世界
- GameWorld 是整个游戏世界的主要接口,它对应涵盖了控制环境天气、物理重力、画面滤镜等全局场景属性,还可以在世界中创建、搜索实体,或监听世界中实体和玩家的碰撞、伤害、互动等事件。
- 可以通过全局对象
world
来使用它。
类
typescript
declare const world: GameWorld;
declare class GameWorld {
//...
}
属性
projectName
: 本张地图名称,对应项目设置中的名称serverId
: 当前服务器IDcurrentTick
: 世界当前的Tick计数useOBB
: 是否切换为OBB包围盒计算方式gravity
: 世界重力airFriction
: 空气阻力maxFog
: 最大雾量fogColor
: 雾的颜色fogStartDistance
: 雾起始距离fogHeightOffset
: 雾高度fogUniformDensity
: 均匀雾量fogHeightFalloff
: 高度衰减系数rainSpeed
: 雨的速度rainColor
: 雨的颜色rainDirection
: 雨的方向rainDensity
: 雨的密度rainInterference
: 雨的不规则性rainSizeLo
: 雨滴的最小直径rainSizeHi
: 雨滴的最大直径snowColor
: 雪花颜色snowTexture
: 雪花纹理snowDensity
: 雪的密度snowFallSpeed
: 雪花下落速度snowSpinSpeed
: 雪花自旋速度snowSizeLo
: 雪花的最小直径snowSizeHi
: 雪花的最大直径lightMode
: 作用于天空和环境光的照明类型sunFrequency
: 太阳运动的频率sunPhase
: 太阳的初始位置sunDirection
: 太阳光照明方向sunLight
: 太阳光颜色亮度skyLeftLight
: 环境光在-X轴方向的亮度skyRightLight
: 环境光在+X轴方向的亮度skyBottomLight
: 环境光在-Y轴方向的亮度skyTopLight
: 环境光在+X轴方向的亮度skyFrontLight
: 环境光在-Z轴方向的亮度skyBackLight
: 环境光在+Z轴方向的亮度ambientSound
: 设置背景音乐,从地图运行开始循环播放playerJoinSound
: 当玩家进入地图时,播放的音效playerLeaveSound
: 当玩家离开地图时,播放的音效placeVoxelSound
: 方块被放置时,播放的音效breakVoxelSound
: 方块被销毁时,播放的音效
方法
say
: 向所有玩家广播一条消息发createTempChat
: 创建临时聊天频道destroyTempChat
: 批量销毁临时聊天频道addTempChatPlayer
: 向临时聊天频道添加玩家removeTempChatPlayer
: 向临时聊天频道移除玩家getTempChats
: 获取当前地图存在的临时聊天频道getTempChatUsers
: 获取临时聊天频道中的玩家createEntity
: 创建一个新实体 GameEntity 或复制一个现有的实体entityQuota
: 返回脚本当前仍可创建的实体数量querySelector
: 搜索满足条件的第一个实体querySelectorAll
: 搜索满足条件的所有实体,返回一个列表searchBox
: 搜索指定范围中的全部实体raycast
: 射线检测,返回碰到的实体或方块addZone
: 创建一个区域removeZone
: 删除指定区域zones
: 返回所有的区域列表addCollisionFilter
: 添加碰撞过滤器,关闭两个实体组之间的碰撞removeCollisionFilter
: 移除碰撞过滤器clearCollisionFilters
: 清除全部碰撞过滤器collisionFilters
: 返回当前有效的全部碰撞过滤器testSelector
: 测试实体是否符合某个选择器的条件sound
: 播放一段声音,所有玩家都能听到animate
: 创建一个关键帧动画getAnimations
: 获取当前世界所有已创建的动画getEntityAnimations
: 获取实体所有已创建的动画getPlayerAnimations
: 获取玩家所有已创建的动画teleport
: 地图组内传送能力,能够让玩家被传送到指定地图中
监听方法
onTick
: 这是世界的计时事件,每64毫秒触发一次,Tick计数加1onEnter
: 当玩家进入该区域时触发onLeave
: 当玩离开该区域时触发onPlayerJoin
: 当玩家加入地图时触发onPlayerLeave
: 当玩家离开地图时触发onChat
: 当玩家在聊天窗口说话时触发onEntityCreate
: 当实体被创建时触发onEntityDestroy
: 当实体被销毁时触发onInteract
: 玩家与实体进行互动时触发onClick
: 当玩家用鼠标点击实体时触发onPress
: 当玩家按下按钮时触发onRelease
: 当玩家松开按钮时触发onTakeDamage
: 当实体受到伤害时触发onDie
: 当实体死亡时触发onRespawn
: 当实体复活时触发onEntityContact
: 当实体与实体发生碰撞时触发onEntitySeparate
: 当实体与实体结束碰撞时触发onVoxelContact
: 当实体与方块发生碰撞时触发onFluidEnter
: 当实体进入水里/液体时触发onFluidLeave
: 当实体离开水里/液体时触发onFluidLeave
: 当实体离开水里/液体时触发onPlayerPurchaseSuccess
: 当玩家成功购买物品时触发
接口
GameTickEvent
: 每一刻(tick)触发一次的事件GamePlayerEntityEvent
: 当创建或销毁实体时触发的事件GameChatEvent
: 由聊天触发的事件GameEntityEvent
: 实体创建与销毁事件GameEntityConfig
: 用于控制实体的参数组GameSelectorString
: 选择器可以方便搜索游戏内的全部对象GameRaycastOptions
: 进行射线检测的参数配置GameRaycastResult
: 射线检测的结果,包含射线和所击中目标的信息。GameInteractEvent
: 当实体互动时触发的事件GameInputEvent
: 输入事件,在玩家按下或松开按钮时触发GameClickEvent
: 游戏检查事件GameDamageEvent
: 当实体收到伤害时触发的事件GameDieEvent
: 当实体死亡时触发的事件GameRespawnEvent
: 当实体复活时触发的事件GameZoneConfig
: 用于区域的参数GameZone
: 用于区域的配置GameTriggerEvent
: 当实体/玩家触发区域的事件GameEntityContactEvent
: 当两个实体碰撞时触发的事件GameVoxelContactEvent
: 当实体触碰方块时触发的事件GameFluidContactEvent
: 当实体进入或离开液体时触发的事件GameSoundEffect
: 使用 Sound()方法播放声音时,传入的参数GameWorldKeyframe
: World世界动画关键帧参数GameAnimationPlaybackConfig
: 用于动画播放配置的参数组GamePurchaseSuccessEvent
: 当玩家成功购买物品时触发的事件TeleportResult
: 传送结果
枚举
GameButtonType
: 玩家按下的按钮类型GameEasing
: 动画的缓动效果