mirror of
https://github.com/PurpurMC/Purpur.git
synced 2025-02-17 13:00:04 +08:00
fix #1071 possible rare npe with controllable minecarts
This commit is contained in:
parent
4e230b394f
commit
4545819912
@ -5,7 +5,7 @@ Subject: [PATCH] Minecart settings and WASD controls
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 64183c02cf278b20ed59120fa20fc7265321fc40..71f3fb4d60abff73dce22006345e210c706d448b 100644
|
||||
index 70fe7e8a0e67c1c32cc33846c26020fe5b81f711..e774a7c2265b4a307fde305176c7e9ec33e1e61f 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1032,6 +1032,7 @@ public class ServerPlayer extends Player {
|
||||
@ -17,7 +17,7 @@ index 64183c02cf278b20ed59120fa20fc7265321fc40..71f3fb4d60abff73dce22006345e210c
|
||||
|
||||
if (!flag && isSpawnInvulnerable() && source != DamageSource.OUT_OF_WORLD) { // Purpur
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
index 3f31a3c17ecca6e93b794478129b95ecff4e1a9c..05031a1a8b9c42ea5cdf9d8ad9b6aeebe1fc823c 100644
|
||||
index 3f31a3c17ecca6e93b794478129b95ecff4e1a9c..d2d1e554b1c24df982ff28fbe118229c8e9ecd13 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
@@ -107,11 +107,13 @@ public abstract class AbstractMinecart extends Entity {
|
||||
@ -47,7 +47,7 @@ index 3f31a3c17ecca6e93b794478129b95ecff4e1a9c..05031a1a8b9c42ea5cdf9d8ad9b6aeeb
|
||||
// CraftBukkit start
|
||||
double prevX = this.getX();
|
||||
double prevY = this.getY();
|
||||
@@ -489,16 +497,62 @@ public abstract class AbstractMinecart extends Entity {
|
||||
@@ -489,16 +497,63 @@ public abstract class AbstractMinecart extends Entity {
|
||||
|
||||
public void activateMinecart(int x, int y, int z, boolean powered) {}
|
||||
|
||||
@ -63,7 +63,8 @@ index 3f31a3c17ecca6e93b794478129b95ecff4e1a9c..05031a1a8b9c42ea5cdf9d8ad9b6aeeb
|
||||
+ Double speed = level.purpurConfig.minecartControllableBlockSpeeds.get(block);
|
||||
+ if (!block.material.isSolid()) {
|
||||
+ speed = lastSpeed;
|
||||
+ } else if (speed == null) {
|
||||
+ }
|
||||
+ if (speed == null) {
|
||||
+ speed = level.purpurConfig.minecartControllableBaseSpeed;
|
||||
+ }
|
||||
+ return lastSpeed = speed;
|
||||
@ -135,7 +136,7 @@ index 127a799f7848b32664b77bf67847ca6b8ac9a90d..178cd88a7de291136e0486617e8347b7
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
index 939aca929038b90738c9b78c2fc3611088b18e72..2fe9daf2a1a4a007c9831155039159815242a545 100644
|
||||
index 771c6cf992664b65ffbf4ae0192bc7b09f77c2e6..480f00ef2026e84b133655c5e18b1dc36b5a02ca 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
@@ -72,7 +72,7 @@ import net.minecraft.world.phys.shapes.VoxelShape;
|
||||
|
@ -5,10 +5,10 @@ Subject: [PATCH] Configurable powered rail boost modifier
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
index 05031a1a8b9c42ea5cdf9d8ad9b6aeebe1fc823c..8c6e5e98dd5f425bd9322c01bba06c90d76673dc 100644
|
||||
index d2d1e554b1c24df982ff28fbe118229c8e9ecd13..b16ad4d5f3cdf8e0e44f74ae481b04d38e7a6c9e 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
@@ -714,7 +714,7 @@ public abstract class AbstractMinecart extends Entity {
|
||||
@@ -715,7 +715,7 @@ public abstract class AbstractMinecart extends Entity {
|
||||
if (d18 > 0.01D) {
|
||||
double d20 = 0.06D;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user