🔌 API 및 애드온 통합 개발 가이드
Agrarian Reform은 DasikLibrary와 긴밀히 연동되며 서드파티 모드 및 데이터팩 확장을 지원합니다.
📚 DasikLibrary API 종속성
Agrarian Reform은 핵심 기반으로 DasikLibrary(>=1.8.3)를 활용합니다:
| DasikLibrary API 모듈 | 본 모드 적용 위치 | 용도 |
|---|---|---|
DynamicGameRuleManager | AgrarianGameRules.java, AgrarianCropRules.java | GSON 동기화 및 월드 저장을 지원하는 네임스페이스 동적 게임 규칙 등록. |
ConfigHelper | AgrarianConfig.java | 스키마 마이그레이션을 지원하는 버전 관리 JSON 전역 구성 템플릿 로드/저장. |
🌾 AgrarianCropRules 공개 파사드
서드파티 모드는 코드상에서 작물 캐시 및 성장 공식을 직접 조회할 수 있습니다:
java
// Check if a block is recognized as an agricultural crop
boolean isCrop = AgrarianCropRules.isCropBlock(myBlock);
// Query effective growth speed multiplier (respects frozen -1, positive override, global fallback)
int effectiveMultiplier = AgrarianCropRules.getEffectiveGrowthMultiplier(level, myBlock);
// Check if a block state is at its maximum harvestable age
boolean maxAge = AgrarianCropRules.isMaxAge(blockState);🏷️ 커스텀 데이터팩 태그 연동
1. 부드러운 발걸음 부츠 태그 (#agrarian_reform:soft_step_boots)
경작지 훼손을 방지하는 커스텀 부츠나 방어구를 등록하세요:
data/agrarian_reform/tags/item/soft_step_boots.json:
json
{
"replace": false,
"values": [
"mymod:padded_leather_boots",
"mymod:farmer_shoes"
]
}2. 연속체 식물 태그 (#agrarian_reform:continuum_plants 및 #c:crops)
오프라인 성장 시뮬레이터인 연속체(Continuum)에 커스텀 식물을 명시적으로 등록하세요:
data/agrarian_reform/tags/block/continuum_plants.json:
json
{
"replace": false,
"values": [
"mymod:custom_corn_crop",
"mymod:custom_tomato_bush"
]
}See also: 작물 레지스트리 및 범용 작물 and 아키텍처 및 Mixin 주입 대상.
