mirror of
https://github.com/LeavesMC/Leaves.git
synced 2025-12-29 20:09:23 +00:00
0120/0132
This commit is contained in:
@@ -5,7 +5,7 @@ Subject: [PATCH] Placing locked hopper no longer send NC updates
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/level/Level.java b/net/minecraft/world/level/Level.java
|
||||
index ac4996dda7bcf5f20391f45e3f703b21557a1669..31f52bef093849dc15add696bb7bcfb5f326589a 100644
|
||||
index 590252ca203124f0b720a73f174c92fbe49bc685..f847d6c9ce70c66fc36733d8b5aa002e40be4cac 100644
|
||||
--- a/net/minecraft/world/level/Level.java
|
||||
+++ b/net/minecraft/world/level/Level.java
|
||||
@@ -1210,7 +1210,11 @@ public abstract class Level implements LevelAccessor, UUIDLookup<Entity>, AutoCl
|
||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Vanilla hopper
|
||||
This is a temporary solution designed to attempt to restore the vanilla behavior of the funnel while preserving optimizations as much as possible. It should ultimately be replaced by the optimization solution provided by lithium.
|
||||
|
||||
diff --git a/net/minecraft/world/level/block/entity/HopperBlockEntity.java b/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
index 7140571ef324f823942bc2c528cb66dac9e91d94..93dc766b1c4093b1d2bdf7f97951ea82a51cf4e4 100644
|
||||
index 47281ac61c6a462a47c60cc51f48440d3691effd..86d14299f7c3b0ba52adebdad07f14fc46f794dd 100644
|
||||
--- a/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
+++ b/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
@@ -285,36 +285,48 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Old hopper suckin behavior
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/level/block/entity/HopperBlockEntity.java b/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
index 93dc766b1c4093b1d2bdf7f97951ea82a51cf4e4..4d270a77cbb043e16360ae1f2bf03bf0ae32eb38 100644
|
||||
index 86d14299f7c3b0ba52adebdad07f14fc46f794dd..7cdd7c864dc8e4d4da01bcb2e71ebbccbdc67816 100644
|
||||
--- a/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
+++ b/net/minecraft/world/level/block/entity/HopperBlockEntity.java
|
||||
@@ -597,7 +597,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Fix falling block's block location
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
|
||||
index 0227bb06cfd7d5280a2b7c09e7e659806bedadcd..c7b085ac004f6be4e10ae929d2fed47dd916e2c9 100644
|
||||
index e3256e6358aa9bcbc943d427a295ebeab9b73951..7bbfa9ba0af4e5b745e789775c6e77dcf42a2849 100644
|
||||
--- a/net/minecraft/world/entity/Entity.java
|
||||
+++ b/net/minecraft/world/entity/Entity.java
|
||||
@@ -4822,6 +4822,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -5021,6 +5021,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
int floor = Mth.floor(x);
|
||||
int floor1 = Mth.floor(y);
|
||||
int floor2 = Mth.floor(z);
|
||||
@@ -0,0 +1,47 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Lumine1909 <133463833+Lumine1909@users.noreply.github.com>
|
||||
Date: Thu, 6 Feb 2025 00:14:22 +0800
|
||||
Subject: [PATCH] NOT_FINISH Bytebuf API
|
||||
|
||||
|
||||
diff --git a/net/minecraft/network/chat/Component.java b/net/minecraft/network/chat/Component.java
|
||||
index 7b88a74885d14759c4e459861e213d28893a6a19..1ea43690876bbc8f9066a1bd36a3b59eef27d96f 100644
|
||||
--- a/net/minecraft/network/chat/Component.java
|
||||
+++ b/net/minecraft/network/chat/Component.java
|
||||
@@ -23,6 +23,18 @@ import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.util.FormattedCharSequence;
|
||||
import net.minecraft.world.level.ChunkPos;
|
||||
|
||||
+/* TODO: where?
|
||||
+ .getOrThrow(JsonParseException::new);
|
||||
+ }
|
||||
+
|
||||
+ static JsonElement serialize(Component component, HolderLookup.Provider provider) {
|
||||
+ public static JsonElement serialize(Component component, HolderLookup.Provider provider) { // Leaves - package -> public
|
||||
+ return ComponentSerialization.CODEC
|
||||
+ .encodeStart(provider.createSerializationContext(JsonOps.INSTANCE), component)
|
||||
+ .getOrThrow(JsonParseException::new);
|
||||
+
|
||||
+ */
|
||||
+
|
||||
public interface Component extends Message, FormattedText, Iterable<Component> { // CraftBukkit
|
||||
|
||||
// CraftBukkit start
|
||||
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
||||
index 968a6bbff3540d781c0925a0db96c0492283d1f2..0d511f3dbb6c41c4ca152303123f3bc2dd90cbbc 100644
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -385,6 +385,13 @@ public abstract class PlayerList {
|
||||
boolean _boolean = gameRules.getBoolean(GameRules.RULE_DO_IMMEDIATE_RESPAWN);
|
||||
boolean _boolean1 = gameRules.getBoolean(GameRules.RULE_REDUCEDDEBUGINFO);
|
||||
boolean _boolean2 = gameRules.getBoolean(GameRules.RULE_LIMITED_CRAFTING);
|
||||
+
|
||||
+ // Leaves start - Bytebuf API
|
||||
+ if (!(player instanceof org.leavesmc.leaves.bot.ServerBot) && !(player instanceof org.leavesmc.leaves.replay.ServerPhotographer)) {
|
||||
+ this.cserver.getBytebufHandler().injectPlayer(player);
|
||||
+ }
|
||||
+ // Leaves end - Bytebuf API
|
||||
+
|
||||
serverGamePacketListenerImpl.send(
|
||||
new ClientboundLoginPacket(
|
||||
player.getId(),
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Allow grindstone overstacking
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/inventory/AbstractContainerMenu.java b/net/minecraft/world/inventory/AbstractContainerMenu.java
|
||||
index 8aa689129334f75986fb7a18895e2c3fb3c365c8..3686a28bacf267e4be4fa36f6482ac416c2873ee 100644
|
||||
index f151ec990241d091daedcb2af8f3f36fae5f277b..2dae8f5bdb32e0bd6bba3c522fb9e1c0b9e82bd8 100644
|
||||
--- a/net/minecraft/world/inventory/AbstractContainerMenu.java
|
||||
+++ b/net/minecraft/world/inventory/AbstractContainerMenu.java
|
||||
@@ -754,10 +754,15 @@ public abstract class AbstractContainerMenu {
|
||||
@@ -40,7 +40,7 @@ index 8aa689129334f75986fb7a18895e2c3fb3c365c8..3686a28bacf267e4be4fa36f6482ac41
|
||||
if (isCheck) {
|
||||
stack.shrink(Math.min(stack.getCount(), i1));
|
||||
diff --git a/net/minecraft/world/inventory/GrindstoneMenu.java b/net/minecraft/world/inventory/GrindstoneMenu.java
|
||||
index 6eaa468c90a826f9fdecf2cf672c4893122d2504..b7ef712181c88bac7ccb505147013405cb05c6cb 100644
|
||||
index 18c15a7657e6fd994a8f17d0812c822d6adc8eab..00a0ce28632a7f515a94087c2752e8787212f0d9 100644
|
||||
--- a/net/minecraft/world/inventory/GrindstoneMenu.java
|
||||
+++ b/net/minecraft/world/inventory/GrindstoneMenu.java
|
||||
@@ -178,7 +178,7 @@ public class GrindstoneMenu extends AbstractContainerMenu {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable MC-67
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
|
||||
index c7b085ac004f6be4e10ae929d2fed47dd916e2c9..4d91f2eb00ab9ab5daaf559ae4ed04f99875092b 100644
|
||||
index 7bbfa9ba0af4e5b745e789775c6e77dcf42a2849..4547d836f4536ef4e003b772f5c526a691392934 100644
|
||||
--- a/net/minecraft/world/entity/Entity.java
|
||||
+++ b/net/minecraft/world/entity/Entity.java
|
||||
@@ -3974,6 +3974,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -4195,6 +4195,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
}
|
||||
|
||||
public boolean canTeleport(Level fromLevel, Level toLevel) {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Can disable LivingEntity aiStep alive check
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
|
||||
index ce624ed17bc5c9b5e13d280f8dda736581b21821..d2f5118ceeebf95496daabf7597655d6565ad116 100644
|
||||
index 305c099d32f1472a6e8909cdf2a53cec8a31afb5..0fca2df8899d285bd09e5a4ebcc09c05f222f13a 100644
|
||||
--- a/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -3233,7 +3233,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -3285,7 +3285,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Fix FallingBlockEntity Duplicate
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/item/FallingBlockEntity.java b/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index 31edd0d45ac6c38887e4cebffe5a7cf377b47466..b6e188cf9f224a9c4b75339acd0306758bf0cb71 100644
|
||||
index 595dee03e3a7d98d703e48fb53d82d7f392a2b3d..0fd2c522a5fb038a8c002970af6feebd9dc9c436 100644
|
||||
--- a/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -382,7 +382,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -387,7 +387,7 @@ public class FallingBlockEntity extends Entity {
|
||||
ResourceKey<Level> resourceKey1 = this.level().dimension();
|
||||
boolean flag = (resourceKey1 == Level.END || resourceKey == Level.END) && resourceKey1 != resourceKey;
|
||||
Entity entity = super.teleport(teleportTransition);
|
||||
@@ -99,7 +99,7 @@ index 42ee3f32fe44c1f0680c994a69201f7bd7792673..19214c236bca4e454e3bbe7dc50e00b6
|
||||
protected void affectNeighborsAfterRemoval(BlockState state, ServerLevel level, BlockPos pos, boolean movedByPiston) {
|
||||
if (!movedByPiston && this.getSignalForState(state) > 0) {
|
||||
diff --git a/net/minecraft/world/level/block/BaseRailBlock.java b/net/minecraft/world/level/block/BaseRailBlock.java
|
||||
index 4e13f5b233018d648f8ff83447624353fd62683b..8ecc438a518703aedd5aeed00727023ff26555c5 100644
|
||||
index 5f99e18244501ed2d85be77b71f48cc93058cdb7..6bf50d9c3921b15f40b4fba273abeb4c2e0f30b3 100644
|
||||
--- a/net/minecraft/world/level/block/BaseRailBlock.java
|
||||
+++ b/net/minecraft/world/level/block/BaseRailBlock.java
|
||||
@@ -121,6 +121,23 @@ public abstract class BaseRailBlock extends Block implements SimpleWaterloggedBl
|
||||
@@ -729,7 +729,7 @@ index 6c789e56f21f01252c21786cfeb48d88485b5636..e24a61a4e2dac0159d52f07c93ddf860
|
||||
protected void affectNeighborsAfterRemoval(BlockState state, ServerLevel level, BlockPos pos, boolean movedByPiston) {
|
||||
BlockPos blockPos = pos.relative(state.getValue(FACING).getOpposite());
|
||||
diff --git a/net/minecraft/world/level/block/state/BlockBehaviour.java b/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
index bbb1abfbfe7afd7b631cf269c1e338697cd016d2..768e5c6f1c0ce7d4bec41c37668249e708ebb4bc 100644
|
||||
index be66f0f1cb1b0bcec8f9489a1fdd8777df1adb6b..67719dce9017a4c86a70b62fb660bddc636d5582 100644
|
||||
--- a/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
+++ b/net/minecraft/world/level/block/state/BlockBehaviour.java
|
||||
@@ -171,6 +171,15 @@ public abstract class BlockBehaviour implements FeatureElement {
|
||||
@@ -762,10 +762,10 @@ index bbb1abfbfe7afd7b631cf269c1e338697cd016d2..768e5c6f1c0ce7d4bec41c37668249e7
|
||||
this.getBlock().affectNeighborsAfterRemoval(this.asState(), level, pos, movedByPiston);
|
||||
}
|
||||
diff --git a/net/minecraft/world/level/chunk/LevelChunk.java b/net/minecraft/world/level/chunk/LevelChunk.java
|
||||
index 845319dd3e355f739cce70b7df3172dd146601b1..d0ae0a73f2a635c008e2d60374d5b85a10216c96 100644
|
||||
index 2cdca2917ce6a4912b57594697bf5543801eb868..d0d78d35c87973629dcd83b22ac0435a7498fe00 100644
|
||||
--- a/net/minecraft/world/level/chunk/LevelChunk.java
|
||||
+++ b/net/minecraft/world/level/chunk/LevelChunk.java
|
||||
@@ -394,20 +394,26 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p
|
||||
@@ -396,20 +396,26 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p
|
||||
boolean flag = !blockState.is(block);
|
||||
boolean flag1 = (flags & 64) != 0;
|
||||
boolean flag2 = (flags & 256) == 0;
|
||||
@@ -21,7 +21,7 @@ index 80f17f33f670018240c854df589cf90cdeab6e70..4c6ce6a4a730033802651b0c0052fc46
|
||||
if (raidAt == null || raidAt.getRaidOmenLevel() < raidAt.getMaxRaidOmenLevel()) {
|
||||
serverPlayer.addEffect(new MobEffectInstance(MobEffects.RAID_OMEN, 600, amplifier));
|
||||
diff --git a/net/minecraft/world/entity/raid/Raid.java b/net/minecraft/world/entity/raid/Raid.java
|
||||
index 62a3a8d46e10e6f02e3f515bbce5d9ba1f6566b8..6a45e00490f0067d25010371f7c5fa40bbe7671c 100644
|
||||
index b3a29ce523fb5de71589c7c17598bba17622f988..b74ad31e5bcac5e557f18ccfb5c92d4d94a0ba6d 100644
|
||||
--- a/net/minecraft/world/entity/raid/Raid.java
|
||||
+++ b/net/minecraft/world/entity/raid/Raid.java
|
||||
@@ -333,7 +333,20 @@ public class Raid {
|
||||
@@ -109,10 +109,10 @@ index 62a3a8d46e10e6f02e3f515bbce5d9ba1f6566b8..6a45e00490f0067d25010371f7c5fa40
|
||||
return this.addWaveMob(level, wave, raider, true);
|
||||
}
|
||||
diff --git a/net/minecraft/world/entity/raid/Raider.java b/net/minecraft/world/entity/raid/Raider.java
|
||||
index 39a6a4579931d7edb7ab8c072d62cfc9b02791c8..23c0581ad4e3921f89070609ec7c01d8a5a9b2de 100644
|
||||
index 7b697f1dfe8131296ef55cd88a8b9d7cd884eb44..56995040e0bb23e55031cd1179faa770596e15a3 100644
|
||||
--- a/net/minecraft/world/entity/raid/Raider.java
|
||||
+++ b/net/minecraft/world/entity/raid/Raider.java
|
||||
@@ -127,6 +127,43 @@ public abstract class Raider extends PatrollingMonster {
|
||||
@@ -128,6 +128,43 @@ public abstract class Raider extends PatrollingMonster {
|
||||
|
||||
currentRaid.removeFromRaid(serverLevel, this, false);
|
||||
}
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Allow anvil destroy item entities
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/item/FallingBlockEntity.java b/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
index b6e188cf9f224a9c4b75339acd0306758bf0cb71..ff8cd3d52bf9f3d117abfd7022d7f2ac8525e46a 100644
|
||||
index 0fd2c522a5fb038a8c002970af6feebd9dc9c436..2d0d6ad8c37c3187fbf35e5c7ff9a509da59c648 100644
|
||||
--- a/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
+++ b/net/minecraft/world/entity/item/FallingBlockEntity.java
|
||||
@@ -275,7 +275,7 @@ public class FallingBlockEntity extends Entity {
|
||||
@@ -282,7 +282,7 @@ public class FallingBlockEntity extends Entity {
|
||||
if (ceil < 0) {
|
||||
return false;
|
||||
} else {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable collision behavior
|
||||
|
||||
|
||||
diff --git a/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java b/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
||||
index a97a2a8492f3858e3b622d26768b4d819c9b47a7..7178f8477d5c3840225b21ec1fb6612e660b85d3 100644
|
||||
index 01cd38bba2deb6cf65c82b4e4ec352a2998fd339..8eb8e1447043498c6a0db1b56e877a91cd5fc438 100644
|
||||
--- a/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
||||
+++ b/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
||||
@@ -101,6 +101,14 @@ public final class CollisionUtil {
|
||||
@@ -5,37 +5,33 @@ Subject: [PATCH] Fix EntityPortalExitEvent logic
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
|
||||
index 4d91f2eb00ab9ab5daaf559ae4ed04f99875092b..b478a1fedeeee2c19bddc66e2ae4152b4d72c724 100644
|
||||
index 4547d836f4536ef4e003b772f5c526a691392934..1ae96278974a767482f520e2ace69e91a2de2e4c 100644
|
||||
--- a/net/minecraft/world/entity/Entity.java
|
||||
+++ b/net/minecraft/world/entity/Entity.java
|
||||
@@ -3778,19 +3778,29 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
}
|
||||
if (this.portalProcess != null) { // if in a portal
|
||||
org.bukkit.craftbukkit.entity.CraftEntity bukkitEntity = this.getBukkitEntity();
|
||||
+ org.bukkit.util.Vector after = org.bukkit.craftbukkit.util.CraftVector.toBukkit(velocity); // Leaves - fix
|
||||
org.bukkit.event.entity.EntityPortalExitEvent event = new org.bukkit.event.entity.EntityPortalExitEvent(
|
||||
bukkitEntity,
|
||||
bukkitEntity.getLocation(), to.clone(),
|
||||
- bukkitEntity.getVelocity(), org.bukkit.craftbukkit.util.CraftVector.toBukkit(velocity)
|
||||
+ bukkitEntity.getVelocity(), after // Leaves - fix
|
||||
@@ -3985,19 +3985,21 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
);
|
||||
event.callEvent();
|
||||
|
||||
+ // Leaves start - fix
|
||||
// Only change the target if actually needed, since we reset relative flags
|
||||
- if (!event.isCancelled() && event.getTo() != null && (!event.getTo().equals(event.getFrom()) || !event.getAfter().equals(event.getBefore()))) { // todo this looks broken
|
||||
- to = event.getTo().clone();
|
||||
- velocity = org.bukkit.craftbukkit.util.CraftVector.toVec3(event.getAfter());
|
||||
- if (event.isCancelled() || !to.equals(event.getTo()) || !after.equals(event.getAfter())) {
|
||||
- if (event.isCancelled() || event.getTo() == null) {
|
||||
- org.bukkit.World toWorld = to.getWorld();
|
||||
- to = event.getFrom().clone();
|
||||
- to.setWorld(toWorld); // cancelling doesn't cancel the teleport just the position/velocity (old quirk)
|
||||
- velocity = org.bukkit.craftbukkit.util.CraftVector.toVec3(event.getBefore());
|
||||
- } else {
|
||||
- to = event.getTo().clone();
|
||||
+ if (event.isCancelled() || (!to.equals(event.getTo()) || !after.equals(event.getAfter()))) {
|
||||
+ if (!event.isCancelled()) {
|
||||
+ if (event.getTo() != null) {
|
||||
+ to = event.getTo().clone();
|
||||
+ }
|
||||
+ velocity = org.bukkit.craftbukkit.util.CraftVector.toVec3(event.getAfter());
|
||||
velocity = org.bukkit.craftbukkit.util.CraftVector.toVec3(event.getAfter());
|
||||
+ } else {
|
||||
+ to = event.getFrom().clone();
|
||||
+ velocity = Vec3.ZERO;
|
||||
+ }
|
||||
}
|
||||
teleportTransition = new TeleportTransition(((org.bukkit.craftbukkit.CraftWorld) to.getWorld()).getHandle(), org.bukkit.craftbukkit.util.CraftLocation.toVec3(to), velocity, to.getYaw(), to.getPitch(), teleportTransition.missingRespawnBlock(), teleportTransition.asPassenger(), Set.of(), teleportTransition.postTeleportTransition(), teleportTransition.cause());
|
||||
}
|
||||
+ // Leaves end - fix
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Fix CraftPortalEvent logic
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/level/block/EndPortalBlock.java b/net/minecraft/world/level/block/EndPortalBlock.java
|
||||
index cf2b105c98a3b22b9bea59cbafcd598657dc92b5..22ffa5743f95d28f29084f1dd357015aee032711 100644
|
||||
index f6c64277c3d6e16250e2bf963b6427404e27aa9b..2d908255439ea548aa7679219b5092334243a641 100644
|
||||
--- a/net/minecraft/world/level/block/EndPortalBlock.java
|
||||
+++ b/net/minecraft/world/level/block/EndPortalBlock.java
|
||||
@@ -103,9 +103,9 @@ public class EndPortalBlock extends BaseEntityBlock implements Portal {
|
||||
@@ -105,9 +105,9 @@ public class EndPortalBlock extends BaseEntityBlock implements Portal {
|
||||
}
|
||||
|
||||
// CraftBukkit start
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Xaero Map Protocol
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
||||
index df58e2cd1a8be7c4b24a747ca40d0e79bf40f976..f6c2f02e1a7f5ac2d7bb584893457761fe30b509 100644
|
||||
index 0d511f3dbb6c41c4ca152303123f3bc2dd90cbbc..5a9aa8da0c0e17b4a0d33d2d56e2e6954381dc4e 100644
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -1343,6 +1343,7 @@ public abstract class PlayerList {
|
||||
@@ -1319,6 +1319,7 @@ public abstract class PlayerList {
|
||||
player.connection.send(new ClientboundInitializeBorderPacket(worldBorder));
|
||||
player.connection.send(new ClientboundSetTimePacket(level.getGameTime(), level.getDayTime(), level.getGameRules().getBoolean(GameRules.RULE_DAYLIGHT)));
|
||||
player.connection.send(new ClientboundSetDefaultSpawnPositionPacket(level.getSharedSpawnPos(), level.getSharedSpawnAngle()));
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Skip negligible planar movement multiplication
|
||||
This patch is Powered by Gale(https://github.com/Dreeam-qwq/Gale)
|
||||
|
||||
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
|
||||
index 91038b21164d3e1bf6406117478454d38b24bb81..d768b1de1bc75ab73198379b1099cc09f58d1ca4 100644
|
||||
index 1ae96278974a767482f520e2ace69e91a2de2e4c..2d1c112b7f762de3b7444b9da25f767aac57404d 100644
|
||||
--- a/net/minecraft/world/entity/Entity.java
|
||||
+++ b/net/minecraft/world/entity/Entity.java
|
||||
@@ -1218,8 +1218,17 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -1234,8 +1234,17 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Skippable raid height check
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/raid/Raid.java b/net/minecraft/world/entity/raid/Raid.java
|
||||
index 6a45e00490f0067d25010371f7c5fa40bbe7671c..8e08a187da6f40d1b3bc990401af36e510537777 100644
|
||||
index b74ad31e5bcac5e557f18ccfb5c92d4d94a0ba6d..14cbc32c1ebb1eb777c9ae45ff5b2178b469dea2 100644
|
||||
--- a/net/minecraft/world/entity/raid/Raid.java
|
||||
+++ b/net/minecraft/world/entity/raid/Raid.java
|
||||
@@ -687,7 +687,7 @@ public class Raid {
|
||||
@@ -5,15 +5,15 @@ Subject: [PATCH] Vanilla player display name
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java
|
||||
index f144a8bd5eb55ce093ad92ffd1304860dc52c1b1..fa93076169e19c7d2d1134dea297968a650dc220 100644
|
||||
index f618619124fad4c432adb171513a73ca8aa9c4d4..4cded55b91031ae9f801d26dd385d661f719ed5e 100644
|
||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -471,7 +471,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
|
||||
@@ -478,7 +478,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
this.object = null;
|
||||
// CraftBukkit start
|
||||
this.displayName = this.getScoreboardName();
|
||||
- this.adventure$displayName = net.kyori.adventure.text.Component.text(this.getScoreboardName()); // Paper
|
||||
+ this.adventure$displayName = org.leavesmc.leaves.LeavesConfig.fix.vanillaDisplayName ? io.papermc.paper.adventure.PaperAdventure.asAdventure(this.getDisplayName()) : net.kyori.adventure.text.Component.text(this.getScoreboardName()); // Paper // Leaves - Vanilla display name
|
||||
this.bukkitPickUpLoot = true;
|
||||
this.maxHealthCache = this.getMaxHealth();
|
||||
}
|
||||
// CraftBukkit end
|
||||
@@ -5,19 +5,19 @@ Subject: [PATCH] Fix SculkCatalyst exp skip
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java
|
||||
index 8c7fce6d97a4a526c06bba8bb20d1e64d3d94e92..b2bb4a2c1ba2e924f380f69365ce7384db21eed6 100644
|
||||
index 4cded55b91031ae9f801d26dd385d661f719ed5e..e183131afca79d468f83d6230164e2cac304e98b 100644
|
||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1091,7 +1091,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1103,7 +1103,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
}
|
||||
|
||||
// SPIGOT-5478 must be called manually now
|
||||
- if (event.shouldDropExperience()) this.dropExperience(this.serverLevel(), cause.getEntity()); // Paper - tie to event
|
||||
+ if (shouldDropExperience(event.shouldDropExperience(), event.forceUseEventDropStatus())) this.dropExperience(this.serverLevel(), cause.getEntity()); // Paper - tie to event // Leaves - exp fix
|
||||
- if (event.shouldDropExperience()) this.dropExperience(this.level(), cause.getEntity()); // Paper - tie to event
|
||||
+ if (shouldDropExperience(event.shouldDropExperience(), event.forceUseEventDropStatus())) this.dropExperience(this.level(), cause.getEntity()); // Paper - tie to event // Leaves - exp fix
|
||||
// we clean the player's inventory after the EntityDeathEvent is called so plugins can get the exact state of the inventory.
|
||||
if (!event.getKeepInventory()) {
|
||||
// Paper start - PlayerDeathEvent#getItemsToKeep
|
||||
@@ -1138,6 +1138,15 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1150,6 +1150,15 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
this.setClientLoaded(false);
|
||||
}
|
||||
|
||||
@@ -34,18 +34,18 @@ index 8c7fce6d97a4a526c06bba8bb20d1e64d3d94e92..b2bb4a2c1ba2e924f380f69365ce7384
|
||||
AABB aabb = new AABB(this.blockPosition()).inflate(32.0, 10.0, 32.0);
|
||||
this.level()
|
||||
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
|
||||
index d2f5118ceeebf95496daabf7597655d6565ad116..8975acf713dd806693e3b3045c98e53321a2e5f4 100644
|
||||
index 0fca2df8899d285bd09e5a4ebcc09c05f222f13a..b33c78f836830dd47e275cab9c9f87531152a96b 100644
|
||||
--- a/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -264,6 +264,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
protected final EntityEquipment equipment;
|
||||
@@ -277,6 +277,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
private Waypoint.Icon locatorBarIcon = new Waypoint.Icon();
|
||||
// CraftBukkit start
|
||||
public int expToDrop;
|
||||
+ public int expToReward; // Leaves - exp fix
|
||||
public List<DefaultDrop> drops = new java.util.ArrayList<>(); // Paper - Restore vanilla drops behavior
|
||||
public final org.bukkit.craftbukkit.attribute.CraftAttributeMap craftAttributes;
|
||||
public boolean collides = true;
|
||||
@@ -1829,6 +1830,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1861,6 +1862,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
entity.killedEntity((ServerLevel) this.level(), this);
|
||||
}
|
||||
this.gameEvent(GameEvent.ENTITY_DIE);
|
||||
@@ -53,7 +53,7 @@ index d2f5118ceeebf95496daabf7597655d6565ad116..8975acf713dd806693e3b3045c98e533
|
||||
} else {
|
||||
this.dead = false;
|
||||
this.setHealth((float) deathEvent.getReviveHealth());
|
||||
@@ -1902,7 +1904,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
|
||||
@@ -1934,7 +1936,7 @@ public abstract class LivingEntity extends Entity implements Attackable, Waypoin
|
||||
this.drops = new java.util.ArrayList<>();
|
||||
// this.dropEquipment(level); // CraftBukkit - moved up
|
||||
// CraftBukkit end
|
||||
@@ -63,7 +63,7 @@ index d2f5118ceeebf95496daabf7597655d6565ad116..8975acf713dd806693e3b3045c98e533
|
||||
}
|
||||
|
||||
diff --git a/net/minecraft/world/level/block/entity/SculkCatalystBlockEntity.java b/net/minecraft/world/level/block/entity/SculkCatalystBlockEntity.java
|
||||
index 2627583ab12d886b1fba0b1d1e599f942926b499..be09fa81ed1e58a271156299dacf49be649eecfc 100644
|
||||
index 0a94670dc20bb9c521b0395633eb100393895f6a..a2f73e8210ac554a7529067bbe9f50267f2bf0e2 100644
|
||||
--- a/net/minecraft/world/level/block/entity/SculkCatalystBlockEntity.java
|
||||
+++ b/net/minecraft/world/level/block/entity/SculkCatalystBlockEntity.java
|
||||
@@ -96,8 +96,7 @@ public class SculkCatalystBlockEntity extends BlockEntity implements GameEventLi
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Vanilla creative pickup behavior
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/player/Inventory.java b/net/minecraft/world/entity/player/Inventory.java
|
||||
index 57bf2819271b3293a065b58d31b609f8463811b4..1d61b01d32783357ea5d766cb716ba4c7edb1407 100644
|
||||
index cc1a69293c31f23965b869e6899d89ad45312129..f6fa8dfe5c8ba33f770f2e53aaa3f4de6ad8918f 100644
|
||||
--- a/net/minecraft/world/entity/player/Inventory.java
|
||||
+++ b/net/minecraft/world/entity/player/Inventory.java
|
||||
@@ -159,6 +159,13 @@ public class Inventory implements Container, Nameable {
|
||||
@@ -176,6 +176,13 @@ public class Inventory implements Container, Nameable {
|
||||
// CraftBukkit start - Watch method above! :D
|
||||
public int canHold(ItemStack itemStack) {
|
||||
int remains = itemStack.getCount();
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Vanilla portal handle
|
||||
|
||||
|
||||
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
|
||||
index d768b1de1bc75ab73198379b1099cc09f58d1ca4..0ec5603097a984713bc3ae7a03a7535e552cf851 100644
|
||||
index 2d1c112b7f762de3b7444b9da25f767aac57404d..b42b0788b7df9f39429d18ce12b525beb7609bd5 100644
|
||||
--- a/net/minecraft/world/entity/Entity.java
|
||||
+++ b/net/minecraft/world/entity/Entity.java
|
||||
@@ -807,6 +807,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -836,6 +836,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
|
||||
// CraftBukkit start
|
||||
public void postTick() {
|
||||
@@ -16,7 +16,7 @@ index d768b1de1bc75ab73198379b1099cc09f58d1ca4..0ec5603097a984713bc3ae7a03a7535e
|
||||
// No clean way to break out of ticking once the entity has been copied to a new world, so instead we move the portalling later in the tick cycle
|
||||
if (!(this instanceof ServerPlayer) && this.isAlive()) { // Paper - don't attempt to teleport dead entities
|
||||
this.handlePortal();
|
||||
@@ -827,7 +828,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -856,7 +857,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
this.boardingCooldown--;
|
||||
}
|
||||
|
||||
@@ -26,10 +26,10 @@ index d768b1de1bc75ab73198379b1099cc09f58d1ca4..0ec5603097a984713bc3ae7a03a7535e
|
||||
this.spawnSprintParticle();
|
||||
}
|
||||
diff --git a/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
index 99617c08cbd989092ba357d8df928786fd04c89a..619f87b4ce69629b230229f33487fc653f6a39a7 100644
|
||||
index 7e61d68b36ca2768f70dc1fc130a8d7b95347b6b..8e73204f6e7d159d66c3d90c7e2845bfde867e7a 100644
|
||||
--- a/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
+++ b/net/minecraft/world/entity/vehicle/AbstractMinecart.java
|
||||
@@ -294,7 +294,7 @@ public abstract class AbstractMinecart extends VehicleEntity {
|
||||
@@ -293,7 +293,7 @@ public abstract class AbstractMinecart extends VehicleEntity {
|
||||
}
|
||||
|
||||
this.checkBelowWorld();
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Fix chunk reload detector
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/level/ServerEntity.java b/net/minecraft/server/level/ServerEntity.java
|
||||
index 7681195587d361acf524d09ad3958e628aad73b6..edf9c01fd64d269a5d78d805db91177095edffc7 100644
|
||||
index f6b2d541fdfd11c6ff6033fbf4cd5153796634e3..5e06cc272b9617d780c507b5b819b380e7462eaf 100644
|
||||
--- a/net/minecraft/server/level/ServerEntity.java
|
||||
+++ b/net/minecraft/server/level/ServerEntity.java
|
||||
@@ -396,7 +396,7 @@ public class ServerEntity {
|
||||
@@ -390,7 +390,7 @@ public class ServerEntity {
|
||||
if (!list.isEmpty()) {
|
||||
consumer.accept(new ClientboundSetEquipmentPacket(this.entity.getId(), list, true)); // Paper - data sanitization
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Lumine1909 <133463833+Lumine1909@users.noreply.github.com>
|
||||
Date: Thu, 6 Feb 2025 00:14:22 +0800
|
||||
Subject: [PATCH] Bytebuf API
|
||||
|
||||
|
||||
diff --git a/net/minecraft/network/chat/Component.java b/net/minecraft/network/chat/Component.java
|
||||
index c6e4f72825c868b416ce2e81fc6d9b5bfdbd85f2..5c4d0a9297387503f48cb4c1d6db6aedc6ad8258 100644
|
||||
--- a/net/minecraft/network/chat/Component.java
|
||||
+++ b/net/minecraft/network/chat/Component.java
|
||||
@@ -248,7 +248,7 @@ public interface Component extends Message, FormattedText, Iterable<Component> {
|
||||
.getOrThrow(JsonParseException::new);
|
||||
}
|
||||
|
||||
- static JsonElement serialize(Component component, HolderLookup.Provider provider) {
|
||||
+ public static JsonElement serialize(Component component, HolderLookup.Provider provider) { // Leaves - package -> public
|
||||
return ComponentSerialization.CODEC
|
||||
.encodeStart(provider.createSerializationContext(JsonOps.INSTANCE), component)
|
||||
.getOrThrow(JsonParseException::new);
|
||||
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
||||
index 0dee4945feb6d4cb2f520d346bf8be4fa36fb868..df58e2cd1a8be7c4b24a747ca40d0e79bf40f976 100644
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -377,6 +377,13 @@ public abstract class PlayerList {
|
||||
boolean _boolean = gameRules.getBoolean(GameRules.RULE_DO_IMMEDIATE_RESPAWN);
|
||||
boolean _boolean1 = gameRules.getBoolean(GameRules.RULE_REDUCEDDEBUGINFO);
|
||||
boolean _boolean2 = gameRules.getBoolean(GameRules.RULE_LIMITED_CRAFTING);
|
||||
+
|
||||
+ // Leaves start - Bytebuf API
|
||||
+ if (!(player instanceof org.leavesmc.leaves.bot.ServerBot) && !(player instanceof org.leavesmc.leaves.replay.ServerPhotographer)) {
|
||||
+ this.cserver.getBytebufHandler().injectPlayer(player);
|
||||
+ }
|
||||
+ // Leaves end - Bytebuf API
|
||||
+
|
||||
serverGamePacketListenerImpl.send(
|
||||
new ClientboundLoginPacket(
|
||||
player.getId(),
|
||||
Reference in New Issue
Block a user