Cloth Config 문서 원본 보기 ← Cloth Config 문서 편집 권한이 없습니다. 다음 이유를 확인해주세요: 요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다: 사용자. 문서의 원본을 보거나 복사할 수 있습니다. '''Cloth Config'''는 [[마인크래프트]] 모드 개발자들이 설정 화면을 쉽게 만들 수 있도록 도와주는 라이브러리 모드이다. [[Fabric]]과 [[Forge]] 모두를 지원하며, 많은 인기 모드들이 설정 인터페이스를 구현하는 데 사용한다. Cloth Config는 shedaniel이 개발한 오픈소스 프로젝트로, 복잡한 GUI 코드 없이도 세련된 설정 화면을 만들 수 있게 해준다. 개발자는 간단한 API 호출만으로 다양한 설정 옵션을 구현할 수 있으며, 사용자는 일관된 인터페이스를 통해 모드를 설정할 수 있다. == 특징 == === 다양한 설정 타입 지원 === * 불리언 (체크박스, 토글) * 정수/실수 슬라이더 * 텍스트 입력 필드 * 열거형 선택 * 색상 선택기 * 키 바인딩 설정 * 리스트 편집기 === 사용자 친화적 기능 === * 실시간 검색 * 카테고리 분류 * 툴팁 지원 * 설정 초기화 * 변경사항 미리보기 * 다국어 지원 === 개발자 친화적 API === * 직관적인 빌더 패턴 * 자동 설정 저장/로드 * 유효성 검사 * 동적 설정 생성 * 커스텀 위젯 지원 == 설치 방법 == 일반 사용자는 Cloth Config를 직접 설치할 필요가 없다. 이를 필요로 하는 모드를 설치하면 자동으로 의존성으로 다운로드된다. 수동 설치가 필요한 경우: <pre> 1. 사용 중인 모드 로더 확인 (Fabric/Forge) 2. 해당 버전의 Cloth Config 다운로드: - Modrinth: modrinth.com/mod/cloth-config - CurseForge: curseforge.com/minecraft/mc-mods/cloth-config 3. .minecraft/mods 폴더에 복사 </pre> == 사용하는 주요 모드 == 많은 인기 모드들이 Cloth Config를 사용한다: * '''REI (Roughly Enough Items)''' * '''Light Overlay''' * '''MiniHUD''' * '''Litematica''' * '''Not Enough Animations''' * '''Dynamic FPS''' == 개발자 가이드 == === 기본 사용법 === <pre> // 의존성 추가 (build.gradle) dependencies { modApi "me.shedaniel.cloth:cloth-config-fabric:11.0.99" } // 설정 화면 생성 ConfigBuilder builder = ConfigBuilder.create() .setParentScreen(parent) .setTitle(Text.translatable("config.examplemod.title")); ConfigCategory general = builder.getOrCreateCategory(Text.translatable("config.examplemod.general")); general.addEntry(entryBuilder.startBooleanToggle(Text.translatable("config.examplemod.toggle"), currentValue) .setDefaultValue(true) .setTooltip(Text.translatable("config.examplemod.toggle.tooltip")) .setSaveConsumer(newValue -> this.toggleOption = newValue) .build()); general.addEntry(entryBuilder.startIntSlider(Text.translatable("config.examplemod.slider"), currentValue, 0, 100) .setDefaultValue(50) .setSaveConsumer(newValue -> this.sliderValue = newValue) .build()); return builder.build(); </pre> === 고급 기능 === <pre> // 커스텀 리스트 설정 general.addEntry(entryBuilder.startStrList(Text.translatable("config.examplemod.list"), currentList) .setDefaultValue(Arrays.asList("item1", "item2")) .setTooltip(Text.translatable("config.examplemod.list.tooltip")) .setSaveConsumer(newValue -> this.listOption = newValue) .build()); // 하위 카테고리 SubCategoryBuilder subCategory = entryBuilder.startSubCategory(Text.literal("Advanced")); subCategory.add(/* entries */); general.addEntry(subCategory.build()); </pre> == 설정 타입 == === 기본 타입 === {| class="wikitable" ! 타입 !! 설명 !! 사용 예 |- | Boolean Toggle || 켜기/끄기 설정 || 기능 활성화 |- | Int/Long Field || 정수 입력 || 수량 설정 |- | Float/Double Field || 실수 입력 || 배율 설정 |- | String Field || 텍스트 입력 || 이름 설정 |- | Enum Selector || 선택 목록 || 모드 선택 |} === 특수 타입 === {| class="wikitable" ! 타입 !! 설명 !! 사용 예 |- | Color Field || 색상 선택기 || UI 색상 |- | Key Binding || 키 설정 || 단축키 |- | Slider || 슬라이더 || 볼륨 조절 |- | List || 리스트 편집 || 아이템 목록 |} == 테마와 스타일 == Cloth Config는 마인크래프트의 UI 스타일을 따르면서도 현대적인 느낌을 제공한다: * 다크 모드 지원 * 부드러운 애니메이션 * 일관된 색상 스키마 * 반응형 레이아웃 == 버전 호환성 == Cloth Config는 다양한 버전을 지원한다: * '''Minecraft 1.14+''': 모든 버전 지원 * '''Fabric''': 네이티브 지원 * '''Forge''': Architectury API를 통한 지원 * '''Quilt''': Fabric 버전 사용 가능 == 대안 라이브러리 == 다른 설정 라이브러리들: * '''YACL (Yet Another Config Lib)''': 더 현대적인 API * '''AutoConfig''': 어노테이션 기반 * '''CompleteConfig''': 자동 GUI 생성 * '''MidnightLib''': 경량 대안 == 문제 해결 == === 일반적인 문제 === * '''설정이 저장되지 않음''': setSaveConsumer 콜백 확인 * '''GUI가 깨짐''': 텍스트 키 확인, 번역 파일 점검 * '''크래시''': Cloth Config 버전과 모드 버전 호환성 확인 === 성능 고려사항 === * 많은 설정 항목은 로딩 시간 증가 * 동적 설정은 신중히 사용 * 큰 리스트는 페이지네이션 고려 [[분류:마인크래프트]] Cloth Config 문서로 돌아갑니다. 분류