이모티콘 바

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

이모티콘은 모든 소셜 경험의 핵심 구성 요소입니다. EmoteBar개발자 모듈은 플레이어가 의미 있는 소셜 상호 작용을 쉽게 할 수 있도록 액세스 가능한 사용자 지정 가능한 방법을 제공하려고 합니다.

모듈 사용

설치

경험에서 EmoteBar 모듈을 사용하려면:

  1. 보기 탭에서 도구 상자를 엽니다. 그리고 크리에이터 스토어 탭을 선택합니다.

    Toolbox toggle button in Studio
  2. 모델 정렬을 선택한 다음 모두 보기 버튼을 클릭하여 범주 에 대한 전체 보기를 클릭하십시오.

  3. 찾아 클릭하십시오 개발자 모듈 타일.

  4. 이모티콘 바 모듈을 찾아 클릭하거나 3D 뷰에 드래그 앤 드롭하세요.

  5. 탐색기 창에서 전체 EmoteBar 모델을 ServerScriptService 로 이동합니다. 경험을 실행할 때 모듈은 다양한 서비스에 배포되고 실행을 시작합니다.

구성

모듈은 7개의 이모티콘으로 미리 구성되지만, 자신의 이모티콘과 표시 옵션으로 쉽게 사용자 정의할 수 있습니다. 또한, 플레이어가 Lil Nas X, Royal Blood 또는 Twenty One Pilots와 같은 Roblox 이벤트의 이모티콘을 소유하고 있다면, 이 이모티콘은 사용 가능한 이모티콘 목록에 자동으로 추가

  1. In ServerScriptService , 새로운 Script 를 생성하고 이름을 ConfigureEmotes 로 변경합니다.

  2. 새로운 ConfigureEmotes 스크립트에 다음 코드를 붙여넣습니다. useDefaultEmotes 설정의 false는 기본 이모티콘을 재정의하고 사용자 정의 이모티콘을 정의하도록 허용합니다.

    스크립트 - 이모티콘 구성

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
    EmoteBar.configureServer({
    useDefaultEmotes = false,
    })
    EmoteBar.setEmotes({
    {
    name = "Hello",
    animation = "rbxassetid://3344650532",
    image = "rbxassetid://7719817462",
    defaultTempo = 1,
    },
    {
    name = "Applaud",
    animation = "rbxassetid://5915693819",
    image = "rbxassetid://7720292217",
    defaultTempo = 2,
    },
    })

메가 이모티콘

동일한 지역의 여러 플레이어가 동일한 감정 표현을 동시에 수행하면 메가 이모트 가 형성됩니다. 더 많은 플레이어가 참여함에 따라 메가 이모트는 점점 더 크게 됩니다. 플레이어가 이모트를 수행하지 않더라도 메가 이모트는 점점 더 작아지므로 마침내 사라집니다.

테모

감정 표현tempo는 버튼을 한 번 누르면 플레이하는 속도입니다. 이모티콘의 기본 속도는 defaultTempo 입니다. 감정 표현속도를 빠르거나 느리게 조정하려면 버튼을 더 빠르게 또는 더 느리게 탭하십시오.

API 참조

형식

이모티콘

각 이모티콘은 다음 키 값 쌍으로 표시됩니다:

유형설명
name문자열이름, 예를 들어 "Shrug" .
animation문자열애니메이션 감정 표현대한 자산 ID.
image문자열이 감정 표현이미지에 대한 자산 ID.
defaultTempo숫자감정 표현 애니메이션을 재생할 기본 속도 요소. 예를 들어, 2초의 시간은 애니메이션을 두 배 더 빠르게 재생합니다. 0보다 더 큰 값이어야 합니다.
isLocked부울감정 표현이 활성화되었을 때 "잠긴"상태인지 여부.

열거

EmoteBar.GuiType

이름요약
EmoteBar화면 하단에 있는 바에 표시되는 이모티콘이 개별 "페이지"로 표시되는 기본 형식입니다.
EmoteWheel플레이어가 플레이어 캐릭터를 클릭하거나 탭하면 이모티콘이 링에 표시되는 변형.
로컬 스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.configureClient({
guiType = EmoteBar.GuiType.EmoteWheel,
})

함수

서버 구성

Server(config: table ) 구성

Class.Script 테이블에 있는 다음 키/값을 통해 서버 사이드 구성 옵션을 재정의합니다. 이 함수는 Script 에서만 호출할 수 있으며 변경 사항은 모든 클라이언트에 자동으로 적용됩니다.

설명기본
useDefaultEmotes제공된 기본 이모티콘이 포함되어 있는지 여부.
useMegaEmotes메가 이모트 기능을 활성화 또는 비활성화합니다.
emoteMinPlayers메가 이모트에 기여하기 위해 동일한 이모트를 수행하는 최소 플레이어 수.3
emoteMaxPlayers메가 이모트에 기여하기 위해 동일한 이모트를 수행하는 최대 플레이어 수.50
playParticles플레이어가 머리 위에서 떠 있는 입자로 표시되는 감정 표현을 활성화하거나 비활성화합니다.
sendContributingEmotes메가 이모트에 기여하도록 작은 이모트 아이콘을 보내는 것을 활성화하거나 비활성화합니다.
스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.configureServer({
emoteMinPlayers = 2,
playParticles = false,
})

