Overall fixes to unexpected/unwanted behavior

This commit is contained in:
2023-05-08 19:20:51 +02:00
parent b60a78e75a
commit 8dc46a6319
4 changed files with 53 additions and 31 deletions
+11 -7
View File
@@ -46,10 +46,11 @@ class Leaderboard(commands.Cog):
botmessage = botmessage + i + "\n"
await ctx.send(botmessage)
if(len(servers) != 0):
servers.append(self.getserver("", " ".join(message)))
server = ""
if(len(servers) > 1):
for i in servers:
if(i in " ".join(message)):
if(i.lower() in " ".join(message).lower()):
server = i
break
else:
@@ -137,7 +138,7 @@ class Leaderboard(commands.Cog):
return weaponid, weaponname
def getserver(self, snippet):
def getserver(self, snippet, fullmessage = ""):
server = ""
response = requests.get('https://tone.sleepycat.date/v2/client/servers').json()
servers = response.keys()
@@ -145,6 +146,8 @@ class Leaderboard(commands.Cog):
for i in servers:
if(snippet.lower() in i.lower()):
server = i
if(i.lower() in fullmessage.lower()):
server = i
break
return server
@@ -164,7 +167,6 @@ class Leaderboard(commands.Cog):
easyfilter = True
else:
hardfilter = True
top10 = {}
while(len(top10)<10):
current = 0
@@ -175,10 +177,12 @@ class Leaderboard(commands.Cog):
checked = stats[str(board)]
if(hardfilter):
if(board.lower() == "kd"):
if (stats['deaths'] == 0):
deaths = 1
if(weaponid != ""):
deaths = stats['deaths_while_equipped']
else:
deaths = stats['deaths']
if(deaths == 0):
deaths = deaths + 1
checked = round(stats["kills"] / deaths, 2)
if(board.lower() == "avgd"):
if(stats["kills"] == 0):
@@ -212,7 +216,7 @@ class Leaderboard(commands.Cog):
stat = str("{:0.2f}".format(j))
if(easyfilter):
stat = str(j)
botmessage = botmessage + str(f"{str(counter):<2}"+ " - " + f"{i :<15}" + " : "+ f"{stat:<8}" + "\n")
botmessage = botmessage + str(f"{str(counter):<2}"+ " - " + f"{i :<20}" + " : "+ f"{stat:<8}" + "\n")
counter= counter+1
return botmessage
+17 -9
View File
@@ -14,7 +14,7 @@ class Stats(commands.Cog):
@commands.command(aliases=["compare"])
async def stats(self, ctx, *message):
error = False
players = []
players = {}
servers = []
server = ""
weaponid= ""
@@ -28,17 +28,21 @@ class Stats(commands.Cog):
item = i.replace(",", "")
function_dict = self.message_handler(item)
if(function_dict['player'] != None):
players.append(function_dict['player'])
players[item] = self.getplayerid(item)
if(function_dict['weapon'] != None):
weaponname = function_dict["weapon"][1]
weaponid= function_dict['weapon'][0]
if(function_dict['server'] != None):
servers.append(function_dict['server'])
if(len(servers) != 0):
if(len(servers) > 1):
servers.append(self.getserver("", " ".join(message)))
if(len(servers) != 0 and len(message) != 1):
if(len(message) == 2 and weaponid != ""):
server = ""
elif(len(servers) > 1):
for i in servers:
if(i in " ".join(message)):
if(i.lower() in " ".join(message).lower()):
server = i
break
else:
@@ -49,8 +53,9 @@ class Stats(commands.Cog):
await ctx.send("```No existing player found, check if the name is correct or has changed```")
list_of_stats = []
for i in players:
stats = self.getstats(playerid=i,weaponid=weaponid, weaponname=weaponname, server=server)
for i in players.keys():
if(i.lower() not in server.lower()):
stats = self.getstats(playerid=players[i],weaponid=weaponid, weaponname=weaponname, server=server)
list_of_stats.append(stats)
if ("".join(list_of_stats) != ""):
@@ -156,7 +161,7 @@ class Stats(commands.Cog):
return weaponid, weaponname
def getserver(self, snippet):
def getserver(self, snippet, fullmessage = ""):
server = ""
response = requests.get('https://tone.sleepycat.date/v2/client/servers').json()
servers = response.keys()
@@ -164,6 +169,8 @@ class Stats(commands.Cog):
for i in servers:
if(snippet.lower() in i.lower()):
server = i
if(i.lower() in fullmessage.lower()):
server = i
break
return server
@@ -185,7 +192,8 @@ class Stats(commands.Cog):
deaths=killstats['deaths_while_equipped']
if(deaths == 0):
deaths = 1;
botmessage += str("Deaths : " + str(killstats['deaths_while_equipped'])) + '\n' + str("Weapon : " + weaponname) + '\n' + str(str("weapon KD : " + str("{:0.2f}".format(killstats['kills']/deaths))))
botmessage += str(str("Deaths : " + str(killstats['deaths_while_equipped'])) + '\n' + str("Weapon : " + weaponname) + '\n'
+ str(str("weapon KD : " + str("{:0.2f}".format(killstats['kills']/deaths)))+ '\n' + str("Deaths to : " + str(killstats['deaths']))))
else:
deaths=killstats['deaths']
if(deaths == 0):
+8 -3
View File
@@ -97,8 +97,11 @@ class SlashLeaderboard(commands.Cog):
for i in servers:
if(snippet.lower() in i.lower()):
if(snippet.lower()== i.lower()):
server = i
break
else:
server = i
return server
@@ -128,10 +131,12 @@ class SlashLeaderboard(commands.Cog):
checked = stats[str(board)]
if(hardfilter):
if(board.lower() == "kd"):
if (stats['deaths'] == 0):
deaths = 1
if(weaponid != ""):
deaths = stats['deaths_while_equipped']
else:
deaths = stats['deaths']
if(deaths == 0):
deaths = deaths + 1
checked = round(stats["kills"] / deaths, 2)
if(board.lower() == "avgd"):
if(stats["kills"] == 0):
@@ -165,7 +170,7 @@ class SlashLeaderboard(commands.Cog):
stat = str("{:0.2f}".format(j))
if(easyfilter):
stat = str(j)
botmessage = botmessage + str(f"{str(counter):<2}"+ " - " + f"{i :<15}" + " : "+ f"{stat:<8}" + "\n")
botmessage = botmessage + str(f"{str(counter):<2}"+ " - " + f"{i :<20}" + " : "+ f"{stat:<8}" + "\n")
counter= counter+1
return botmessage
+6 -1
View File
@@ -129,8 +129,11 @@ class SlashStats(commands.Cog):
for i in servers:
if(snippet.lower() in i.lower()):
if(snippet.lower()== i.lower()):
server = i
break
else:
server = i
return server
@@ -151,7 +154,9 @@ class SlashStats(commands.Cog):
deaths=killstats['deaths_while_equipped']
if(deaths == 0):
deaths = 1;
botmessage += str("Deaths : " + str(killstats['deaths_while_equipped'])) + '\n' + str("Weapon : " + weaponname) + '\n' + str(str("weapon KD : " + str("{:0.2f}".format(killstats['kills']/deaths))))
botmessage += str(str("Deaths : " + str(killstats['deaths_while_equipped'])) + '\n' + str("Weapon : " + weaponname) +
'\n' + str(str("weapon KD : " + str("{:0.2f}".format(killstats['kills']/deaths)))) + '\n' + str("Deaths to : " + str(killstats['deaths'])))
else:
deaths=killstats['deaths']
if(deaths == 0):