minecraft-src/net/minecraft/client/resources/language/LanguageInfo.java
2025-07-04 01:41:11 +03:00

24 lines
930 B
Java

package net.minecraft.client.resources.language;
import com.mojang.serialization.Codec;
import com.mojang.serialization.codecs.RecordCodecBuilder;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.network.chat.Component;
import net.minecraft.util.ExtraCodecs;
@Environment(EnvType.CLIENT)
public record LanguageInfo(String region, String name, boolean bidirectional) {
public static final Codec<LanguageInfo> CODEC = RecordCodecBuilder.create(
instance -> instance.group(
ExtraCodecs.NON_EMPTY_STRING.fieldOf("region").forGetter(LanguageInfo::region),
ExtraCodecs.NON_EMPTY_STRING.fieldOf("name").forGetter(LanguageInfo::name),
Codec.BOOL.optionalFieldOf("bidirectional", false).forGetter(LanguageInfo::bidirectional)
)
.apply(instance, LanguageInfo::new)
);
public Component toComponent() {
return Component.literal(this.name + " (" + this.region + ")");
}
}