구성 클라이언트

구성Client(구성: table )

config 테이블의 다음 키/값을 통해 기본 클라이언트 사이드 구성 옵션을 재정의합니다. 이 함수는 LocalScript 호출할 수 있습니다. 기존 guiType 옵션에 따라 해당 탭에 있는 옵션도 적용됩니다.

설명기본
guiType이모티콘을 표시하는 컨트롤(EmoteBar.GuiType).이모티콘 표시줄
useTempo사용자가 동일한 감정 표현 �hythm을 반복하여 얼마나 빠르거나 느리게 감정 표현을 제어할 수 있는 테모 기능을 활성화하거나 비활성화합니다.
tempoActivationWindow사용자가 시간 내에 이모티콘 활성화의 시퀀스 중 하나를 수행할 때까지 걸리는 시간(초).3
lockedImage위쪽에 잠긴 이모티콘을 표시하는 이미지.“rbxassetid://6905802778”
로컬 스크립트 - 이모티콘 바

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.configureClient({
guiType = EmoteBar.GuiType.EmoteBar,
maxEmotesPerPage = 6,
nextPageKey = Enum.KeyCode.Z,
prevPageKey = Enum.KeyCode.C,
})
로컬 스크립트 - 이모티콘 휠

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.configureClient({
guiType = EmoteBar.GuiType.EmoteWheel,
})

설정Emotes

setEmotes(emotes: table )

사용자 지정 이모티콘을 사용할 수 있도록 설정합니다. 이는 useDefaultEmotestrue 인 경우에만 기본값에 추가되며, useDefaultEmotes 가 2>false2> 인 경우에는 기본값을 자동으로 대체합니다. 이 함

이 함수에 패스된 각 이모티콘의 구조에 대해서는 이모티콘을 참조하십시오.

스크립트 - 이모티콘 구성

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.configureServer({
useDefaultEmotes = false,
})
EmoteBar.setEmotes({
{
name = "Hello",
animation = "rbxassetid://3344650532",
image = "rbxassetid://7719817462",
defaultTempo = 1,
},
{
name = "Applaud",
animation = "rbxassetid://5915693819",
image = "rbxassetid://7720292217",
defaultTempo = 2,
},
})

설정 가이드 표시

setGuiVisibility(Visible: boolean )

이모티콘 가이드를 보거나 숨깁니다. 이 기능은 특정 클라이언트의 LocalScript에서만 호출할 수 있습니다.

로컬 스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.setGuiVisibility(false)

이모티콘 가져오기

getEmote(emoteName: string): table

이름별 이모티콘을 가져옵니다. 이모티콘을 찾을 수 없으면 nil을 반환합니다. 이 함수는 특정 클라이언트의 LocalScript에서만 호출할 수 있습니다.

로컬 스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
local shrug = EmoteBar.getEmote("Shrug")

플레이 이모트

playEmote(감정 표현: 이모트 )

지정된 이모티콘을 재생하고 서버에서 이모티콘 플레이 이벤트를 발생시키고, 연결된 경우 LocalScript 이벤트를 서버에서 호출합니다. 이 함수는 특정 클라이언트의 2>Class.LocalScript2>에서만 호출할 수 있습니다.

로컬 스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
local shrug = EmoteBar.getEmote("Shrug")
EmoteBar.playEmote(shrug)

lockEmote

lockEmote(emoteName: string )

이 이모티콘을 클라이언트에서만 사용할 수 있도록 합니다. Class.LocalScript 에서만 호출할 수 있는 이 함수는 클라이언트에서만 호출할 수 있습니다.

로컬 스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.lockEmote("Applaud")

Emote 잠금 해제

Emote 잠금 해제(emoteName: string )

이 이름의 이모티콘을 잠금 해제합니다. 이 기능은 클라이언트의 LocalScript에서만 호출할 수 있습니다.

로컬 스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.unlockEmote("Applaud")

이벤트

emote플레이

클라이언트가 감정 표현플레이할 때 이벤트가 발생합니다. 이 이벤트는 LocalScript 에만 연결될 수 있습니다.

매개 변수
플레이어: Player감정 표현을 연기한 플레이어.
감정 표현: 이모티콘플레이한 이모티콘.
로컬 스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.emotePlayed:Connect(function(player, emote)
print(player.Name, "played", emote.name)
end)

잠긴 이모티콘 활성화

클라이언트가 잠긴 감정 표현클릭하면 이 이벤트는 LocalScript 에만 연결될 수 있습니다.

매개 변수
감정 표현: 이모티콘활성화된 잠긴 이모티콘.
로컬 스크립트

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local EmoteBar = require(ReplicatedStorage:WaitForChild("EmoteBar"))
EmoteBar.lockedEmoteActivated:Connect(function(emote)
print(Players.LocalPlayer, "clicked", emote.name)
end)