mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
56 lines
3.6 KiB
Diff
56 lines
3.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Callum Seabrook <callum.seabrook@prevarinite.com>
|
|
Date: Fri, 14 May 2021 21:22:57 +0100
|
|
Subject: [PATCH] Configurable powered rail boost modifier
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/NewMinecartBehavior.java b/src/main/java/net/minecraft/world/entity/vehicle/NewMinecartBehavior.java
|
|
index 00b0004940339dc105fb95f813bd35b16f7a9fb4..934218634854a90c0c8230e3da2d6da3d6916645 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/vehicle/NewMinecartBehavior.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/vehicle/NewMinecartBehavior.java
|
|
@@ -426,7 +426,7 @@ public class NewMinecartBehavior extends MinecartBehavior {
|
|
private Vec3 calculateBoostTrackSpeed(Vec3 velocity, BlockPos railPos, BlockState railState) {
|
|
if (railState.is(Blocks.POWERED_RAIL) && (Boolean) railState.getValue(PoweredRailBlock.POWERED)) {
|
|
if (velocity.length() > 0.01D) {
|
|
- return velocity.normalize().scale(velocity.length() + 0.06D);
|
|
+ return velocity.normalize().scale(velocity.length() + this.level().purpurConfig.poweredRailBoostModifier); // Purpur
|
|
} else {
|
|
Vec3 vec3d1 = this.minecart.getRedstoneDirection(railPos);
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/OldMinecartBehavior.java b/src/main/java/net/minecraft/world/entity/vehicle/OldMinecartBehavior.java
|
|
index cf871c174091139c8ad1affb84f98fcd74b60dee..ca1a2e8b32bc8730e7bdb44820696b2c4d1063d1 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/vehicle/OldMinecartBehavior.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/vehicle/OldMinecartBehavior.java
|
|
@@ -310,9 +310,9 @@ public class OldMinecartBehavior extends MinecartBehavior {
|
|
vec3d5 = this.getDeltaMovement();
|
|
d17 = vec3d5.horizontalDistance();
|
|
if (d17 > 0.01D) {
|
|
- double d19 = 0.06D;
|
|
+ double d19 = world.purpurConfig.poweredRailBoostModifier; // Purpur
|
|
|
|
- this.setDeltaMovement(vec3d5.add(vec3d5.x / d17 * 0.06D, 0.0D, vec3d5.z / d17 * 0.06D));
|
|
+ this.setDeltaMovement(vec3d5.add(vec3d5.x / d17 * world.purpurConfig.poweredRailBoostModifier, 0.0D, vec3d5.z / d17 * world.purpurConfig.poweredRailBoostModifier)); // Purpur
|
|
} else {
|
|
Vec3 vec3d6 = this.getDeltaMovement();
|
|
double d20 = vec3d6.x;
|
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
index 6994e136f188ae11a77a691d05dc7355906544e5..0c52f8486f59eaca46309b31ac877f609e68b521 100644
|
|
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
@@ -266,6 +266,7 @@ public class PurpurWorldConfig {
|
|
public boolean minecartControllableFallDamage = true;
|
|
public double minecartControllableBaseSpeed = 0.1D;
|
|
public Map<Block, Double> minecartControllableBlockSpeeds = new HashMap<>();
|
|
+ public double poweredRailBoostModifier = 0.06;
|
|
private void minecartSettings() {
|
|
if (PurpurConfig.version < 12) {
|
|
boolean oldBool = getBoolean("gameplay-mechanics.controllable-minecarts.place-anywhere", minecartPlaceAnywhere);
|
|
@@ -318,6 +319,7 @@ public class PurpurWorldConfig {
|
|
set("gameplay-mechanics.minecart.controllable.block-speed.grass_block", 0.3D);
|
|
set("gameplay-mechanics.minecart.controllable.block-speed.stone", 0.5D);
|
|
}
|
|
+ poweredRailBoostModifier = getDouble("gameplay-mechanics.minecart.powered-rail.boost-modifier", poweredRailBoostModifier);
|
|
}
|
|
|
|
public boolean catSpawning;
|