Skip to content

Commit 73e0e17

Browse files
committed
make it compile \o/
1 parent f1e732a commit 73e0e17

29 files changed

+133
-146
lines changed

purpur-server/minecraft-patches/features/0001-Ridables.patch

+14-14
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ index f34bc75f324454bf48f0ebf79111706bb027a54b..6ad266592c16bdeccfb689fb2ef2ee37
3030
/* Drop global time updates
3131
if (this.tickCount % 20 == 0) {
3232
diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java
33-
index 1ee82020ba335946a54db380d2c3f8d71ce2371b..200c33de28100e42b91dee40e7a531e38d459c7d 100644
33+
index fae2e1af2ea59b82b552bfc33c853e0e33ec90bc..f681d0766a3fec9e05396fe82111e9e99f751823 100644
3434
--- a/net/minecraft/server/level/ServerLevel.java
3535
+++ b/net/minecraft/server/level/ServerLevel.java
3636
@@ -212,6 +212,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe
@@ -42,7 +42,7 @@ index 1ee82020ba335946a54db380d2c3f8d71ce2371b..200c33de28100e42b91dee40e7a531e3
4242
@Override
4343
public @Nullable LevelChunk getChunkIfLoaded(int x, int z) {
4444
diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java
45-
index 6dc490bf9d032b5ed2d7bd458bffd3471f54ff06..cf26a10e4ccf0f28817ce53b3c5bf1df02259273 100644
45+
index 839975cf328268e1f476f5c59e3323a395929395..bba6b5234b668827f90991e4885b5e19c2f97728 100644
4646
--- a/net/minecraft/server/level/ServerPlayer.java
4747
+++ b/net/minecraft/server/level/ServerPlayer.java
4848
@@ -764,6 +764,15 @@ public class ServerPlayer extends Player {
@@ -75,7 +75,7 @@ index 63e01ec7e4ab04bb7d389bff485dfedca344bfa2..84b1570d0d88f57f33ff8179f0a78d37
7575
if ((target instanceof net.minecraft.world.entity.animal.Bucketable && target instanceof LivingEntity && origItem != null && origItem == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelectedItem().isEmpty() || !ServerGamePacketListenerImpl.this.player.getInventory().getSelectedItem().is(origItem))) {
7676
target.resendPossiblyDesyncedEntityData(ServerGamePacketListenerImpl.this.player); // Paper - The entire mob gets deleted, so resend it
7777
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
78-
index 9f6326da63fc8e0c284d565314f0b448b622c910..488dc3e2e6d6095d416bd81078b3bcbcf92f7ab9 100644
78+
index 7b48f633223cc5e760c5c80d40424e04d791c43a..fc8fbfa5709895456f5aa0c480acedb8707b2ff5 100644
7979
--- a/net/minecraft/world/entity/Entity.java
8080
+++ b/net/minecraft/world/entity/Entity.java
8181
@@ -2855,6 +2855,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
@@ -130,7 +130,7 @@ index 9f6326da63fc8e0c284d565314f0b448b622c910..488dc3e2e6d6095d416bd81078b3bcbc
130130
+
131131
+ public void onMount(Player rider) {
132132
+ if (this instanceof Mob) {
133-
+ ((Mob) this).setTarget(null, null, false);
133+
+ ((Mob) this).setTarget(null, null);
134134
+ ((Mob) this).getNavigation().stop();
135135
+ }
136136
+ rider.setJumping(false); // fixes jump on mount
@@ -177,7 +177,7 @@ index bda521cca91f070139f5e9bdef6a50e1497f53ff..351f92e1627f465a9a292d4a5e5c256a
177177
protected ParticleOptions getInkParticle() {
178178
return ParticleTypes.GLOW_SQUID_INK;
179179
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
180-
index a186784d6b5bae844604a0ca7a2b81857c074a3c..7e2258f0232beae3461ad3ef75b70e9bf1f8b772 100644
180+
index 4d65d88c59a8536d27ec61c65373ab21fa534b3b..e5f296bf3671afd82ab76493646938783b53eef6 100644
181181
--- a/net/minecraft/world/entity/LivingEntity.java
182182
+++ b/net/minecraft/world/entity/LivingEntity.java
183183
@@ -226,9 +226,9 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -235,9 +235,9 @@ index a186784d6b5bae844604a0ca7a2b81857c074a3c..7e2258f0232beae3461ad3ef75b70e9b
235235
+ Location to = new Location(level().getWorld(), getX(), getY(), getZ(), this.getYRot(), this.getXRot());
236236
+ org.purpurmc.purpur.event.entity.RidableMoveEvent event = new org.purpurmc.purpur.event.entity.RidableMoveEvent((org.bukkit.entity.Mob) getBukkitLivingEntity(), (org.bukkit.entity.Player) getRider().getBukkitEntity(), from, to.clone());
237237
+ if (!event.callEvent()) {
238-
+ absMoveTo(from.getX(), from.getY(), from.getZ(), from.getYaw(), from.getPitch());
238+
+ this.absSnapTo(from.getX(), from.getY(), from.getZ(), from.getYaw(), from.getPitch());
239239
+ } else if (!to.equals(event.getTo())) {
240-
+ absMoveTo(to.getX(), to.getY(), to.getZ(), to.getYaw(), to.getPitch());
240+
+ this.absSnapTo(event.getTo().getX(), event.getTo().getY(), event.getTo().getZ(), event.getTo().getYaw(), event.getTo().getPitch());
241241
+ }
242242
+ }
243243
+ }
@@ -596,7 +596,7 @@ index 363582056339f64dbe7e686b61451c095c538c00..2cf95769ec3a1662443ea31e1bc2ba01
596596
double d = this.wantedX - this.fish.getX();
597597
double d1 = this.wantedY - this.fish.getY();
598598
diff --git a/net/minecraft/world/entity/animal/Bee.java b/net/minecraft/world/entity/animal/Bee.java
599-
index a6fd3a16e7a9e34ad582601f9ef22d98346fc31c..e55507fa09001b431519ef9c76bf444d7df3f7ea 100644
599+
index 585131365c40136cf8a8a715b077982091ee38d5..65ee07e09bb9bafb60abeec4916fdbb065fc26eb 100644
600600
--- a/net/minecraft/world/entity/animal/Bee.java
601601
+++ b/net/minecraft/world/entity/animal/Bee.java
602602
@@ -149,6 +149,7 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal {
@@ -1392,7 +1392,7 @@ index ca661c215d2eb719392a30c7b917bd622524c4dc..573efbc5f5f4ad0be30868c7faa058e6
13921392
this.goalSelector.addGoal(2, new SitWhenOrderedToGoal(this));
13931393
this.goalSelector.addGoal(2, new FollowOwnerGoal(this, 1.0, 5.0F, 1.0F));
13941394
diff --git a/net/minecraft/world/entity/animal/Pig.java b/net/minecraft/world/entity/animal/Pig.java
1395-
index 4a1eee02daf8d4161d21d28baf97b0d16a9b52ae..9e15bf55aa3986a227452fb1a5ebc4315f6f4d6c 100644
1395+
index 027d47b89d306bf6bc3d5457a163041f6aa7ab49..74d4be1761b9c9b45bf454f187d4454d9ee6a37f 100644
13961396
--- a/net/minecraft/world/entity/animal/Pig.java
13971397
+++ b/net/minecraft/world/entity/animal/Pig.java
13981398
@@ -65,9 +65,27 @@ public class Pig extends Animal implements ItemSteerable {
@@ -2585,7 +2585,7 @@ index d34dcbbdeae41d23d6fb497e0e8da038580b6d01..6c252b8021dbeb2a9ffee8a3744ac016
25852585
protected void defineSynchedData(SynchedEntityData.Builder builder) {
25862586
super.defineSynchedData(builder);
25872587
diff --git a/net/minecraft/world/entity/animal/wolf/Wolf.java b/net/minecraft/world/entity/animal/wolf/Wolf.java
2588-
index d25bd49c17478e73561e78bc66171d6e7bc187ba..127a57a477755101283ba7bbb4161a574692c252 100644
2588+
index 0487c463806509b1dd93dcfee3b518c95b0bdb19..7cac99a33a398528bbc55f90cc57a9848e56ff01 100644
25892589
--- a/net/minecraft/world/entity/animal/wolf/Wolf.java
25902590
+++ b/net/minecraft/world/entity/animal/wolf/Wolf.java
25912591
@@ -187,9 +187,32 @@ public class Wolf extends TamableAnimal implements NeutralMob {
@@ -4121,7 +4121,7 @@ index 4e34833ea5c71b817c9f42a58320fe100981ec93..19dcc657fd2a995638d5e23c2b043d01
41214121
this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, Player.class, true));
41224122
}
41234123
diff --git a/net/minecraft/world/entity/monster/Skeleton.java b/net/minecraft/world/entity/monster/Skeleton.java
4124-
index d1853db754065a79a04e1c4cfa2b54c10b041157..9a197c2be40e0a69f4a68ff045c2395802f0a5f3 100644
4124+
index 1f35105f6ddd33fc9558d19590a5696479d2de83..5394a5c302c4bd9417dfb304848747fcd2180f07 100644
41254125
--- a/net/minecraft/world/entity/monster/Skeleton.java
41264126
+++ b/net/minecraft/world/entity/monster/Skeleton.java
41274127
@@ -26,6 +26,23 @@ public class Skeleton extends AbstractSkeleton {
@@ -4340,7 +4340,7 @@ index f3de370ee4bafc2cca033293d0d8e5c9c2a6737b..4a7dbd1e4d927240433882a95822e9ed
43404340
EntityType<Stray> entityType, ServerLevelAccessor level, EntitySpawnReason spawnReason, BlockPos pos, RandomSource random
43414341
) {
43424342
diff --git a/net/minecraft/world/entity/monster/Strider.java b/net/minecraft/world/entity/monster/Strider.java
4343-
index 9d27f55b1a3aa3b51a3b5079d5dd199eefa7d759..bb46a6ec3ad6a7d0943bf61028d5f9abf76bbeb7 100644
4343+
index 4b9e60d930bc3a4bfe9aad2e81391e57cfc45d40..ddd3a0d629f720b7acacf01bf2a7db53ee28724e 100644
43444344
--- a/net/minecraft/world/entity/monster/Strider.java
43454345
+++ b/net/minecraft/world/entity/monster/Strider.java
43464346
@@ -92,6 +92,23 @@ public class Strider extends Animal implements ItemSteerable {
@@ -4385,7 +4385,7 @@ index 9d27f55b1a3aa3b51a3b5079d5dd199eefa7d759..bb46a6ec3ad6a7d0943bf61028d5f9ab
43854385
if (isFood && !this.isSilent()) {
43864386
this.level()
43874387
diff --git a/net/minecraft/world/entity/monster/Vex.java b/net/minecraft/world/entity/monster/Vex.java
4388-
index bc74bdc3e13f1d51ed6d31470f3ac6f9855778c9..129c712f767fbbdcc7d0df83f838194102efcd15 100644
4388+
index bc74bdc3e13f1d51ed6d31470f3ac6f9855778c9..720060d422a6b77020da478b514e9581d8d7e4eb 100644
43894389
--- a/net/minecraft/world/entity/monster/Vex.java
43904390
+++ b/net/minecraft/world/entity/monster/Vex.java
43914391
@@ -58,6 +58,50 @@ public class Vex extends Monster implements TraceableEntity {
@@ -4431,7 +4431,7 @@ index bc74bdc3e13f1d51ed6d31470f3ac6f9855778c9..129c712f767fbbdcc7d0df83f8381941
44314431
+ }
44324432
+
44334433
+ @Override
4434-
+ public boolean causeFallDamage(float fallDistance, float damageMultiplier, DamageSource damageSource) {
4434+
+ public boolean causeFallDamage(double fallDistance, float damageMultiplier, DamageSource damageSource) {
44354435
+ return false; // no fall damage please
44364436
+ }
44374437
+ // Purpur end - Ridables

purpur-server/minecraft-patches/features/0009-Implement-elytra-settings.patch

+6-6
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Implement elytra settings
55

66

77
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
8-
index 5208518ad9fe86e25b07aeffa9633407aa6f2f1c..7b635a3f047a7f645322bdd8ce5bfa8350d7a739 100644
8+
index af03e75f445bff6dfe56f89fb422b5662a21c962..3ec3e89b0b53ebde5e1eaa49e28b6bacfe781085 100644
99
--- a/net/minecraft/world/entity/LivingEntity.java
1010
+++ b/net/minecraft/world/entity/LivingEntity.java
1111
@@ -3644,7 +3644,18 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -29,7 +29,7 @@ index 5208518ad9fe86e25b07aeffa9633407aa6f2f1c..7b635a3f047a7f645322bdd8ce5bfa83
2929

3030
this.gameEvent(GameEvent.ELYTRA_GLIDE);
3131
diff --git a/net/minecraft/world/item/FireworkRocketItem.java b/net/minecraft/world/item/FireworkRocketItem.java
32-
index 18d63d2da49451a2d5e1da7bf0c00e05e2f192bc..ab35b0db023f48854476497d0dbdb0dffbeddb43 100644
32+
index 18d63d2da49451a2d5e1da7bf0c00e05e2f192bc..1f081e098ce3bec61b7f374e9b737838783657bb 100644
3333
--- a/net/minecraft/world/item/FireworkRocketItem.java
3434
+++ b/net/minecraft/world/item/FireworkRocketItem.java
3535
@@ -62,6 +62,19 @@ public class FireworkRocketItem extends Item implements ProjectileItem {
@@ -39,7 +39,7 @@ index 18d63d2da49451a2d5e1da7bf0c00e05e2f192bc..ab35b0db023f48854476497d0dbdb0df
3939
+
4040
+ // Purpur start - Implement elytra settings
4141
+ if (level.purpurConfig.elytraDamagePerFireworkBoost > 0) {
42-
+ List<net.minecraft.world.entity.EquipmentSlot> list = net.minecraft.world.entity.EquipmentSlot.VALUES.stream().filter((enumitemslot) -> net.minecraft.world.entity.LivingEntity.canGlideUsing(player.getItemBySlot(enumitemslot), enumitemslot)).toList();
42+
+ java.util.List<net.minecraft.world.entity.EquipmentSlot> list = net.minecraft.world.entity.EquipmentSlot.VALUES.stream().filter((enumitemslot) -> net.minecraft.world.entity.LivingEntity.canGlideUsing(player.getItemBySlot(enumitemslot), enumitemslot)).toList();
4343
+ net.minecraft.world.entity.EquipmentSlot enumitemslot = net.minecraft.Util.getRandom(list, player.random);
4444
+
4545
+ ItemStack glideItem = player.getItemBySlot(enumitemslot);
@@ -72,7 +72,7 @@ index 8c9f64140f016edfadeeb75463655cc2f3fafc0c..84e7f1b119ccfdabf48ccac51278e197
7272
onBreak.accept(item);
7373
}
7474
diff --git a/net/minecraft/world/item/TridentItem.java b/net/minecraft/world/item/TridentItem.java
75-
index 5ed862c4eeb9995b25f6a0ee1b57b2fdafb92551..59b1a455895d2842e45d916dcf53dead32e1c72a 100644
75+
index 5ed862c4eeb9995b25f6a0ee1b57b2fdafb92551..34bacb05324fd82cbf8b8836998e2619ede3bcb2 100644
7676
--- a/net/minecraft/world/item/TridentItem.java
7777
+++ b/net/minecraft/world/item/TridentItem.java
7878
@@ -127,6 +127,18 @@ public class TridentItem extends Item implements ProjectileItem {
@@ -81,9 +81,9 @@ index 5ed862c4eeb9995b25f6a0ee1b57b2fdafb92551..59b1a455895d2842e45d916dcf53dead
8181
org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerRiptideEvent(player, stack, f, f1, f2); // CraftBukkit
8282
+
8383
+ // Purpur start - Implement elytra settings
84-
+ List<EquipmentSlot> list = EquipmentSlot.VALUES.stream().filter((enumitemslot) -> LivingEntity.canGlideUsing(entity.getItemBySlot(enumitemslot), enumitemslot)).toList();
84+
+ List<net.minecraft.world.entity.EquipmentSlot> list = net.minecraft.world.entity.EquipmentSlot.VALUES.stream().filter((enumitemslot) -> LivingEntity.canGlideUsing(entity.getItemBySlot(enumitemslot), enumitemslot)).toList();
8585
+ if (!list.isEmpty()) {
86-
+ EquipmentSlot enumitemslot = net.minecraft.Util.getRandom(list, entity.random);
86+
+ net.minecraft.world.entity.EquipmentSlot enumitemslot = net.minecraft.Util.getRandom(list, entity.random);
8787
+ ItemStack glideItem = entity.getItemBySlot(enumitemslot);
8888
+ if (glideItem.has(net.minecraft.core.component.DataComponents.GLIDER) && level.purpurConfig.elytraDamagePerTridentBoost > 0) {
8989
+ glideItem.hurtAndBreak(level.purpurConfig.elytraDamagePerTridentBoost, entity, enumitemslot);

purpur-server/minecraft-patches/features/0016-Add-mobGriefing-bypass-to-everything-affected.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Add mobGriefing bypass to everything affected
55

66

77
diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java
8-
index 7b635a3f047a7f645322bdd8ce5bfa8350d7a739..2a7434872472b950fe09bfe8f5f334d9964b51d6 100644
8+
index 3ec3e89b0b53ebde5e1eaa49e28b6bacfe781085..36636e35cfb3751d448ee330b51e5ab7c44c6014 100644
99
--- a/net/minecraft/world/entity/LivingEntity.java
1010
+++ b/net/minecraft/world/entity/LivingEntity.java
1111
@@ -1905,7 +1905,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
@@ -320,7 +320,7 @@ index b370b955ac8636275dfada4f38a7ca10297f7dac..275eabf64977cdf262de55124c3e5f88
320320
}
321321

322322
diff --git a/net/minecraft/world/level/block/FarmBlock.java b/net/minecraft/world/level/block/FarmBlock.java
323-
index ba3b8b1e0c646c09e0b3566d632f2735c1ed9051..35c9a20116b971d184181d0dcb1e52c84f480383 100644
323+
index 9883e6d1a1b76155c8ba1817fda6615b4742e18e..c816bd47577cbc898b10d0cfd9c40404429ef929 100644
324324
--- a/net/minecraft/world/level/block/FarmBlock.java
325325
+++ b/net/minecraft/world/level/block/FarmBlock.java
326326
@@ -114,7 +114,7 @@ public class FarmBlock extends Block {
@@ -346,10 +346,10 @@ index 248ac9bc820a96fc7653471308b18834fc735a77..5c6ebde129289f2f7feb44dc1083aa03
346346
}
347347
// CraftBukkit end
348348
diff --git a/net/minecraft/world/level/block/TurtleEggBlock.java b/net/minecraft/world/level/block/TurtleEggBlock.java
349-
index 31851c5404ba3e60c8e8063c6bd0fa94acac6375..4cafcf185dcc0f6c1a380c40d3b654055b492a9a 100644
349+
index a23626dbfacf98ef1bc7918ca35406fa71307bed..bb3bba0d0bf89e82b929fe95247f50ccba964c02 100644
350350
--- a/net/minecraft/world/level/block/TurtleEggBlock.java
351351
+++ b/net/minecraft/world/level/block/TurtleEggBlock.java
352-
@@ -213,7 +213,7 @@ public class TurtleEggBlock extends Block {
352+
@@ -214,7 +214,7 @@ public class TurtleEggBlock extends Block {
353353
// Purpur end - Option to disable turtle egg trampling with feather falling
354354
if (entity instanceof Player) return true;
355355

0 commit comments

Comments
 (0)