diff --git a/src/main/java/appeng/core/features/registries/PlayerRegistry.java b/src/main/java/appeng/core/features/registries/PlayerRegistry.java index b6827f08..a550fa33 100644 --- a/src/main/java/appeng/core/features/registries/PlayerRegistry.java +++ b/src/main/java/appeng/core/features/registries/PlayerRegistry.java @@ -35,13 +35,18 @@ public class PlayerRegistry implements IPlayerRegistry @Override public int getID( GameProfile username ) { + if( username == null || !username.isComplete() ) + { + return -1; + } + return WorldData.instance().playerData().getPlayerID( username ); } @Override public int getID( EntityPlayer player ) { - return WorldData.instance().playerData().getPlayerID( player.getGameProfile() ); + return this.getID( player.getGameProfile() ); } @Nullable diff --git a/src/main/java/appeng/core/worlddata/PlayerData.java b/src/main/java/appeng/core/worlddata/PlayerData.java index 23c5b6a2..8b3ebffb 100644 --- a/src/main/java/appeng/core/worlddata/PlayerData.java +++ b/src/main/java/appeng/core/worlddata/PlayerData.java @@ -94,17 +94,13 @@ final class PlayerData implements IWorldPlayerData, IOnWorldStartable, IOnWorldS public int getPlayerID( @Nonnull final GameProfile profile ) { Preconditions.checkNotNull( profile ); + Preconditions.checkNotNull( this.config.getCategory( "players" ) ); + Preconditions.checkState( profile.isComplete() ); final ConfigCategory players = this.config.getCategory( "players" ); - - if( players == null || !profile.isComplete() ) - { - return -1; - } - final String uuid = profile.getId().toString(); - final Property maybePlayerID = players.get( uuid ); + if( maybePlayerID != null && maybePlayerID.isIntValue() ) { return maybePlayerID.getInt();