Remove dead diff, some name/diff cleanup

This commit is contained in:
Nassim Jahnke 2024-12-20 12:00:24 +01:00
parent 6e0c8776e6
commit 42a2ccff55
No known key found for this signature in database
GPG key ID: EF6771C01F6EF02F
9 changed files with 34 additions and 97 deletions

View file

@ -8,7 +8,7 @@
if (BuiltInRegistries.REGISTRY.keySet().isEmpty()) { if (BuiltInRegistries.REGISTRY.keySet().isEmpty()) {
throw new IllegalStateException("Unable to load registries"); throw new IllegalStateException("Unable to load registries");
} else { } else {
@@ -54,11 +_,78 @@ @@ -54,11 +_,80 @@
EntitySelectorOptions.bootStrap(); EntitySelectorOptions.bootStrap();
DispenseItemBehavior.bootStrap(); DispenseItemBehavior.bootStrap();
CauldronInteraction.bootStrap(); CauldronInteraction.bootStrap();
@ -22,7 +22,9 @@
wrapStreams(); wrapStreams();
bootstrapDuration.set(Duration.between(instant, Instant.now()).toMillis()); bootstrapDuration.set(Duration.between(instant, Instant.now()).toMillis());
} }
+ // CraftBukkit start - easier than fixing the decompile + // CraftBukkit start
+ // TODO Check what of this is needed, maybe report it to Mojira. if deemed relevant, move to the respective classes
+ // Used in CraftLegacy
+ net.minecraft.util.datafix.fixes.BlockStateData.register(1008, "{Name:'minecraft:oak_sign',Properties:{rotation:'0'}}", "{Name:'minecraft:standing_sign',Properties:{rotation:'0'}}"); + net.minecraft.util.datafix.fixes.BlockStateData.register(1008, "{Name:'minecraft:oak_sign',Properties:{rotation:'0'}}", "{Name:'minecraft:standing_sign',Properties:{rotation:'0'}}");
+ net.minecraft.util.datafix.fixes.BlockStateData.register(1009, "{Name:'minecraft:oak_sign',Properties:{rotation:'1'}}", "{Name:'minecraft:standing_sign',Properties:{rotation:'1'}}"); + net.minecraft.util.datafix.fixes.BlockStateData.register(1009, "{Name:'minecraft:oak_sign',Properties:{rotation:'1'}}", "{Name:'minecraft:standing_sign',Properties:{rotation:'1'}}");
+ net.minecraft.util.datafix.fixes.BlockStateData.register(1010, "{Name:'minecraft:oak_sign',Properties:{rotation:'2'}}", "{Name:'minecraft:standing_sign',Properties:{rotation:'2'}}"); + net.minecraft.util.datafix.fixes.BlockStateData.register(1010, "{Name:'minecraft:oak_sign',Properties:{rotation:'2'}}", "{Name:'minecraft:standing_sign',Properties:{rotation:'2'}}");
@ -41,7 +43,7 @@
+ net.minecraft.util.datafix.fixes.BlockStateData.register(1023, "{Name:'minecraft:oak_sign',Properties:{rotation:'15'}}", "{Name:'minecraft:standing_sign',Properties:{rotation:'15'}}"); + net.minecraft.util.datafix.fixes.BlockStateData.register(1023, "{Name:'minecraft:oak_sign',Properties:{rotation:'15'}}", "{Name:'minecraft:standing_sign',Properties:{rotation:'15'}}");
+ net.minecraft.util.datafix.fixes.ItemIdFix.ITEM_NAMES.put(323, "minecraft:oak_sign"); + net.minecraft.util.datafix.fixes.ItemIdFix.ITEM_NAMES.put(323, "minecraft:oak_sign");
+ +
+ net.minecraft.util.datafix.fixes.BlockStateData.register(1440, "{Name:\'minecraft:portal\',Properties:{axis:\'x\'}}", new String[]{"{Name:\'minecraft:portal\',Properties:{axis:\'x\'}}"}); + net.minecraft.util.datafix.fixes.BlockStateData.register(1440, "{Name:'minecraft:portal',Properties:{axis:'x'}}", "{Name:'minecraft:portal',Properties:{axis:'x'}}");
+ +
+ net.minecraft.util.datafix.fixes.ItemIdFix.ITEM_NAMES.put(409, "minecraft:prismarine_shard"); + net.minecraft.util.datafix.fixes.ItemIdFix.ITEM_NAMES.put(409, "minecraft:prismarine_shard");
+ net.minecraft.util.datafix.fixes.ItemIdFix.ITEM_NAMES.put(410, "minecraft:prismarine_crystals"); + net.minecraft.util.datafix.fixes.ItemIdFix.ITEM_NAMES.put(410, "minecraft:prismarine_crystals");

