70ce6ce831
This makes it easier for downstream projects (forks) to replace the version fetching system with their own. It is as simple as implementing an interface and overriding the default implementation of org.bukkit.UnsafeValues#getVersionFetcher() It also makes it easier for us to organize things like the version history feature. Lastly I have updated the paper implementation to check against the site API rather than against jenkins.
34 Zeilen
1.8 KiB
Diff
34 Zeilen
1.8 KiB
Diff
From e3456fbd0608f874cbb438b4aec6efc29e2e4757 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Wed, 16 May 2018 20:44:58 -0400
|
|
Subject: [PATCH] WitchThrowPotionEvent
|
|
|
|
Fired when a witch throws a potion at a player
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityWitch.java b/src/main/java/net/minecraft/server/EntityWitch.java
|
|
index abac47d4c..b9307d380 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityWitch.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityWitch.java
|
|
@@ -185,9 +185,16 @@ public class EntityWitch extends EntityRaider implements IRangedEntity {
|
|
potionregistry = Potions.M;
|
|
}
|
|
|
|
+ // Paper start
|
|
+ ItemStack potion = PotionUtil.a(new ItemStack(Items.SPLASH_POTION), potionregistry);
|
|
+ com.destroystokyo.paper.event.entity.WitchThrowPotionEvent event = new com.destroystokyo.paper.event.entity.WitchThrowPotionEvent((org.bukkit.entity.Witch) this.getBukkitEntity(), (org.bukkit.entity.LivingEntity) entityliving.getBukkitEntity(), org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(potion));
|
|
+ if (!event.callEvent()) {
|
|
+ return;
|
|
+ }
|
|
+ potion = org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(event.getPotion());
|
|
EntityPotion entitypotion = new EntityPotion(this.world, this);
|
|
-
|
|
- entitypotion.setItem(PotionUtil.a(new ItemStack(Items.SPLASH_POTION), potionregistry));
|
|
+ entitypotion.setItem(potion);
|
|
+ // Paper end
|
|
entitypotion.pitch -= -20.0F;
|
|
entitypotion.shoot(d0, d1 + (double) (f1 * 0.2F), d2, 0.75F, 8.0F);
|
|
this.world.a((EntityHuman) null, this.locX, this.locY, this.locZ, SoundEffects.ENTITY_WITCH_THROW, this.getSoundCategory(), 1.0F, 0.8F + this.random.nextFloat() * 0.4F);
|
|
--
|
|
2.21.0
|
|
|