package net.minecraft.util.datafix.schemas; import com.mojang.datafixers.DSL; import com.mojang.datafixers.schemas.Schema; import com.mojang.datafixers.types.templates.TypeTemplate; import java.util.Map; import java.util.function.Supplier; import net.minecraft.util.datafix.fixes.References; public class V3078 extends NamespacedSchema { public V3078(int versionKey, Schema parent) { super(versionKey, parent); } protected static void registerMob(Schema schema, Map> map, String name) { schema.register(map, name, (Supplier)(() -> V100.equipment(schema))); } @Override public Map> registerEntities(Schema schema) { Map> map = super.registerEntities(schema); registerMob(schema, map, "minecraft:frog"); registerMob(schema, map, "minecraft:tadpole"); return map; } @Override public Map> registerBlockEntities(Schema schema) { Map> map = super.registerBlockEntities(schema); schema.register( map, "minecraft:sculk_shrieker", (Supplier)(() -> DSL.optionalFields( "listener", DSL.optionalFields("event", DSL.optionalFields("game_event", References.GAME_EVENT_NAME.in(schema))) )) ); return map; } }