Waterfall/BungeeCord-Patches/0040-Providing-access-to-the-player-s-LoginResult-on-Logi.patch
Shane Freeder d6688e05e6
Updated Upstream (BungeeCord)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

BungeeCord Changes:
511017ab #3396: Update Netty version
c3e8cfac #3374, #3389: Improve log handling of normal java.util Logger usage by forwarding the LogRecords directly to the BungeeLogger instead of the fallback err stream.
bf2b3c68 #3384: Update documentation of ProxyPingEvent
68e74a8c #3378: Remove KickStringWriter from the pipeline after handshake arrives
5b4a5404 #3361: Cache MessageFormats for translations
88da5c05 #3353: Update GitHub actions
2022-11-14 19:14:25 +00:00

70 lines
3.0 KiB
Diff

From 730364aac5da3bcc5448a242e4d3b6f8525e2528 Mon Sep 17 00:00:00 2001
From: phenomax <phenomax@revayd.net>
Date: Thu, 10 Aug 2017 18:41:17 +0200
Subject: [PATCH] Providing access to the player's LoginResult on LoginEvent
diff --git a/api/src/main/java/net/md_5/bungee/api/event/LoginEvent.java b/api/src/main/java/net/md_5/bungee/api/event/LoginEvent.java
index fa507753..a13eba79 100644
--- a/api/src/main/java/net/md_5/bungee/api/event/LoginEvent.java
+++ b/api/src/main/java/net/md_5/bungee/api/event/LoginEvent.java
@@ -10,6 +10,7 @@ import net.md_5.bungee.api.chat.BaseComponent;
import net.md_5.bungee.api.chat.TextComponent;
import net.md_5.bungee.api.connection.PendingConnection;
import net.md_5.bungee.api.plugin.Cancellable;
+import net.md_5.bungee.connection.LoginResult; // Waterfall: Parse LoginResult object to new constructor of LoginEvent
/**
* Event called to represent a player logging in.
@@ -29,6 +30,14 @@ public class LoginEvent extends AsyncEvent<LoginEvent> implements Cancellable
*/
@Setter(AccessLevel.NONE)
private BaseComponent[] cancelReasonComponents;
+
+ // Waterfall start - adding the LoginResult variable to provide access to it, when calling the login event
+ /**
+ * The player's login result containing his textures
+ */
+ private LoginResult loginResult;
+ // Waterfall end
+
/**
* Connection attempting to login.
*/
@@ -40,6 +49,15 @@ public class LoginEvent extends AsyncEvent<LoginEvent> implements Cancellable
this.connection = connection;
}
+ // Waterfall start - adding new constructor for LoginResult
+ public LoginEvent(PendingConnection connection, Callback<LoginEvent> done, LoginResult loginResult)
+ {
+ super( done );
+ this.connection = connection;
+ this.loginResult = loginResult;
+ }
+ // Waterfall end
+
/**
* @return reason to be displayed
* @deprecated Use component methods instead.
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/LoginResult.java b/api/src/main/java/net/md_5/bungee/connection/LoginResult.java
similarity index 100%
rename from proxy/src/main/java/net/md_5/bungee/connection/LoginResult.java
rename to api/src/main/java/net/md_5/bungee/connection/LoginResult.java
diff --git a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
index cd0a459c..935daa5d 100644
--- a/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
+++ b/proxy/src/main/java/net/md_5/bungee/connection/InitialHandler.java
@@ -627,7 +627,7 @@ public class InitialHandler extends PacketHandler implements PendingConnection
};
// fire login event
- bungee.getPluginManager().callEvent( new LoginEvent( InitialHandler.this, complete ) );
+ bungee.getPluginManager().callEvent( new LoginEvent( InitialHandler.this, complete, this.getLoginProfile() ) ); // Waterfall: Parse LoginResult object to new constructor of LoginEvent
}
@Override
--
2.38.1