View file

@ -1,11 +0,0 @@
--- a/net/minecraft/server/ServerFunctionManager.java
+++ b/net/minecraft/server/ServerFunctionManager.java
@@ -34,7 +_,7 @@
}
public CommandDispatcher<CommandSourceStack> getDispatcher() {
- return this.server.getCommands().getDispatcher();
+ return this.server.getCommands().getDispatcher(); // CraftBukkit // Paper - Don't override command dispatcher
}
public void tick() {

View file

@ -1,50 +0,0 @@
--- a/net/minecraft/server/ServerTickRateManager.java
+++ b/net/minecraft/server/ServerTickRateManager.java
@@ -58,8 +_,14 @@
}
public boolean stopSprinting() {
+ // CraftBukkit start - add sendLog parameter
+ return this.stopSprinting(true);
+ }
+
+ public boolean stopSprinting(boolean sendLog) {
+ // CraftBukkit end - add sendLog parameter
if (this.remainingSprintTicks > 0L) {
- this.finishTickSprint();
+ this.finishTickSprint(sendLog); // CraftBukkit - add sendLog parameter
return true;
} else {
return false;
@@ -76,14 +_,20 @@
return flag;
}
- private void finishTickSprint() {
+ private void finishTickSprint(boolean sendLog) { // CraftBukkit - add sendLog parameter
long l = this.scheduledCurrentSprintTicks - this.remainingSprintTicks;
double d = Math.max(1.0, (double)this.sprintTimeSpend) / TimeUtil.NANOSECONDS_PER_MILLISECOND;
int i = (int)(TimeUtil.MILLISECONDS_PER_SECOND * l / d);
String string = String.format("%.2f", l == 0L ? this.millisecondsPerTick() : d / l);
this.scheduledCurrentSprintTicks = 0L;
this.sprintTimeSpend = 0L;
- this.server.createCommandSourceStack().sendSuccess(() -> Component.translatable("commands.tick.sprint.report", i, string), true);
+ // CraftBukkit start - add sendLog parameter
+ if (sendLog) {
+ this.server.createCommandSourceStack().sendSuccess(() -> {
+ return Component.translatable("commands.tick.sprint.report", i, string);
+ }, true);
+ }
+ // CraftBukkit end
this.remainingSprintTicks = 0L;
this.setFrozen(this.previousIsFrozen);
this.server.onTickRateChanged();
@@ -97,7 +_,7 @@
this.remainingSprintTicks--;
return true;
} else {
- this.finishTickSprint();
+ this.finishTickSprint(true); // CraftBukkit - add sendLog parameter
return false;
}
}

View file

@ -9,14 +9,12 @@
this.eraseCache = eraseCache; this.eraseCache = eraseCache;
this.dataFixer = dataFixer; this.dataFixer = dataFixer;
this.levelStorage = levelStorage; this.levelStorage = levelStorage;
@@ -357,9 +_,7 @@ @@ -358,7 +_,7 @@
if (compoundTag != null) {
int version = ChunkStorage.getVersion(compoundTag); int version = ChunkStorage.getVersion(compoundTag);
ChunkGenerator chunkGenerator = WorldUpgrader.this.dimensions.getValueOrThrow(Registries.levelToLevelStem(dimension)).generator(); ChunkGenerator chunkGenerator = WorldUpgrader.this.dimensions.getValueOrThrow(Registries.levelToLevelStem(dimension)).generator();
- CompoundTag compoundTag1 = chunkStorage.upgradeChunkTag( CompoundTag compoundTag1 = chunkStorage.upgradeChunkTag(
- dimension, () -> WorldUpgrader.this.overworldDataStorage, compoundTag, chunkGenerator.getTypeNameForDataFixer() - dimension, () -> WorldUpgrader.this.overworldDataStorage, compoundTag, chunkGenerator.getTypeNameForDataFixer()
- ); + Registries.levelToLevelStem(dimension), () -> WorldUpgrader.this.overworldDataStorage, compoundTag, chunkGenerator.getTypeNameForDataFixer(), chunkPos, null // CraftBukkit
+ CompoundTag compoundTag1 = chunkStorage.upgradeChunkTag(Registries.levelToLevelStem(dimension), () -> WorldUpgrader.this.overworldDataStorage, compoundTag, chunkGenerator.getTypeNameForDataFixer(), chunkPos, null); // CraftBukkit );
ChunkPos chunkPos1 = new ChunkPos(compoundTag1.getInt("xPos"), compoundTag1.getInt("zPos")); ChunkPos chunkPos1 = new ChunkPos(compoundTag1.getInt("xPos"), compoundTag1.getInt("zPos"));
if (!chunkPos1.equals(chunkPos)) { if (!chunkPos1.equals(chunkPos)) {
WorldUpgrader.LOGGER.warn("Chunk {} has invalid position {}", chunkPos, chunkPos1);

View file

@ -42,8 +42,8 @@
+ return this.badRespawnPointExplosion(position, null); + return this.badRespawnPointExplosion(position, null);
+ } + }
+ +
+ public DamageSource badRespawnPointExplosion(Vec3 vec3d, org.bukkit.block.BlockState blockState) { + public DamageSource badRespawnPointExplosion(Vec3 position, org.bukkit.block.BlockState blockState) {
+ return new DamageSource(this.damageTypes.getOrThrow(DamageTypes.BAD_RESPAWN_POINT), vec3d).directBlockState(blockState); + return new DamageSource(this.damageTypes.getOrThrow(DamageTypes.BAD_RESPAWN_POINT), position).directBlockState(blockState);
+ // CraftBukkit end + // CraftBukkit end
} }

View file

@ -1,6 +1,6 @@
--- a/net/minecraft/world/effect/MobEffectUtil.java --- a/net/minecraft/world/effect/MobEffectUtil.java
+++ b/net/minecraft/world/effect/MobEffectUtil.java +++ b/net/minecraft/world/effect/MobEffectUtil.java
@@ -47,18 +_,31 @@ @@ -47,18 +_,38 @@
public static List<ServerPlayer> addEffectToPlayersAround( public static List<ServerPlayer> addEffectToPlayersAround(
ServerLevel level, @Nullable Entity source, Vec3 pos, double radius, MobEffectInstance effect, int duration ServerLevel level, @Nullable Entity source, Vec3 pos, double radius, MobEffectInstance effect, int duration
) { ) {
@ -17,28 +17,31 @@
+ // Paper end - Add ElderGuardianAppearanceEvent + // Paper end - Add ElderGuardianAppearanceEvent
+ // CraftBukkit end + // CraftBukkit end
Holder<MobEffect> effect1 = effect.getEffect(); Holder<MobEffect> effect1 = effect.getEffect();
- List<ServerPlayer> players = level.getPlayers( List<ServerPlayer> players = level.getPlayers(
- serverPlayer -> serverPlayer.gameMode.isSurvival() - serverPlayer -> serverPlayer.gameMode.isSurvival()
- && (source == null || !source.isAlliedTo(serverPlayer)) + // Paper start - Add ElderGuardianAppearanceEvent
- && pos.closerThan(serverPlayer.position(), radius) + serverPlayer -> {
- && ( + final boolean condition = serverPlayer.gameMode.isSurvival()
&& (source == null || !source.isAlliedTo(serverPlayer))
&& pos.closerThan(serverPlayer.position(), radius)
&& (
- !serverPlayer.hasEffect(effect1) - !serverPlayer.hasEffect(effect1)
- || serverPlayer.getEffect(effect1).getAmplifier() < effect.getAmplifier() - || serverPlayer.getEffect(effect1).getAmplifier() < effect.getAmplifier()
- || serverPlayer.getEffect(effect1).endsWithin(duration - 1) - || serverPlayer.getEffect(effect1).endsWithin(duration - 1)
- ) - )
- ); - );
- players.forEach(serverPlayer -> serverPlayer.addEffect(new MobEffectInstance(effect), source)); - players.forEach(serverPlayer -> serverPlayer.addEffect(new MobEffectInstance(effect), source));
+ List<ServerPlayer> players = level.getPlayers((entityplayer) -> { + !serverPlayer.hasEffect(effect1)
+ // Paper start - Add ElderGuardianAppearanceEvent + || serverPlayer.getEffect(effect1).getAmplifier() < effect.getAmplifier()
+ boolean condition = entityplayer.gameMode.isSurvival() && (source == null || !source.isAlliedTo((Entity) entityplayer)) && pos.closerThan(entityplayer.position(), radius) && (!entityplayer.hasEffect(effect1) || entityplayer.getEffect(effect1).getAmplifier() < effect.getAmplifier() || entityplayer.getEffect(effect1).endsWithin(duration - 1)); + || serverPlayer.getEffect(effect1).endsWithin(duration - 1)
+ );
+ if (condition) { + if (condition) {
+ return playerPredicate == null || playerPredicate.test(entityplayer); // Only test the player AFTER it is true + return playerPredicate == null || playerPredicate.test(serverPlayer); // Only test the player AFTER it is true
+ } else { + } else {
+ return false; + return false;
+ } + }
+ // Paper end - Add ElderGuardianAppearanceEvent
+ }); + });
+ + // Paper end - Add ElderGuardianAppearanceEvent
+ players.forEach(serverPlayer -> serverPlayer.addEffect(new MobEffectInstance(effect), source, cause)); // CraftBukkit + players.forEach(serverPlayer -> serverPlayer.addEffect(new MobEffectInstance(effect), source, cause)); // CraftBukkit
return players; return players;
} }

View file

@ -4,7 +4,7 @@
return false; return false;
} else { } else {
mutableLong.setValue(time + 20L + level.getRandom().nextInt(20)); mutableLong.setValue(time + 20L + level.getRandom().nextInt(20));
+ if (mob.getNavigation().isStuck()) mutableLong.add(200); // Paper - Perf: Wait an additional 10s to check again if they're stuck + if (mob.getNavigation().isStuck()) mutableLong.add(200); // Paper - Perf: Wait an additional 10s to check again if they're stuck // TODO Modifies Vanilla behavior, add config option
PoiManager poiManager = level.getPoiManager(); PoiManager poiManager = level.getPoiManager();
map.long2ObjectEntrySet().removeIf(entry -> !entry.getValue().isStillValid(time)); map.long2ObjectEntrySet().removeIf(entry -> !entry.getValue().isStillValid(time));
Predicate<BlockPos> predicate1 = pos -> { Predicate<BlockPos> predicate1 = pos -> {

View file

@ -5,13 +5,13 @@
nearestVisibleLivingEntities -> nearestVisibleLivingEntities.findClosest(livingEntity -> this.ramTargeting.test(level, entity, livingEntity)) nearestVisibleLivingEntities -> nearestVisibleLivingEntities.findClosest(livingEntity -> this.ramTargeting.test(level, entity, livingEntity))
) )
+ // CraftBukkit start + // CraftBukkit start
+ .map((entityliving) -> { + .map((livingEntity) -> {
+ org.bukkit.event.entity.EntityTargetEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityTargetLivingEvent(entity, entityliving, (entityliving instanceof net.minecraft.server.level.ServerPlayer) ? org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_PLAYER : org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_ENTITY); + org.bukkit.event.entity.EntityTargetEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityTargetLivingEvent(entity, livingEntity, (livingEntity instanceof net.minecraft.server.level.ServerPlayer) ? org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_PLAYER : org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_ENTITY);
+ if (event.isCancelled() || event.getTarget() == null) { + if (event.isCancelled() || event.getTarget() == null) {
+ return null; + return null;
+ } + }
+ entityliving = ((org.bukkit.craftbukkit.entity.CraftLivingEntity) event.getTarget()).getHandle(); + livingEntity = ((org.bukkit.craftbukkit.entity.CraftLivingEntity) event.getTarget()).getHandle();
+ return entityliving; + return livingEntity;
+ }) + })
+ // CraftBukkit end + // CraftBukkit end
.ifPresent(entity1 -> this.chooseRamPosition(entity, entity1)); .ifPresent(entity1 -> this.chooseRamPosition(entity, entity1));

View file

@ -1,20 +1,15 @@
--- a/net/minecraft/world/entity/animal/horse/AbstractChestedHorse.java --- a/net/minecraft/world/entity/animal/horse/AbstractChestedHorse.java
+++ b/net/minecraft/world/entity/animal/horse/AbstractChestedHorse.java +++ b/net/minecraft/world/entity/animal/horse/AbstractChestedHorse.java
@@ -69,9 +_,17 @@ @@ -69,6 +_,12 @@
super.dropEquipment(level); super.dropEquipment(level);
if (this.hasChest()) { if (this.hasChest()) {
this.spawnAtLocation(level, Blocks.CHEST); this.spawnAtLocation(level, Blocks.CHEST);
+ //this.setChest(false); // Paper - moved to post death logic + // Paper start - moved to post death logic
+ } + }
+ } + }
+
+ // Paper start
+ protected void postDeathDropItems(org.bukkit.event.entity.EntityDeathEvent event) { + protected void postDeathDropItems(org.bukkit.event.entity.EntityDeathEvent event) {
+ if (this.hasChest() && (event == null || !event.isCancelled())) { + if (this.hasChest() && !event.isCancelled()) {
+ // Paper end - moved to post death logic
this.setChest(false); this.setChest(false);
} }
} }
+ // Paper end
@Override
public void addAdditionalSaveData(CompoundTag compound) {