From d143d50a1870d3ea5143aebed52da163b106828c Mon Sep 17 00:00:00 2001 From: Obique PSWG Date: Tue, 21 Jul 2015 08:57:45 -0500 Subject: [PATCH] Now checks to see if random name is approved before sending it to client --- .../packets/swg/login/creation/RandomNameRequest.java | 1 + src/services/player/CharacterCreationService.java | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/network/packets/swg/login/creation/RandomNameRequest.java b/src/network/packets/swg/login/creation/RandomNameRequest.java index 171e8cf8..76f4d88d 100644 --- a/src/network/packets/swg/login/creation/RandomNameRequest.java +++ b/src/network/packets/swg/login/creation/RandomNameRequest.java @@ -56,4 +56,5 @@ public class RandomNameRequest extends SWGPacket { } public String getRace() { return raceCrc; } + public void setRace(String race) { this.raceCrc = race; } } diff --git a/src/services/player/CharacterCreationService.java b/src/services/player/CharacterCreationService.java index 59ca8657..abdb8fa1 100644 --- a/src/services/player/CharacterCreationService.java +++ b/src/services/player/CharacterCreationService.java @@ -124,7 +124,14 @@ public class CharacterCreationService extends Service { private void handleRandomNameRequest(Player player, RandomNameRequest request) { RandomNameResponse response = new RandomNameResponse(request.getRace(), ""); String race = Race.getRaceByFile(request.getRace()).getSpecies(); - response.setRandomName(nameGenerator.generateRandomName(race)); + String randomName = null; + while (randomName == null) { + randomName = nameGenerator.generateRandomName(race); + if (getNameValidity(randomName, player.getAccessLevel() != AccessLevel.PLAYER) != ErrorMessage.NAME_APPROVED) { + randomName = null; + } + } + response.setRandomName(randomName); sendPacket(player.getNetworkId(), response); }