entities with passengers can go through portals now, closes #1540

This commit is contained in:
granny
2024-06-25 01:21:03 -07:00
parent ad910f8210
commit 39617d5c9d
115 changed files with 613 additions and 609 deletions

View File

@@ -32,10 +32,10 @@ index 6b76ca326d08853a8a508ec22d7bc6cf370223dd..07068e5f93289534f10c0b876dbf884a
// Purpur start
if (entity instanceof LivingEntity entityliving) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 97f3ce2c92caa52a0cf113080a260295f8a15687..870d394b388d82547662db833a806c071b6c2889 100644
index 98c01d48a01786abfd7a85c857ec92f46610c8ee..25f95e7d3be2b183ea7be58419ad5376b0135325 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1411,6 +1411,7 @@ public class PurpurWorldConfig {
@@ -1415,6 +1415,7 @@ public class PurpurWorldConfig {
public boolean creeperExplodeWhenKilled = false;
public boolean creeperHealthRadius = false;
public boolean creeperAlwaysDropExp = false;
@@ -43,7 +43,7 @@ index 97f3ce2c92caa52a0cf113080a260295f8a15687..870d394b388d82547662db833a806c07
private void creeperSettings() {
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
@@ -1429,6 +1430,7 @@ public class PurpurWorldConfig {
@@ -1433,6 +1434,7 @@ public class PurpurWorldConfig {
creeperExplodeWhenKilled = getBoolean("mobs.creeper.explode-when-killed", creeperExplodeWhenKilled);
creeperHealthRadius = getBoolean("mobs.creeper.health-impacts-explosion", creeperHealthRadius);
creeperAlwaysDropExp = getBoolean("mobs.creeper.always-drop-exp", creeperAlwaysDropExp);
@@ -51,7 +51,7 @@ index 97f3ce2c92caa52a0cf113080a260295f8a15687..870d394b388d82547662db833a806c07
}
public boolean dolphinRidable = false;
@@ -2258,6 +2260,7 @@ public class PurpurWorldConfig {
@@ -2262,6 +2264,7 @@ public class PurpurWorldConfig {
public boolean piglinTakeDamageFromWater = false;
public int piglinPortalSpawnModifier = 2000;
public boolean piglinAlwaysDropExp = false;
@@ -59,7 +59,7 @@ index 97f3ce2c92caa52a0cf113080a260295f8a15687..870d394b388d82547662db833a806c07
private void piglinSettings() {
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
@@ -2273,6 +2276,7 @@ public class PurpurWorldConfig {
@@ -2277,6 +2280,7 @@ public class PurpurWorldConfig {
piglinTakeDamageFromWater = getBoolean("mobs.piglin.takes-damage-from-water", piglinTakeDamageFromWater);
piglinPortalSpawnModifier = getInt("mobs.piglin.portal-spawn-modifier", piglinPortalSpawnModifier);
piglinAlwaysDropExp = getBoolean("mobs.piglin.always-drop-exp", piglinAlwaysDropExp);
@@ -67,7 +67,7 @@ index 97f3ce2c92caa52a0cf113080a260295f8a15687..870d394b388d82547662db833a806c07
}
public boolean piglinBruteRidable = false;
@@ -2557,6 +2561,7 @@ public class PurpurWorldConfig {
@@ -2561,6 +2565,7 @@ public class PurpurWorldConfig {
public double skeletonScale = 1.0D;
public boolean skeletonTakeDamageFromWater = false;
public boolean skeletonAlwaysDropExp = false;
@@ -75,7 +75,7 @@ index 97f3ce2c92caa52a0cf113080a260295f8a15687..870d394b388d82547662db833a806c07
private void skeletonSettings() {
skeletonRidable = getBoolean("mobs.skeleton.ridable", skeletonRidable);
skeletonRidableInWater = getBoolean("mobs.skeleton.ridable-in-water", skeletonRidableInWater);
@@ -2570,6 +2575,7 @@ public class PurpurWorldConfig {
@@ -2574,6 +2579,7 @@ public class PurpurWorldConfig {
skeletonScale = Mth.clamp(getDouble("mobs.skeleton.attributes.scale", skeletonScale), 0.0625D, 16.0D);
skeletonTakeDamageFromWater = getBoolean("mobs.skeleton.takes-damage-from-water", skeletonTakeDamageFromWater);
skeletonAlwaysDropExp = getBoolean("mobs.skeleton.always-drop-exp", skeletonAlwaysDropExp);
@@ -83,7 +83,7 @@ index 97f3ce2c92caa52a0cf113080a260295f8a15687..870d394b388d82547662db833a806c07
}
public boolean skeletonHorseRidable = false;
@@ -3139,6 +3145,7 @@ public class PurpurWorldConfig {
@@ -3143,6 +3149,7 @@ public class PurpurWorldConfig {
public boolean zombieBypassMobGriefing = false;
public boolean zombieTakeDamageFromWater = false;
public boolean zombieAlwaysDropExp = false;
@@ -91,7 +91,7 @@ index 97f3ce2c92caa52a0cf113080a260295f8a15687..870d394b388d82547662db833a806c07
private void zombieSettings() {
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
@@ -3158,6 +3165,7 @@ public class PurpurWorldConfig {
@@ -3162,6 +3169,7 @@ public class PurpurWorldConfig {
zombieBypassMobGriefing = getBoolean("mobs.zombie.bypass-mob-griefing", zombieBypassMobGriefing);
zombieTakeDamageFromWater = getBoolean("mobs.zombie.takes-damage-from-water", zombieTakeDamageFromWater);
zombieAlwaysDropExp = getBoolean("mobs.zombie.always-drop-exp", zombieAlwaysDropExp);