fix: npe on name change only
This commit is contained in:
parent
93efcd2536
commit
451e1c4c95
3 changed files with 11 additions and 8 deletions
|
@ -59,10 +59,10 @@ public class AnvilManager {
|
|||
} else {
|
||||
appearanceManager.setName(response);
|
||||
final UpdateResult updateResult = appearanceManager.updatePlayer(false);
|
||||
if (updateResult.isError()) {
|
||||
if (!updateResult.isError()) {
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_SUCCESS));
|
||||
} else {
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_FAIL));
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_FAIL, updateResult.getErrorMessage()));
|
||||
}
|
||||
return AnvilGUI.Response.close();
|
||||
}
|
||||
|
@ -83,7 +83,7 @@ public class AnvilManager {
|
|||
if (!updateResult.isError()) {
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_SUCCESS));
|
||||
} else {
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_FAIL));
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.DISGUISE_FAIL, updateResult.getErrorMessage()));
|
||||
}
|
||||
return AnvilGUI.Response.close();
|
||||
}
|
||||
|
|
|
@ -43,6 +43,10 @@ public class AppearanceManager {
|
|||
return profile.getSkin();
|
||||
}
|
||||
|
||||
public boolean needsASkinChange() {
|
||||
return profile.getSkin() != null && !profile.getSkin().equals(player.getName());
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
profile.setName(name);
|
||||
}
|
||||
|
|
|
@ -20,12 +20,11 @@ public class PlayerJoinListener implements Listener {
|
|||
final AppearanceManager appearanceManager = AppearanceManager.get(player);
|
||||
|
||||
if (appearanceManager.hasData()) {
|
||||
final boolean skinChange = !player.getName().equals(appearanceManager.getSkin());
|
||||
final UpdateResult updateResult = appearanceManager.updatePlayer(skinChange);
|
||||
if (updateResult.isError()) {
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.PREVIOUS_SKIN_APPLY_FAIL, I18N.translate(player, updateResult.getErrorMessage())));
|
||||
} else {
|
||||
final UpdateResult updateResult = appearanceManager.updatePlayer(appearanceManager.needsASkinChange());
|
||||
if (!updateResult.isError()) {
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.PREVIOUS_SKIN_APPLIED));
|
||||
} else {
|
||||
player.sendMessage(I18N.translate(player, I18NDict.Event.PREVIOUS_SKIN_APPLY_FAIL, I18N.translate(player, updateResult.getErrorMessage())));
|
||||
}
|
||||
}
|
||||
}, 20L);
|
||||
|
|
Loading…
Reference in a new issue