Skip to content

Commit 70361c5

Browse files
committed
Cleanup translation nonsense
1 parent 250ab85 commit 70361c5

16 files changed

Lines changed: 85 additions & 97 deletions
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package survivalblock.atmosphere.atmospheric_api.not_mixin.datagen.language;
2+
3+
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
4+
import net.fabricmc.fabric.api.datagen.v1.provider.FabricLanguageProvider;
5+
import net.minecraft.core.HolderLookup;
6+
7+
import java.util.concurrent.CompletableFuture;
8+
9+
@SuppressWarnings("unused")
10+
public abstract class AtmosphericLanguageGenerator extends FabricLanguageProvider {
11+
protected AtmosphericLanguageGenerator(FabricDataOutput dataOutput, CompletableFuture<HolderLookup.Provider> registryLookup) {
12+
super(dataOutput, registryLookup);
13+
}
14+
15+
protected AtmosphericLanguageGenerator(FabricDataOutput dataOutput, String languageCode, CompletableFuture<HolderLookup.Provider> registryLookup) {
16+
super(dataOutput, languageCode, registryLookup);
17+
}
18+
19+
@Override
20+
public final void generateTranslations(HolderLookup.Provider registryLookup, TranslationBuilder translationBuilder) {
21+
this.generateTranslations(registryLookup, new AtmosphericTranslationBuilder(translationBuilder));
22+
}
23+
24+
public void generateTranslations(HolderLookup.Provider registryLookup, AtmosphericTranslationBuilder translationBuilder) {
25+
26+
}
27+
}
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
package survivalblock.atmosphere.atmospheric_api.not_mixin.datagen.language;
2+
3+
import net.fabricmc.fabric.api.datagen.v1.provider.FabricLanguageProvider.TranslationBuilder;
4+
import net.minecraft.core.HolderLookup;
5+
import net.minecraft.core.registries.BuiltInRegistries;
6+
import net.minecraft.resources.ResourceKey;
7+
import net.minecraft.world.damagesource.DamageType;
8+
import net.minecraft.world.item.CreativeModeTab;
9+
import net.minecraft.world.item.enchantment.Enchantment;
10+
import net.minecraft.world.level.GameRules;
11+
import org.jetbrains.annotations.Nullable;
12+
13+
@SuppressWarnings("NonExtendableApiUsage") // this is fineeee
14+
public record AtmosphericTranslationBuilder(TranslationBuilder delegate) implements TranslationBuilder {
15+
16+
@Override
17+
public void add(String translationKey, String value) {
18+
this.delegate.add(translationKey, value);
19+
}
20+
21+
public void add(CreativeModeTab itemGroup, String value) {
22+
this.add(BuiltInRegistries.CREATIVE_MODE_TAB.getResourceKey(itemGroup).orElseThrow(() -> new IllegalStateException("ItemGroup " + value + " was not found in the registry!")), value);
23+
}
24+
25+
public void add(GameRules.Key<?> rule, String value) {
26+
this.add(rule.getDescriptionId(), value);
27+
}
28+
29+
public String getDamageTypeTranslationKey(HolderLookup.Provider lookup, ResourceKey<DamageType> key) {
30+
return "death.attack." + lookup.getOrThrow(key).value().msgId();
31+
}
32+
33+
@SuppressWarnings("unused")
34+
public void addDamageType(HolderLookup.Provider lookup, ResourceKey<DamageType> key, String value) {
35+
this.addDamageType(lookup, key, value, null);
36+
}
37+
38+
public void addDamageType(HolderLookup.Provider lookup, ResourceKey<DamageType> key, String value, @Nullable String player) {
39+
this.addDamageType(lookup, key, value, null, null);
40+
}
41+
42+
public void addDamageType(HolderLookup.Provider lookup, ResourceKey<DamageType> key, String value, @Nullable String player, @Nullable String item) {
43+
String translation = this.getDamageTypeTranslationKey(lookup, key);
44+
this.add(translation, value);
45+
if (player != null) {
46+
this.add(translation + ".player", value);
47+
}
48+
if (item != null) {
49+
this.add(translation + ".item", value);
50+
}
51+
}
52+
53+
@SuppressWarnings("unused")
54+
public void addEnchantment(ResourceKey<Enchantment> key, String value) {
55+
this.add("enchantment." + key.location().toLanguageKey(), value);
56+
}
57+
}

src/main/java/survivalblock/atmosphere/atmospheric_api/not_mixin/registrant/BlockRegistrant.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,4 @@ public <T extends Block, S extends BlockBehaviour.Properties> T register(String
3737
T block = blockFunction.apply(/*? >=1.21.2 {*/(S)/*?}*/ settings /*? >=1.21.2 {*/.setId(ResourceKey.create(this.registry.key(), this.idFunction.apply(name))) /*?}*/);
3838
return this.register(name, block);
3939
}
40-
41-
@Override
42-
public String getTranslationKey(Block block) {
43-
return block.getDescriptionId();
44-
}
4540
}

