Skip to content

CoreUI

继承自:

描述

核心UI服务,管理游戏中所有内置界面组件的显示/隐藏状态,包括退出按钮、消息按钮、房间信息、设置按钮、麦克风和喇叭控制等

属性

boolHideBtnExit
是否隐藏退出按钮,默认值为false,显示退出按钮
boolHideBtnMsg
是否隐藏消息按钮,默认值为flase,显示消息按钮
boolHideViewRoomInfo
是否隐藏房间信息视图,默认值为flase,显示房间信息视图
boolMicUnMute
麦克风是否静音,默认值为true,麦克风不静音
boolHornUnMute
喇叭是否静音,默认值为true,喇叭不静音
boolHideBtnSet
是否隐藏设置按钮,默认值为flase,显示设置按钮

成员函数

voidExitGame ()
弹出退出当前房间确认框,点击确认后退出,仅限客户端调用
获取用户头像,传入用户uin,返回用户头像节点,仅限客户端调用。如果传入的uin为空字符串或无效,仍会创建头像节点但可能无法正确显示头像内容
检查当前运行环境是否支持语音聊天功能,如果支持,则返回true,否则返回false,主要用于控制语音相关UI的显示和功能的启用
获取随机昵称,根据性别参数生成合适的昵称,传入参数为0-无性别限制,1-男性,2-女性,返回随机昵称字符串。如果传入无效的性别参数,系统会按无性别限制处理
检测ui是否被隐藏,仅限客户端调用。如果传入无效的枚举值,返回false
根据传入的EnumCoreUi类型,隐藏对应的CoreUi默认组件,仅限客户端调用。如果传入无效的枚举值,操作会被忽略
voidOpenWareHouse ()
打开玩家仓库皮肤界面,仅限客户端调用
执行截屏操作,仅限客户端调用

事件

SBXSignalUiChange ()
当内置界面组件状态发生变化时触发的通知事件,仅限客户端调用
截屏完成时触发的通知事件

代码示例

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)