+ Added fix for leader-board attempting to display non-existing user
This commit is contained in:
@@ -83,13 +83,17 @@ public class CommandLeaderboard extends Command
|
|||||||
embed.title = LocStrings.stub("LeaderboardTitle");
|
embed.title = LocStrings.stub("LeaderboardTitle");
|
||||||
embed.descriptionText = "";
|
embed.descriptionText = "";
|
||||||
|
|
||||||
for(int i = 0; i < listSize && i < users.size(); ++i)
|
int indexToDisplay = 1;
|
||||||
|
for(int i = 0; indexToDisplay <= listSize && i < users.size(); ++i)
|
||||||
{
|
{
|
||||||
// Only now that we've sorted do we do the full construction and caching of users
|
// Only now that we've sorted do we do the full construction and caching of users
|
||||||
Pair<Long, String> userPair = users.get(i);
|
Pair<Long, String> userPair = users.get(i);
|
||||||
KittyUser cachedUser = ObjectBuilderFactory.getKittyUser(guildID, userPair.Second);
|
KittyUser cachedUser = ObjectBuilderFactory.getKittyUser(guildID, userPair.Second);
|
||||||
|
|
||||||
embed.descriptionText += "**" + (i + 1) + ":** " + userPair.First + " - " + cachedUser.name;
|
if(cachedUser == null)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
embed.descriptionText += "**" + (indexToDisplay++) + ":** " + userPair.First + " - " + cachedUser.name;
|
||||||
embed.descriptionText += "\n";
|
embed.descriptionText += "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -319,8 +319,13 @@ public class ObjectBuilderFactory
|
|||||||
if(user == null)
|
if(user == null)
|
||||||
{
|
{
|
||||||
Guild jdaGuild = kitty.getGuildById(guildID);
|
Guild jdaGuild = kitty.getGuildById(guildID);
|
||||||
|
if(jdaGuild == null) return null;
|
||||||
|
|
||||||
Member jdaMember = jdaGuild.getMemberById(userID);
|
Member jdaMember = jdaGuild.getMemberById(userID);
|
||||||
|
if(jdaMember == null) return null;
|
||||||
|
|
||||||
User jdaUser = jdaMember.getUser();
|
User jdaUser = jdaMember.getUser();
|
||||||
|
if(jdaUser == null) return null;
|
||||||
|
|
||||||
user = extractUserByJDAUser(guildID, jdaMember.getNickname(), jdaUser.getId(), jdaUser.getAvatarUrl(), jdaUser.getId());
|
user = extractUserByJDAUser(guildID, jdaMember.getNickname(), jdaUser.getId(), jdaUser.getAvatarUrl(), jdaUser.getId());
|
||||||
updateUser(user, jdaMember);
|
updateUser(user, jdaMember);
|
||||||
|
|||||||
Reference in New Issue
Block a user