From 3f4950410d9e292dc444fc84824aa645facdef0f Mon Sep 17 00:00:00 2001
From: MiniDigger | Martin <admin@minidigger.dev>
Date: Fri, 22 Sep 2023 19:43:52 +0200
Subject: [PATCH] some more compile fixes

---
 patches/server/Basic-PlayerProfile-API.patch  | 24 ++++++++++---------
 patches/server/MC-Utils.patch                 |  4 ++--
 ...s-ServerLevel-for-gamerule-callbacks.patch |  9 +++++++
 3 files changed, 24 insertions(+), 13 deletions(-)

diff --git a/patches/server/Basic-PlayerProfile-API.patch b/patches/server/Basic-PlayerProfile-API.patch
index f64862f6a9..184c9f61f0 100644
--- a/patches/server/Basic-PlayerProfile-API.patch
+++ b/patches/server/Basic-PlayerProfile-API.patch
@@ -23,6 +23,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 @@ -0,0 +0,0 @@
 +package com.destroystokyo.paper.profile;
 +
++import com.mojang.authlib.yggdrasil.ProfileResult;
 +import io.papermc.paper.configuration.GlobalConfiguration;
 +import com.google.common.base.Charsets;
 +import com.google.common.collect.Iterables;
@@ -32,6 +33,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 +import net.minecraft.Util;
 +import net.minecraft.server.MinecraftServer;
 +import net.minecraft.server.players.GameProfileCache;
++import org.apache.commons.lang3.StringUtils;
 +import org.apache.commons.lang3.Validate;
 +import org.bukkit.configuration.serialization.SerializableAs;
 +import org.bukkit.craftbukkit.configuration.ConfigSerializationUtil;
@@ -186,7 +188,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 +
 +    @Override
 +    public boolean isComplete() {
-+        return profile.isComplete();
++        return this.getId() != null && StringUtils.isNotBlank(this.getName());
 +    }
 +
 +    @Override
@@ -239,7 +241,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 +                }
 +            }
 +        }
-+        return this.profile.isComplete();
++        return this.isComplete();
 +    }
 +
 +    public boolean complete(boolean textures) {
@@ -249,15 +251,15 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 +        MinecraftServer server = MinecraftServer.getServer();
 +        boolean isCompleteFromCache = this.completeFromCache(true, onlineMode);
 +        if (onlineMode && (!isCompleteFromCache || textures && !hasTextures())) {
-+            GameProfile result = server.getSessionService().fillProfileProperties(profile, true);
-+            if (result != null) {
-+                copyProfileProperties(result, this.profile, true);
++            ProfileResult result = server.getSessionService().fetchProfile(this.getId(), true);
++            if (result != null && result.profile() != null) {
++                copyProfileProperties(result.profile(), this.profile, true);
 +            }
-+            if (this.profile.isComplete()) {
++            if (this.isComplete()) {
 +                server.getProfileCache().add(this.profile);
 +            }
 +        }
-+        return profile.isComplete() && (!onlineMode || !textures || hasTextures());
++        return this.isComplete() && (!onlineMode || !textures || hasTextures());
 +    }
 +
 +    private static void copyProfileProperties(GameProfile source, GameProfile target) {
@@ -273,13 +275,13 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 +        }
 +
 +        for (Property property : sourceProperties.values()) {
-+            targetProperties.removeAll(property.getName());
-+            targetProperties.put(property.getName(), property);
++            targetProperties.removeAll(property.name());
++            targetProperties.put(property.name(), property);
 +        }
 +    }
 +
 +    private static ProfileProperty toBukkit(Property property) {
-+        return new ProfileProperty(property.getName(), property.getValue(), property.getSignature());
++        return new ProfileProperty(property.name(), property.value(), property.signature());
 +    }
 +
 +    public static PlayerProfile asBukkitCopy(GameProfile gameProfile) {
@@ -338,7 +340,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 +                    throw new IllegalArgumentException("Property data (" + propertyData + ") is not a valid Map");
 +                }
 +                Property property = CraftProfileProperty.deserialize((Map<?, ?>) propertyData);
-+                profile.profile.getProperties().put(property.getName(), property);
++                profile.profile.getProperties().put(property.name(), property);
 +            }
 +        }
 +
diff --git a/patches/server/MC-Utils.patch b/patches/server/MC-Utils.patch
index 81f8a8291f..8876456039 100644
--- a/patches/server/MC-Utils.patch
+++ b/patches/server/MC-Utils.patch
@@ -2898,14 +2898,14 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 +    public static void onChunkHolderCreate(final ServerLevel level, final ChunkHolder holder) {
 +        final ChunkMap chunkMap = level.chunkSource.chunkMap;
 +        for (int index = 0, len = chunkMap.regionManagers.size(); index < len; ++index) {
-+            chunkMap.regionManagers.get(index).addChunk(holder.pos.x, holder.pos.z);
++            chunkMap.regionManagers.get(index).addChunk(holder.getPos().x, holder.getPos().z);
 +        }
 +    }
 +
 +    public static void onChunkHolderDelete(final ServerLevel level, final ChunkHolder holder) {
 +        final ChunkMap chunkMap = level.chunkSource.chunkMap;
 +        for (int index = 0, len = chunkMap.regionManagers.size(); index < len; ++index) {
-+            chunkMap.regionManagers.get(index).removeChunk(holder.pos.x, holder.pos.z);
++            chunkMap.regionManagers.get(index).removeChunk(holder.getPos().x, holder.getPos().z);
 +        }
 +    }
 +
diff --git a/patches/server/Pass-ServerLevel-for-gamerule-callbacks.patch b/patches/server/Pass-ServerLevel-for-gamerule-callbacks.patch
index 9d1e5f5223..419b82f4e8 100644
--- a/patches/server/Pass-ServerLevel-for-gamerule-callbacks.patch
+++ b/patches/server/Pass-ServerLevel-for-gamerule-callbacks.patch
@@ -39,6 +39,15 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
      public static final GameRules.Key<GameRules.BooleanValue> RULE_REDUCEDDEBUGINFO = GameRules.register("reducedDebugInfo", GameRules.Category.MISC, GameRules.BooleanValue.create(false, (minecraftserver, gamerules_gameruleboolean) -> {
          int i = gamerules_gameruleboolean.get() ? 22 : 23;
 -        Iterator iterator = minecraftserver.getPlayerList().getPlayers().iterator();
++        Iterator iterator = minecraftserver.players().iterator(); // Paper
+ 
+         while (iterator.hasNext()) {
+             ServerPlayer entityplayer = (ServerPlayer) iterator.next();
+@@ -0,0 +0,0 @@ public class GameRules {
+     public static final GameRules.Key<GameRules.IntegerValue> RULE_MAX_ENTITY_CRAMMING = GameRules.register("maxEntityCramming", GameRules.Category.MOBS, GameRules.IntegerValue.create(24));
+     public static final GameRules.Key<GameRules.BooleanValue> RULE_WEATHER_CYCLE = GameRules.register("doWeatherCycle", GameRules.Category.UPDATES, GameRules.BooleanValue.create(true));
+     public static final GameRules.Key<GameRules.BooleanValue> RULE_LIMITED_CRAFTING = GameRules.register("doLimitedCrafting", GameRules.Category.PLAYER, GameRules.BooleanValue.create(false, (minecraftserver, gamerules_gameruleboolean) -> {
+-        Iterator iterator = minecraftserver.getPlayerList().getPlayers().iterator();
 +        Iterator iterator = minecraftserver.players().iterator(); // Paper
  
          while (iterator.hasNext()) {