客户端聊天模块

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

您可以使用以下聊天模块来支持 遗产聊天系统 的客户端行为。

聊天窗口

聊天窗口 是遗产聊天系统客户端的主要聊天模块

方法

添加通道

移除通道

  • 参数: string : channelName
  • 描述: 移除一个具有给定 ChatChannelUI 的窗口的窗口。
  • 返回值::

获取通道

  • 参数: string : channelName
  • 描述: 获取给定的 ChatChannelUI ,如果存在。
  • 返回值: ChatChannelUInil

获取当前通道

切换当前频道

  • 参数: string : channelName
  • 描述: 切换当前通道到 ChatChannelUI 与给定的 channelName 如果存在。
  • 返回值::

获得可见

  • 参数:
  • 描述: 返回窗口是否可见。注意:这是指聊天界面的一通用;当聊天窗口由于长时间未活动而变透明时,窗口仍然被视为可见。
  • 返回值:: bool

设置可见

  • 参数: bool : visible
  • 描述: 设置聊天窗口的可见度。
  • 返回值::

渐变背景

  • 参数: float : duration
  • 描述: 在给定的 duration 秒内淡化背景。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

渐变背景

  • 参数: float : duration
  • 描述: 在指定的 duration 秒内在背景中消失。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

渐变文本

  • 参数: float : duration
  • 描述: 在几秒钟内淡化给定的 duration 文本。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

渐变文本

  • 参数: float : duration
  • 描述: 在指定的 duration 秒内消失在文本上。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

聊天栏

聊天栏 用于处理 Lua 聊天系统的客户端文本输入。聊天栏有两个关键组成部分:

  • 聊天栏 ,一个 TextBox ,其中玩家输入消息和命令(突出显示为橙色)
  • 消息模式 ,一个 TextLabel ,可以显示发送的消息的信息(突出显示绿色)

方法

获取文本框

  • 参数:
  • 描述: 返回聊天栏的 TextBox
  • 返回: TextBox

获取消息模式文本标签

  • 参数:
  • 描述: 返回消息模式 TextLabel
  • 返回: TextLabel

已聚焦

  • 参数:
  • 描述: 返回聊天栏的 TextBox 是否处于焦点(玩家正在输入方块中)。等于调用 TextBox:IsFocused 在 GetTextBox 的结果上。
  • 返回值:: bool

捕捉焦点

  • 参数:
  • 描述: 强制客户专注于聊天栏的 。等于调用 GetTextBox 的结果。
  • 返回值::

发布焦点

  • 参数: bool : submitted = false
  • 描述: 释放聊天栏的焦点 TextBox。如果 submitted 是真的,这将像是玩家按下了输入以提交消信息。
  • 返回值::

重置文本

  • 参数:
  • 描述: 将聊天栏 TextTextBox 设置为空文字符串。
  • 返回值::

设置文本框文本

  • 参数: string : text
  • 描述: 设置聊天栏 TextTextBox 到指定的 text
  • 返回值::

获取文本框文本

  • 参数:
  • 描述: 返回聊天栏中的文本 TextBox.Text
  • 返回: string

设置文本标签文本

  • 参数: string : text
  • 描述: 将 MessageMode TextTextLabel 设置为指定的 text
  • 返回值::

获取启用

  • 参数:
  • 描述: 返回聊天栏是否为 Visible
  • 返回值:: bool

设置启用

  • 参数: bool : enabled
  • 描述: 设置聊天栏是否为 Visible
  • 返回值::

设置文本大小

  • 参数: int : textSize
  • 描述: 设置聊天栏的 TextSize 和 MessageMode TextBoxTextLabel
  • 返回值::

重置尺寸

  • 参数:
  • 描述: 将聊天栏的大小重置为一行文本。
  • 返回值::

设置通道目标

  • 参数: string : channelName
  • 描述: 设置目标 ChatChannelUI 将其 channelName 提交给聊天栏的消息。
  • 返回值::

渐变背景

  • 参数: float : duration duration
  • 描述: 在给定的 duration 秒内淡化背景。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

渐变背景

  • 参数: float : duration duration
  • 描述: 在指定的 duration 秒内在背景中消失。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

渐变文本

  • 参数: float : duration duration
  • 描述: 在几秒钟内淡化给定的 duration 文本。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

渐变文本

  • 参数: float : duration duration
  • 描述: 在指定的 duration 秒内消失在文本上。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

聊天频道用户界面

聊天频道用户界面聊天频道的客户端版本。它从服务器收到 聊天消息 并将其传递给 ChatMessageLogDisplay。与它相关。

方法

添加消息到通道

从通道中删除最后一条消息

清除消息日志

  • 参数:
  • 描述: 移除聊天消息日志中的所有 聊天消息 。
  • 返回值::

聊天消息日志显示

