아바타 컨텍스트 메뉴(ACM)는 사용자가 서로 상호작용하기 쉽게 만듭니다.ACM이 경험에서 활성화되면 사용자가 다른 사용자의 캐릭터로 걸어가서 클릭하여 여러 기본 옵션이 있는 작은 메뉴를 열 수 있습니다.플레이어는 친구 요청을 보내거나, 개인 채팅을 시작하거나, 사용자의 프로필을 보거나, 웨이브를 볼 수 있습니다.
경험에서 ACM을 활성화한 후에는 다음과 같은 방법으로 ACM을 사용자 지정할 수 있습니다: After enabling the ACM in your experience, you can customize the ACM in the following ways:
- 특정 사용자를 위해 프로그래밍 방식으로 ACM 열기 및 닫기
아바타 컨텍스트 메뉴 활성화
아바타 컨텍스트 메뉴는 StarterGui:SetCore() 옵션 "AvatarContextMenuEnabled"를 사용하여 LocalScript 에서 활성화되어야 합니다.ACM은 다른 사용자를 클릭하는 데 미리 정의된 행동이 없는 경험에서 가장 잘 사용됩니다.
다음 코드 샘플을 사용하여 LocalScript 에서 ACM을 활성화하세요:
-- 로컬스크립트에서 실행, 이상적으로 "StarterPlayerScripts" 내에서local StarterGui = game:GetService("StarterGui")StarterGui:SetCore("AvatarContextMenuEnabled", true)
ACM이 활성화되었는지 여부를 감지해야 하는 경우 다음 코드를 사용하여 ACM의 현재 상태에 대한 부울을 반환할 수 있습니다:
--ACM이 현재 활성화되었는지를 나타내는 부울을 반환합니다.StarterGui:GetCore(AvatarContextMenuEnabled)
ACM 열기 및 닫기
한 번 활성화되면 ACM 프로그램을 프로그래밍 방식으로 열고 닫을 수 있습니다. StarterGui .
ACM를 프로그래밍 방식으로 열려면 다음 코드를 사용하십시오:
-- 스타터 가이드 사용: 대상 플레이어가 유효한 플레이어 개체인 setCore에서 targetPlayerStarterGui:SetCore("AvatarContextMenuTarget", targetPlayer)
ACM를 프로그래밍 방식으로 닫으려면 다음 코드를 사용하십시오:
StarterGui:SetCore("AvatarContextMenuTarget", nil)
메뉴 옵션
스크립팅을 통해 추가 및 제거 작업을 수행할 수 있습니다. 기본적으로 메뉴에는 다음 옵션이 있습니다:
메뉴 옵션 | 설명 |
---|---|
친구 | 선택한 사용자에게 친구 요청을 보냅니다. |
채팅 | 경험 내 채팅에서 선택한 사용자와 비공개 대화를 시작합니다. |
보기 | 선택한 사용자의 모습검사하는 창을 엽니다. |
웨이브 | 선택한 사용자에게 웨이브 애니메이션을 시작합니다. |
ACM이 열리면 사용자는 캐릭터 선택 카러셀에서 다른 사용자를 스크롤하고 선택할 수 있습니다.문자는 선택한 문자에 대한 거리에 따라 정렬됩니다.메뉴는 열릴 때만 업데이트되고 사용 가능한 사용자 목록은 스크롤할 때 반복됩니다.

메뉴 옵션 추가
한 번 활성화되면 경험별 작업을 ACM에 추가할 수 있습니다.예를 들어 경험은 거래 요청, 파티에 추가 옵션 또는 다른 특별 상호 작용을 허용할 수 있습니다.
다음 예제에서는 아바타 컨텍스트 메뉴에 사용자 지정 액션을 추가하는 방법을 보여줍니다:
local Players = game:GetService("Players")
local StarterGui = game:GetService("StarterGui")
local player = Players.LocalPlayer
-- 함수를 "BindableEvent"에 연결
local bindableEvent = Instance.new("BindableEvent")
local function onCustomACMAction(targetPlayer)
-- 이 시점에서 원격 함수에서 InvokeServer()를 호출하여 서버에 선택을 알릴 수 있습니다
print("ACM event selected by " .. player.Name .. " on " .. targetPlayer.Name)
end
bindableEvent.Event:Connect(onCustomACMAction)
-- SetCore()에서 "AddAvatarContextMenuOption"을 사용하여 ACM 옵션 추가
local options = {"Custom ACM Action", bindableEvent}
StarterGui:SetCore("AddAvatarContextMenuOption", options)
메뉴 옵션 제거
사용자 지정 및 기본 친구 추가, 채팅, 보기 및 웨이브 옵션을 ACM에서 제거할 수 있습니다. 사용자 지정 작업 이름 또는 기본 Enum.AvatarContextMenuOption 열거형을 참조하여 참조하세요.
기본 및 사용자 지정 메뉴 옵션을 제거하려면 다음 코드를 사용하십시오:
-- 「사용자 지정 ACM 작업」 옵션 제거StarterGui:SetCore("RemoveAvatarContextMenuOption", "Custom ACM Action")-- AvatarContextMenuOption.Friend Enum을 참조하여 기본 "친구" 옵션을 제거합니다StarterGui:SetCore("RemoveAvatarContextMenuOption", Enum.AvatarContextMenuOption.Friend)
메뉴 모양 사용자 모습
아바타 컨텍스트 메뉴의 모양을 변경하려면 StarterGui:SetCore() 옵션을 사용하여 호출하여 메뉴 모습조정하기 위한 매개변수 및 값 테이블을 제공합니다.
ACM 사용자 인터페이스에는 다음 섹션이 포함됩니다:

