エモート

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

エモートは、チャットコマンド("/e cheer") を使用してアクセス可能な表現的なキャラクターアニメーションであり、エクスペリエンスの右上隅の エモートメニュー にアクセスすることでも入手可能です。すべてのユーザーは、 ダンスポイント 、および チア などのデフォルトのエモートにアクセスできます。追加のアバターエモートは、市場 から購入して装備できます。

経験上、次のエモートカスタマイズを行うことができます:

エモートメニュー

ユーザーのエモートメニューを手動で開いて閉じたり、メニューをカスタマイズして特定のエモートを表示したり、メニューを完全に無効にしたりできます。

開いて閉じる

プレイヤーのエモートメニューを手動で開いたり閉じたりするには、真または偽のブール値で GuiService:SetEmotesMenuOpen() を呼び出します。

次のコードサンプルは、ユーザーのためのエモートメニューを開きます:


-- エモートメニューを開く
local GuiService = game:GetService("GuiService")
GuiService:SetEmotesMenuOpen(true)

エモートメニューが開いているかどうかを検出する必要がある場合は、GuiService:GetEmotesMenuOpen() を呼び出します。これは、メニューの現在の状態を示すブールを返します。

エモートを追加および削除

カタログからエモートを設定し、エモートを Humanoid に装備して、エモートメニューをカスタマイズします。HumanoidDescription:SetEmotes() メソッドでエモートを設定し、HumanoidDescription:SetEquippedEmotes() を使用して最大 8つのエモートをエモートメニューに装備します。

エクスペリエンス内のエモートを設定し装備するには、次のコードサンプルを LocalScript フォルダ内の StarterCharacterScripts で使用してください:


local Players = game:GetService("Players")
local humanoid = Players.LocalPlayer.Character.Humanoid
local humanoidDescription = humanoid.HumanoidDescription
-- テーブル内でカスタムエモートを設定
local emoteTable = {
["Hello"] = {3576686446},
["Stadium"] = {3360686498},
["Tilt"] = {3360692915},
["Shrug"] = {3576968026},
["Salute"] = {3360689775},
["Point"] = {3576823880}
}
humanoidDescription:SetEmotes(emoteTable)
-- 特定の順序でエモートを装備する
local equippedEmotes = {"Hello", "Stadium", "Tilt", "Shrug", "Salute", "Point"}
humanoidDescription:SetEquippedEmotes(equippedEmotes)

無効にする

emotes メニューを StarterGui:SetCoreGuiEnabled() で無効にします。emotes メニューを無効にすると、チャットコマンドでエモートが実行されなくなります。

次のサンプルコードでは、エモートメニューが無効になります:


local StarterGui = game:GetService("StarterGui")
StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.EmotesMenu, false)

メニューを無効にするとともに、StarterPlayer.UserEmotesEnabled プロパティを設定して、 StarterPlayer > キャラクターfalse に設定して、ユーザーが所有するエモートのロードを無効にすることもできます。この特定のプロパティはスタジオでのみ設定でき、スクリプトでは設定できません。

エモートを再生する

キャラクターが持っているエモートを手動で再生するには、HumanoidDescription にストリング名のエモートをパスして、Humanoid:PlayEmote() を呼び出します。この呼び出しは、エモートが成功して再生されたことを示すために true を返し、そうでない場合は false を返します。

次のコードサンプルを使用して、シャッグエモートを再生しまリアクション:


local Players = game:GetService("Players")
local humanoid = Players.LocalPlayer.Character.Humanoid
humanoid:PlayEmote("Shrug")