聊天消息日志显示 管理在 聊天频道用户界面 中渲染 聊天消息

方法

添加消息

  • 参数: 聊天消息 message
  • 描述: 添加一个 message 到消息日志显示。
  • 返回值::

删除最后一条消息

  • 参数:
  • 描述: 移除消息日志显示中最旧的 聊天消息
  • 返回值::

重新排序所有消息

  • 参数:
  • 描述: 重排所有消息显示的顺序,相对于消息显示的大小。如果消息日志显示进行了缩放,应该调用此方法。
  • 返回值::

清除

  • 参数:
  • 描述: 移除所有 聊天消息 从消息日志显示。
  • 返回值::

渐变文本

  • 参数: float duration
  • 描述: 在几秒钟内淡化给定的 duration 文本。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

渐变文本

  • 参数: float duration
  • 描述: 在指定的 duration 秒内消失在文本上。注意:之后调用控制淡化进入/退出的调用将覆盖之前的调用。
  • 返回值::

聊天自定义状态

聊天自定义状态是在聊天栏中创建自定义聊天状态时使用的回调接口。

嘘嘘聊天和团队聊天使用 ChatCustomState 向玩家指示他们的消息将被发送到哪里。

回调

文本已更新

  • 参数:
  • 描述: 当聊天栏的文本更新时调用。
  • 返回值::

获取消息

  • 参数:
  • 描述: 被调用以检索消息的文本,因为它将作为单个命令写入。这在服务器需要处理命令为文本,而不是命令的可视化状态的情况下使用。
  • 返回: string

处理完成的消息

  • 参数:
  • 描述: 当玩家提交正在被自定义状态处理的消息时调用。如果消息不应显示或发送到服务器,则应返回真值。
  • 返回值:: bool

摧毁

  • 参数:
  • 描述: 被称为 聊天栏 正在被重置回到自定义状态修改之前的原始状态。
  • 返回值::

聊天设置

聊天设置 是Lua聊天系统的客户端设置词典。它们被存储在一个名为 ChatSettings 的文件中,可以在 游戏服务内找到,在 命名为 的客户端聊天模块下。模块可能需要,其属性可以在运行时更改。

要更改设置,需要使用以下方式中的 LocalScript 要求此模块:


-- 需要聊天设置模块(等待它加载)
local Chat = game:GetService("Chat")
local ClientChatModules = Chat:WaitForChild("ClientChatModules")
local ChatSettings = require(ClientChatModules:WaitForChild("ChatSettings"))
-- 像使用任何其他表一样更改设置。
ChatSettings.MaximumMessageLength = 100

聊天行为设置

窗口可拖动

  • 类型: bool
  • 默认值:: false
  • 描述: 决定是否 ChatWindowDraggable

窗口可调整大小

  • 类型: bool
  • 默认值:: false
  • 描述: 决定是否由玩家缩放 聊天窗口

游戏手柄导航启用

  • 类型: bool
  • 默认值:: false
  • 描述: 决定游戏手柄是否可以导航聊天界面。

显示用户已过滤的消息

  • 类型: bool
  • 默认值:: true
  • 描述: 决定玩家是否应该看到过滤版的聊天消息或原始内容,他们输入的内容。

聊天关闭顶部栏

  • 类型: bool
  • 默认值:: false
  • 描述: 决定是否启用聊天 UI,即使顶部栏被禁用。

泡泡聊天启用

  • 类型: bool
  • 默认值:: game:GetService("Players").BubbleChat
  • 描述: 决定是否启用泡泡聊天。

经典聊天启用

  • 类型: bool
  • 默认值:: game:GetService("Players").ClassicChat
  • 描述: 决定是否启用经典聊天。

聊天文本大小设置

聊天窗口文本大小

  • 类型: int
  • 默认值:: 18
  • 描述: 决定 聊天窗口 中文本的大小。

聊天栏文本尺寸

  • 类型: int
  • 默认值:: 18
  • 描述: 决定 聊天栏 中文本的大小。

聊天窗口文本大小电话

  • 类型: int
  • 默认值:: 14
  • 描述: 决定了手机聊天窗口中的文本大小。

聊天栏文本尺寸电话

  • 类型: int
  • 默认值:: 14
  • 描述: 决定了手机聊天栏中文本的大小。

字体设置

默认字体

聊天栏字体

颜色设置

背景颜色

  • 类型: Color3
  • 默认值:: Color3.new(0, 0, 0)
  • 描述: 决定了 BackgroundColor3

默认消息颜色

  • 类型: Color3
  • 默认值:: Color3.new(1, 1, 1)
  • 描述: 决定聊天窗口中的默认 聊天消息 。

默认名称颜色

  • 类型: Color3
  • 默认值:: Color3.new(1, 1, 1)
  • 描述: 决定聊天窗口中的默认 发言者名称的 ChatMessage 。

