@@ -1,8 +1,8 @@
|
||||
--- a/net/minecraft/server/EntityBoat.java
|
||||
+++ b/net/minecraft/server/EntityBoat.java
|
||||
@@ -4,6 +4,15 @@
|
||||
import java.util.List;
|
||||
import javax.annotation.Nullable;
|
||||
--- a/net/minecraft/world/entity/vehicle/EntityBoat.java
|
||||
+++ b/net/minecraft/world/entity/vehicle/EntityBoat.java
|
||||
@@ -48,6 +48,15 @@
|
||||
import net.minecraft.world.phys.shapes.VoxelShape;
|
||||
import net.minecraft.world.phys.shapes.VoxelShapes;
|
||||
|
||||
+// CraftBukkit start
|
||||
+import org.bukkit.Location;
|
||||
@@ -16,7 +16,7 @@
|
||||
public class EntityBoat extends Entity {
|
||||
|
||||
private static final DataWatcherObject<Integer> b = DataWatcher.a(EntityBoat.class, DataWatcherRegistry.b);
|
||||
@@ -38,6 +47,14 @@
|
||||
@@ -82,6 +91,14 @@
|
||||
private float aD;
|
||||
private float aE;
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
public EntityBoat(EntityTypes<? extends EntityBoat> entitytypes, World world) {
|
||||
super(entitytypes, world);
|
||||
this.ah = new float[2];
|
||||
@@ -108,6 +125,19 @@
|
||||
@@ -152,6 +169,19 @@
|
||||
if (this.isInvulnerable(damagesource)) {
|
||||
return false;
|
||||
} else if (!this.world.isClientSide && !this.dead) {
|
||||
@@ -51,7 +51,7 @@
|
||||
this.c(-this.o());
|
||||
this.b(10);
|
||||
this.setDamage(this.getDamage() + f * 10.0F);
|
||||
@@ -115,6 +145,15 @@
|
||||
@@ -159,6 +189,15 @@
|
||||
boolean flag = damagesource.getEntity() instanceof EntityHuman && ((EntityHuman) damagesource.getEntity()).abilities.canInstantlyBuild;
|
||||
|
||||
if (flag || this.getDamage() > 40.0F) {
|
||||
@@ -67,7 +67,7 @@
|
||||
if (!flag && this.world.getGameRules().getBoolean(GameRules.DO_ENTITY_DROPS)) {
|
||||
this.a((IMaterial) this.g());
|
||||
}
|
||||
@@ -149,9 +188,29 @@
|
||||
@@ -193,9 +232,29 @@
|
||||
public void collide(Entity entity) {
|
||||
if (entity instanceof EntityBoat) {
|
||||
if (entity.getBoundingBox().minY < this.getBoundingBox().maxY) {
|
||||
@@ -97,7 +97,7 @@
|
||||
super.collide(entity);
|
||||
}
|
||||
|
||||
@@ -185,6 +244,7 @@
|
||||
@@ -229,6 +288,7 @@
|
||||
return this.getDirection().g();
|
||||
}
|
||||
|
||||
@@ -105,7 +105,7 @@
|
||||
@Override
|
||||
public void tick() {
|
||||
this.ay = this.ax;
|
||||
@@ -225,6 +285,22 @@
|
||||
@@ -269,6 +329,22 @@
|
||||
this.setMot(Vec3D.ORIGIN);
|
||||
}
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
this.q();
|
||||
|
||||
for (int i = 0; i <= 1; ++i) {
|
||||
@@ -709,6 +785,11 @@
|
||||
@@ -753,6 +829,11 @@
|
||||
|
||||
this.b(this.fallDistance, 1.0F);
|
||||
if (!this.world.isClientSide && !this.dead) {
|
||||
@@ -140,7 +140,7 @@
|
||||
this.die();
|
||||
if (this.world.getGameRules().getBoolean(GameRules.DO_ENTITY_DROPS)) {
|
||||
int i;
|
||||
@@ -722,6 +803,7 @@
|
||||
@@ -766,6 +847,7 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user