src/main/java/survivalblock/atmosphere/atmospheric_api/not_mixin/registrant/EntityTypeRegistrant.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,4 @@ public <T extends Entity> EntityType<T> register(String name, EntityType.Builder
4040
public <T extends Entity> EntityType<T> register(String name, EntityType<T> entityType) {
4141
return super.register(name, entityType);
4242
}
43-
44-
@Override
45-
public String getTranslationKey(EntityType<?> entityType) {
46-
return entityType.getDescriptionId();
47-
}
4843
}

src/main/java/survivalblock/atmosphere/atmospheric_api/not_mixin/registrant/ItemGroupRegistrant.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
import net.minecraft.core.Registry;
99
import net.minecraft.core.registries.BuiltInRegistries;
10-
import net.minecraft.network.chat.contents.TranslatableContents;
1110
import net.minecraft.resources.ResourceLocation;
1211
import net.minecraft.world.item.CreativeModeTab;
1312

@@ -34,12 +33,4 @@ public ItemGroupRegistrant(Function<String, ResourceLocation> idFunction) {
3433
public CreativeModeTab register(String name, CreativeModeTab.Builder builder) {
3534
return this.register(name, builder.build());
3635
}
37-
38-
@Override
39-
public String getTranslationKey(CreativeModeTab itemGroup) {
40-
if (itemGroup.getDisplayName().getContents() instanceof TranslatableContents translatable) {
41-
return translatable.getKey();
42-
}
43-
return "itemGroup." + this.registry.getKey(itemGroup).getPath();
44-
}
4536
}

src/main/java/survivalblock/atmosphere/atmospheric_api/not_mixin/registrant/ItemRegistrant.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,4 @@ public <T extends Item, S extends Item.Properties> T register(Block block, Funct
5454
}
5555
return item;
5656
}
57-
58-
@Override
59-
public String getTranslationKey(Item item) {
60-
return item.getDescriptionId();
61-
}
6257
}

src/main/java/survivalblock/atmosphere/atmospheric_api/not_mixin/registrant/Registrant.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
*/
66
package survivalblock.atmosphere.atmospheric_api.not_mixin.registrant;
77

8-
import net.minecraft.Util;
98
import net.minecraft.core.Registry;
109
import net.minecraft.resources.ResourceLocation;
1110

@@ -27,9 +26,4 @@ public Registrant(Function<String, ResourceLocation> idFunction, Registry<T> reg
2726
public <U extends T> U register(String name, U obj) {
2827
return Registry.register(this.registry, this.idFunction.apply(name), obj);
2928
}
30-
31-
@SuppressWarnings("unused")
32-
public String getTranslationKey(T obj) {
33-
return Util.makeDescriptionId(this.registry.key().location().getPath(), this.registry.getKey(obj));
34-
}
3529
}

src/main/java/survivalblock/atmosphere/atmospheric_api/not_mixin/registrant/StatusEffectRegistrant.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,4 @@ public StatusEffectRegistrant(Function<String, ResourceLocation> idFunction) {
3434
public Holder.Reference<MobEffect> registerReference(String name, MobEffect effect) {
3535
return Registry.registerForHolder(this.registry, this.idFunction.apply(name), effect);
3636
}
37-
38-
@Override
39-
public String getTranslationKey(MobEffect effect) {
40-
return effect.getDescriptionId();
41-
}
4237
}

src/main/java/survivalblock/atmosphere/atmospheric_api/not_mixin/registrant/delayed/DelayedBlockRegistrant.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,4 @@ public <T extends Block, S extends BlockBehaviour.Properties> T register(String
3737
T block = blockFunction.apply(/*? >=1.21.2 {*/(S)/*?}*/ settings /*? >=1.21.2 {*/.setId(ResourceKey.create(this.registry.key(), this.idFunction.apply(name))) /*?}*/);
3838
return this.register(name, block);
3939
}
40-
41-
@Override
42-
public String getTranslationKey(Block block) {
43-
return block.getDescriptionId();
44-
}
4540
}

src/main/java/survivalblock/atmosphere/atmospheric_api/not_mixin/registrant/delayed/DelayedEntityTypeRegistrant.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,4 @@ public <T extends Entity> EntityType<T> register(String name, EntityType.Builder
4040
public <T extends Entity> EntityType<T> register(String name, EntityType<T> entityType) {
4141
return super.register(name, entityType);
4242
}
43-
44-
@Override
45-
public String getTranslationKey(EntityType<?> entityType) {
46-
return entityType.getDescriptionId();
47-
}
4843
}

0 commit comments

Comments
 (0)