聊天栏背景颜色

  • 类型: Color3
  • 默认值:: Color3.new(0, 0, 0)
  • 描述: 决定 BackgroundColor3

聊天栏箱子颜色

  • 类型: Color3
  • 默认值:: Color3.new(1, 1, 1)
  • 描述: 决定了 BackgroundColor3聊天栏 TextBox

聊天栏文本颜色

  • 类型: Color3
  • 默认值:: Color3.new(0, 0, 0)
  • 描述: 决定 TextColor3

错误消息文本颜色

  • 类型: Color3
  • 默认值:: Color3.fromRGB(245, 50, 50)
  • 描述: 决定错误消息的 TextColor3

窗口设置

最小窗口尺寸

  • 类型: UDim2
  • 默认值:: UDim2.new(0.3, 0, 0.25, 0)
  • 描述: 决定聊天窗口的最小可能尺寸(假设 启用了窗口可调整 )。

最大窗口尺寸

  • 类型: UDim2
  • 默认值:: UDim2.new(1, 0, 1, 0)
  • 描述: 决定聊天窗口的最大可能尺寸(既然 启用了窗口可调整 )。
  • 注释: 如果这被更改为大于全屏尺寸,尺寸/位置边界检查开始出现奇怪的情况。

默认窗口位置

  • 类型: UDim2
  • 默认值:: UDim2.new(0, 0, 0, 0)
  • 描述: 决定 ChatWindow 的默认位置。

默认窗口尺寸电话

  • 类型: UDim2
  • 默认值:: UDim2.new(0.5, 0, 0.5, (7 * 2) + (5 * 2))
  • 描述: 决定手机上的 聊天窗口 默认尺寸。

默认窗口尺寸平板

  • 类型: UDim2
  • 默认值:: UDim2.new(0.4, 0, 0.3, (7 * 2) + (5 * 2))
  • 描述: 决定了表中 ChatWindow 的默认大小。

默认窗口大小桌面

  • 类型: UDim2
  • 默认值:: UDim2.new(0.3, 0, 0.25, (7 * 2) + (5 * 2))
  • 描述: 决定桌面上的 聊天窗口 默认大小。

在设置中渐变和退出

聊天窗口背景淡化时间

  • 类型: float (秒)
  • 默认值:: 0.5
  • 描述: 决定 聊天窗口 背景消失时间的长度。

聊天窗口文本褪色时间

  • 类型: float (秒)
  • 默认值:: 30
  • 描述: 决定 聊天窗口 文本淡化时间需要多长。

聊天默认渐变时间

  • 类型: float (秒)
  • 默认值:: 0.8
  • 描述: 决定淡化聊天 UI 元素的时间长度。

聊天应该从新信息中消失

  • 类型: bool
  • 默认值:: false
  • 描述: 决定聊天是否在收到新消息时消失。

聊天动画FPS

  • 类型:: 浮动
  • 默认值:: 20.0
  • 描述: 决定聊天 UI 中渐变动画的帧率。

通道设置

通用通道名称

  • 类型: string
  • 默认值:: "All"
  • 描述: 决定默认通频道的名称。

通用频道中的回音消息

  • 类型: bool
  • 默认值:: true
  • 描述: 决定是否将默认通道以外的消息复制到默认通频道。

最大通道名称长度

  • 类型: int
  • 默认值:: 12
  • 描述: 决定通道名称在被简化之前的最大长度。

消息历史长度每渠道

  • 类型: int
  • 默认值:: 50
  • 描述: 决定在聊天频道中显示的最大 聊天消息 数量。

显示加入和离开帮助文本

  • 类型: bool
  • 默认值:: false
  • 描述: 决定是否显示加入/离开通道的帮助文本。

消息设置

最大消息长度

  • 类型: int
  • 默认值:: 200
  • 描述: 决定 聊天消息 的最大长度。

不允许白空间

  • 类型: 阵列< string >
  • 默认值:: {"\n", "\r", "\t", "\v", "\f"}
  • 描述: 决定禁用的空格字符。

点击玩家名称以悄悄话

  • 类型: bool
  • 默认值:: true
  • 描述: 决定玩家是否可以单击另一名玩家的名称与他们进行悄悄话聊天。

单击渠道名称以设置主渠道

  • 类型: bool
  • 默认值:: true
  • 描述: 决定玩家是否可以单击通频道的选项卡将其设置为主频道。

其他设置

悄悄命令自动完成玩家名称

  • 类型: bool
  • 默认值:: true
  • 描述: 决定是否应自动完成玩家名称的 Whisper 命令。

事件

设置已更改

  • 参数: string settingName ,变体 newValue
  • 描述: 在指定的 settingName 设置更改为 newValue 时发生火灾。

在此页面