이모티콘 바

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

이모티콘은 모든 소셜 경험의 핵심 요소입니다. EmoteBar 개발자 모듈은 플레이어가 의미 있는 사회적 상호작용을 촉진할 수 있도록 접근할 수 있고 사용자 정의 가능한 방법을 제공하는 것을 목표로 합니다.

모듈 사용법

설치

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

  1. 스튜디오의 메뉴 또는 탭 도구 모음에서 툴박스를 열고 제작자 상점 탭을 선택합니다.

  2. 모델 정렬이 선택되어 있는지 확인한 후, 범주모두 보기 버튼을 클릭합니다.

  3. 패키지 타일을 찾고 클릭합니다.

  4. Emote Bar 모듈을 찾아 클릭하거나 3D 뷰로 드래그 앤 드롭합니다.

  5. 탐색기 창에서 전체 EmoteBar 모델을 ReplicatedStorage로 이동합니다. 경험을 실행하면 모듈이 실행되기 시작합니다.

구성

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

  1. ServerScriptService에서 새 Script를 생성하고 ConfigureEmotes로 이름을 바꿉니다.

  2. 다음 코드를 새 ConfigureEmotes 스크립트에 붙여넣습니다. useDefaultEmotes 설정을 false로 설정하면 기본 이모티콘을 무시하고 setEmotes 함수를 통해 사용자 정의 이모티콘을 정의할 수 있습니다.

    Script - ConfigureEmotes

    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local EmoteBar = require(ReplicatedStorage.EmoteBar)
    EmoteBar.configureServer({
    useDefaultEmotes = false,
    })
    EmoteBar.setEmotes({
    {
    name = "안녕하세요",
    animation = "rbxassetid://3344650532",
    image = "rbxassetid://7719817462",
    defaultTempo = 1,
    },
    {
    name = "박수",
    animation = "rbxassetid://5915693819",
    image = "rbxassetid://7720292217",
    defaultTempo = 2,
    },
    })

메가 이모티콘

메가 이모티콘은 동일 지역의 여러 플레이어가 동시에 동일한 이모티콘을 수행할 때 형성됩니다. 더 많은 플레이어가 참여함에 따라 메가 이모티콘은 더 커집니다. 플레이어가 이모티콘을 중단하면 메가 이모티콘은 점점 작아지다가 결국 사라집니다.

템포

이모티콘의 템포는 버튼을 한 번 탭했을 때 재생되는 속도입니다. 이모티콘의 기본 속도는 defaultTempo에 따라 결정됩니다. 이모티콘의 속도는 버튼을 더 빠르게 또는 더 느리게 탭하여 증가시킬 수 있습니다.

API 참조

타입

이모티콘

각 이모티콘은 다음 키-값 쌍을 가진 사전으로 표현됩니다:

유형설명
namestring이모티콘 이름, 예: "Shrug".
animationstring이모티콘 애니메이션의 자산 ID.
imagestringGUI에서 이모티콘의 이미지 자산 ID.
defaultTemponumber이모티콘 애니메이션을 재생할 기본 속도 요인. 예를 들어, 템포가 2이면 애니메이션이 정상 속도의 두 배로 재생됩니다. 0보다 커야 합니다.
isLockedbool이모티콘이 "잠겨" 활성화되지 않게 되어 있는지 여부를 나타냅니다.

열거형

EmoteBar.GuiType

이름요약
EmoteBar이모티콘이 화면 하단의 막대에 표시되는 기본 형식으로, 개별 "페이지"로 구분됩니다.
EmoteWheel플레이어가 자신의 플레이어 캐릭터를 클릭하거나 탭했을 때 이모티콘이 고리 형태로 표시되는 변형입니다.
LocalScript

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

함수

configureServer

configureServer(config: table)

다음 키-값 쌍을 통해 기본 서버 측 구성 옵션을 재정의합니다. 이 함수는 Script에서만 호출할 수 있으며, 변경 사항은 모든 클라이언트에 자동으로 복제됩니다.

설명기본값
useDefaultEmotes제공된 기본 이모티콘이 포함되었는지 여부.true
useMegaEmotes메가 이모티콘 기능을 활성화하거나 비활성화합니다.true
emoteMinPlayers메가 이모티콘에 기여하기 위해 동일한 이모티콘을 수행해야 하는 최소 플레이어 수.3
emoteMaxPlayers메가 이모티콘에 기여하기 위해 동일한 이모티콘을 수행해야 하는 최대 플레이어 수.50
playParticles플레이어가 머리 위에서 떠다니는 입자 형태로 이모티콘을 재생할지 여부를 설정합니다.true
sendContributingEmotes메가 이모티콘에 기여할 작은 이모티콘 아이콘을 전송할지 여부.true
Script

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

