aboutsummaryrefslogtreecommitdiff
path: root/modules/coins.py
diff options
context:
space:
mode:
authorGravatar jesopo2018-08-09 13:49:44 +0100
committerGravatar jesopo2018-08-09 13:49:44 +0100
commit213bf999b9bc5e6a1cabe6486ffda28541601f74 (patch)
tree2e35d59778d5a7a40eeca021c6e07148493cb10c /modules/coins.py
parentMore grammar (diff)
Changed find_all_by_setting to not return setting, added !richest
Diffstat (limited to 'modules/coins.py')
-rw-r--r--modules/coins.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/modules/coins.py b/modules/coins.py
index 92c2c647..ee5e8014 100644
--- a/modules/coins.py
+++ b/modules/coins.py
@@ -9,6 +9,8 @@ class Module(object):
def __init__(self, bot):
bot.events.on("received.command.coins").hook(self.coins,
help="Show how many coins you have")
+ bot.events.on("received.command.richest").hook(
+ self.richest, help="Show the top 10 richest users")
bot.events.on("received.command.redeemcoins").hook(
self.redeem_coins, help="Redeem free coins")
bot.events.on("received.command.flip").hook(self.flip,
@@ -24,6 +26,18 @@ class Module(object):
event["user"].nickname, coins,
"" if coins == 1 else "s"))
+ def richest(self, event):
+ all_coins = event["server"].get_all_user_settings("coins", [])
+ items = [(coin[0], coin[1]) for coin in all_coins]
+ all_coins = dict(items)
+
+ top_10 = sorted(all_coins.keys())
+ top_10 = sorted(top_10, key=all_coins.get, reverse=True)[:10]
+ top_10 = ", ".join("%s (%d)" % (event["server"].get_user(
+ nickname).nickname, all_coins[nickname]
+ ) for nickname in top_10)
+ event["stdout"].write("Richest users: %s" % top_10)
+
def redeem_coins(self, event):
user_coins = event["user"].get_setting("coins", 0)
if user_coins == 0: