mirror of
https://github.com/PaperMC/Paper.git
synced 2025-04-08 07:12:59 +02:00
When per-player mob spawning is enabled we do not need to randomly shuffle the chunk list. Additionally, we can use the NearbyPlayers class to quickly retrieve nearby players instead of possible searching all players on the server.
33 lines
1.7 KiB
Diff
33 lines
1.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Phoenix616 <max@themoep.de>
|
|
Date: Sun, 20 Jun 2021 16:35:42 +0100
|
|
Subject: [PATCH] Don't apply cramming damage to players
|
|
|
|
It does not make a lot of sense to damage players if they get crammed,
|
|
especially as the usecase of teleporting lots of players to the same
|
|
location isn't too uncommon and killing all those players isn't
|
|
really what one would expect to happen.
|
|
|
|
For those who really want it a config option is provided.
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
index a75377cf94c70011a967e7ede93f903aae4f9f05..b8f60c2deb7e46f654d0169751c793b3b3408748 100644
|
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
@@ -95,6 +95,7 @@ import net.minecraft.util.Mth;
|
|
import net.minecraft.util.RandomSource;
|
|
import net.minecraft.util.Unit;
|
|
import net.minecraft.world.damagesource.DamageSource;
|
|
+import net.minecraft.world.damagesource.DamageSources;
|
|
import net.minecraft.world.effect.MobEffectInstance;
|
|
import net.minecraft.world.effect.MobEffects;
|
|
import net.minecraft.world.entity.Entity;
|
|
@@ -1473,7 +1474,7 @@ public class ServerPlayer extends Player {
|
|
|
|
@Override
|
|
public boolean isInvulnerableTo(DamageSource damageSource) {
|
|
- return super.isInvulnerableTo(damageSource) || this.isChangingDimension();
|
|
+ return super.isInvulnerableTo(damageSource) || this.isChangingDimension() || !this.level().paperConfig().collisions.allowPlayerCrammingDamage && damageSource == damageSources().cramming(); // Paper - disable player cramming
|
|
}
|
|
|
|
@Override
|