VoiceChatService 负责声音聊天的高级功能。这主要包括配置选项和不是特定控制的函数。
属性
EnableDefaultVoice
启用时,每个有资格的声音玩家都可以听到像他们通过角色发表话时一样的声音。声音设置的实现细节取决于 UseAudioApi 。
当 UseAudioApi 是 Disabled 时,禁用默认声音设置可以有效地禁用语音聊天。
UseAudioApi
如果 Enabled ,语音聊天设置由 AudioDeviceInput 对象代表和控制。 更具体地说:
- 一个 AudioDeviceInput 将被创建并父级于每个声音适用的 Player 。
- 一个 AudioEmitter 将被创建,并作为每个声音有效的玩家的 Player.Character 的父级。
- 一个 AudioListener 将被创建并父级于 Workspace.CurrentCamera 。
如果 Disabled,语音聊天设置是通过内部仅用系统完成的。
目前,将其设置为 Automatic 与 Disabled 的意义相同。 但在未来, Automatic 将变为 1> Enum.AudioApiRollout|Enabled1>,以便实现对语音的更大自定义。
方法
IsVoiceEnabledForUserIdAsync
返回是否启用给定用户的语音。在客户端,这只能用于检查本地玩家的语音状态。在服务器端,这只能用于检查服务器端的玩家的语音状态。
如果 HTTP 请求失败,该函数可以投出一个错误。
local Players = game:GetService("Players")
local VoiceChatService = game:GetService("VoiceChatService")
local localPlayer = Players.LocalPlayer
local success, enabled = pcall(function()
return VoiceChatService:IsVoiceEnabledForUserIdAsync(localPlayer.UserId)
end)
if success and enabled then
print("Voice chat enabled!")
end
参数
Class.Player.UserId 用于检查。
返回
如果该用户已启用语音。