geforkt von Mirrors/Paper
2d09115b3a
Uses the new ANSIComponentSerializer introduced in Adventure 4.14.0 to serialize components when logging them via the ComponentLogger, or when sending messages to the console. This replaces the old solution which uses legacy jank and custom color conversions, with a new library that handles the conversion and config
33 Zeilen
2.1 KiB
Diff
33 Zeilen
2.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
|
|
Date: Wed, 26 May 2021 17:09:07 -0400
|
|
Subject: [PATCH] Add BellRevealRaiderEvent
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BellBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BellBlockEntity.java
|
|
index b446d6549922f3dabaaa05793d8ee3eb45566ac3..f07222c8c9c82478d492b0916cd394be1ab0c804 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/entity/BellBlockEntity.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/entity/BellBlockEntity.java
|
|
@@ -156,7 +156,7 @@ public class BellBlockEntity extends BlockEntity {
|
|
return BellBlockEntity.isRaiderWithinRange(pos, entityliving);
|
|
}).map((entity) -> (org.bukkit.entity.LivingEntity) entity.getBukkitEntity()).collect(java.util.stream.Collectors.toCollection(java.util.ArrayList::new)); // CraftBukkit
|
|
|
|
- org.bukkit.craftbukkit.event.CraftEventFactory.handleBellResonateEvent(world, pos, entities).forEach(BellBlockEntity::glow);
|
|
+ org.bukkit.craftbukkit.event.CraftEventFactory.handleBellResonateEvent(world, pos, entities).forEach(entity -> glow(entity, pos)); // Paper - pass BlockPos
|
|
// CraftBukkit end
|
|
}
|
|
|
|
@@ -191,7 +191,11 @@ public class BellBlockEntity extends BlockEntity {
|
|
return entity.isAlive() && !entity.isRemoved() && pos.closerToCenterThan(entity.position(), 48.0D) && entity.getType().is(EntityTypeTags.RAIDERS);
|
|
}
|
|
|
|
- private static void glow(LivingEntity entity) {
|
|
+ // Paper start
|
|
+ private static void glow(LivingEntity entity) { glow(entity, null); }
|
|
+ private static void glow(LivingEntity entity, @javax.annotation.Nullable BlockPos pos) {
|
|
+ if (pos != null && !new io.papermc.paper.event.block.BellRevealRaiderEvent(entity.level().getWorld().getBlockAt(io.papermc.paper.util.MCUtil.toLocation(entity.level(), pos)), entity.getBukkitEntity()).callEvent()) return;
|
|
+ // Paper end
|
|
entity.addEffect(new MobEffectInstance(MobEffects.GLOWING, 60));
|
|
}
|
|
|