Files
Purpur/patches/server/0130-Flying-squids-Oh-my.patch
jmp 7174d63c4e PaperPR - Projectile load/save limit per chunk
- Dropped "Add option to disable saving projectiles to disk" in favor of the above patch
 - Config migration is automatic. If "gameplay-mechanics.save-projectiles-to-disk" was set to false in purpur.yml, "projectile-load-save-per-chunk-limit" will be set to 0 in paper.yml (resulting in unchanged behaviour)
2020-11-30 19:38:23 -08:00

57 lines
2.5 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Sun, 4 Oct 2020 12:00:42 -0500
Subject: [PATCH] Flying squids! Oh my!
diff --git a/src/main/java/net/minecraft/server/EntitySquid.java b/src/main/java/net/minecraft/server/EntitySquid.java
index 70b952f10a..cee2265016 100644
--- a/src/main/java/net/minecraft/server/EntitySquid.java
+++ b/src/main/java/net/minecraft/server/EntitySquid.java
@@ -51,6 +51,11 @@ public class EntitySquid extends EntityWaterAnimal {
vector.setX(cos * x - sine * z);
vector.setZ(sine * x + cos * z);
}
+
+ @Override
+ public boolean isInWater() {
+ return this.inWater || world.purpurConfig.squidsCanFly;
+ }
// Purpur end
@Override
@@ -116,6 +121,7 @@ public class EntitySquid extends EntityWaterAnimal {
}
if (this.aH()) {
+ if (world.purpurConfig.squidsCanFly) setNoGravity(!inWater); // Purpur
if (this.bp < 3.1415927F) {
float f = this.bp / 3.1415927F;
@@ -323,7 +329,7 @@ public class EntitySquid extends EntityWaterAnimal {
if (i > 100) {
this.b.a(0.0F, 0.0F, 0.0F);
- } else if (this.b.getRandom().nextInt(50) == 0 || !this.b.inWater || !this.b.eK()) {
+ } else if (this.b.getRandom().nextInt(50) == 0 || !this.b.isInWater() || !this.b.eK()) { // Purpur
float f = this.b.getRandom().nextFloat() * 6.2831855F;
float f1 = MathHelper.cos(f) * 0.2F;
float f2 = -0.1F + this.b.getRandom().nextFloat() * 0.2F;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 118226569e..49e7690ef2 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -862,10 +862,12 @@ public class PurpurWorldConfig {
public boolean squidRidable = false;
public boolean squidImmuneToEAR = true;
public double squidOffsetWaterCheck = 0.0D;
+ public boolean squidsCanFly = false;
private void squidSettings() {
squidRidable = getBoolean("mobs.squid.ridable", squidRidable);
squidImmuneToEAR = getBoolean("mobs.squid.immune-to-EAR", squidImmuneToEAR);
squidOffsetWaterCheck = getDouble("mobs.squid.water-offset-check", squidOffsetWaterCheck);
+ squidsCanFly = getBoolean("mobs.squid.can-fly", squidsCanFly);
}
public boolean spiderRidable = false;