From d45c224f7f456f0df39e9dea42d026fed59fcd77 Mon Sep 17 00:00:00 2001 From: phenomax 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 4c09efff..46517e03 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 @@ -8,6 +8,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. @@ -26,6 +27,13 @@ public class LoginEvent extends AsyncEvent implements Cancellable * Message to use when kicking if this event is canceled. */ private BaseComponent reason; + // 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. */ @@ -37,6 +45,15 @@ public class LoginEvent extends AsyncEvent implements Cancellable this.connection = connection; } + // Waterfall start - adding new constructor for LoginResult + public LoginEvent(PendingConnection connection, Callback 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 deb9fef3..05261ccf 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 @@ -653,7 +653,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 } private void finish2() -- 2.44.0