mirror of
https://github.com/FAUSheppy/skillbird
synced 2025-12-06 14:51:36 +01:00
add directly cached rank list
This commit is contained in:
@@ -7,6 +7,7 @@ known_players = dict()
|
|||||||
|
|
||||||
# care for cpu load #
|
# care for cpu load #
|
||||||
player_ranks = dict()
|
player_ranks = dict()
|
||||||
|
playerRankList = []
|
||||||
last_rank_update = datetime.now()
|
last_rank_update = datetime.now()
|
||||||
|
|
||||||
#############################################################
|
#############################################################
|
||||||
@@ -57,6 +58,7 @@ def sync_to_database(players, win):
|
|||||||
def updatePlayerRanks(force=False):
|
def updatePlayerRanks(force=False):
|
||||||
global last_rank_update
|
global last_rank_update
|
||||||
global player_ranks
|
global player_ranks
|
||||||
|
global playerRankList
|
||||||
|
|
||||||
if force or last_rank_update - datetime.now() > timedelta(seconds=240):
|
if force or last_rank_update - datetime.now() > timedelta(seconds=240):
|
||||||
last_rank_update = datetime.now()
|
last_rank_update = datetime.now()
|
||||||
@@ -71,6 +73,10 @@ def updatePlayerRanks(force=False):
|
|||||||
player_ranks.update({p:rank})
|
player_ranks.update({p:rank})
|
||||||
rank += 1
|
rank += 1
|
||||||
|
|
||||||
|
# list of players in the right order for a leaderboard #
|
||||||
|
playerRankList = s
|
||||||
|
|
||||||
|
|
||||||
#############################################################
|
#############################################################
|
||||||
################## Write/Load External DB ###################
|
################## Write/Load External DB ###################
|
||||||
#############################################################
|
#############################################################
|
||||||
@@ -151,3 +157,14 @@ def quality(team1, team2, names1 = [""], names2 = [""]):
|
|||||||
percent, mu2, mu1, sigtot/diff*100)
|
percent, mu2, mu1, sigtot/diff*100)
|
||||||
|
|
||||||
return string
|
return string
|
||||||
|
|
||||||
|
def getRankRange(start, end, revalidateRanks=False):
|
||||||
|
'''Returns a list of player, optionally flushing the ranks-cache first'''
|
||||||
|
global playerRankList
|
||||||
|
|
||||||
|
if revalidateRanks:
|
||||||
|
updatePlayerRanks(revalidateRanks)
|
||||||
|
|
||||||
|
return playerRankList[start:end]
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user