Guides / Commands & Data

대화 화면: 모드 없이 실제 메뉴 만들기

데이터 팩 대화 상자는 입력 필드와 버튼이 있는 적절한 창을 제공합니다. JSON 구조, 버튼으로 명령을 실행하는 방법, 그리고 책 메뉴 꼼수와 비교했을 때의 장점을 설명합니다.

과거 서버 메뉴는 클릭 가능한 페이지가 있는 책이나 아이템 액자로 위장한 상자 GUI로 만들어졌습니다. 대화 상자는 이 둘을 실제 화면으로 대체했습니다.

대화 상자란?

데이터 팩에 있는 JSON 파일로, 창을 설명합니다.

data/<namespace>/dialog/welcome.json
{
  "type": "minecraft:notice",
  "title": { "text": "Welcome" },
  "body": [{ "type": "minecraft:plain_message",
             "contents": { "text": "Pick a class to begin." } }],
  "action": { "label": { "text": "Continue" } }
}

그 다음 /dialog show @p my_pack:welcome.

유형

유형형태
notice텍스트와 닫기 버튼 하나
confirmation예/아니오, 각각 고유한 동작을 가짐
multi_action버튼 그리드
server_links내장 링크 목록
dialog_list다른 대화 상자를 여는 메뉴

multi_action은 핵심 기능입니다. 클래스 선택기, 상점, 워프 목록 등에 사용됩니다.

버튼으로 명령 실행하기

{ "label": { "text": "Warp to spawn" },
  "action": { "type": "minecraft:run_command", "command": "/spawn" } }

채팅의 clickEvent처럼, 이 명령은 클릭한 플레이어의 권한 수준으로 실행됩니다. 운영자 전용 명령을 호출하는 버튼은 일반 플레이어에게는 아무런 효과가 없습니다. 표준 해결책은 trigger 목표를 사용하는 것입니다. 버튼은 /trigger warp set 1를 실행하고, 틱 함수가 특권 부분을 처리합니다.

입력 필드

"inputs": [
  { "type": "minecraft:text", "key": "name", "label": { "text": "Your name" }, "max_length": 16 },
  { "type": "minecraft:boolean", "key": "pvp", "label": { "text": "Enable PvP" } },
  { "type": "minecraft:single_option", "key": "class", "options": [
      { "id": "mage", "display": { "text": "Mage" } },
      { "id": "rogue", "display": { "text": "Rogue" } } ] }
]

값은 버튼이 호출하는 함수의 매크로 인자로 전달되므로, 수신 함수는 매크로여야 합니다.

$say Welcome $(name), you chose $(class)

줄 앞의 $ 접두사와 치환을 위한 $(key). 이것이 전체 바인딩 메커니즘이며, 대화 상자를 장식용이 아닌 진정으로 유용하게 만드는 요소입니다.

책 꼼수보다 좋은 이유

  • 화면이므로 채팅 기록에 남지 않고 입력을 일시 중지합니다.
  • 실제 입력 필드가 존재합니다. 책은 링크만 제공할 수 있었습니다.
  • 아이템이 필요 없습니다. 잃어버리거나, 떨어뜨리거나, 복제할 것이 없습니다.
  • 깔끔하게 닫히고 다시 스크롤하여 볼 수 없습니다.

책이 여전히 더 나은 유일한 점은 장문 읽기입니다. 대화 상자 본문은 세 페이지 분량의 스토리를 담기에 좋은 장소가 아닙니다.

웨이포인트 스타일

동일한 도구가 추적되는 플레이어나 위치에 표시되는 마커의 색상과 스프라이트를 제어하는 별도의 데이터 팩 레지스트리인 로케이터 바 웨이포인트를 포함합니다. 보스바가 너무 방해가 될 수 있는 팀 마커에 유용합니다.

입력 필드와 버튼으로 대화 화면을 만들고, 웨이포인트 스타일을 사용자 지정하려면 대화 입력 및 웨이포인트 스타일 빌더를 사용하세요.

대화 상자 & 위치 표시 스타일 빌더 →

More guides

Browse all →

다른 마인크래프트 도구도 찾고 계신가요?

브라우저에서 바로 쓰는 생성기·뷰어·변환기 모음입니다. 전부 무료입니다.