A. 이름 태그: 상호 작용하는 캐릭터의 사용자 이름.
B. 버튼 프레임: ACM 버튼 전체를 포함합니다.
C. 버튼: 기본 또는 사용자 지정 ACM 작업에 대한 개별 버튼.
외관 매개 변수
ACM와 함께 사용되는 사용자 지정 매개변수는 다음과 같습니다:
배경
배경색 | ACM의 전체 배경을 위한 A Color3 (배경 이미지를 사용하지 않을 때 가장 유용함). |
배경 투명도 | ACM의 전체 배경(배경 이미지를 사용하지 않을 때 가장 유용함)에 대한 투명도 값(0–1) |
배경 이미지 | ACM 배경에 대한 이미지의 유효한 자산 ID. |
배경 이미지 투명도 | 배경 이미지의 투명도 값(0–1) |
배경 이미지 크기 유형 | 배경 이미지 크기 조정을 위한 열거형 Enum.ScaleType. |
배경 이미지 슬라이스 센터 | 배경 이미지 크기 유형이 Enum.ScaleType.Slice 설정되어 있을 때 아홉 조각 이미지의 중앙을 지정하는 A Rect . |
이름 태그
버튼 프레임
버튼프레임 색상 | 동작 버튼이 포함된 섹션(프레임)에 대한 A Color3 |
버튼프레임 투명도 | 버튼 프레임 섹션의 투명도 값(0–1). |
버튼
버튼 색상 | ACM 작업 버튼의 배경에 대한 A Color3 |
버튼 투명도 | 동작 버튼의 배경색에 대한 투명도 값(0–1)입니다. Transparency value (0–1) for the background color of the action buttons. |
버튼 호버 색상 | 액션 버튼의 "호버" 상태에 대한 A Color3 |
버튼 호버 투명도 | 동작 버튼의 "호버" 색상에 대한 투명도 값(0–1)입니다. |
버튼 언더라인 색 ButtonUnderlineColor | 각 액션 버튼을 구분하는 얇은 선에 대한 A Color3 |
버튼이미지 | 버튼 배경에 대한 유효한 이미지 ID입니다. |
버튼 이미지 크기 유형 | 버튼 이미지 크기 조정을 위한 열거형 Enum.ScaleType. |
버튼 이미지 슬라이스 센터 | 버튼 이미지 크기 유형이 Enum.ScaleType.Slice 설정되어 있을 때 아홉 조각 이미지의 중앙을 지정하는 Rect 입니다. |
문자열
폰트 | 이름 태그 및 버튼 텍스트에 대한 열거형 값 Enum.Font. |
텍스트색 | ACM 내의 모든 텍스트에 대한 A Color3 |
텍스트 규모 | 각 요소의 기본 텍스트 크기를 조정하는 부동 값입니다. A float value to scale the default text sizes of each element. |
다양한 이미지
메뉴 이미지 떠나기LeaveMenuImage | ACM 닫기 버튼에 대한 이미지 ID. |
스크롤LeftImage | 카루셀 "스크롤 왼쪽" 버튼에 대한 이미지 ID. |
스크롤라이트 이미지 | 카루셀 "오른쪽 스크롤" 버튼에 대한 유효한 이미지 ID. |
선택한 문자
선택된 캐릭터 인디케이터 | 문자의 머리 위로 떠오르는 MeshPart 를 선택했음을 나타내는 문자 위의 |
크기 및 위치
크기 | ACM의 전체 크기에 대한 A UDim2 |
최소 크기 | A Vector2 ACM의 최소 크기를 지정하는 것. |
최대 크기 | A Vector2 ACM의 최대 크기를 지정하는 것. |
측면 비율 | ACM의 상대 너비와 높이를 지정하는 부동 값. |
앵커 포인트 | ACM의 AnchorPoint . |
화면 위치 OnScreenPosition | A UDim2 ACM(열릴 때 십대가 되는 위치)의 화면 위치를 지정하는 것 |
화면 밖 위치 OffScreenPosition | A UDim2 ACM(열렸을 때/닫힐 때 십대에서/에게로 이동하는 위치)의 화면 밖 위치를 지정하는 |
예시 커스터마이징
다음 코드 샘플은 기본 매개 변수를 사용하여 ACM 테마를 사용자 지정합니다:
local StarterGui = game:GetService("StarterGui")StarterGui:SetCore("AvatarContextMenuTheme", {BackgroundImage = "",BackgroundTransparency = 0.5,BackgroundColor = Color3.fromRGB(111, 145, 242),NameTagColor = Color3.fromRGB(0, 0, 200),NameUnderlineColor = Color3.fromRGB(213, 233, 255),ButtonFrameColor = Color3.fromRGB(15, 24, 65),ButtonFrameTransparency = 0.2,ButtonUnderlineColor = Color3.fromRGB(213, 233, 255),Font = Enum.Font.SciFi})
