Update to 1.16.3

Upstream has released updates that appears to apply and compile correctly

Paper Changes:
7d85344e (1.16.3) Missed some fixes to include in commit
64ed4298 (FIRST 1.16.3): Update Paper to 1.16.3
fa9c5e0f (FINAL 1.16.2) Improve Entity Activation Range passenger behavior
6fda3fd0 (FINAL 1.16.2) Improve Timings support for Active vs Inactive vs Passengers
794e6baf Add additional open container api to HumanEntity
44e822f7 Fix block data exception when cancelling PortalCreateEvent (#4199)
This commit is contained in:
William Blake Galbreath
2020-09-10 21:09:10 -05:00
parent de30a3e5e2
commit dc49efe49a
22 changed files with 194 additions and 179 deletions

View File

@@ -279,24 +279,18 @@ Simply return.
Do not run vanilla update logic when eigencraft is enabled
Fix missing block property portal crash
Looks like it appears when the portal isn't created (cancelled
event). So, just use the original direction and call it a day.
diff --git a/pom.xml b/pom.xml
index d018f900d..4f45b8158 100644
index 838f199b6..f009b05e4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,11 +1,11 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
- <artifactId>paper</artifactId>
+ <artifactId>tuinity</artifactId>
<packaging>jar</packaging>
<version>1.16.2-R0.1-SNAPSHOT</version>
<version>1.16.3-R0.1-SNAPSHOT</version>
- <name>Paper</name>
- <url>https://papermc.io</url>
+ <name>Tuinity-Server</name>
@@ -345,7 +339,7 @@ index d018f900d..4f45b8158 100644
</configuration>
<executions>
diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java
index dd0722397..85b25eace 100644
index 884b59d47..68ab5ccb2 100644
--- a/src/main/java/co/aikar/timings/MinecraftTimings.java
+++ b/src/main/java/co/aikar/timings/MinecraftTimings.java
@@ -43,6 +43,9 @@ public final class MinecraftTimings {
@@ -489,10 +483,10 @@ index e7624948e..77df68888 100644
diff --git a/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java b/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java
new file mode 100644
index 000000000..f599725e1
index 000000000..b57006d04
--- /dev/null
+++ b/src/main/java/com/tuinity/tuinity/chunk/SingleThreadChunkRegionManager.java
@@ -0,0 +1,329 @@
@@ -0,0 +1,349 @@
+package com.tuinity.tuinity.chunk;
+
+import co.aikar.timings.MinecraftTimings;
@@ -502,6 +496,7 @@ index 000000000..f599725e1
+import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap;
+import it.unimi.dsi.fastutil.objects.ReferenceLinkedOpenHashSet;
+import it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet;
+import net.minecraft.server.ChunkCoordIntPair;
+import net.minecraft.server.MCUtil;
+import net.minecraft.server.WorldServer;
+import java.util.ArrayList;
@@ -659,6 +654,7 @@ index 000000000..f599725e1
+ protected void recalculateRegion(final Region<T> region) {
+ this.regionRecalculateTimings.startTiming();
+ try {
+ region.markedForRecalc = false;
+ // clear unused regions
+ for (final Iterator<RegionSection<T>> iterator = region.deadSections.iterator(); iterator.hasNext(); ) {
+ final RegionSection<T> deadRegion = iterator.next();
@@ -745,7 +741,7 @@ index 000000000..f599725e1
+
+ protected void markRegionDead(final RegionSection<T> section) {
+ this.deadSections.add(section);
+ if (!this.markedForRecalc && this.sections.size() >= this.regionManager.minSectionRecalcCount && this.getDeadSectionPercent() >= this.regionManager.maxDeadRegionPercent) {
+ if (!this.markedForRecalc && (this.sections.size() >= this.regionManager.minSectionRecalcCount || this.sections.size() == this.deadSections.size()) && this.getDeadSectionPercent() >= this.regionManager.maxDeadRegionPercent) {
+ this.regionManager.addToRecalcQueue(this);
+ this.markedForRecalc = true;
+ }
@@ -798,9 +794,16 @@ index 000000000..f599725e1
+ this.data.put(key, data);
+ }
+
+ private static long getChunkIndex(final int chunkX, final int chunkZ) {
+ return 1L << ((chunkX & (REGION_CHUNK_SIZE - 1)) | ((chunkZ & (REGION_CHUNK_SIZE - 1)) << REGION_CHUNK_SIZE_SHIFT));
+ }
+
+ protected void addChunk(final int chunkX, final int chunkZ) {
+ final long bitset = this.chunksBitset;
+ this.chunksBitset = bitset | (1L << ((chunkX & (REGION_CHUNK_SIZE - 1)) | ((chunkZ & (REGION_CHUNK_SIZE - 1)) << REGION_CHUNK_SIZE_SHIFT)));
+ final long after = this.chunksBitset = bitset | getChunkIndex(chunkX, chunkZ);
+ if (after == bitset) {
+ throw new IllegalStateException("Cannot add a chunk to a region which already has the chunk! RegionSection: " + this + ", global chunk: " + new ChunkCoordIntPair(chunkX, chunkZ).toString());
+ }
+ if (bitset != 0L) {
+ return;
+ }
@@ -808,12 +811,23 @@ index 000000000..f599725e1
+ }
+
+ protected void removeChunk(final int chunkX, final int chunkZ) {
+ final long bitset = this.chunksBitset |= ~(1L << ((chunkX & (REGION_CHUNK_SIZE - 1)) | ((chunkZ & (REGION_CHUNK_SIZE - 1)) << REGION_CHUNK_SIZE_SHIFT)));
+ final long before = this.chunksBitset;
+ final long bitset = this.chunksBitset = before & ~getChunkIndex(chunkX, chunkZ);
+ if (before == bitset) {
+ throw new IllegalStateException("Cannot remove a chunk from a region which does not have that chunk! RegionSection: " + this + ", global chunk: " + new ChunkCoordIntPair(chunkX, chunkZ).toString());
+ }
+ if (bitset != 0L) {
+ return;
+ }
+ this.region.markRegionDead(this);
+ }
+
+ @Override
+ public String toString() {
+ return "RegionSection{" +
+ "regionCoordinate=" + new ChunkCoordIntPair(this.regionCoordinate).toString() +
+ '}';
+ }
+ }
+
+ public static interface RegionDataCreator<E extends Enum<E> & RegionDataCreator<E>> {
@@ -1212,10 +1226,10 @@ index 000000000..08ed24325
\ No newline at end of file
diff --git a/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java b/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java
new file mode 100644
index 000000000..b0f1e21e6
index 000000000..67fb1b533
--- /dev/null
+++ b/src/main/java/com/tuinity/tuinity/util/maplist/IteratorSafeOrderedReferenceSet.java
@@ -0,0 +1,271 @@
@@ -0,0 +1,274 @@
+package com.tuinity.tuinity.util.maplist;
+
+import it.unimi.dsi.fastutil.objects.Reference2IntLinkedOpenHashMap;
@@ -1314,6 +1328,9 @@ index 000000000..b0f1e21e6
+ this.firstInvalidIndex = index;
+ }
+ this.listElements[index] = null;
+ if (this.iteratorCount == 0 && this.getFragFactor() >= this.maxFragFactor) {
+ this.defrag();
+ }
+ return true;
+ } else {
+ return this.pendingAdditions.remove(element);
@@ -1870,7 +1887,7 @@ index 6b655b744..e811295b4 100644
}
diff --git a/src/main/java/net/minecraft/server/BlockBase.java b/src/main/java/net/minecraft/server/BlockBase.java
index 8265ed4da..2db488aba 100644
index 505d40278..9d85ce027 100644
--- a/src/main/java/net/minecraft/server/BlockBase.java
+++ b/src/main/java/net/minecraft/server/BlockBase.java
@@ -182,8 +182,8 @@ public abstract class BlockBase {
@@ -2005,19 +2022,6 @@ index 12a023044..9e5e6de52 100644
if (tileentity instanceof IInventory) {
InventoryUtils.dropInventory(world, blockposition, (IInventory) tileentity);
diff --git a/src/main/java/net/minecraft/server/BlockPortalShape.java b/src/main/java/net/minecraft/server/BlockPortalShape.java
index 6ef81aeb4..a84844726 100644
--- a/src/main/java/net/minecraft/server/BlockPortalShape.java
+++ b/src/main/java/net/minecraft/server/BlockPortalShape.java
@@ -227,7 +227,7 @@ public class BlockPortalShape {
public static ShapeDetectorShape a(WorldServer worldserver, BlockUtil.Rectangle blockutil_rectangle, EnumDirection.EnumAxis enumdirection_enumaxis, Vec3D vec3d, EntitySize entitysize, Vec3D vec3d1, float f, float f1, CraftPortalEvent portalEventInfo) { // CraftBukkit // PAIL rename toDetectorShape
BlockPosition blockposition = blockutil_rectangle.origin;
IBlockData iblockdata = worldserver.getType(blockposition);
- EnumDirection.EnumAxis enumdirection_enumaxis1 = (EnumDirection.EnumAxis) iblockdata.get(BlockProperties.E);
+ EnumDirection.EnumAxis enumdirection_enumaxis1 = !iblockdata.contains(BlockProperties.E) ? enumdirection_enumaxis : (EnumDirection.EnumAxis) iblockdata.get(BlockProperties.E); // Tuinity - use provided direction if the block doesn't have one
double d0 = (double) blockutil_rectangle.side1;
double d1 = (double) blockutil_rectangle.side2;
int i = enumdirection_enumaxis == enumdirection_enumaxis1 ? 0 : 90;
diff --git a/src/main/java/net/minecraft/server/BlockPosition.java b/src/main/java/net/minecraft/server/BlockPosition.java
index 2d887af90..2291135ea 100644
--- a/src/main/java/net/minecraft/server/BlockPosition.java
@@ -2980,7 +2984,7 @@ index 95ef96286..73163b417 100644
T t0 = this.h.a(this.a.a(i));
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index 1c878265b..5907caa74 100644
index 0eabd62ad..c4bbe4463 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -170,6 +170,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
@@ -3005,10 +3009,10 @@ index 550232cb3..229c3b0f0 100644
throwable = throwable1;
throw throwable1;
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 1ee01486f..630fb5265 100644
index cfb14c54d..3c63327ca 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -137,7 +137,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -135,7 +135,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
public double D;
public double E;
public double F;
@@ -3017,7 +3021,7 @@ index 1ee01486f..630fb5265 100644
public boolean noclip;
public float I;
protected final Random random;
@@ -208,6 +208,14 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -205,6 +205,14 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
}
// CraftBukkit end
@@ -3032,7 +3036,7 @@ index 1ee01486f..630fb5265 100644
// Paper start - optimise entity tracking
final org.spigotmc.TrackingRange.TrackingRangeType trackingRangeType = org.spigotmc.TrackingRange.getTrackingRangeType(this);
@@ -223,6 +231,41 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -220,6 +228,41 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
}
// Paper end - optimise entity tracking
@@ -3074,7 +3078,7 @@ index 1ee01486f..630fb5265 100644
public Entity(EntityTypes<?> entitytypes, World world) {
this.id = Entity.entityCount.incrementAndGet();
this.passengers = Lists.newArrayList();
@@ -591,7 +634,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -588,7 +631,39 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return this.onGround;
}
@@ -3114,7 +3118,7 @@ index 1ee01486f..630fb5265 100644
if (this.noclip) {
this.a(this.getBoundingBox().c(vec3d));
this.recalcPosition();
@@ -619,7 +694,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -616,7 +691,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
// Paper end
vec3d = this.a(vec3d, enummovetype);
@@ -3123,7 +3127,7 @@ index 1ee01486f..630fb5265 100644
if (vec3d1.g() > 1.0E-7D) {
this.a(this.getBoundingBox().c(vec3d1));
@@ -735,6 +810,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -732,6 +807,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
this.world.getMethodProfiler().exit();
}
@@ -3137,7 +3141,7 @@ index 1ee01486f..630fb5265 100644
}
protected BlockPosition ao() {
@@ -815,6 +897,132 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -812,6 +894,132 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return d0;
}
@@ -3270,7 +3274,7 @@ index 1ee01486f..630fb5265 100644
private Vec3D g(Vec3D vec3d) {
AxisAlignedBB axisalignedbb = this.getBoundingBox();
VoxelShapeCollision voxelshapecollision = VoxelShapeCollision.a(this);
@@ -850,6 +1058,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -847,6 +1055,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return vec3d1;
}
@@ -3278,7 +3282,7 @@ index 1ee01486f..630fb5265 100644
public static double c(Vec3D vec3d) {
return vec3d.x * vec3d.x + vec3d.z * vec3d.z;
}
@@ -1934,11 +2143,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -1931,11 +2140,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return EnumInteractionResult.PASS;
}
@@ -3294,7 +3298,7 @@ index 1ee01486f..630fb5265 100644
return false;
}
@@ -3275,12 +3486,16 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -3273,12 +3484,16 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return this.locBlock;
}
@@ -3311,7 +3315,7 @@ index 1ee01486f..630fb5265 100644
}
public void setMot(double d0, double d1, double d2) {
@@ -3335,7 +3550,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -3333,7 +3548,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
}
// Paper end
if (this.loc.x != d0 || this.loc.y != d1 || this.loc.z != d2) {
@@ -3335,10 +3339,10 @@ index 314886398..79de11ce2 100644
this.setPersistent();
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index c622fb704..ec9174206 100644
index 76185f042..0e000c718 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2846,7 +2846,11 @@ public abstract class EntityLiving extends Entity {
@@ -2847,7 +2847,11 @@ public abstract class EntityLiving extends Entity {
return;
}
// Paper - end don't run getEntities if we're not going to use its result
@@ -3351,7 +3355,7 @@ index c622fb704..ec9174206 100644
if (!list.isEmpty()) {
// Paper - move up
@@ -2875,6 +2879,9 @@ public abstract class EntityLiving extends Entity {
@@ -2876,6 +2880,9 @@ public abstract class EntityLiving extends Entity {
this.C(entity);
}
}
@@ -3362,7 +3366,7 @@ index c622fb704..ec9174206 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index 831298e3b..7ab013058 100644
index 4efc40c01..f322dccd8 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -74,6 +74,7 @@ public class EntityTrackerEntry {
@@ -3636,7 +3640,7 @@ index ff74be145..653ba0f1d 100644
0, 2, 60L, TimeUnit.SECONDS,
new LinkedBlockingQueue<Runnable>(),
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 65e8dc340..106661fae 100644
index 883c17f00..64f7e448c 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -985,7 +985,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -3829,7 +3833,7 @@ index 65e8dc340..106661fae 100644
public CrashReport b(CrashReport crashreport) {
diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java
index a85154aa2..94533e416 100644
index 921b60469..b494d9c4c 100644
--- a/src/main/java/net/minecraft/server/NavigationAbstract.java
+++ b/src/main/java/net/minecraft/server/NavigationAbstract.java
@@ -21,7 +21,7 @@ public abstract class NavigationAbstract {
@@ -3841,9 +3845,9 @@ index a85154aa2..94533e416 100644
protected long n;
protected PathfinderAbstract o;
private BlockPosition p;
@@ -29,6 +29,13 @@ public abstract class NavigationAbstract {
private float r;
@@ -30,6 +30,13 @@ public abstract class NavigationAbstract {
private final Pathfinder s; public Pathfinder getPathfinder() { return this.s; } // Paper - OBFHELPER
private boolean t;
+ // Tuinity start
+ public boolean isViableForPathRecalculationChecking() {
@@ -3853,9 +3857,9 @@ index a85154aa2..94533e416 100644
+ // Tuinity end
+
public NavigationAbstract(EntityInsentient entityinsentient, World world) {
this.g = Vec3D.a;
this.g = Vec3D.ORIGIN;
this.h = BaseBlockPosition.ZERO;
@@ -384,7 +391,7 @@ public abstract class NavigationAbstract {
@@ -393,7 +400,7 @@ public abstract class NavigationAbstract {
}
public void b(BlockPosition blockposition) {
@@ -4271,7 +4275,7 @@ index fc6197dd5..d4fd01cd2 100644
if (chunk != null) {
playerchunkmap.callbackExecutor.execute(() -> {
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index fcd3388d8..1887b93e5 100644
index fcd3388d8..6016a7bc5 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -121,31 +121,28 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -4415,15 +4419,26 @@ index fcd3388d8..1887b93e5 100644
asyncSaveData, chunk);
chunk.setLastSaved(this.world.getTime());
@@ -1043,6 +1071,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
this.lightEngine.a(ichunkaccess.getPos());
@@ -1020,7 +1048,9 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
if (completablefuture1 != completablefuture) {
this.a(i, playerchunk);
} else {
- if (this.pendingUnload.remove(i, playerchunk) && ichunkaccess != null) {
+ // Tuinity start
+ boolean removed;
+ if ((removed = this.pendingUnload.remove(i, playerchunk)) && ichunkaccess != null) { // Tuinity end
if (ichunkaccess instanceof Chunk) {
((Chunk) ichunkaccess).setLoaded(false);
}
@@ -1044,6 +1074,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
this.lightEngine.queueUpdate();
this.worldLoadListener.a(ichunkaccess.getPos(), (ChunkStatus) null);
+ this.dataRegionManager.removeChunk(playerchunk.location.x, playerchunk.location.z); // Tuinity
}
+ if (removed) this.dataRegionManager.removeChunk(playerchunk.location.x, playerchunk.location.z); // Tuinity
}
@@ -1059,6 +1088,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
};
@@ -1059,6 +1090,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
protected boolean b() {
@@ -4431,7 +4446,7 @@ index fcd3388d8..1887b93e5 100644
if (!this.updatingChunksModified) {
return false;
} else {
@@ -1246,7 +1276,10 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1246,7 +1278,10 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
// Paper end
this.mailboxWorldGen.a(ChunkTaskQueueSorter.a(playerchunk, runnable));
@@ -4443,7 +4458,7 @@ index fcd3388d8..1887b93e5 100644
}
protected void c(ChunkCoordIntPair chunkcoordintpair) {
@@ -1498,6 +1531,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1498,6 +1533,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
public void setViewDistance(int i) { // Paper - public
@@ -4451,7 +4466,7 @@ index fcd3388d8..1887b93e5 100644
int j = MathHelper.clamp(i + 1, 3, 33); // Paper - diff on change, these make the lower view distance limit 2 and the upper 32
if (j != this.viewDistance) {
@@ -1511,6 +1545,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1511,6 +1547,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
// Paper start - no-tick view distance
public final void setNoTickViewDistance(int viewDistance) {
@@ -4459,7 +4474,7 @@ index fcd3388d8..1887b93e5 100644
viewDistance = viewDistance == -1 ? -1 : MathHelper.clamp(viewDistance, 2, 32);
this.noTickViewDistance = viewDistance;
@@ -2037,23 +2072,20 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -2037,23 +2074,20 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
private final void processTrackQueue() {
this.world.timings.tracker1.startTiming();
try {
@@ -5804,15 +5819,15 @@ index 2484293b1..1496c43fc 100644
private static JsonElement a(UserCache.UserCacheEntry usercache_usercacheentry, DateFormat dateformat) {
diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java
index 3048ba008..84858ba39 100644
index 7f05587d4..5af554870 100644
--- a/src/main/java/net/minecraft/server/Vec3D.java
+++ b/src/main/java/net/minecraft/server/Vec3D.java
@@ -4,7 +4,7 @@ import java.util.EnumSet;
public class Vec3D implements IPosition {
- public static final Vec3D a = new Vec3D(0.0D, 0.0D, 0.0D);
+ public static final Vec3D a = new Vec3D(0.0D, 0.0D, 0.0D); public static Vec3D getZeroVector() { return Vec3D.a; } // Tuinity - OBFHELPER
- public static final Vec3D ORIGIN = new Vec3D(0.0D, 0.0D, 0.0D);
+ public static final Vec3D ORIGIN = new Vec3D(0.0D, 0.0D, 0.0D); public static Vec3D getZeroVector() { return Vec3D.ORIGIN; } // Tuinity - OBFHELPER
public final double x;
public final double y;
public final double z;
@@ -6137,7 +6152,7 @@ index e21c747b6..4bdadffee 100644
return voxelshape != b() && voxelshape1 != b() ? (voxelshape.isEmpty() && voxelshape1.isEmpty() ? false : !c(b(), b(voxelshape, voxelshape1, OperatorBoolean.OR), OperatorBoolean.ONLY_FIRST)) : true;
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 724aec660..699dc4343 100644
index eaa285393..a490662e0 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -75,7 +75,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@@ -6308,7 +6323,7 @@ index f01186988..26a8c4ffe 100644
return this.j.d();
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index efe10b7f5..37c4abec6 100644
index 25cdd7b0f..2eff22ed5 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -51,12 +51,13 @@ import org.bukkit.event.server.MapInitializeEvent;
@@ -6880,8 +6895,8 @@ index efe10b7f5..37c4abec6 100644
if (!(entity instanceof EntityHuman) && !this.getChunkProvider().a(entity)) {
this.chunkCheck(entity);
} else {
@@ -851,6 +1299,11 @@ public class WorldServer extends World implements GeneratorAccessSeed {
} // Paper - timings
@@ -858,6 +1306,11 @@ public class WorldServer extends World implements GeneratorAccessSeed {
//} finally { timer.stopTiming(); } // Paper - timings - move up
}
+ // Tuinity start - log detailed entity tick information
@@ -6892,7 +6907,7 @@ index efe10b7f5..37c4abec6 100644
}
public void a(Entity entity, Entity entity1) {
@@ -894,6 +1347,12 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -915,6 +1368,12 @@ public class WorldServer extends World implements GeneratorAccessSeed {
int i = MathHelper.floor(entity.locX() / 16.0D);
int j = Math.min(15, Math.max(0, MathHelper.floor(entity.locY() / 16.0D))); // Paper - stay consistent with chunk add/remove behavior
int k = MathHelper.floor(entity.locZ() / 16.0D);
@@ -6905,7 +6920,7 @@ index efe10b7f5..37c4abec6 100644
if (!entity.inChunk || entity.chunkX != i || entity.chunkY != j || entity.chunkZ != k) {
// Paper start - remove entity if its in a chunk more correctly.
@@ -903,6 +1362,12 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -924,6 +1383,12 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
// Paper end
@@ -6918,7 +6933,7 @@ index efe10b7f5..37c4abec6 100644
if (entity.inChunk && this.isChunkLoaded(entity.chunkX, entity.chunkZ)) {
this.getChunkAt(entity.chunkX, entity.chunkZ).a(entity, entity.chunkY);
}
@@ -916,6 +1381,11 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -937,6 +1402,11 @@ public class WorldServer extends World implements GeneratorAccessSeed {
} else {
this.getChunkAt(i, k).a(entity);
}
@@ -6930,7 +6945,7 @@ index efe10b7f5..37c4abec6 100644
}
this.getMethodProfiler().exit();
@@ -1267,7 +1737,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1288,7 +1758,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
Entity entity = (Entity) iterator.next();
if (!(entity instanceof EntityPlayer)) {
@@ -6939,7 +6954,7 @@ index efe10b7f5..37c4abec6 100644
throw (IllegalStateException) SystemUtils.c((Throwable) (new IllegalStateException("Removing entity while ticking!")));
}
@@ -1295,6 +1765,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1316,6 +1786,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
public void unregisterEntity(Entity entity) {
org.spigotmc.AsyncCatcher.catchOp("entity unregister"); // Spigot
@@ -6947,7 +6962,7 @@ index efe10b7f5..37c4abec6 100644
// Paper start - fix entity registration issues
if (entity instanceof EntityComplexPart) {
// Usually this is a no-op for complex parts, and ID's should be removed, but go ahead and remove it anyways
@@ -1361,17 +1832,108 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1382,17 +1853,108 @@ public class WorldServer extends World implements GeneratorAccessSeed {
this.getScoreboard().a(entity);
// CraftBukkit start - SPIGOT-5278
if (entity instanceof EntityDrowned) {
@@ -7059,7 +7074,7 @@ index efe10b7f5..37c4abec6 100644
private void registerEntity(Entity entity) {
org.spigotmc.AsyncCatcher.catchOp("entity register"); // Spigot
// Paper start - don't double enqueue entity registration
@@ -1382,7 +1944,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1403,7 +1965,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
return;
}
// Paper end
@@ -7068,7 +7083,7 @@ index efe10b7f5..37c4abec6 100644
if (!entity.isQueuedForRegister) { // Paper
this.entitiesToAdd.add(entity);
entity.isQueuedForRegister = true; // Paper
@@ -1390,6 +1952,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1411,6 +1973,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
} else {
entity.isQueuedForRegister = false; // Paper
this.entitiesById.put(entity.getId(), entity);
@@ -7076,7 +7091,7 @@ index efe10b7f5..37c4abec6 100644
if (entity instanceof EntityEnderDragon) {
EntityComplexPart[] aentitycomplexpart = ((EntityEnderDragon) entity).eJ();
int i = aentitycomplexpart.length;
@@ -1398,6 +1961,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1419,6 +1982,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
EntityComplexPart entitycomplexpart = aentitycomplexpart[j];
this.entitiesById.put(entitycomplexpart.getId(), entitycomplexpart);
@@ -7084,7 +7099,7 @@ index efe10b7f5..37c4abec6 100644
}
}
@@ -1422,12 +1986,16 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1443,12 +2007,16 @@ public class WorldServer extends World implements GeneratorAccessSeed {
// this.getChunkProvider().addEntity(entity); // Paper - moved down below valid=true
// CraftBukkit start - SPIGOT-5278
if (entity instanceof EntityDrowned) {
@@ -7104,7 +7119,7 @@ index efe10b7f5..37c4abec6 100644
}
entity.valid = true; // CraftBukkit
this.getChunkProvider().addEntity(entity); // Paper - from above to be below valid=true
@@ -1443,7 +2011,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1464,7 +2032,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
public void removeEntity(Entity entity) {
@@ -7113,7 +7128,7 @@ index efe10b7f5..37c4abec6 100644
throw (IllegalStateException) SystemUtils.c((Throwable) (new IllegalStateException("Removing entity while ticking!")));
} else {
this.removeEntityFromChunk(entity);
@@ -1544,8 +2112,26 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1565,8 +2133,26 @@ public class WorldServer extends World implements GeneratorAccessSeed {
VoxelShape voxelshape1 = iblockdata1.getCollisionShape(this, blockposition);
if (VoxelShapes.c(voxelshape, voxelshape1, OperatorBoolean.NOT_SAME)) {
@@ -7141,7 +7156,7 @@ index efe10b7f5..37c4abec6 100644
while (iterator.hasNext()) {
NavigationAbstract navigationabstract = (NavigationAbstract) iterator.next();
@@ -1553,7 +2139,21 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1574,7 +2160,21 @@ public class WorldServer extends World implements GeneratorAccessSeed {
if (!navigationabstract.i()) {
navigationabstract.b(blockposition);
}
@@ -7191,7 +7206,7 @@ index ff8ba5457..ecedc167d 100644
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 5f5b39b3b..2b0e1e698 100644
index fd649a0d2..77adc7528 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -230,7 +230,7 @@ import javax.annotation.Nullable; // Paper
@@ -7299,7 +7314,7 @@ index 299f57ca2..4de6252f0 100644
}, MinecraftServer.getServer());
}
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index bac292e6d..b4e65963e 100644
index 9118f0542..a9c96d45c 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -138,6 +138,13 @@ public class Main {
@@ -7326,7 +7341,7 @@ index bac292e6d..b4e65963e 100644
//Thread.sleep(TimeUnit.SECONDS.toMillis(20));
// Paper End
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
index 3584d20c7..f336f4ecf 100644
index 3524b6775..b668b7c03 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java
@@ -214,7 +214,7 @@ public class CraftBlock implements Block {

View File

@@ -5,17 +5,17 @@ Subject: [PATCH] Rebrand
diff --git a/pom.xml b/pom.xml
index 4f45b8158..02ee19722 100644
index f009b05e4..c6bd3d4fd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,11 +1,11 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
- <artifactId>tuinity</artifactId>
+ <artifactId>purpur</artifactId>
<packaging>jar</packaging>
<version>1.16.2-R0.1-SNAPSHOT</version>
<version>1.16.3-R0.1-SNAPSHOT</version>
- <name>Tuinity-Server</name>
- <url>https://github.com/Spottedleaf/Tuinity</url>
+ <name>Purpur-Server</name>
@@ -98,7 +98,7 @@ index 74ed02fa9..c1280478e 100644
.completer(new ConsoleCommandCompleter(this.server))
);
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 106661fae..045c21d00 100644
index 64f7e448c..bab892a93 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1510,7 +1510,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -232,7 +232,7 @@ index 000000000..d8b408f06
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 2b0e1e698..0b789d179 100644
index 77adc7528..6d21293e5 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -230,7 +230,7 @@ import javax.annotation.Nullable; // Paper
@@ -245,7 +245,7 @@ index 2b0e1e698..0b789d179 100644
private final String bukkitVersion = Versioning.getBukkitVersion();
private final Logger logger = Logger.getLogger("Minecraft");
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
index a9728c6c5..aef0a0eb1 100644
index b5ec7a161..88f58e755 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
@@ -327,7 +327,7 @@ public final class CraftMagicNumbers implements UnsafeValues {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] PlayerSetSpawnerTypeWithEggEvent
diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java
index e23247e0a..2faa83fad 100644
index a71ad8418..bf5436510 100644
--- a/src/main/java/net/minecraft/server/EntityTypes.java
+++ b/src/main/java/net/minecraft/server/EntityTypes.java
@@ -143,6 +143,16 @@ public class EntityTypes<T extends Entity> {
@@ -25,7 +25,7 @@ index e23247e0a..2faa83fad 100644
public static MinecraftKey getName(EntityTypes<?> entitytypes) {
return IRegistry.ENTITY_TYPE.getKey(entitytypes);
}
@@ -276,6 +286,16 @@ public class EntityTypes<T extends Entity> {
@@ -286,6 +296,16 @@ public class EntityTypes<T extends Entity> {
return this.bg;
}
@@ -42,7 +42,7 @@ index e23247e0a..2faa83fad 100644
public String getDescriptionId() { return f(); } // Paper - OBFHELPER
public String f() {
if (this.bo == null) {
@@ -285,6 +305,7 @@ public class EntityTypes<T extends Entity> {
@@ -295,6 +315,7 @@ public class EntityTypes<T extends Entity> {
return this.bo;
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] EMC - MonsterEggSpawnEvent
diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java
index 2faa83fad..c03b0b58b 100644
index bf5436510..b089c8a3f 100644
--- a/src/main/java/net/minecraft/server/EntityTypes.java
+++ b/src/main/java/net/minecraft/server/EntityTypes.java
@@ -177,19 +177,45 @@ public class EntityTypes<T extends Entity> {
@@ -187,19 +187,45 @@ public class EntityTypes<T extends Entity> {
@Nullable
public Entity spawnCreature(WorldServer worldserver, @Nullable ItemStack itemstack, @Nullable EntityHuman entityhuman, BlockPosition blockposition, EnumMobSpawn enummobspawn, boolean flag, boolean flag1) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] EntityMoveEvent
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index c9cff4c07..c7c452e7f 100644
index baf35465b..84e4c754a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2801,6 +2801,20 @@ public abstract class EntityLiving extends Entity {
@@ -2802,6 +2802,20 @@ public abstract class EntityLiving extends Entity {
this.collideNearby();
this.world.getMethodProfiler().exit();

View File

@@ -17,10 +17,10 @@ index c57e23e16..92aa104dc 100644
public AttributeModifiable a(AttributeBase attributebase) {
return (AttributeModifiable) this.b.computeIfAbsent(attributebase, (attributebase1) -> {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 5dd2a52d3..6bf087bd2 100644
index 3c63327ca..ebe5dc115 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -137,7 +137,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -135,7 +135,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
public double D;
public double E;
public double F;
@@ -112,7 +112,7 @@ index 9f4f56c47..8dce2aad7 100644
}
}
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index 9cf496b5e..be23120a2 100644
index 04eff0182..7c58c8238 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -940,6 +940,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -146,10 +146,10 @@ index 9cf496b5e..be23120a2 100644
return false;
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index c7c452e7f..cf56621ba 100644
index 84e4c754a..39f5ef025 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2159,7 +2159,7 @@ public abstract class EntityLiving extends Entity {
@@ -2160,7 +2160,7 @@ public abstract class EntityLiving extends Entity {
this.enderTeleportTo(vec3d.x, vec3d.y, vec3d.z);
}

View File

@@ -95,10 +95,10 @@ index a5718af9b..b6b4c8c49 100644
return this.E;
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 646f9180f..53ab03a29 100644
index 006ebc113..18af94ceb 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -2536,6 +2536,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -2557,6 +2557,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
}

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Cows eat mushrooms
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 6bf087bd2..2be922a71 100644
index ebe5dc115..9ab0572f2 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -2729,6 +2729,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2727,6 +2727,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
this.invulnerable = flag;
}
@@ -110,7 +110,7 @@ index 42e6761c8..cfb009c81 100644
public EntityCow createChild(WorldServer worldserver, EntityAgeable entityageable) {
return (EntityCow) EntityTypes.COW.a((World) worldserver);
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index cf56621ba..76575ea5f 100644
index 39f5ef025..ff412471c 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -81,7 +81,7 @@ public abstract class EntityLiving extends Entity {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Fix the dead lagging the server
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 2be922a71..5bb1d8e51 100644
index 9ab0572f2..d978f2b08 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1501,6 +1501,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -1498,6 +1498,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
this.pitch = MathHelper.a(f1, -90.0F, 90.0F) % 360.0F;
this.lastYaw = this.yaw;
this.lastPitch = this.pitch;
@@ -17,10 +17,10 @@ index 2be922a71..5bb1d8e51 100644
public void f(double d0, double d1, double d2) {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index d9c19f8f5..91fc7ba76 100644
index 75005b00d..3193e7172 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2477,7 +2477,7 @@ public abstract class EntityLiving extends Entity {
@@ -2478,7 +2478,7 @@ public abstract class EntityLiving extends Entity {
}
}

View File

@@ -17,10 +17,10 @@ index c2adc7f52..24a6102b3 100644
// Paper start
if (asyncsavedata == null && !entity.dead && (int) Math.floor(entity.locX()) >> 4 != chunk.getPos().x || (int) Math.floor(entity.locZ()) >> 4 != chunk.getPos().z) {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 5bb1d8e51..49cf334fc 100644
index d978f2b08..204d9e004 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -309,6 +309,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -306,6 +306,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
this.headHeight = this.getHeadHeight(EntityPose.STANDING, this.size);
}
@@ -34,7 +34,7 @@ index 5bb1d8e51..49cf334fc 100644
return false;
}
diff --git a/src/main/java/net/minecraft/server/EntityEnderSignal.java b/src/main/java/net/minecraft/server/EntityEnderSignal.java
index e3865a9b4..de55acd1c 100644
index 08da58677..3ff61434c 100644
--- a/src/main/java/net/minecraft/server/EntityEnderSignal.java
+++ b/src/main/java/net/minecraft/server/EntityEnderSignal.java
@@ -19,6 +19,13 @@ public class EntityEnderSignal extends Entity {
@@ -48,7 +48,7 @@ index e3865a9b4..de55acd1c 100644
+ }
+ // Purpur end
+
public void b(ItemStack itemstack) {
public void setItem(ItemStack itemstack) {
if (true || itemstack.getItem() != Items.ENDER_EYE || itemstack.hasTag()) { // CraftBukkit - always allow item changing
this.getDataWatcher().set(EntityEnderSignal.b, SystemUtils.a(itemstack.cloneItemStack(), (itemstack1) -> { // CraftBukkit - decompile error
diff --git a/src/main/java/net/minecraft/server/IProjectile.java b/src/main/java/net/minecraft/server/IProjectile.java

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable void damage height
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 49cf334fc..dfc54b6c1 100644
index 204d9e004..55e765a3e 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -612,7 +612,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -609,7 +609,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
// Paper start
protected void performVoidDamage() {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Climbing should not bypass cramming gamerule
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index dfc54b6c1..98b62223b 100644
index 55e765a3e..6628a15bf 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1693,6 +1693,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -1690,6 +1690,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
}
public boolean isCollidable() {
@@ -22,7 +22,7 @@ index dfc54b6c1..98b62223b 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index afa23395c..4f950c6aa 100644
index ab5d61848..484a5261c 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -320,7 +320,7 @@ public class EntityArmorStand extends EntityLiving {
@@ -35,7 +35,7 @@ index afa23395c..4f950c6aa 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityBat.java b/src/main/java/net/minecraft/server/EntityBat.java
index a726dd676..b84aa1db8 100644
index af67cf868..f230d84fa 100644
--- a/src/main/java/net/minecraft/server/EntityBat.java
+++ b/src/main/java/net/minecraft/server/EntityBat.java
@@ -50,7 +50,7 @@ public class EntityBat extends EntityAmbient {
@@ -48,7 +48,7 @@ index a726dd676..b84aa1db8 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityBoat.java b/src/main/java/net/minecraft/server/EntityBoat.java
index 0f25d7cd6..5887b7a26 100644
index 8d5594651..d8d4b6abf 100644
--- a/src/main/java/net/minecraft/server/EntityBoat.java
+++ b/src/main/java/net/minecraft/server/EntityBoat.java
@@ -106,7 +106,7 @@ public class EntityBoat extends Entity {
@@ -61,7 +61,7 @@ index 0f25d7cd6..5887b7a26 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
index da79c7e63..8cfbf8abf 100644
index 9f74d6e88..c7757f9d0 100644
--- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java
+++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
@@ -165,7 +165,7 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven
@@ -74,10 +74,10 @@ index da79c7e63..8cfbf8abf 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 91fc7ba76..ba4e4ace5 100644
index 3193e7172..8346d8f3d 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2865,7 +2865,7 @@ public abstract class EntityLiving extends Entity {
@@ -2866,7 +2866,7 @@ public abstract class EntityLiving extends Entity {
// Paper - end don't run getEntities if we're not going to use its result
// Tuinity start - reduce memory allocation from collideNearby
List<Entity> list = com.tuinity.tuinity.util.CachedLists.getTempGetEntitiesList();
@@ -86,7 +86,7 @@ index 91fc7ba76..ba4e4ace5 100644
try {
// Tuinity end - reduce memory allocation from collideNearby
@@ -3010,7 +3010,14 @@ public abstract class EntityLiving extends Entity {
@@ -3011,7 +3011,14 @@ public abstract class EntityLiving extends Entity {
@Override
public boolean isCollidable() {
@@ -103,7 +103,7 @@ index 91fc7ba76..ba4e4ace5 100644
// CraftBukkit start - collidable API
diff --git a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
index d5e129678..5e64ca8a0 100644
index 44eabc4ee..d6cb8becc 100644
--- a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
+++ b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
@@ -107,7 +107,7 @@ public abstract class EntityMinecartAbstract extends Entity {
@@ -131,7 +131,7 @@ index 34e08dda2..6bb73f869 100644
@Override
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index a99429080..2b22029ea 100644
index 1f41d101e..e30dbf51d 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1772,8 +1772,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Implement elytra settings
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index ba4e4ace5..11abe8a93 100644
index 8346d8f3d..45a297938 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2836,7 +2836,16 @@ public abstract class EntityLiving extends Entity {
@@ -2837,7 +2837,16 @@ public abstract class EntityLiving extends Entity {
if (itemstack.getItem() == Items.ELYTRA && ItemElytra.d(itemstack)) {
flag = true;
if (!this.world.isClientSide && (this.be + 1) % 20 == 0) {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Item entity immunities
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 98b62223b..5e010d115 100644
index 6628a15bf..e8199db7b 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1450,6 +1450,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -1447,6 +1447,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
}
@@ -68,7 +68,7 @@ index bc4f84c88..b6cb52c10 100644
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index c64bbde28..3c1cf5903 100644
index aea72b0db..29731da08 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -106,6 +106,15 @@ public class EntityTrackerEntry {

View File

@@ -17,10 +17,10 @@ index 6fe5678cf..bd0267ee4 100644
return (new EntityDamageSourceIndirect("indirectMagic", entity, entity1)).setIgnoreArmor().setMagic();
}
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 5e010d115..a15bcfc0b 100644
index e8199db7b..617ab96f1 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1569,6 +1569,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -1566,6 +1566,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return d3 * d3 + d4 * d4 + d5 * d5;
}
@@ -28,7 +28,7 @@ index 5e010d115..a15bcfc0b 100644
public double h(Entity entity) {
return this.e(entity.getPositionVector());
}
@@ -2100,8 +2101,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2097,8 +2098,8 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return this.a(new ItemStack(imaterial), (float) i);
}
@@ -108,7 +108,7 @@ index 362ca695d..1942fae27 100644
@Override
protected void saveData(NBTTagCompound nbttagcompound) {
diff --git a/src/main/java/net/minecraft/server/EntityPhantom.java b/src/main/java/net/minecraft/server/EntityPhantom.java
index 550f80bfd..b3616185d 100644
index 3a70900c7..92704a078 100644
--- a/src/main/java/net/minecraft/server/EntityPhantom.java
+++ b/src/main/java/net/minecraft/server/EntityPhantom.java
@@ -9,9 +9,10 @@ import javax.annotation.Nullable;

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Stop squids floating on top of water
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index a15bcfc0b..a5e639361 100644
index 617ab96f1..1fa6791cc 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -3399,8 +3399,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -3397,8 +3397,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
this.lastYaw = this.yaw;
}

View File

@@ -161,10 +161,10 @@ index bd0267ee4..8b36ac2b0 100644
this.B = true;
return this;
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index a5e639361..75e8b3367 100644
index 1fa6791cc..2cff6eb90 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -81,7 +81,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -79,7 +79,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
public com.destroystokyo.paper.loottable.PaperLootableInventoryData lootableData; // Paper
private CraftEntity bukkitEntity;
@@ -173,7 +173,7 @@ index a5e639361..75e8b3367 100644
boolean collisionLoadChunks = false; // Paper
Throwable addedToWorldStack; // Paper - entity debug
public CraftEntity getBukkitEntity() {
@@ -106,7 +106,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -104,7 +104,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
private int id;
public boolean i; public final boolean blocksEntitySpawning() { return this.i; } // Paper - OBFHELPER
public final List<Entity> passengers;
@@ -182,7 +182,7 @@ index a5e639361..75e8b3367 100644
@Nullable
private Entity vehicle;
public boolean attachedToPlayer;
@@ -122,7 +122,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -120,7 +120,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
public float lastYaw;
public float lastPitch;
private AxisAlignedBB boundingBox;
@@ -191,7 +191,7 @@ index a5e639361..75e8b3367 100644
public boolean positionChanged;
public boolean v;
public boolean velocityChanged;
@@ -178,7 +178,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -176,7 +176,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
private boolean az;
private final double[] aA;
private long aB;
@@ -200,7 +200,7 @@ index a5e639361..75e8b3367 100644
private float headHeight;
// CraftBukkit start
public boolean persist = true;
@@ -1460,6 +1460,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -1457,6 +1457,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return !this.justCreated && this.M.getDouble(TagsFluid.LAVA) > 0.0D;
}
@@ -208,7 +208,7 @@ index a5e639361..75e8b3367 100644
public void a(float f, Vec3D vec3d) {
Vec3D vec3d1 = a(vec3d, f, this.yaw);
@@ -2200,6 +2201,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2198,6 +2199,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return this.a(entity, false);
}
@@ -216,7 +216,7 @@ index a5e639361..75e8b3367 100644
public boolean a(Entity entity, boolean flag) {
for (Entity entity1 = entity; entity1.vehicle != null; entity1 = entity1.vehicle) {
if (entity1.vehicle == this) {
@@ -2295,6 +2297,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2293,6 +2295,13 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
this.passengers.add(entity);
}
@@ -230,7 +230,7 @@ index a5e639361..75e8b3367 100644
}
return true; // CraftBukkit
}
@@ -2335,6 +2344,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2333,6 +2342,12 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return false;
}
// Spigot end
@@ -243,7 +243,7 @@ index a5e639361..75e8b3367 100644
this.passengers.remove(entity);
entity.j = 60;
}
@@ -2500,6 +2515,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2498,6 +2513,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
this.setFlag(4, flag);
}
@@ -251,7 +251,7 @@ index a5e639361..75e8b3367 100644
public boolean bD() {
return this.glowing || this.world.isClientSide && this.getFlag(6);
}
@@ -2718,6 +2734,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2716,6 +2732,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
public void setHeadRotation(float f) {}
@@ -259,7 +259,7 @@ index a5e639361..75e8b3367 100644
public void n(float f) {}
public boolean bK() {
@@ -3152,6 +3169,18 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -3150,6 +3167,18 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
return false;
}
@@ -278,7 +278,7 @@ index a5e639361..75e8b3367 100644
@Override
public void sendMessage(IChatBaseComponent ichatbasecomponent, UUID uuid) {}
@@ -3594,4 +3623,47 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -3592,4 +3621,47 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
void accept(Entity entity, double d0, double d1, double d2);
}
@@ -327,7 +327,7 @@ index a5e639361..75e8b3367 100644
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/server/EntityBat.java b/src/main/java/net/minecraft/server/EntityBat.java
index b84aa1db8..34b7424c4 100644
index f230d84fa..bbf61d011 100644
--- a/src/main/java/net/minecraft/server/EntityBat.java
+++ b/src/main/java/net/minecraft/server/EntityBat.java
@@ -14,9 +14,48 @@ public class EntityBat extends EntityAmbient {
@@ -1436,7 +1436,7 @@ index c4b1f318f..30f602bbc 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityEvoker.java b/src/main/java/net/minecraft/server/EntityEvoker.java
index 9f3922b18..6864b9956 100644
index ae7b269de..9abbbd59f 100644
--- a/src/main/java/net/minecraft/server/EntityEvoker.java
+++ b/src/main/java/net/minecraft/server/EntityEvoker.java
@@ -12,10 +12,23 @@ public class EntityEvoker extends EntityIllagerWizard {
@@ -1802,7 +1802,7 @@ index 8dce2aad7..24eb6dca5 100644
this.targetSelector.a(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true));
this.targetSelector.a(3, new PathfinderGoalNearestAttackableTarget<>(this, EntityVillager.class, false));
diff --git a/src/main/java/net/minecraft/server/EntityGuardian.java b/src/main/java/net/minecraft/server/EntityGuardian.java
index 2d0f64d3b..be060cfbd 100644
index d42750fdd..881b2dd45 100644
--- a/src/main/java/net/minecraft/server/EntityGuardian.java
+++ b/src/main/java/net/minecraft/server/EntityGuardian.java
@@ -24,15 +24,36 @@ public class EntityGuardian extends EntityMonster {
@@ -1996,7 +1996,7 @@ index 069111952..bd63a25e2 100644
protected void eK() {
this.getAttributeInstance(GenericAttributes.MAX_HEALTH).setValue((double) this.fp());
diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
index 8cfbf8abf..c14889b09 100644
index c7757f9d0..a490d0715 100644
--- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java
+++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
@@ -39,12 +39,27 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven
@@ -2162,7 +2162,7 @@ index 48f9feaea..6c2b57a29 100644
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
index 66bfebe1c..f23721c26 100644
index f5c9e4e0a..5e6c7e317 100644
--- a/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
+++ b/src/main/java/net/minecraft/server/EntityIllagerIllusioner.java
@@ -20,6 +20,16 @@ public class EntityIllagerIllusioner extends EntityIllagerWizard implements IRan
@@ -2199,7 +2199,7 @@ index 66bfebe1c..f23721c26 100644
this.targetSelector.a(2, (new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true)).a(300));
this.targetSelector.a(3, (new PathfinderGoalNearestAttackableTarget<>(this, EntityVillagerAbstract.class, false)).a(300));
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index 0ecc5bd28..6b0f7f399 100644
index 7465e867b..0dc811ff7 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -29,7 +29,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -2362,7 +2362,7 @@ index bdff23688..954000a7b 100644
float f1 = 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F;
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index ad17c3d27..4fb2bd443 100644
index a2d50a1fe..b8f59f29a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -466,7 +466,7 @@ public abstract class EntityLiving extends Entity {
@@ -2374,7 +2374,7 @@ index ad17c3d27..4fb2bd443 100644
}
protected void cT() {
@@ -2185,7 +2185,7 @@ public abstract class EntityLiving extends Entity {
@@ -2186,7 +2186,7 @@ public abstract class EntityLiving extends Entity {
return 0.42F * this.getBlockJumpFactor();
}
@@ -2383,7 +2383,7 @@ index ad17c3d27..4fb2bd443 100644
float f = this.dI();
if (this.hasEffect(MobEffects.JUMP)) {
@@ -2434,10 +2434,12 @@ public abstract class EntityLiving extends Entity {
@@ -2435,10 +2435,12 @@ public abstract class EntityLiving extends Entity {
return this.onGround ? this.dM() * (0.21600002F / (f * f * f)) : this.aE;
}
@@ -2834,7 +2834,7 @@ index 6bb73f869..822fe2691 100644
this.goalSelector.a(2, new PathfinderGoalSit(this));
this.goalSelector.a(2, new PathfinderGoalFollowOwner(this, 1.0D, 5.0F, 1.0F, true));
diff --git a/src/main/java/net/minecraft/server/EntityPhantom.java b/src/main/java/net/minecraft/server/EntityPhantom.java
index 706760bae..aea27a098 100644
index 03c9a8d0c..ee1ff6dc1 100644
--- a/src/main/java/net/minecraft/server/EntityPhantom.java
+++ b/src/main/java/net/minecraft/server/EntityPhantom.java
@@ -25,6 +25,58 @@ public class EntityPhantom extends EntityFlying implements IMonster {
@@ -3255,7 +3255,7 @@ index cd6d2e07e..c74a10d9b 100644
@Override
diff --git a/src/main/java/net/minecraft/server/EntityPufferFish.java b/src/main/java/net/minecraft/server/EntityPufferFish.java
index 10c8e2288..b22d5b377 100644
index 639af6bd3..81e918572 100644
--- a/src/main/java/net/minecraft/server/EntityPufferFish.java
+++ b/src/main/java/net/minecraft/server/EntityPufferFish.java
@@ -17,6 +17,18 @@ public class EntityPufferFish extends EntityFish {
@@ -3554,7 +3554,7 @@ index 2908e9cc4..04e585f44 100644
this.goalSelector.a(2, new PathfinderGoalBreed(this, 1.0D));
this.goalSelector.a(3, new PathfinderGoalTempt(this, 1.1D, RecipeItemStack.a(Items.WHEAT), false));
diff --git a/src/main/java/net/minecraft/server/EntityShulker.java b/src/main/java/net/minecraft/server/EntityShulker.java
index a990af15d..11bf731d7 100644
index f0394fe52..c5853f9f5 100644
--- a/src/main/java/net/minecraft/server/EntityShulker.java
+++ b/src/main/java/net/minecraft/server/EntityShulker.java
@@ -29,12 +29,26 @@ public class EntityShulker extends EntityGolem implements IMonster {
@@ -4103,7 +4103,7 @@ index 495c28ccb..2c9df356e 100644
protected void initDatawatcher() {
super.initDatawatcher();
diff --git a/src/main/java/net/minecraft/server/EntityTurtle.java b/src/main/java/net/minecraft/server/EntityTurtle.java
index 430f9d23a..2f7570dd6 100644
index e025eef47..c29803367 100644
--- a/src/main/java/net/minecraft/server/EntityTurtle.java
+++ b/src/main/java/net/minecraft/server/EntityTurtle.java
@@ -27,6 +27,18 @@ public class EntityTurtle extends EntityAnimal {
@@ -4889,7 +4889,7 @@ index b2c64b314..515ba50ae 100644
Vec3D vec3d = entity.getMot();
World world = entity.world;
diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java
index 84858ba39..9b8114d76 100644
index 5af554870..c59305ef7 100644
--- a/src/main/java/net/minecraft/server/Vec3D.java
+++ b/src/main/java/net/minecraft/server/Vec3D.java
@@ -39,6 +39,7 @@ public class Vec3D implements IPosition {
@@ -4917,7 +4917,7 @@ index 84858ba39..9b8114d76 100644
return new Vec3D(this.x * d0, this.y * d1, this.z * d2);
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 640bcc566..77c72ec9f 100644
index d6cdb329c..d13684c3d 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1516,5 +1516,10 @@ public abstract class World implements GeneratorAccess, AutoCloseable {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Entities can use portals configuration
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 75e8b3367..a73ecbc07 100644
index 2cff6eb90..6f1537e82 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -2376,7 +2376,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2374,7 +2374,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
public void d(BlockPosition blockposition) {
if (this.ah()) {
this.resetPortalCooldown();
@@ -17,7 +17,7 @@ index 75e8b3367..a73ecbc07 100644
if (!this.world.isClientSide && !blockposition.equals(this.ac)) {
this.ac = blockposition.immutableCopy();
}
@@ -2945,7 +2945,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -2943,7 +2943,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
}
public boolean canPortal() {