CoreUI
继承自:
描述
核心UI服务,管理游戏中所有内置界面组件的显示/隐藏状态,包括退出按钮、消息按钮、房间信息、设置按钮、麦克风和喇叭控制等
属性
bool HideBtnExit |
---|
是否隐藏退出按钮,默认值为false,显示退出按钮 |
bool HideBtnMsg |
---|
是否隐藏消息按钮,默认值为flase,显示消息按钮 |
bool HideViewRoomInfo |
---|
是否隐藏房间信息视图,默认值为flase,显示房间信息视图 |
bool MicUnMute |
---|
麦克风是否静音,默认值为true,麦克风不静音 |
bool HornUnMute |
---|
喇叭是否静音,默认值为true,喇叭不静音 |
bool HideBtnSet |
---|
是否隐藏设置按钮,默认值为flase,显示设置按钮 |
成员函数
void ExitGame () |
---|
弹出退出当前房间确认框,点击确认后退出,仅限客户端调用 |
获取用户头像,传入用户uin,返回用户头像节点,仅限客户端调用。如果传入的uin为空字符串或无效,仍会创建头像节点但可能无法正确显示头像内容 |
检查当前运行环境是否支持语音聊天功能,如果支持,则返回true,否则返回false,主要用于控制语音相关UI的显示和功能的启用 |
获取随机昵称,根据性别参数生成合适的昵称,传入参数为0-无性别限制,1-男性,2-女性,返回随机昵称字符串。如果传入无效的性别参数,系统会按无性别限制处理 |
检测ui是否被隐藏,仅限客户端调用。如果传入无效的枚举值,返回false |
根据传入的EnumCoreUi类型,隐藏对应的CoreUi默认组件,仅限客户端调用。如果传入无效的枚举值,操作会被忽略 |
void OpenWareHouse () |
---|
打开玩家仓库皮肤界面,仅限客户端调用 |
执行截屏操作,仅限客户端调用 |
事件
SBXSignal UiChange () |
---|
当内置界面组件状态发生变化时触发的通知事件,仅限客户端调用 |
截屏完成时触发的通知事件 |
代码示例
lua
-- 获取CoreUI服务
local CoreUI = game:GetService("CoreUI")
-- 监听CoreUI变化事件
CoreUI.UiChange:connect(function()
print("CoreUI状态发生变化")
end)
-- 隐藏所有UI组件
CoreUI:HideCoreUi(Enum.CoreUiComponent.All)
local isHidden = CoreUI:CheckCoreUiHide(Enum.CoreUiComponent.BtnExit)
print("isHidden", isHidden)
-- 麦克风静音
CoreUI.MicUnMute = false
-- 显示头像
local uiRoot = SandboxNode.new('UIRoot', game.WorkSpace)
local headNode = CoreUI:GetHeadNode("12345")
headNode.Parent = uiRoot
-- 获取男性随机昵称
local randomName = CoreUI:GetRandomNickName(1)
print("randomName", randomName)
-- 执行UI截屏(包含场景和UI)
CoreUI.SnapshotFinish:connect(function(success, texture)
if success then
print("截屏成功")
local imageNode = SandboxNode.new('UIImage', uiRoot)
imageNode:SetTexture(texture)
else
print("截屏失败")
end
end)
CoreUI:DoSnapshot(1)