geforkt von Mirrors/Paper
net/minecraft/world/entity/ambient
Dieser Commit ist enthalten in:
Ursprung
d1369750e2
Commit
6a85106951
@ -0,0 +1,45 @@
|
||||
--- a/net/minecraft/world/entity/ambient/Bat.java
|
||||
+++ b/net/minecraft/world/entity/ambient/Bat.java
|
||||
@@ -85,7 +_,7 @@
|
||||
}
|
||||
|
||||
@Override
|
||||
- public boolean isPushable() {
|
||||
+ public boolean isCollidable(boolean ignoreClimbing) { // Paper - Climbing should not bypass cramming gamerule
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -139,13 +_,13 @@
|
||||
this.yHeadRot = this.random.nextInt(360);
|
||||
}
|
||||
|
||||
- if (level.getNearestPlayer(BAT_RESTING_TARGETING, this) != null) {
|
||||
+ if (level.getNearestPlayer(BAT_RESTING_TARGETING, this) != null && org.bukkit.craftbukkit.event.CraftEventFactory.handleBatToggleSleepEvent(this, true)) { // CraftBukkit - Call BatToggleSleepEvent
|
||||
this.setResting(false);
|
||||
if (!isSilent) {
|
||||
level.levelEvent(null, 1025, blockPos, 0);
|
||||
}
|
||||
}
|
||||
- } else {
|
||||
+ } else if (org.bukkit.craftbukkit.event.CraftEventFactory.handleBatToggleSleepEvent(this, true)) { // CraftBukkit - Call BatToggleSleepEvent
|
||||
this.setResting(false);
|
||||
if (!isSilent) {
|
||||
level.levelEvent(null, 1025, blockPos, 0);
|
||||
@@ -178,7 +_,7 @@
|
||||
float f1 = Mth.wrapDegrees(f - this.getYRot());
|
||||
this.zza = 0.5F;
|
||||
this.setYRot(this.getYRot() + f1);
|
||||
- if (this.random.nextInt(100) == 0 && level.getBlockState(blockPos1).isRedstoneConductor(level, blockPos1)) {
|
||||
+ if (this.random.nextInt(100) == 0 && level.getBlockState(blockPos1).isRedstoneConductor(level, blockPos1) && org.bukkit.craftbukkit.event.CraftEventFactory.handleBatToggleSleepEvent(this, false)) { // CraftBukkit - Call BatToggleSleepEvent
|
||||
this.setResting(true);
|
||||
}
|
||||
}
|
||||
@@ -203,7 +_,7 @@
|
||||
if (this.isInvulnerableTo(level, damageSource)) {
|
||||
return false;
|
||||
} else {
|
||||
- if (this.isResting()) {
|
||||
+ if (this.isResting() && org.bukkit.craftbukkit.event.CraftEventFactory.handleBatToggleSleepEvent(this, true)) { // CraftBukkit - Call BatToggleSleepEvent
|
||||
this.setResting(false);
|
||||
}
|
||||
|
@ -1,55 +0,0 @@
|
||||
--- a/net/minecraft/world/entity/ambient/Bat.java
|
||||
+++ b/net/minecraft/world/entity/ambient/Bat.java
|
||||
@@ -29,6 +29,9 @@
|
||||
import net.minecraft.world.level.block.state.BlockState;
|
||||
import net.minecraft.world.level.levelgen.Heightmap;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
+// CraftBukkit start
|
||||
+import org.bukkit.craftbukkit.event.CraftEventFactory;
|
||||
+// CraftBukkit end
|
||||
|
||||
public class Bat extends AmbientCreature {
|
||||
|
||||
@@ -88,7 +91,7 @@
|
||||
}
|
||||
|
||||
@Override
|
||||
- public boolean isPushable() {
|
||||
+ public boolean isCollidable(boolean ignoreClimbing) { // Paper - Climbing should not bypass cramming gamerule
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -144,13 +147,13 @@
|
||||
this.yHeadRot = (float) this.random.nextInt(360);
|
||||
}
|
||||
|
||||
- if (world.getNearestPlayer(Bat.BAT_RESTING_TARGETING, this) != null) {
|
||||
+ if (world.getNearestPlayer(Bat.BAT_RESTING_TARGETING, this) != null && CraftEventFactory.handleBatToggleSleepEvent(this, true)) { // CraftBukkit - Call BatToggleSleepEvent
|
||||
this.setResting(false);
|
||||
if (!flag) {
|
||||
world.levelEvent((Player) null, 1025, blockposition, 0);
|
||||
}
|
||||
}
|
||||
- } else {
|
||||
+ } else if (CraftEventFactory.handleBatToggleSleepEvent(this, true)) { // CraftBukkit - Call BatToggleSleepEvent
|
||||
this.setResting(false);
|
||||
if (!flag) {
|
||||
world.levelEvent((Player) null, 1025, blockposition, 0);
|
||||
@@ -177,7 +180,7 @@
|
||||
|
||||
this.zza = 0.5F;
|
||||
this.setYRot(this.getYRot() + f1);
|
||||
- if (this.random.nextInt(100) == 0 && world.getBlockState(blockposition1).isRedstoneConductor(world, blockposition1)) {
|
||||
+ if (this.random.nextInt(100) == 0 && world.getBlockState(blockposition1).isRedstoneConductor(world, blockposition1) && CraftEventFactory.handleBatToggleSleepEvent(this, false)) { // CraftBukkit - Call BatToggleSleepEvent
|
||||
this.setResting(true);
|
||||
}
|
||||
}
|
||||
@@ -202,7 +205,7 @@
|
||||
if (this.isInvulnerableTo(world, source)) {
|
||||
return false;
|
||||
} else {
|
||||
- if (this.isResting()) {
|
||||
+ if (this.isResting() && CraftEventFactory.handleBatToggleSleepEvent(this, true)) { // CraftBukkit - Call BatToggleSleepEvent
|
||||
this.setResting(false);
|
||||
}
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren