refactor limit access to built-in registries
This commit is contained in:
1 parent
8dd08d5cb1
commit
bd5dfdbf9f
25 files changed
+243
-176
No files matched your search
@@ -43,12 +43,16 @@ import java.util.stream.Collectors;
|
||||
import net.minecraft.commands.CommandSourceStack;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.Direction;
|
||||
import net.minecraft.core.Registry;
|
||||
import net.minecraft.core.RegistryAccess;
|
||||
import net.minecraft.core.registries.BuiltInRegistries;
|
||||
import net.minecraft.core.registries.Registries;
|
||||
import net.minecraft.resources.ResourceKey;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.server.level.ServerLevel;
|
||||
import net.minecraft.server.level.ServerPlayer;
|
||||
import net.minecraft.stats.Stat;
|
||||
import net.minecraft.stats.StatType;
|
||||
import net.minecraft.stats.Stats;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.damagesource.DamageSource;
|
||||
@@ -551,7 +555,7 @@ public class CarpetEventServer
|
||||
//ItemStack itemstack = player.getStackInHand(enumhand);
|
||||
return Arrays.asList(
|
||||
new EntityValue(player),
|
||||
ValueConversions.of(itemstack),
|
||||
ValueConversions.of(itemstack, player.getLevel().registryAccess()),
|
||||
StringValue.of(enumhand == InteractionHand.MAIN_HAND ? "mainhand" : "offhand")
|
||||
);
|
||||
}, player::createCommandSourceStack);
|
||||
@@ -585,7 +589,7 @@ public class CarpetEventServer
|
||||
Vec3 vec3d = hitRes.getLocation().subtract(blockpos.getX(), blockpos.getY(), blockpos.getZ());
|
||||
return Arrays.asList(
|
||||
new EntityValue(player),
|
||||
ValueConversions.of(itemstack),
|
||||
ValueConversions.of(itemstack, player.getLevel().registryAccess()),
|
||||
StringValue.of(enumhand == InteractionHand.MAIN_HAND ? "mainhand" : "offhand"),
|
||||
new BlockValue(null, player.getLevel(), blockpos),
|
||||
StringValue.of(enumfacing.getName()),
|
||||
@@ -630,7 +634,7 @@ public class CarpetEventServer
|
||||
{
|
||||
return handler.call( () -> Arrays.asList(
|
||||
new EntityValue(player),
|
||||
ValueConversions.of(itemstack),
|
||||
ValueConversions.of(itemstack, player.getLevel().registryAccess()),
|
||||
StringValue.of(enumhand == InteractionHand.MAIN_HAND ? "mainhand" : "offhand"),
|
||||
new BlockValue(null, player.getLevel(), pos)
|
||||
), player::createCommandSourceStack);
|
||||
@@ -643,7 +647,7 @@ public class CarpetEventServer
|
||||
{
|
||||
handler.call( () -> Arrays.asList(
|
||||
new EntityValue(player),
|
||||
ValueConversions.of(itemstack),
|
||||
ValueConversions.of(itemstack, player.getLevel().registryAccess()),
|
||||
StringValue.of(enumhand == InteractionHand.MAIN_HAND ? "mainhand" : "offhand"),
|
||||
new BlockValue(null, player.getLevel(), pos)
|
||||
), player::createCommandSourceStack);
|
||||
@@ -676,12 +680,13 @@ public class CarpetEventServer
|
||||
@Override
|
||||
public void onTrade(ServerPlayer player, Merchant merchant, MerchantOffer tradeOffer)
|
||||
{
|
||||
final RegistryAccess regs = player.getLevel().registryAccess();
|
||||
handler.call( () -> Arrays.asList(
|
||||
new EntityValue(player),
|
||||
merchant instanceof AbstractVillager ? new EntityValue((AbstractVillager) merchant) : Value.NULL,
|
||||
ValueConversions.of(tradeOffer.getBaseCostA()),
|
||||
ValueConversions.of(tradeOffer.getCostB()),
|
||||
ValueConversions.of(tradeOffer.getResult())
|
||||
ValueConversions.of(tradeOffer.getBaseCostA(), regs),
|
||||
ValueConversions.of(tradeOffer.getCostB(), regs),
|
||||
ValueConversions.of(tradeOffer.getResult(), regs)
|
||||
), player::createCommandSourceStack);
|
||||
}
|
||||
};
|
||||
@@ -689,7 +694,7 @@ public class CarpetEventServer
|
||||
{
|
||||
@Override
|
||||
public boolean onItemAction(ServerPlayer player, InteractionHand enumhand, ItemStack itemstack) {
|
||||
handler.call( () -> Arrays.asList(new EntityValue(player), ValueConversions.of(itemstack)), player::createCommandSourceStack);
|
||||
handler.call( () -> Arrays.asList(new EntityValue(player), ValueConversions.of(itemstack, player.getLevel().registryAccess())), player::createCommandSourceStack);
|
||||
return false;
|
||||
}
|
||||
};
|
||||
@@ -748,7 +753,7 @@ public class CarpetEventServer
|
||||
handler.call( () ->
|
||||
Arrays.asList(
|
||||
new EntityValue(player),
|
||||
ValueConversions.of(itemstack),
|
||||
ValueConversions.of(itemstack, player.getLevel().registryAccess()),
|
||||
StringValue.of(enumhand == InteractionHand.MAIN_HAND ? "mainhand" : "offhand")
|
||||
), player::createCommandSourceStack);
|
||||
return false;
|
||||
@@ -763,7 +768,7 @@ public class CarpetEventServer
|
||||
return handler.call( () ->
|
||||
Arrays.asList(
|
||||
new EntityValue(player),
|
||||
ValueConversions.of(itemstack),
|
||||
ValueConversions.of(itemstack, player.getLevel().registryAccess()),
|
||||
new StringValue(enumhand == InteractionHand.MAIN_HAND ? "mainhand" : "offhand")
|
||||
), player::createCommandSourceStack);
|
||||
}
|
||||
@@ -946,9 +951,10 @@ public class CarpetEventServer
|
||||
{
|
||||
ResourceLocation id = getStatId(stat);
|
||||
if (skippedStats.contains(id)) return;
|
||||
final Registry<StatType<?>> registry = player.getLevel().registryAccess().registryOrThrow(Registries.STAT_TYPE);
|
||||
handler.call( () -> Arrays.asList(
|
||||
new EntityValue(player),
|
||||
StringValue.of(NBTSerializableValue.nameFromRegistryId(BuiltInRegistries.STAT_TYPE.getKey(stat.getType()))),
|
||||
StringValue.of(NBTSerializableValue.nameFromRegistryId(registry.getKey(stat.getType()))),
|
||||
StringValue.of(NBTSerializableValue.nameFromRegistryId(id)),
|
||||
new NumericValue(amount)
|
||||
), player::createCommandSourceStack);
|
||||
|
||||
Reference in new issue
Block a user