reapply SummonEntityEffect
This commit is contained in:
@@ -1,10 +1,8 @@
|
||||
--- a/net/minecraft/world/item/enchantment/effects/ReplaceBlock.java
|
||||
+++ b/net/minecraft/world/item/enchantment/effects/ReplaceBlock.java
|
||||
@@ -29,8 +_,9 @@
|
||||
@Override
|
||||
@@ -30,7 +_,7 @@
|
||||
public void apply(ServerLevel level, int enchantmentLevel, EnchantedItemInUse item, Entity entity, Vec3 origin) {
|
||||
BlockPos blockPos = BlockPos.containing(origin).offset(this.offset);
|
||||
+ // }).orElse(true) &&
|
||||
if (this.predicate.map(blockPredicate -> blockPredicate.test(level, blockPos)).orElse(true)
|
||||
- && level.setBlockAndUpdate(blockPos, this.blockState.getState(entity.getRandom(), blockPos))) {
|
||||
+ && org.bukkit.craftbukkit.event.CraftEventFactory.handleBlockFormEvent(level, blockPos, this.blockState.getState(entity.getRandom(), blockPos), entity)) { // CraftBukkit - Call EntityBlockFormEvent
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/net/minecraft/world/item/enchantment/effects/SummonEntityEffect.java
|
||||
+++ b/net/minecraft/world/item/enchantment/effects/SummonEntityEffect.java
|
||||
@@ -34,11 +_,16 @@
|
||||
@@ -34,11 +_,18 @@
|
||||
if (Level.isInSpawnableBounds(blockPos)) {
|
||||
Optional<Holder<EntityType<?>>> randomElement = this.entityTypes().getRandomElement(level.getRandom());
|
||||
if (!randomElement.isEmpty()) {
|
||||
@@ -11,9 +11,11 @@
|
||||
lightningBolt.setCause(serverPlayer);
|
||||
}
|
||||
+ // CraftBukkit start
|
||||
+ level.strikeLightning(entity1, (item.itemStack().getItem() == net.minecraft.world.item.Items.TRIDENT) ? org.bukkit.event.weather.LightningStrikeEvent.Cause.TRIDENT : org.bukkit.event.weather.LightningStrikeEvent.Cause.ENCHANTMENT);
|
||||
+ } else {
|
||||
+ level.addFreshEntityWithPassengers(entity1, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.ENCHANTMENT);
|
||||
+ if (entity1 instanceof LightningBolt) {
|
||||
+ level.strikeLightning(entity1, (item.itemStack().is(net.minecraft.world.item.Items.TRIDENT)) ? org.bukkit.event.weather.LightningStrikeEvent.Cause.TRIDENT : org.bukkit.event.weather.LightningStrikeEvent.Cause.ENCHANTMENT);
|
||||
+ } else {
|
||||
+ level.addFreshEntityWithPassengers(entity1, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.ENCHANTMENT);
|
||||
+ }
|
||||
+ // CraftBukkit end
|
||||
|
||||
if (this.joinTeam && entity.getTeam() != null) {
|
||||
|
||||
Reference in New Issue
Block a user