Don't allow duplicate UUIDs on the proxy.
This commit is contained in:
		| @@ -325,7 +325,8 @@ public class InitialHandler extends PacketHandler implements PendingConnection | |||||||
|         } |         } | ||||||
|  |  | ||||||
|         // If offline mode and they are already on, don't allow connect |         // If offline mode and they are already on, don't allow connect | ||||||
|         if ( !isOnlineMode() && bungee.getPlayer( getName() ) != null ) |         // We can just check by UUID here as names are based on UUID | ||||||
|  |         if ( !isOnlineMode() && bungee.getPlayer( getUniqueId() ) != null ) | ||||||
|         { |         { | ||||||
|             disconnect( bungee.getTranslation( "already_connected" ) ); |             disconnect( bungee.getTranslation( "already_connected" ) ); | ||||||
|             return; |             return; | ||||||
| @@ -416,11 +417,19 @@ public class InitialHandler extends PacketHandler implements PendingConnection | |||||||
|     private void finish() |     private void finish() | ||||||
|     { |     { | ||||||
|         // Check for multiple connections |         // Check for multiple connections | ||||||
|         ProxiedPlayer old = bungee.getPlayer( getName() ); |         // We have to check for the old name first | ||||||
|         if ( old != null ) |         ProxiedPlayer oldName = bungee.getPlayer( getName() ); | ||||||
|  |         if ( oldName != null ) | ||||||
|         { |         { | ||||||
|             // TODO See #1218 |             // TODO See #1218 | ||||||
|             old.disconnect( bungee.getTranslation( "already_connected" ) ); |             oldName.disconnect( bungee.getTranslation( "already_connected" ) ); | ||||||
|  |         } | ||||||
|  |         // And then also for their old UUID | ||||||
|  |         ProxiedPlayer oldID = bungee.getPlayer( getUniqueId() ); | ||||||
|  |         if ( oldID != null ) | ||||||
|  |         { | ||||||
|  |             // TODO See #1218 | ||||||
|  |             oldID.disconnect( bungee.getTranslation( "already_connected" ) ); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         offlineId = java.util.UUID.nameUUIDFromBytes( ( "OfflinePlayer:" + getName() ).getBytes( Charsets.UTF_8 ) ); |         offlineId = java.util.UUID.nameUUIDFromBytes( ( "OfflinePlayer:" + getName() ).getBytes( Charsets.UTF_8 ) ); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 md_5
					md_5