configureClient

configureClient(config: table)

다음 키-값 쌍을 통해 기본 클라이언트측 구성 옵션을 재정의합니다. 이 함수는 LocalScript에서만 호출할 수 있습니다. guiType의 값에 따라 주어진 탭에서 옵션이 적용됩니다.

설명기본값
guiType이모티콘 표시를 위해 GUI가 사용할 형식을 제어합니다 (EmoteBar.GuiType).EmoteBar
useTempo사용자가 반복적으로 동일한 이모티콘을 리드미컬하게 활성화하여 얼마나 빠르거나 느리게 재생할지를 제어할 수 있는 템포 기능을 활성화하거나 비활성화합니다.true
tempoActivationWindow이모티콘 활성화 간에 사용자가 가진 시간(초).3
lockedImage잠긴 이모티콘 위에 표시할 이미지."rbxassetid://6905802778"
LocalScript - 이모티콘 바

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

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

setEmotes

setEmotes(emotes: table)

사용할 사용자 정의 이모티콘을 설정합니다. useDefaultEmotestrue인 경우 기본값에 추가되거나 false인 경우 기본값을 대체합니다. 이 함수는 Script에서만 호출할 수 있으며 변경 사항은 모든 클라이언트에 자동으로 복제됩니다.

이 함수에 전달되는 각 이모티콘의 구조는 이모티콘 문서를 참조하세요.

Script - ConfigureEmotes

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.configureServer({
useDefaultEmotes = false,
})
EmoteBar.setEmotes({
{
name = "안녕하세요",
animation = "rbxassetid://3344650532",
image = "rbxassetid://7719817462",
defaultTempo = 1,
},
{
name = "박수",
animation = "rbxassetid://5915693819",
image = "rbxassetid://7720292217",
defaultTempo = 2,
},
})

setGuiVisibility

setGuiVisibility(visible: boolean)

이모티콘 GUI를 표시하거나 숨깁니다. 이 함수는 특정 클라이언트의 LocalScript에서만 호출할 수 있습니다.

LocalScript

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

getEmote

getEmote(emoteName: string): table

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

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
local shrug = EmoteBar.getEmote("어깨를 으쓱")

playEmote

playEmote(emote: Emote)

주어진 이모티콘을 재생하고, 서버에서 연결된 경우 emotePlayed 이벤트를 발생시킵니다. 이 함수는 특정 클라이언트의 LocalScript에서만 호출할 수 있습니다.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
local shrug = EmoteBar.getEmote("어깨를 으쓱")
EmoteBar.playEmote(shrug)

lockEmote

lockEmote(emoteName: string)

주어진 이름의 이모티콘을 잠급니다. 이 함수는 클라이언트의 LocalScript에서만 호출할 수 있습니다.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.lockEmote("박수")

unlockEmote

unlockEmote(emoteName: string)

주어진 이름의 이모티콘의 잠금을 해제합니다. 이 함수는 클라이언트의 LocalScript에서만 호출할 수 있습니다.

LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.unlockEmote("박수")

이벤트

emotePlayed

어떤 클라이언트가 이모티콘을 재생할 때 발생합니다. 이 이벤트는 LocalScript에서만 연결할 수 있습니다.

매개변수
player: Player이모티콘을 실행한 플레이어입니다.
emote: Emote재생된 이모티콘입니다.
LocalScript

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

lockedEmoteActivated

클라이언트가 잠긴 이모티콘을 클릭할 때 발생합니다. 이 이벤트는 LocalScript에서만 연결할 수 있습니다.

매개변수
emote: Emote활성화된 잠긴 이모티콘입니다.
LocalScript

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local EmoteBar = require(ReplicatedStorage.EmoteBar)
EmoteBar.lockedEmoteActivated:Connect(function(emote)
print(Players.LocalPlayer, "클릭함", emote.name)
end)
©2026 Roblox Corporation. Roblox 및 Roblox 로고, 'Powering Imagination'은 미국 및 기타 국가 내 당사의 등록 및 미등록 상표입니다.