This is the game code:
public void addAdditionalSaveData(CompoundTag var1) {
super.addAdditionalSaveData(var1);
var1.putString("variant", BuiltInRegistries.CAT_VARIANT.getKey(this.getVariant()).toString());
var1.putByte("CollarColor", (byte)this.getCollarColor().getId());
}
variant
must be the correct tag.
These are all the variant names:
public static final ResourceKey<CatVariant> TABBY = createKey("tabby");
public static final ResourceKey<CatVariant> BLACK = createKey("black");
public static final ResourceKey<CatVariant> RED = createKey("red");
public static final ResourceKey<CatVariant> SIAMESE = createKey("siamese");
public static final ResourceKey<CatVariant> BRITISH_SHORTHAIR = createKey("british_shorthair");
public static final ResourceKey<CatVariant> CALICO = createKey("calico");
public static final ResourceKey<CatVariant> PERSIAN = createKey("persian");
public static final ResourceKey<CatVariant> RAGDOLL = createKey("ragdoll");
public static final ResourceKey<CatVariant> WHITE = createKey("white");
public static final ResourceKey<CatVariant> JELLIE = createKey("jellie");
public static final ResourceKey<CatVariant> ALL_BLACK = createKey("all_black");
I find it quite strange that it doesn't work