Par exemple, pour ajouter un élément avec des métadonnées, il vous fallait autant de fichiers json que le nombre de métadonnées (4 cette fois), mais comment le faire avec 2 (réutiliser le même modèle)
Minecraft-1.10.2 Minecraft-1.11.2 Minecraft-1.12.2
(* Je ne l'ai pas essayé, peut-être que d'autres versions sont possibles)
(Ci-après, modid est l'ID du mod qui ajoute l'élément)
Tout d'abord, créez le fichier JSON suivant dans assets / modid / models / ** block ** / ** À ce stade, assurez-vous de l'ajouter à la position du modèle du bloc au lieu de l'élément **
item_generated.json
{
  "parent": "item/generated"
}
<détails> <résumé> Il s'agit d'un élément qui s'affiche comme une plaque normale, et si vous voulez avoir des outils, etc. correctement, remplacez ** généré ** par ** ordinateur de poche **. </ résumé>
Ensuite, créez le fichier JSON suivant dans assets / modid / blockstates / (Ajoutez autant de métas à ajouter aux variantes)
sample_item.json
{
  "forge_marker": 1,
  "defaults": {
    "model": "modid:item_generated",
    "transform": "forge:default-item",
    "uvlock": true
  },
  "variants": {
    "meta0": [{
      "textures": {
        "layer0": "modid:items/sample_item_0"
      }
    }],
    "meta1": [{
      "textures": {
        "layer0": "modid:items/sample_item_1"
      }
    }],
    "meta2": [{
      "textures": {
        "layer0": "modid:items/sample_item_2"
      }
    }],
    "meta3": [{
      "textures": {
        "layer0": "modid:items/sample_item_3"
      }
    }]
  }
}
Vient ensuite l'enregistrement du modèle ajouté plus tôt.
ClientProxy.kt
for (i in 0 until 4) {
    ModelLoader.setCustomModelResourceLocation(sampleItem, i,
            ModelResourceLocation(ResourceLocation(modid, "sample_item"), "meta$i"))
}
La même chose est vraie pour java
ClientProxy.java
for (int i = 0; i < 4; i++) {
    ModelLoader.setCustomModelResourceLocation(sampleItem, i,
            new ModelResourceLocation(new ResourceLocation(modid, "sample_item"), "meta" + i));
}
Probablement le même que Block si vous jouez avec le deuxième argument de ModelResourceLocation,
sample_item.json
{
  "forge_marker": 1,
  "defaults": {
    "model": "modid:item_generated",
    "transform": "forge:default-item",
    "uvlock": true
  },
  "variants": {
    "meta": {
      "0":{   },
      "1":{   },
      "2":{   },
      "3":{   }
  }
}
Je pense que ça peut être façonné comme ça ~~ Mais je l'ai arrêté parce que c'est ennuyeux ~~.
Recommended Posts