From 5e89cc6ddbc882241bff2d6f59ed5572e48ca1d1 Mon Sep 17 00:00:00 2001 From: gnembon <41132274+gnembon@users.noreply.github.com> Date: Wed, 28 Aug 2024 23:43:40 +0200 Subject: [PATCH] 24w35a --- gradle.properties | 2 +- src/main/java/carpet/CarpetSettings.java | 2 +- .../carpet/helpers/FertilizableCoral.java | 2 +- .../java/carpet/helpers/HopperCounter.java | 10 +++--- .../logHelpers/ExplosionLogHelper.java | 2 +- ...ingAmethystBlock_movableAmethystMixin.java | 2 +- .../mixins/RecipeManager_scarpetMixin.java | 4 +-- .../java/carpet/script/CarpetContext.java | 2 +- .../java/carpet/script/CarpetEventServer.java | 2 +- .../java/carpet/script/api/Auxiliary.java | 8 ++--- .../java/carpet/script/api/Inventories.java | 8 ++--- .../java/carpet/script/api/WorldAccess.java | 30 ++++++++--------- .../script/command/CommandArgument.java | 6 ++-- .../java/carpet/script/utils/BiomeInfo.java | 4 +-- .../carpet/script/utils/FeatureGenerator.java | 18 +++++------ .../carpet/script/utils/ShapeDispatcher.java | 2 +- .../java/carpet/script/value/BlockValue.java | 4 +-- .../java/carpet/script/value/EntityValue.java | 32 +++++++++---------- .../carpet/script/value/ValueConversions.java | 8 ++--- src/main/java/carpet/utils/BlockInfo.java | 2 +- .../java/carpet/utils/CarpetProfiler.java | 4 +-- src/main/java/carpet/utils/MobAI.java | 2 +- .../java/carpet/utils/SpawnOverrides.java | 4 +-- 23 files changed, 80 insertions(+), 80 deletions(-) diff --git a/gradle.properties b/gradle.properties index 191044d5..d2e4118c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ org.gradle.jvmargs=-Xmx1G # Fabric Properties # check https://fabricmc.net/develop/ - minecraft_version=24w34a + minecraft_version=24w35a loader_version=0.15.11 jsr305_version=3.0.2 fabric_version=0.102.0+1.21 diff --git a/src/main/java/carpet/CarpetSettings.java b/src/main/java/carpet/CarpetSettings.java index 61253d59..c126752f 100644 --- a/src/main/java/carpet/CarpetSettings.java +++ b/src/main/java/carpet/CarpetSettings.java @@ -908,7 +908,7 @@ public class CarpetSettings @Override public String validate(CommandSourceStack source, CarpetRule currentRule, String newValue, String string) { if (source == null) return newValue; // closing or sync - Optional ignoredBlock = source.registryAccess().registryOrThrow(Registries.BLOCK).getOptional(ResourceLocation.tryParse(newValue)); + Optional ignoredBlock = source.registryAccess().lookupOrThrow(Registries.BLOCK).getOptional(ResourceLocation.tryParse(newValue)); if (!ignoredBlock.isPresent()) { Messenger.m(source, "r Unknown block '" + newValue + "'."); return null; diff --git a/src/main/java/carpet/helpers/FertilizableCoral.java b/src/main/java/carpet/helpers/FertilizableCoral.java index 9c8bd43d..3f7447fe 100644 --- a/src/main/java/carpet/helpers/FertilizableCoral.java +++ b/src/main/java/carpet/helpers/FertilizableCoral.java @@ -58,7 +58,7 @@ public interface FertilizableCoral extends BonemealableBlock { MapColor color = blockUnder.getMapColor(worldIn, pos); BlockState properBlock = blockUnder; - HolderSet.Named coralBlocks = worldIn.registryAccess().registryOrThrow(Registries.BLOCK).getTag(BlockTags.CORAL_BLOCKS).orElseThrow(); + HolderSet.Named coralBlocks = worldIn.registryAccess().lookupOrThrow(Registries.BLOCK).get(BlockTags.CORAL_BLOCKS).orElseThrow(); for (Holder block: coralBlocks) { properBlock = block.value().defaultBlockState(); diff --git a/src/main/java/carpet/helpers/HopperCounter.java b/src/main/java/carpet/helpers/HopperCounter.java index dc140240..9f29ac7b 100644 --- a/src/main/java/carpet/helpers/HopperCounter.java +++ b/src/main/java/carpet/helpers/HopperCounter.java @@ -340,8 +340,8 @@ public class HopperCounter if (DEFAULTS.containsKey(item)) return TextColor.fromRgb(appropriateColor(DEFAULTS.get(item).defaultMapColor().col)); if (item instanceof DyeItem dye) return TextColor.fromRgb(appropriateColor(dye.getDyeColor().getMapColor().col)); Block block = null; - final Registry itemRegistry = registryAccess.registryOrThrow(Registries.ITEM); - final Registry blockRegistry = registryAccess.registryOrThrow(Registries.BLOCK); + final Registry itemRegistry = registryAccess.lookupOrThrow(Registries.ITEM); + final Registry blockRegistry = registryAccess.lookupOrThrow(Registries.BLOCK); ResourceLocation id = itemRegistry.getKey(item); if (item instanceof BlockItem blockItem) { @@ -349,7 +349,7 @@ public class HopperCounter } else if (blockRegistry.getOptional(id).isPresent()) { - block = blockRegistry.get(id); + block = blockRegistry.getValue(id); } if (block != null) { @@ -370,8 +370,8 @@ public class HopperCounter if (direct != null) return direct; if (CarpetServer.minecraft_server == null) return WHITE; - ResourceLocation id = registryAccess.registryOrThrow(Registries.ITEM).getKey(item); - for (RecipeType type: registryAccess.registryOrThrow(Registries.RECIPE_TYPE)) + ResourceLocation id = registryAccess.lookupOrThrow(Registries.ITEM).getKey(item); + for (RecipeType type: registryAccess.lookupOrThrow(Registries.RECIPE_TYPE)) { for (Recipe r: ((RecipeManagerInterface) CarpetServer.minecraft_server.getRecipeManager()).getAllMatching(type, id, registryAccess)) { diff --git a/src/main/java/carpet/logging/logHelpers/ExplosionLogHelper.java b/src/main/java/carpet/logging/logHelpers/ExplosionLogHelper.java index 972ec1a5..7ac25d51 100644 --- a/src/main/java/carpet/logging/logHelpers/ExplosionLogHelper.java +++ b/src/main/java/carpet/logging/logHelpers/ExplosionLogHelper.java @@ -80,7 +80,7 @@ public class ExplosionLogHelper messages.add(c((k.pos.equals(pos))?"r - TNT":"w - ", Messenger.dblt((k.pos.equals(pos))?"r":"y", k.pos.x, k.pos.y, k.pos.z), "w dV", Messenger.dblt("d", k.accel.x, k.accel.y, k.accel.z), - "w "+ regs.registryOrThrow(Registries.ENTITY_TYPE).getKey(k.type).getPath(), (v>1)?"l ("+v+")":"" + "w "+ regs.lookupOrThrow(Registries.ENTITY_TYPE).getKey(k.type).getPath(), (v>1)?"l ("+v+")":"" )); }); } diff --git a/src/main/java/carpet/mixins/BuddingAmethystBlock_movableAmethystMixin.java b/src/main/java/carpet/mixins/BuddingAmethystBlock_movableAmethystMixin.java index e18b5e54..af5670b2 100644 --- a/src/main/java/carpet/mixins/BuddingAmethystBlock_movableAmethystMixin.java +++ b/src/main/java/carpet/mixins/BuddingAmethystBlock_movableAmethystMixin.java @@ -34,7 +34,7 @@ public class BuddingAmethystBlock_movableAmethystMixin extends Block { // drawback - not controlled via loottables, but hey if (CarpetSettings.movableAmethyst && stack.getItem() instanceof PickaxeItem && - EnchantmentHelper.getItemEnchantmentLevel(world.registryAccess().registryOrThrow(Registries.ENCHANTMENT).getHolderOrThrow(Enchantments.SILK_TOUCH), stack) > 0 + EnchantmentHelper.getItemEnchantmentLevel(world.registryAccess().lookupOrThrow(Registries.ENCHANTMENT).getOrThrow(Enchantments.SILK_TOUCH), stack) > 0 ) popResource(world, pos, Items.BUDDING_AMETHYST.getDefaultInstance()); } diff --git a/src/main/java/carpet/mixins/RecipeManager_scarpetMixin.java b/src/main/java/carpet/mixins/RecipeManager_scarpetMixin.java index 69a67b5a..90809db1 100644 --- a/src/main/java/carpet/mixins/RecipeManager_scarpetMixin.java +++ b/src/main/java/carpet/mixins/RecipeManager_scarpetMixin.java @@ -41,8 +41,8 @@ public class RecipeManager_scarpetMixin implements RecipeManagerInterface return List.of(); } Collection> typeRecipes = byType.get(type); - Registry regs = registryAccess.registryOrThrow(Registries.ITEM); - Item item = regs.get(itemId); + Registry regs = registryAccess.lookupOrThrow(Registries.ITEM); + Item item = regs.getValue(itemId); if (item == Items.AIR) { return List.of(); diff --git a/src/main/java/carpet/script/CarpetContext.java b/src/main/java/carpet/script/CarpetContext.java index b428c925..e1206aa2 100644 --- a/src/main/java/carpet/script/CarpetContext.java +++ b/src/main/java/carpet/script/CarpetContext.java @@ -62,7 +62,7 @@ public class CarpetContext extends Context public Registry registry(ResourceKey> resourceKey) { - return registryAccess().registryOrThrow(resourceKey); + return registryAccess().lookupOrThrow(resourceKey); } public CommandSourceStack source() diff --git a/src/main/java/carpet/script/CarpetEventServer.java b/src/main/java/carpet/script/CarpetEventServer.java index 3d047e27..9c910ff5 100644 --- a/src/main/java/carpet/script/CarpetEventServer.java +++ b/src/main/java/carpet/script/CarpetEventServer.java @@ -999,7 +999,7 @@ public class CarpetEventServer { return; } - Registry> registry = player.level().registryAccess().registryOrThrow(Registries.STAT_TYPE); + Registry> registry = player.level().registryAccess().lookupOrThrow(Registries.STAT_TYPE); handler.call(() -> Arrays.asList( new EntityValue(player), NBTSerializableValue.nameFromRegistryId(registry.getKey(stat.getType())), diff --git a/src/main/java/carpet/script/api/Auxiliary.java b/src/main/java/carpet/script/api/Auxiliary.java index ca3c22b4..4cb8f5d8 100644 --- a/src/main/java/carpet/script/api/Auxiliary.java +++ b/src/main/java/carpet/script/api/Auxiliary.java @@ -131,7 +131,7 @@ public class Auxiliary CarpetContext cc = (CarpetContext) c; if (lv.isEmpty()) { - return ListValue.wrap(cc.registry(Registries.SOUND_EVENT).holders().map(soundEventReference -> ValueConversions.of(soundEventReference.key().location()))); + return ListValue.wrap(cc.registry(Registries.SOUND_EVENT).listElements().map(soundEventReference -> ValueConversions.of(soundEventReference.key().location()))); } String rawString = lv.get(0).getString(); ResourceLocation soundName = InputValidator.identifierOf(rawString); @@ -176,7 +176,7 @@ public class Auxiliary CarpetContext cc = (CarpetContext) c; if (lv.isEmpty()) { - return ListValue.wrap(cc.registry(Registries.PARTICLE_TYPE).holders().map(particleTypeReference -> ValueConversions.of(particleTypeReference.key().location()))); + return ListValue.wrap(cc.registry(Registries.PARTICLE_TYPE).listElements().map(particleTypeReference -> ValueConversions.of(particleTypeReference.key().location()))); } MinecraftServer ms = cc.server(); ServerLevel world = cc.level(); @@ -1062,7 +1062,7 @@ public class Auxiliary ResourceLocation statName; category = InputValidator.identifierOf(lv.get(1).getString()); statName = InputValidator.identifierOf(lv.get(2).getString()); - StatType type = cc.registry(Registries.STAT_TYPE).get(category); + StatType type = cc.registry(Registries.STAT_TYPE).getValue(category); if (type == null) { return Value.NULL; @@ -1382,7 +1382,7 @@ public class Auxiliary @Nullable private static Stat getStat(StatType type, ResourceLocation id) { - T key = type.getRegistry().get(id); + T key = type.getRegistry().getValue(id); if (key == null || !type.contains(key)) { return null; diff --git a/src/main/java/carpet/script/api/Inventories.java b/src/main/java/carpet/script/api/Inventories.java index 51ee8e17..c7adf517 100644 --- a/src/main/java/carpet/script/api/Inventories.java +++ b/src/main/java/carpet/script/api/Inventories.java @@ -69,10 +69,10 @@ public class Inventories Registry items = cc.registry(Registries.ITEM); if (lv.isEmpty()) { - return ListValue.wrap(items.holders().map(itemReference -> ValueConversions.of(itemReference.key().location()))); + return ListValue.wrap(items.listElements().map(itemReference -> ValueConversions.of(itemReference.key().location()))); } String tag = lv.get(0).getString(); - Optional> itemTag = items.getTag(TagKey.create(Registries.ITEM, InputValidator.identifierOf(tag))); + Optional> itemTag = items.get(TagKey.create(Registries.ITEM, InputValidator.identifierOf(tag))); return itemTag.isEmpty() ? Value.NULL : ListValue.wrap(itemTag.get().stream().map(b -> items.getKey(b.value())).filter(Objects::nonNull).map(ValueConversions::of)); }); @@ -91,7 +91,7 @@ public class Inventories return ListValue.wrap(blocks.getTags().filter(e -> e.stream().anyMatch(h -> (h.value() == item))).map(ValueConversions::of)); } String tag = lv.get(1).getString(); - Optional> tagSet = blocks.getTag(TagKey.create(Registries.ITEM, InputValidator.identifierOf(tag))); + Optional> tagSet = blocks.get(TagKey.create(Registries.ITEM, InputValidator.identifierOf(tag))); return tagSet.isEmpty() ? Value.NULL : BooleanValue.of(tagSet.get().stream().anyMatch(h -> h.value() == item)); }); @@ -107,7 +107,7 @@ public class Inventories if (lv.size() > 1) { String recipeType = lv.get(1).getString(); - type = cc.registry(Registries.RECIPE_TYPE).get(InputValidator.identifierOf(recipeType)); + type = cc.registry(Registries.RECIPE_TYPE).getValue(InputValidator.identifierOf(recipeType)); if (type == null) { throw new InternalExpressionException("Unknown recipe type: " + recipeType); diff --git a/src/main/java/carpet/script/api/WorldAccess.java b/src/main/java/carpet/script/api/WorldAccess.java index d65e08ab..54aa7adc 100644 --- a/src/main/java/carpet/script/api/WorldAccess.java +++ b/src/main/java/carpet/script/api/WorldAccess.java @@ -403,7 +403,7 @@ public class WorldAccess Registry poiReg = cc.registry(Registries.POINT_OF_INTEREST_TYPE); PoiType type = poiReg.getOptional(resource) .orElseThrow(() -> new ThrowStatement(poiTypeString, Throwables.UNKNOWN_POI)); - Holder holder = poiReg.getHolderOrThrow(ResourceKey.create(Registries.POINT_OF_INTEREST_TYPE, resource)); + Holder holder = poiReg.getOrThrow(ResourceKey.create(Registries.POINT_OF_INTEREST_TYPE, resource)); int occupancy = 0; if (locator.offset + 1 < lv.size()) @@ -932,7 +932,7 @@ public class WorldAccess if (dropLoot) { - if (how < 0 || (tag != null && EnchantmentHelper.getItemEnchantmentLevel(world.registryAccess().registryOrThrow(Registries.ENCHANTMENT).getHolderOrThrow(Enchantments.SILK_TOUCH), tool) > 0)) + if (how < 0 || (tag != null && EnchantmentHelper.getItemEnchantmentLevel(world.registryAccess().lookupOrThrow(Registries.ENCHANTMENT).getOrThrow(Enchantments.SILK_TOUCH), tool) > 0)) { Block.popResource(world, where, new ItemStack(state.getBlock())); } @@ -940,7 +940,7 @@ public class WorldAccess { if (how > 0) { - tool.enchant(world.registryAccess().registryOrThrow(Registries.ENCHANTMENT).getHolderOrThrow(Enchantments.FORTUNE), (int) how); + tool.enchant(world.registryAccess().lookupOrThrow(Registries.ENCHANTMENT).getOrThrow(Enchantments.FORTUNE), (int) how); } if (DUMMY_ENTITY == null) { @@ -1222,10 +1222,10 @@ public class WorldAccess Registry blocks = cc.registry(Registries.BLOCK); if (lv.isEmpty()) { - return ListValue.wrap(blocks.holders().map(blockReference -> ValueConversions.of(blockReference.key().location()))); + return ListValue.wrap(blocks.listElements().map(blockReference -> ValueConversions.of(blockReference.key().location()))); } ResourceLocation tag = InputValidator.identifierOf(lv.get(0).getString()); - Optional> tagset = blocks.getTag(TagKey.create(Registries.BLOCK, tag)); + Optional> tagset = blocks.get(TagKey.create(Registries.BLOCK, tag)); return tagset.isEmpty() ? Value.NULL : ListValue.wrap(tagset.get().stream().map(b -> ValueConversions.of(blocks.getKey(b.value())))); }); @@ -1244,7 +1244,7 @@ public class WorldAccess return ListValue.wrap(blocks.getTags().filter(e -> e.stream().anyMatch(h -> (h.value() == target))).map(ValueConversions::of)); } String tag = lv.get(blockLocator.offset).getString(); - Optional> tagSet = blocks.getTag(TagKey.create(Registries.BLOCK, InputValidator.identifierOf(tag))); + Optional> tagSet = blocks.get(TagKey.create(Registries.BLOCK, InputValidator.identifierOf(tag))); return tagSet.isEmpty() ? Value.NULL : BooleanValue.of(blockLocator.block.getBlockState().is(tagSet.get())); }); @@ -1253,7 +1253,7 @@ public class WorldAccess ServerLevel world = cc.level(); if (lv.isEmpty()) { - return ListValue.wrap(cc.registry(Registries.BIOME).holders().map(biomeReference -> ValueConversions.of(biomeReference.key().location()))); + return ListValue.wrap(cc.registry(Registries.BIOME).listElements().map(biomeReference -> ValueConversions.of(biomeReference.key().location()))); } Biome biome; @@ -1298,7 +1298,7 @@ public class WorldAccess if (locator.replacement != null) { - biome = world.registryAccess().registryOrThrow(Registries.BIOME).get(InputValidator.identifierOf(locator.replacement)); + biome = world.registryAccess().lookupOrThrow(Registries.BIOME).getValue(InputValidator.identifierOf(locator.replacement)); if (biome == null) { throw new ThrowStatement(locator.replacement, Throwables.UNKNOWN_BIOME); @@ -1333,7 +1333,7 @@ public class WorldAccess } String biomeName = lv.get(locator.offset).getString(); // from locatebiome command code - Holder biome = cc.registry(Registries.BIOME).getHolder(ResourceKey.create(Registries.BIOME, InputValidator.identifierOf(biomeName))) + Holder biome = cc.registry(Registries.BIOME).get(ResourceKey.create(Registries.BIOME, InputValidator.identifierOf(biomeName))) .orElseThrow(() -> new ThrowStatement(biomeName, Throwables.UNKNOWN_BIOME)); boolean doImmediateUpdate = true; if (lv.size() > locator.offset + 1) @@ -1390,7 +1390,7 @@ public class WorldAccess ); } String simpleStructureName = lv.get(locator.offset).getString().toLowerCase(Locale.ROOT); - Structure structureName = reg.get(InputValidator.identifierOf(simpleStructureName)); + Structure structureName = reg.getValue(InputValidator.identifierOf(simpleStructureName)); if (structureName == null) { return Value.NULL; @@ -1428,7 +1428,7 @@ public class WorldAccess { String reqString = requested.getString(); ResourceLocation id = InputValidator.identifierOf(reqString); - Structure requestedStructure = reg.get(id); + Structure requestedStructure = reg.getValue(id); if (requestedStructure != null) { singleOutput = true; @@ -1436,7 +1436,7 @@ public class WorldAccess } else { - StructureType sss = cc.registry(Registries.STRUCTURE_TYPE).get(id); + StructureType sss = cc.registry(Registries.STRUCTURE_TYPE).getValue(id); reg.entrySet().stream().filter(e -> e.getValue().type() == sss).forEach(e -> structure.add(e.getValue())); } if (structure.isEmpty()) @@ -1515,7 +1515,7 @@ public class WorldAccess return MapValue.wrap(structureList); } String structureName = lv.get(locator.offset).getString().toLowerCase(Locale.ROOT); - return ValueConversions.of(structures.get(reg.get(InputValidator.identifierOf(structureName))), cc.registryAccess()); + return ValueConversions.of(structures.get(reg.getValue(InputValidator.identifierOf(structureName))), cc.registryAccess()); }); expression.addContextFunction("set_structure", -1, (c, t, lv) -> @@ -1759,7 +1759,7 @@ public class WorldAccess if (generator instanceof final NoiseBasedChunkGenerator noiseBasedChunkGenerator) { - Registry densityFunctionRegistry = level.registryAccess().registryOrThrow(Registries.DENSITY_FUNCTION); + Registry densityFunctionRegistry = level.registryAccess().lookupOrThrow(Registries.DENSITY_FUNCTION); NoiseRouter router = noiseBasedChunkGenerator.generatorSettings().value().noiseRouter(); DensityFunction densityFunction = switch (densityFunctionQuery) { @@ -1779,7 +1779,7 @@ public class WorldAccess case "vein_ridged" -> router.veinRidged(); case "vein_gap" -> router.veinGap(); default -> { - DensityFunction result = densityFunctionRegistry.get(InputValidator.identifierOf(densityFunctionQuery)); + DensityFunction result = densityFunctionRegistry.getValue(InputValidator.identifierOf(densityFunctionQuery)); if (result == null) { throw new InternalExpressionException("Density function '" + densityFunctionQuery + "' is not defined in the registies."); diff --git a/src/main/java/carpet/script/command/CommandArgument.java b/src/main/java/carpet/script/command/CommandArgument.java index 5d0fbabe..f269884d 100644 --- a/src/main/java/carpet/script/command/CommandArgument.java +++ b/src/main/java/carpet/script/command/CommandArgument.java @@ -199,7 +199,7 @@ public abstract class CommandArgument ), // operation // not sure if we need it, you have scarpet for that new VanillaUnconfigurableArgument("particle", ParticleArgument::particle, - (c, p) -> ValueConversions.of(ParticleArgument.getParticle(c, p), c.getSource().registryAccess()), (c, b) -> SharedSuggestionProvider.suggestResource(c.getSource().getServer().registryAccess().registryOrThrow(Registries.PARTICLE_TYPE).keySet(), b) + (c, p) -> ValueConversions.of(ParticleArgument.getParticle(c, p), c.getSource().registryAccess()), (c, b) -> SharedSuggestionProvider.suggestResource(c.getSource().getServer().registryAccess().lookupOrThrow(Registries.PARTICLE_TYPE).keySet(), b) ), // resource / identifier section @@ -235,7 +235,7 @@ public abstract class CommandArgument return ValueConversions.of(res.right().get().key()); } return Value.NULL; - }, (ctx, builder) -> SharedSuggestionProvider.suggestResource(ctx.getSource().getServer().registryAccess().registryOrThrow(Registries.BIOME).keySet(), builder) + }, (ctx, builder) -> SharedSuggestionProvider.suggestResource(ctx.getSource().getServer().registryAccess().lookupOrThrow(Registries.BIOME).keySet(), builder) ), new VanillaUnconfigurableArgument("sound", ResourceLocationArgument::id, (c, p) -> ValueConversions.of(ResourceLocationArgument.getId(c, p)), SuggestionProviders.AVAILABLE_SOUNDS @@ -1278,7 +1278,7 @@ public abstract class CommandArgument suffix, c -> ResourceArgument.resource(c, registry), (c, p) -> ValueConversions.of(ResourceArgument.getResource(c, p, registry).key()), - (c, b) -> SharedSuggestionProvider.suggestResource(c.getSource().getServer().registryAccess().registryOrThrow(registry).keySet(), b) + (c, b) -> SharedSuggestionProvider.suggestResource(c.getSource().getServer().registryAccess().lookupOrThrow(registry).keySet(), b) ); } diff --git a/src/main/java/carpet/script/utils/BiomeInfo.java b/src/main/java/carpet/script/utils/BiomeInfo.java index 51aee83d..aa8c39cd 100644 --- a/src/main/java/carpet/script/utils/BiomeInfo.java +++ b/src/main/java/carpet/script/utils/BiomeInfo.java @@ -23,7 +23,7 @@ public class BiomeInfo { public static final Map> biomeFeatures = new HashMap<>() {{ - put("tags", (w, b) -> ListValue.wrap(w.registryAccess().registryOrThrow(Registries.BIOME).getTags().filter(p -> p.stream().anyMatch(h -> h.value() == b)).map(ValueConversions::of))); + put("tags", (w, b) -> ListValue.wrap(w.registryAccess().lookupOrThrow(Registries.BIOME).getTags().filter(p -> p.stream().anyMatch(h -> h.value() == b)).map(ValueConversions::of))); put("temperature", (w, b) -> NumericValue.of(b.getBaseTemperature())); put("fog_color", (w, b) -> ValueConversions.ofRGB(b.getSpecialEffects().getFogColor())); put("foliage_color", (w, b) -> ValueConversions.ofRGB(b.getSpecialEffects().getFoliageColorOverride().orElse(4764952))); // client Biome.getDefaultFoliageColor @@ -33,7 +33,7 @@ public class BiomeInfo put("humidity", (w, b) -> NumericValue.of(Vanilla.Biome_getClimateSettings(b).downfall())); put("precipitation", (w, b) -> StringValue.of(b.getPrecipitationAt(new BlockPos(0, w.getSeaLevel(), 0), w.getSeaLevel()).name().toLowerCase(Locale.ROOT))); put("features", (w, b) -> { - Registry> registry = w.registryAccess().registryOrThrow(Registries.CONFIGURED_FEATURE); + Registry> registry = w.registryAccess().lookupOrThrow(Registries.CONFIGURED_FEATURE); return ListValue.wrap( b.getGenerationSettings().features().stream().map(step -> ListValue.wrap(step.stream().map(cfp -> diff --git a/src/main/java/carpet/script/utils/FeatureGenerator.java b/src/main/java/carpet/script/utils/FeatureGenerator.java index 466eea1d..a686543e 100644 --- a/src/main/java/carpet/script/utils/FeatureGenerator.java +++ b/src/main/java/carpet/script/utils/FeatureGenerator.java @@ -76,13 +76,13 @@ public class FeatureGenerator return custom.apply(world).plop(world, pos); } ResourceLocation id = ResourceLocation.parse(featureName); - Structure structure = world.registryAccess().registryOrThrow(Registries.STRUCTURE).get(id); + Structure structure = world.registryAccess().lookupOrThrow(Registries.STRUCTURE).getValue(id); if (structure != null) { return plopAnywhere(structure, world, pos, world.getChunkSource().getGenerator(), false); } - ConfiguredFeature configuredFeature = world.registryAccess().registryOrThrow(Registries.CONFIGURED_FEATURE).get(id); + ConfiguredFeature configuredFeature = world.registryAccess().lookupOrThrow(Registries.CONFIGURED_FEATURE).getValue(id); if (configuredFeature != null) { ThreadLocal checks = Vanilla.skipGenerationChecks(world); @@ -96,7 +96,7 @@ public class FeatureGenerator checks.set(false); } } - Optional> structureType = world.registryAccess().registryOrThrow(Registries.STRUCTURE_TYPE).getOptional(id); + Optional> structureType = world.registryAccess().lookupOrThrow(Registries.STRUCTURE_TYPE).getOptional(id); if (structureType.isPresent()) { Structure configuredStandard = getDefaultFeature(structureType.get(), world, pos); @@ -105,7 +105,7 @@ public class FeatureGenerator return plopAnywhere(configuredStandard, world, pos, world.getChunkSource().getGenerator(), false); } } - Feature feature = world.registryAccess().registryOrThrow(Registries.FEATURE).get(id); + Feature feature = world.registryAccess().lookupOrThrow(Registries.FEATURE).getValue(id); if (feature != null) { ConfiguredFeature configuredStandard = getDefaultFeature(feature, world, pos, true); @@ -130,12 +130,12 @@ public class FeatureGenerator public static Structure resolveConfiguredStructure(String name, ServerLevel world, BlockPos pos) { ResourceLocation id = ResourceLocation.parse(name); - Structure configuredStructureFeature = world.registryAccess().registryOrThrow(Registries.STRUCTURE).get(id); + Structure configuredStructureFeature = world.registryAccess().lookupOrThrow(Registries.STRUCTURE).getValue(id); if (configuredStructureFeature != null) { return configuredStructureFeature; } - StructureType structureFeature = world.registryAccess().registryOrThrow(Registries.STRUCTURE_TYPE).get(id); + StructureType structureFeature = world.registryAccess().lookupOrThrow(Registries.STRUCTURE_TYPE).getValue(id); if (structureFeature == null) { return null; @@ -197,7 +197,7 @@ public class FeatureGenerator // TODO allow old types, like vaillage, or bastion Holder existingBiome = world.getBiome(pos); Structure result = null; - for (Structure confstr : world.registryAccess().registryOrThrow(Registries.STRUCTURE).entrySet().stream(). + for (Structure confstr : world.registryAccess().lookupOrThrow(Registries.STRUCTURE).entrySet().stream(). filter(cS -> cS.getValue().type() == structure).map(Map.Entry::getValue).toList()) { result = confstr; @@ -226,7 +226,7 @@ public class FeatureGenerator { return null; } - return world.registryAccess().registryOrThrow(Registries.CONFIGURED_FEATURE).entrySet().stream(). + return world.registryAccess().lookupOrThrow(Registries.CONFIGURED_FEATURE).entrySet().stream(). filter(cS -> cS.getValue().feature() == feature). findFirst().map(Map.Entry::getValue).orElse(null); } @@ -434,7 +434,7 @@ public class FeatureGenerator if (!wireOnly) { - Registry registry3 = world.registryAccess().registryOrThrow(Registries.STRUCTURE); + Registry registry3 = world.registryAccess().lookupOrThrow(Registries.STRUCTURE); world.setCurrentlyGenerating(() -> { Objects.requireNonNull(structure); return registry3.getResourceKey(structure).map(Object::toString).orElseGet(structure::toString); diff --git a/src/main/java/carpet/script/utils/ShapeDispatcher.java b/src/main/java/carpet/script/utils/ShapeDispatcher.java index ab622bd4..0f96aa6b 100644 --- a/src/main/java/carpet/script/utils/ShapeDispatcher.java +++ b/src/main/java/carpet/script/utils/ShapeDispatcher.java @@ -760,7 +760,7 @@ public class ShapeDispatcher { return p -> { ParticleOptions particle; - Registry blocks = p.getServer().registryAccess().registryOrThrow(Registries.BLOCK); + Registry blocks = p.getServer().registryAccess().lookupOrThrow(Registries.BLOCK); if (this.isitem) { if (Block.byItem(this.item.getItem()).defaultBlockState().isAir()) diff --git a/src/main/java/carpet/script/value/BlockValue.java b/src/main/java/carpet/script/value/BlockValue.java index 77fef2f7..13a8c101 100644 --- a/src/main/java/carpet/script/value/BlockValue.java +++ b/src/main/java/carpet/script/value/BlockValue.java @@ -199,7 +199,7 @@ public class BlockValue extends Value @Override public String getString() { - Registry blockRegistry = world.registryAccess().registryOrThrow(Registries.BLOCK); + Registry blockRegistry = world.registryAccess().lookupOrThrow(Registries.BLOCK); return nameFromResource(blockRegistry.getKey(getBlockState().getBlock())); } @@ -250,7 +250,7 @@ public class BlockValue extends Value CompoundTag tag = new CompoundTag(); CompoundTag state = new CompoundTag(); BlockState s = getBlockState(); - state.put("Name", StringTag.valueOf(world.registryAccess().registryOrThrow(Registries.BLOCK).getKey(s.getBlock()).toString())); + state.put("Name", StringTag.valueOf(world.registryAccess().lookupOrThrow(Registries.BLOCK).getKey(s.getBlock()).toString())); Collection> properties = s.getProperties(); if (!properties.isEmpty()) { diff --git a/src/main/java/carpet/script/value/EntityValue.java b/src/main/java/carpet/script/value/EntityValue.java index cdd27777..e9dddb8e 100644 --- a/src/main/java/carpet/script/value/EntityValue.java +++ b/src/main/java/carpet/script/value/EntityValue.java @@ -239,8 +239,8 @@ public class EntityValue extends Value who = who.substring(1); } String booWho = who; - HolderSet.Named> eTagValue = server.registryAccess().registryOrThrow(Registries.ENTITY_TYPE) - .getTag(TagKey.create(Registries.ENTITY_TYPE, InputValidator.identifierOf(who))) + HolderSet.Named> eTagValue = server.registryAccess().lookupOrThrow(Registries.ENTITY_TYPE) + .get(TagKey.create(Registries.ENTITY_TYPE, InputValidator.identifierOf(who))) .orElseThrow(() -> new InternalExpressionException(booWho + " is not a valid entity descriptor")); Set> eTag = eTagValue.stream().map(Holder::value).collect(Collectors.toUnmodifiableSet()); if (positive) @@ -257,7 +257,7 @@ public class EntityValue extends Value } else { - return new EntityClassDescriptor(ANY, e -> !eTag.contains(e.getType()) && e.isAlive(), server.registryAccess().registryOrThrow(Registries.ENTITY_TYPE).stream().filter(et -> !eTag.contains(et))); + return new EntityClassDescriptor(ANY, e -> !eTag.contains(e.getType()) && e.isAlive(), server.registryAccess().lookupOrThrow(Registries.ENTITY_TYPE).stream().filter(et -> !eTag.contains(et))); } } return eDesc; @@ -285,7 +285,7 @@ public class EntityValue extends Value public Value listValue(RegistryAccess regs) { - Registry> entityRegs = regs.registryOrThrow(Registries.ENTITY_TYPE); + Registry> entityRegs = regs.lookupOrThrow(Registries.ENTITY_TYPE); return ListValue.wrap(types.stream().map(et -> nameFromRegistryId(entityRegs.getKey(et)))); } @@ -382,7 +382,7 @@ public class EntityValue extends Value for (ResourceLocation typeId : BuiltInRegistries.ENTITY_TYPE.keySet()) { - EntityType type = BuiltInRegistries.ENTITY_TYPE.get(typeId); + EntityType type = BuiltInRegistries.ENTITY_TYPE.getValue(typeId); String mobType = ValueConversions.simplify(typeId); put(mobType, new EntityClassDescriptor(type, net.minecraft.world.entity.EntitySelector.ENTITY_STILL_ALIVE, Stream.of(type))); put("!" + mobType, new EntityClassDescriptor(ANY, (e) -> e.getType() != type && e.isAlive(), allTypes.stream().filter(et -> et != type))); @@ -445,7 +445,7 @@ public class EntityValue extends Value put("display_name", (e, a) -> new FormattedTextValue(e.getDisplayName())); put("command_name", (e, a) -> new StringValue(e.getScoreboardName())); put("custom_name", (e, a) -> e.hasCustomName() ? new StringValue(e.getCustomName().getString()) : Value.NULL); - put("type", (e, a) -> nameFromRegistryId(e.level().registryAccess().registryOrThrow(Registries.ENTITY_TYPE).getKey(e.getType()))); + put("type", (e, a) -> nameFromRegistryId(e.level().registryAccess().lookupOrThrow(Registries.ENTITY_TYPE).getKey(e.getType()))); put("is_riding", (e, a) -> BooleanValue.of(e.isPassenger())); put("is_ridden", (e, a) -> BooleanValue.of(e.isVehicle())); put("passengers", (e, a) -> ListValue.wrap(e.getPassengers().stream().map(EntityValue::new))); @@ -457,14 +457,14 @@ public class EntityValue extends Value put("scoreboard_tags", (e, a) -> ListValue.wrap(e.getTags().stream().map(StringValue::new))); put("entity_tags", (e, a) -> { EntityType type = e.getType(); - return ListValue.wrap(e.getServer().registryAccess().registryOrThrow(Registries.ENTITY_TYPE).getTags().filter(entry -> entry.stream().anyMatch(h -> h.value() == type)).map(entry -> ValueConversions.of(entry))); + return ListValue.wrap(e.getServer().registryAccess().lookupOrThrow(Registries.ENTITY_TYPE).getTags().filter(entry -> entry.stream().anyMatch(h -> h.value() == type)).map(entry -> ValueConversions.of(entry))); }); // deprecated put("has_tag", (e, a) -> BooleanValue.of(e.getTags().contains(a.getString()))); put("has_scoreboard_tag", (e, a) -> BooleanValue.of(e.getTags().contains(a.getString()))); put("has_entity_tag", (e, a) -> { - Optional>> tag = e.getServer().registryAccess().registryOrThrow(Registries.ENTITY_TYPE).getTag(TagKey.create(Registries.ENTITY_TYPE, InputValidator.identifierOf(a.getString()))); + Optional>> tag = e.getServer().registryAccess().lookupOrThrow(Registries.ENTITY_TYPE).get(TagKey.create(Registries.ENTITY_TYPE, InputValidator.identifierOf(a.getString()))); if (tag.isEmpty()) { return Value.NULL; @@ -572,7 +572,7 @@ public class EntityValue extends Value put("brain", (e, a) -> { String module = a.getString(); - MemoryModuleType moduleType = e.level().registryAccess().registryOrThrow(Registries.MEMORY_MODULE_TYPE).get(InputValidator.identifierOf(module)); + MemoryModuleType moduleType = e.level().registryAccess().lookupOrThrow(Registries.MEMORY_MODULE_TYPE).getValue(InputValidator.identifierOf(module)); if (moduleType == MemoryModuleType.DUMMY) { return Value.NULL; @@ -663,7 +663,7 @@ public class EntityValue extends Value return ListValue.wrap(effects); } String effectName = a.getString(); - Holder potion = BuiltInRegistries.MOB_EFFECT.getHolder(ResourceKey.create(Registries.MOB_EFFECT, InputValidator.identifierOf(effectName))).orElseThrow(() -> new InternalExpressionException("No such an effect: " + effectName)); + Holder potion = BuiltInRegistries.MOB_EFFECT.get(ResourceKey.create(Registries.MOB_EFFECT, InputValidator.identifierOf(effectName))).orElseThrow(() -> new InternalExpressionException("No such an effect: " + effectName)); if (!le.hasEffect(potion)) { return Value.NULL; @@ -833,14 +833,14 @@ public class EntityValue extends Value { return Value.NULL; } - Registry attributes = e.level().registryAccess().registryOrThrow(Registries.ATTRIBUTE); + Registry attributes = e.level().registryAccess().lookupOrThrow(Registries.ATTRIBUTE); if (a == null) { AttributeMap container = el.getAttributes(); - return MapValue.wrap(attributes.holders().filter(container::hasAttribute).collect(Collectors.toMap(aa -> ValueConversions.of(aa.key()), aa -> NumericValue.of(container.getValue(aa))))); + return MapValue.wrap(attributes.listElements().filter(container::hasAttribute).collect(Collectors.toMap(aa -> ValueConversions.of(aa.key()), aa -> NumericValue.of(container.getValue(aa))))); } ResourceLocation id = InputValidator.identifierOf(a.getString()); - Holder attrib = attributes.getHolder(id).orElseThrow( + Holder attrib = attributes.get(id).orElseThrow( () -> new InternalExpressionException("Unknown attribute: " + a.getString()) ); if (!el.getAttributes().hasAttribute(attrib)) @@ -1474,7 +1474,7 @@ public class EntityValue extends Value if (list.size() >= 1 && list.size() <= 6) { String effectName = list.get(0).getString(); - Holder effect = BuiltInRegistries.MOB_EFFECT.getHolder(InputValidator.identifierOf(effectName)).orElseThrow(() -> new InternalExpressionException("No such an effect: " + effectName)); + Holder effect = BuiltInRegistries.MOB_EFFECT.get(InputValidator.identifierOf(effectName)).orElseThrow(() -> new InternalExpressionException("No such an effect: " + effectName)); if (list.size() == 1) { le.removeEffect(effect); @@ -1517,7 +1517,7 @@ public class EntityValue extends Value else { String effectName = v.getString(); - Holder effect = BuiltInRegistries.MOB_EFFECT.getHolder(InputValidator.identifierOf(effectName)).orElseThrow(() -> new InternalExpressionException("No such an effect: " + effectName)); + Holder effect = BuiltInRegistries.MOB_EFFECT.get(InputValidator.identifierOf(effectName)).orElseThrow(() -> new InternalExpressionException("No such an effect: " + effectName)); le.removeEffect(effect); return; } @@ -1743,7 +1743,7 @@ public class EntityValue extends Value } CompoundTag tag = new CompoundTag(); tag.put("Data", getEntity().saveWithoutId(new CompoundTag())); - Registry> reg = getEntity().level().registryAccess().registryOrThrow(Registries.ENTITY_TYPE); + Registry> reg = getEntity().level().registryAccess().lookupOrThrow(Registries.ENTITY_TYPE); tag.put("Name", StringTag.valueOf(reg.getKey(getEntity().getType()).toString())); return tag; } diff --git a/src/main/java/carpet/script/value/ValueConversions.java b/src/main/java/carpet/script/value/ValueConversions.java index 25555f49..72a660d7 100644 --- a/src/main/java/carpet/script/value/ValueConversions.java +++ b/src/main/java/carpet/script/value/ValueConversions.java @@ -99,7 +99,7 @@ public class ValueConversions public static Value of(ItemStack stack, RegistryAccess regs) { return stack == null || stack.isEmpty() ? Value.NULL : ListValue.of( - of(regs.registryOrThrow(Registries.ITEM).getKey(stack.getItem())), + of(regs.lookupOrThrow(Registries.ITEM).getKey(stack.getItem())), new NumericValue(stack.getCount()), NBTSerializableValue.fromStack(stack, regs) ); @@ -368,7 +368,7 @@ public class ValueConversions if (box.maxX() >= box.minX() && box.maxY() >= box.minY() && box.maxZ() >= box.minZ()) { pieces.add(ListValue.of( - NBTSerializableValue.nameFromRegistryId(regs.registryOrThrow(Registries.STRUCTURE_PIECE).getKey(piece.getType())), + NBTSerializableValue.nameFromRegistryId(regs.lookupOrThrow(Registries.STRUCTURE_PIECE).getKey(piece.getType())), (piece.getOrientation() == null) ? Value.NULL : new StringValue(piece.getOrientation().getName()), ListValue.fromTriple(box.minX(), box.minY(), box.minZ()), ListValue.fromTriple(box.maxX(), box.maxY(), box.maxZ()) @@ -457,10 +457,10 @@ public class ValueConversions public static Value ofBlockPredicate(RegistryAccess registryAccess, Predicate blockPredicate) { Vanilla.BlockPredicatePayload payload = Vanilla.BlockPredicatePayload.of(blockPredicate); - Registry blocks = registryAccess.registryOrThrow(Registries.BLOCK); + Registry blocks = registryAccess.lookupOrThrow(Registries.BLOCK); return ListValue.of( payload.state() == null ? Value.NULL : of(blocks.getKey(payload.state().getBlock())), - payload.tagKey() == null ? Value.NULL : of(blocks.getTag(payload.tagKey()).get().key()), + payload.tagKey() == null ? Value.NULL : of(blocks.get(payload.tagKey()).get().key()), MapValue.wrap(payload.properties()), payload.tag() == null ? Value.NULL : new NBTSerializableValue(payload.tag()) ); diff --git a/src/main/java/carpet/utils/BlockInfo.java b/src/main/java/carpet/utils/BlockInfo.java index d5532aca..67b70496 100644 --- a/src/main/java/carpet/utils/BlockInfo.java +++ b/src/main/java/carpet/utils/BlockInfo.java @@ -29,7 +29,7 @@ public class BlockInfo BlockState state = world.getBlockState(pos); Block block = state.getBlock(); String metastring = ""; - final Registry blocks = world.registryAccess().registryOrThrow(Registries.BLOCK); + final Registry blocks = world.registryAccess().lookupOrThrow(Registries.BLOCK); for (net.minecraft.world.level.block.state.properties.Property iproperty : state.getProperties()) { metastring += ", "+iproperty.getName() + '='+state.getValue(iproperty); diff --git a/src/main/java/carpet/utils/CarpetProfiler.java b/src/main/java/carpet/utils/CarpetProfiler.java index a4a02067..dbd0cde2 100644 --- a/src/main/java/carpet/utils/CarpetProfiler.java +++ b/src/main/java/carpet/utils/CarpetProfiler.java @@ -279,11 +279,11 @@ public class CarpetProfiler final RegistryAccess regs = section.getKey().registryAccess(); if (section.getValue() instanceof EntityType) { - id = regs.registryOrThrow(Registries.ENTITY_TYPE).getKey((EntityType) section.getValue()); + id = regs.lookupOrThrow(Registries.ENTITY_TYPE).getKey((EntityType) section.getValue()); } else { - id = regs.registryOrThrow(Registries.BLOCK_ENTITY_TYPE).getKey((BlockEntityType) section.getValue()); + id = regs.lookupOrThrow(Registries.BLOCK_ENTITY_TYPE).getKey((BlockEntityType) section.getValue()); } String name = "minecraft".equals(id.getNamespace())?id.getPath():id.toString(); if (section.getKey().isClientSide) diff --git a/src/main/java/carpet/utils/MobAI.java b/src/main/java/carpet/utils/MobAI.java index 454d234b..5063b879 100644 --- a/src/main/java/carpet/utils/MobAI.java +++ b/src/main/java/carpet/utils/MobAI.java @@ -64,7 +64,7 @@ public class MobAI { types.addAll(type.types); } - return types.stream().map(t -> source.registryAccess().registryOrThrow(Registries.ENTITY_TYPE).getKey(t).getPath()); + return types.stream().map(t -> source.registryAccess().lookupOrThrow(Registries.ENTITY_TYPE).getKey(t).getPath()); } public static Stream availableFor(EntityType entityType) diff --git a/src/main/java/carpet/utils/SpawnOverrides.java b/src/main/java/carpet/utils/SpawnOverrides.java index 575b491d..f12d783d 100644 --- a/src/main/java/carpet/utils/SpawnOverrides.java +++ b/src/main/java/carpet/utils/SpawnOverrides.java @@ -54,7 +54,7 @@ public class SpawnOverrides { public static WeightedRandomList test(StructureManager structureFeatureManager, LongSet foo, MobCategory cat, Structure confExisting, BlockPos where) { - ResourceLocation resource = structureFeatureManager.registryAccess().registryOrThrow(Registries.STRUCTURE).getKey(confExisting); + ResourceLocation resource = structureFeatureManager.registryAccess().lookupOrThrow(Registries.STRUCTURE).getKey(confExisting); ResourceKey key = ResourceKey.create(Registries.STRUCTURE, resource); final Pair spawnData = carpetOverrides.get(Pair.of(cat, key)); if (spawnData == null || !spawnData.getKey().getAsBoolean()) return null; @@ -76,7 +76,7 @@ public class SpawnOverrides { public static boolean isStructureAtPosition(ServerLevel level, ResourceKey structureKey, BlockPos pos) { - final Structure fortressFeature = level.registryAccess().registryOrThrow(Registries.STRUCTURE).get(structureKey); + final Structure fortressFeature = level.registryAccess().lookupOrThrow(Registries.STRUCTURE).getValue(structureKey); if (fortressFeature == null) { return false; }