Skip to content

🔌 Guide d'intégration API et création d'addons

Agrarian Reform est conçu pour une intégration fluide avec DasikLibrary et s'ouvre facilement aux mods et datapacks tiers.


📚 Dépendances de l'API DasikLibrary

Agrarian Reform s'appuie sur DasikLibrary (>=1.8.3) comme socle logiciel :

Module de l'API DasikLibraryUtilisation dans le modRôle
DynamicGameRuleManagerAgrarianGameRules.java, AgrarianCropRules.javaEnregistre les GameRules dynamiques avec synchronisation GSON et persistance dans le monde.
ConfigHelperAgrarianConfig.javaCharge et sauvegarde les modèles de configuration JSON avec migrations.

🌾 Façade publique AgrarianCropRules

Les mods tiers peuvent interroger par code le cache des cultures et les calculs de croissance :

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);

🏷️ Intégrations de tags de datapacks personnalisés

1. Balise de chaussures Pas feutré (#agrarian_reform:soft_step_boots)

Ajoutez des bottes pour protéger les terres labourées du piétinement :

data/agrarian_reform/tags/item/soft_step_boots.json:

json
{
  "replace": false,
  "values": [
    "mymod:padded_leather_boots",
    "mymod:farmer_shoes"
  ]
}

2. Balise des plantes du Continuum (#agrarian_reform:continuum_plants & #c:crops)

Enregistrez explicitement des plantes dans le simulateur de croissance hors ligne Continuum :

data/agrarian_reform/tags/block/continuum_plants.json:

json
{
  "replace": false,
  "values": [
    "mymod:custom_corn_crop",
    "mymod:custom_tomato_bush"
  ]
}

See also: Registre des plantes et cultures universelles and Architecture et cibles Mixin.

Official documentation & web portal for Dasik Igaijinn mods.