32 lines
1 KiB
Java
32 lines
1 KiB
Java
package net.minecraft.util.datafix.fixes;
|
|
|
|
import com.mojang.datafixers.schemas.Schema;
|
|
import com.mojang.datafixers.util.Pair;
|
|
import com.mojang.serialization.Dynamic;
|
|
import java.util.Objects;
|
|
|
|
public class EntityCatSplitFix extends SimpleEntityRenameFix {
|
|
public EntityCatSplitFix(Schema outputSchema, boolean changesType) {
|
|
super("EntityCatSplitFix", outputSchema, changesType);
|
|
}
|
|
|
|
@Override
|
|
protected Pair<String, Dynamic<?>> getNewNameAndTag(String name, Dynamic<?> tag) {
|
|
if (Objects.equals("minecraft:ocelot", name)) {
|
|
int i = tag.get("CatType").asInt(0);
|
|
if (i == 0) {
|
|
String string = tag.get("Owner").asString("");
|
|
String string2 = tag.get("OwnerUUID").asString("");
|
|
if (string.length() > 0 || string2.length() > 0) {
|
|
tag.set("Trusting", tag.createBoolean(true));
|
|
}
|
|
} else if (i > 0 && i < 4) {
|
|
tag = tag.set("CatType", tag.createInt(i));
|
|
tag = tag.set("OwnerUUID", tag.createString(tag.get("OwnerUUID").asString("")));
|
|
return Pair.of("minecraft:cat", tag);
|
|
}
|
|
}
|
|
|
|
return Pair.of(name, tag);
|
|
}
|
|
}
|