2017-06-11 23:27:34 +02:00
|
|
|
--- a/net/minecraft/server/EntityParrot.java
|
|
|
|
+++ b/net/minecraft/server/EntityParrot.java
|
2018-12-13 01:00:00 +01:00
|
|
|
@@ -16,14 +16,14 @@
|
|
|
|
public class EntityParrot extends EntityPerchable implements EntityBird {
|
|
|
|
|
|
|
|
private static final DataWatcherObject<Integer> bL = DataWatcher.a(EntityParrot.class, DataWatcherRegistry.b);
|
|
|
|
- private static final Predicate<EntityInsentient> bM = new Predicate() {
|
|
|
|
+ private static final Predicate<EntityInsentient> bM = new Predicate<EntityInsentient>() { // CraftBukkit - decompile error
|
|
|
|
public boolean test(@Nullable EntityInsentient entityinsentient) {
|
|
|
|
return entityinsentient != null && EntityParrot.bP.containsKey(entityinsentient.P());
|
|
|
|
}
|
2018-07-15 02:00:00 +02:00
|
|
|
};
|
|
|
|
private static final Item bN = Items.COOKIE;
|
|
|
|
private static final Set<Item> bO = Sets.newHashSet(new Item[] { Items.WHEAT_SEEDS, Items.MELON_SEEDS, Items.PUMPKIN_SEEDS, Items.BEETROOT_SEEDS});
|
|
|
|
- private static final Map<EntityTypes<?>, SoundEffect> bP = (Map) SystemUtils.a((Object) Maps.newHashMap(), (hashmap) -> {
|
|
|
|
+ private static final Map<EntityTypes<?>, SoundEffect> bP = (Map) SystemUtils.a(Maps.newHashMap(), (hashmap) -> { // CraftBukkit - decompile error
|
|
|
|
hashmap.put(EntityTypes.BLAZE, SoundEffects.ENTITY_PARROT_IMITATE_BLAZE);
|
|
|
|
hashmap.put(EntityTypes.CAVE_SPIDER, SoundEffects.ENTITY_PARROT_IMITATE_SPIDER);
|
|
|
|
hashmap.put(EntityTypes.CREEPER, SoundEffects.ENTITY_PARROT_IMITATE_CREEPER);
|
2018-12-13 01:00:00 +01:00
|
|
|
@@ -170,7 +170,7 @@
|
2017-06-11 23:27:34 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
if (!this.world.isClientSide) {
|
|
|
|
- if (this.random.nextInt(10) == 0) {
|
|
|
|
+ if (this.random.nextInt(10) == 0 && !org.bukkit.craftbukkit.event.CraftEventFactory.callEntityTameEvent(this, entityhuman).isCancelled()) { // CraftBukkit
|
|
|
|
this.c(entityhuman);
|
2018-07-15 02:00:00 +02:00
|
|
|
this.s(true);
|
2017-06-11 23:27:34 +02:00
|
|
|
this.world.broadcastEntityEffect(this, (byte) 7);
|
2018-12-13 01:00:00 +01:00
|
|
|
@@ -186,7 +186,7 @@
|
2018-07-20 08:04:37 +02:00
|
|
|
itemstack.subtract(1);
|
|
|
|
}
|
|
|
|
|
|
|
|
- this.addEffect(new MobEffect(MobEffects.POISON, 900));
|
|
|
|
+ this.addEffect(new MobEffect(MobEffects.POISON, 900), org.bukkit.event.entity.EntityPotionEffectEvent.Cause.FOOD); // CraftBukkit
|
|
|
|
if (entityhuman.u() || !this.bl()) {
|
|
|
|
this.damageEntity(DamageSource.playerAttack(entityhuman), Float.MAX_VALUE);
|
|
|
|
}
|
2018-12-13 01:00:00 +01:00
|
|
|
@@ -306,7 +306,8 @@
|
2017-06-24 02:01:46 +02:00
|
|
|
return false;
|
|
|
|
} else {
|
|
|
|
if (this.goalSit != null) {
|
|
|
|
- this.goalSit.setSitting(false);
|
|
|
|
+ // CraftBukkit - moved into EntityLiving.d(DamageSource, float)
|
|
|
|
+ // this.goalSit.setSitting(false);
|
|
|
|
}
|
|
|
|
|
|
|
|
return super.damageEntity(damagesource, f);
|