🇩🇪 Deutsch (German)
🇩🇪 Deutsch (German)
Erscheinungsbild
🇩🇪 Deutsch (German)
🇩🇪 Deutsch (German)
Erscheinungsbild
Diese Seite ist für folgende Version geschrieben:
1.21.4
VORAUSSETZUNGEN
Stelle sicher, dass du den Prozess der Einrichtung der Datengenerierung zuerst abgeschlossen hast.
Erstelle zunächst eine eigene Klasse, die extends FabricTagProvider<T>, wobei T der Typ der Sache ist, für die du ein Tag bereitstellen möchtest. Dies ist dein Provider. Hier werden wir zeigen, wie man Item Tags erstellt, aber das gleiche Prinzip lässt sich auch auf alle anderen Dinge anwenden. Lass deiner IDE den erforderlichen Code ausfüllen und ersetze dann den Konstruktorparameter registryKey durch den RegistryKey für deinen Typ:
public class FabricDocsReferenceItemTagProvider extends FabricTagProvider<Item> {
public FabricDocsReferenceItemTagProvider(FabricDataOutput output, CompletableFuture<RegistryWrapper.WrapperLookup> registriesFuture) {
super(output, RegistryKeys.ITEM, registriesFuture);
}
@Override
protected void configure(RegistryWrapper.WrapperLookup wrapperLookup) {
}
}TIP
Du wirst für jeden Tag-Typ einen anderen Provider benötigen (z. B. einen FabricTagProvider<EntityType<?>> und einen FabricTagProvider<Item>).
Um die Einrichtung abzuschließen, füge den Provider zu deinem DataGeneratorEntrypoint in der onInitializeDataGenerator Methode hinzu.
pack.addProvider(FabricDocsReferenceItemTagProvider::new);Jetzt, nachdem du den Provider erstellt hast, lasst uns ein Tag zu diesem hinzufpgen. Zuerst, erstelle ein TagKey<T>:
public static final TagKey<Item> SMELLY_ITEMS = TagKey.of(RegistryKeys.ITEM, Identifier.of(FabricDocsReference.MOD_ID, "smelly_items"));Als nächstes, rufe getOrCreateTagBuilder innerhalb deiner Provider configure Methode auf. Von dort aus kannst du einzelne Items oder andere Tags hinzufügen oder diese Tags bereits vorhandene Tags ersetzen lassen.
Wenn du ein Tag hinzufügen willst, verwende addOptionalTag, da der Inhalt des Tags während der Datengenerierung möglicherweise nicht geladen wird. Wenn du sicher bist, dass der Tag geladen ist, rufe addTag auf.
Um zwangsweise ein Tag hinzuzufügen und das defekte Format zu ignorieren, verwende forceAddTag.
getOrCreateTagBuilder(SMELLY_ITEMS)
.add(Items.SLIME_BALL)
.add(Items.ROTTEN_FLESH)
.addOptionalTag(ItemTags.DIRT)
.add(Identifier.ofVanilla("oak_planks"))
.forceAddTag(ItemTags.BANNERS)
.setReplace(true);