Skip to content

Commit

Permalink
Re-implement localisation datagen
Browse files Browse the repository at this point in the history
TODO: Figure out what to do about Forge-specific lang entries generated separately
  • Loading branch information
62832 committed Jul 27, 2023
1 parent 23624fc commit d3e55b5
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 100 deletions.
100 changes: 0 additions & 100 deletions common/src/main/resources/assets/megacells/lang/en_us.json

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package gripe._90.megacells.datagen;

import gripe._90.megacells.definition.MEGABlocks;
import gripe._90.megacells.definition.MEGAItems;
import gripe._90.megacells.definition.MEGATranslations;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricLanguageProvider;

class LocalisationProvider extends FabricLanguageProvider {
protected LocalisationProvider(FabricDataOutput output, String locale) {
super(output, locale);
}

@Override
public void generateTranslations(TranslationBuilder builder) {
MEGAItems.getItems().forEach(item -> builder.add(item.asItem(), item.getEnglishName()));
MEGABlocks.getBlocks().forEach(block -> builder.add(block.block(), block.getEnglishName()));

for (var translation : MEGATranslations.values()) {
builder.add(translation.getTranslationKey(), translation.getEnglishText());
}
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package gripe._90.megacells.datagen;

import java.util.List;
import java.util.concurrent.CompletableFuture;

import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint;
Expand All @@ -22,5 +23,9 @@ public void onInitializeDataGenerator(FabricDataGenerator generator) {
pack.addProvider(LootTableProvider::new);
pack.addProvider(ModelProvider::new);
pack.addProvider(RecipeProvider::new);

for (var en : List.of("en_us", "en_gb", "en_ca", "en_au", "en_nz")) {
pack.addProvider((FabricDataOutput packOutput) -> new LocalisationProvider(packOutput, en));
}
}
}

0 comments on commit d3e55b5

Please sign in to comment.