1
0
mirror of https://github.com/GeyserMC/Floodgate.git synced 2025-12-19 14:59:20 +00:00

Bumped Adventure. Only set empty texture when needed

This commit is contained in:
Tim203
2022-03-03 00:31:44 +01:00
parent b447fcbbff
commit 0e055d106d
5 changed files with 39 additions and 25 deletions

View File

@@ -24,17 +24,17 @@
*/ */
object Versions { object Versions {
const val geyserVersion= "2.0.0-SNAPSHOT" const val geyserVersion = "2.0.0-SNAPSHOT"
const val cumulusVersion= "1.0-SNAPSHOT" const val cumulusVersion = "1.0-SNAPSHOT"
const val spigotVersion= "1.13-R0.1-SNAPSHOT" const val spigotVersion = "1.13-R0.1-SNAPSHOT"
const val fastutilVersion= "8.5.3" const val fastutilVersion = "8.5.3"
const val lombokVersion= "1.18.20" const val lombokVersion = "1.18.20"
const val guiceVersion= "5.0.1" const val guiceVersion = "5.0.1"
const val nettyVersion= "4.1.49.Final" const val nettyVersion = "4.1.49.Final"
const val snakeyamlVersion= "1.28" const val snakeyamlVersion = "1.28"
const val cloudVersion= "1.5.0" const val cloudVersion = "1.5.0"
const val adventureApiVersion= "4.9.1" const val adventureApiVersion = "4.10.0"
const val adventurePlatformVersion= "4.0.0" const val adventurePlatformVersion = "4.0.1"
const val javaWebsocketVersion = "1.5.2" const val javaWebsocketVersion = "1.5.2"

View File

@@ -46,7 +46,7 @@ import net.md_5.bungee.netty.ChannelWrapper;
import org.geysermc.floodgate.api.ProxyFloodgateApi; import org.geysermc.floodgate.api.ProxyFloodgateApi;
import org.geysermc.floodgate.api.logger.FloodgateLogger; import org.geysermc.floodgate.api.logger.FloodgateLogger;
import org.geysermc.floodgate.api.player.FloodgatePlayer; import org.geysermc.floodgate.api.player.FloodgatePlayer;
import org.geysermc.floodgate.player.FloodgatePlayerImpl; import org.geysermc.floodgate.config.ProxyFloodgateConfig;
import org.geysermc.floodgate.skin.SkinApplier; import org.geysermc.floodgate.skin.SkinApplier;
import org.geysermc.floodgate.skin.SkinData; import org.geysermc.floodgate.skin.SkinData;
import org.geysermc.floodgate.util.BungeeCommandUtil; import org.geysermc.floodgate.util.BungeeCommandUtil;
@@ -67,6 +67,7 @@ public final class BungeeListener implements Listener {
checkNotNull(PLAYER_NAME, "Initial name field cannot be null"); checkNotNull(PLAYER_NAME, "Initial name field cannot be null");
} }
@Inject private ProxyFloodgateConfig config;
@Inject private ProxyFloodgateApi api; @Inject private ProxyFloodgateApi api;
@Inject private LanguageManager languageManager; @Inject private LanguageManager languageManager;
@Inject private FloodgateLogger logger; @Inject private FloodgateLogger logger;
@@ -128,11 +129,13 @@ public final class BungeeListener implements Listener {
@EventHandler(priority = EventPriority.LOWEST) @EventHandler(priority = EventPriority.LOWEST)
public void onPostLogin(PostLoginEvent event) { public void onPostLogin(PostLoginEvent event) {
// To fix the February 2 2022 Mojang authentication changes // To fix the February 2 2022 Mojang authentication changes
if (!config.isSendFloodgateData()) {
FloodgatePlayer player = api.getPlayer(event.getPlayer().getUniqueId()); FloodgatePlayer player = api.getPlayer(event.getPlayer().getUniqueId());
if (player != null) { if (player != null && !player.isLinked()) {
skinApplier.applySkin(player, new SkinData("", "")); skinApplier.applySkin(player, new SkinData("", ""));
} }
} }
}
@EventHandler(priority = EventPriority.HIGHEST) @EventHandler(priority = EventPriority.HIGHEST)
public void onPlayerDisconnect(PlayerDisconnectEvent event) { public void onPlayerDisconnect(PlayerDisconnectEvent event) {

View File

@@ -34,6 +34,7 @@ import java.util.UUID;
import org.bukkit.event.EventHandler; import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener; import org.bukkit.event.Listener;
import org.geysermc.floodgate.api.SimpleFloodgateApi; import org.geysermc.floodgate.api.SimpleFloodgateApi;
import org.geysermc.floodgate.api.player.FloodgatePlayer;
public final class PaperProfileListener implements Listener { public final class PaperProfileListener implements Listener {
@Inject private SimpleFloodgateApi api; @Inject private SimpleFloodgateApi api;
@@ -41,10 +42,18 @@ public final class PaperProfileListener implements Listener {
@EventHandler @EventHandler
public void onFill(PreFillProfileEvent event) { public void onFill(PreFillProfileEvent event) {
UUID id = event.getPlayerProfile().getId(); UUID id = event.getPlayerProfile().getId();
if (id == null) {
return;
}
FloodgatePlayer player = api.getPlayer(id);
if (player == null || player.isLinked()) {
return;
}
// back when this event got added the PlayerProfile class didn't have the // back when this event got added the PlayerProfile class didn't have the
// hasProperty / hasTextures methods // hasProperty / hasTextures methods
if (id == null || !this.api.isFloodgatePlayer(id) || if (event.getPlayerProfile().getProperties().stream().anyMatch(
event.getPlayerProfile().getProperties().stream().anyMatch(
prop -> "textures".equals(prop.getName()))) { prop -> "textures".equals(prop.getName()))) {
return; return;
} }

View File

@@ -38,10 +38,6 @@ public final class SpigotListenerRegistration implements ListenerRegistration<Li
@Override @Override
public void register(Listener listener) { public void register(Listener listener) {
if (listener == null) {
return;
}
Bukkit.getServer().getPluginManager().registerEvents(listener, plugin); Bukkit.getServer().getPluginManager().registerEvents(listener, plugin);
} }
} }

View File

@@ -55,6 +55,7 @@ import net.kyori.adventure.text.Component;
import org.geysermc.floodgate.api.ProxyFloodgateApi; import org.geysermc.floodgate.api.ProxyFloodgateApi;
import org.geysermc.floodgate.api.logger.FloodgateLogger; import org.geysermc.floodgate.api.logger.FloodgateLogger;
import org.geysermc.floodgate.api.player.FloodgatePlayer; import org.geysermc.floodgate.api.player.FloodgatePlayer;
import org.geysermc.floodgate.config.ProxyFloodgateConfig;
import org.geysermc.floodgate.util.LanguageManager; import org.geysermc.floodgate.util.LanguageManager;
import org.geysermc.floodgate.util.VelocityCommandUtil; import org.geysermc.floodgate.util.VelocityCommandUtil;
@@ -90,6 +91,7 @@ public final class VelocityListener {
.expireAfterAccess(20, TimeUnit.SECONDS) .expireAfterAccess(20, TimeUnit.SECONDS)
.build(); .build();
@Inject private ProxyFloodgateConfig config;
@Inject private ProxyFloodgateApi api; @Inject private ProxyFloodgateApi api;
@Inject private LanguageManager languageManager; @Inject private LanguageManager languageManager;
@Inject private FloodgateLogger logger; @Inject private FloodgateLogger logger;
@@ -143,9 +145,13 @@ public final class VelocityListener {
if (player != null) { if (player != null) {
playerCache.invalidate(event.getConnection()); playerCache.invalidate(event.getConnection());
// The texture properties addition is to fix the February 2 2022 Mojang authentication changes // The texture properties addition is to fix the February 2 2022 Mojang authentication changes
event.setGameProfile(new GameProfile(player.getCorrectUniqueId(), if (!config.isSendFloodgateData() && !player.isLinked()) {
player.getCorrectUsername(), Collections.singletonList( event.setGameProfile(new GameProfile(
new Property("textures", "", "")))); player.getCorrectUniqueId(),
player.getCorrectUsername(),
Collections.singletonList(new Property("textures", "", ""))
));
}
} }
} }