fix badges style and stuff

This commit is contained in:
jomo
2015-01-02 01:43:47 +01:00
parent 6ec7ad23ed
commit 310a347bc8
+28 -21
View File
@@ -1,17 +1,15 @@
from helpers import * from helpers import *
from traceback import format_exc as print_traceback
badges = open_json_file("badges", {}) badges = open_json_file("badges", {})
badges_available = { badges_available = {
"helpful": "A very helpful player", "helpful" : "A very helpful player",
"expert_minecraft": "An expert in Minecraft", "expert_minecraft" : "An expert in Minecraft",
"expert_coder": "A good coder", "expert_coder" : "A good coder",
"oldtimer": "A long time player", "oldtimer" : "A long time player",
"good_builder": "A very good builder", "good_builder" : "A very good builder",
"friendly": "Many think that this player is friendly", "friendly" : "Many think that this player is friendly",
"very_active": "A very active player", "very_active" : "A very active player",
"trustworthy": "This player is very trustworthy", "trustworthy" : "This player is very trustworthy",
} }
badges_perm_add = "utils.badges.add" badges_perm_add = "utils.badges.add"
badges_perm_del = "utils.badges.delete" badges_perm_del = "utils.badges.delete"
@@ -19,6 +17,7 @@ badges_perm_del = "utils.badges.delete"
def save_badges(): def save_badges():
save_json_file("badges", badges) save_json_file("badges", badges)
def get_badges(player): def get_badges(player):
sender_id = uid(player) sender_id = uid(player)
if sender_id in badges.keys(): if sender_id in badges.keys():
@@ -27,6 +26,7 @@ def get_badges(player):
badges_list = [] badges_list = []
return badges_list return badges_list
def show_badges(sender, player): def show_badges(sender, player):
player_badges = get_badges(player) player_badges = get_badges(player)
if player_badges: if player_badges:
@@ -35,6 +35,7 @@ def show_badges(sender, player):
else: else:
msg(sender, "&eThis player has no badges yet") msg(sender, "&eThis player has no badges yet")
def new_badge_event(player, badge): def new_badge_event(player, badge):
msg(player, "") msg(player, "")
msg(player, "&6Wow! You just received a badge!") msg(player, "&6Wow! You just received a badge!")
@@ -43,9 +44,11 @@ def new_badge_event(player, badge):
msg(player, "") msg(player, "")
player.playSound(player.getLocation(), "random.orb", 1, 1) player.playSound(player.getLocation(), "random.orb", 1, 1)
def del_badge_event(player, badge): def del_badge_event(player, badge):
msg(player, "&cWe took your badge \"%s\"." % badges_available[badge]) msg(player, "&cWe took your badge \"%s\"." % badges_available[badge])
def list_badges(sender): def list_badges(sender):
if badges_available: if badges_available:
for key in badges_available.keys(): for key in badges_available.keys():
@@ -53,6 +56,7 @@ def list_badges(sender):
else: else:
msg(sender, "&cThere are currently no badges available") msg(sender, "&cThere are currently no badges available")
def add_badge(sender, target, badge): def add_badge(sender, target, badge):
if badge in badges_available: if badge in badges_available:
player_badges = get_badges(target) player_badges = get_badges(target)
@@ -68,6 +72,7 @@ def add_badge(sender, target, badge):
else: else:
msg(sender, "&cThere is no badge called %s. Check /badge list!" % badge) msg(sender, "&cThere is no badge called %s. Check /badge list!" % badge)
def del_badge(sender, target, badge): def del_badge(sender, target, badge):
if badge in badges_available.keys(): if badge in badges_available.keys():
player_badges = get_badges(target) player_badges = get_badges(target)
@@ -78,7 +83,7 @@ def del_badge(sender, target, badge):
badges[uid(target)] = player_badges badges[uid(target)] = player_badges
msg(sender, "&7... set player_badges to uid badges target ...") msg(sender, "&7... set player_badges to uid badges target ...")
msg(sender, "&7... result: %s" % ", ".join(badges[uid(target)])) msg(sender, "&7... result: %s" % ", ".join(badges[uid(target)]))
msg(sender, "&aYou just took %s from %s!" % (badge, target.getName())) msg(sender, "&aYou just took %s from %s!" % (badge, target.getName()))
save_badges() save_badges()
del_badge_event(target) del_badge_event(target)
@@ -87,6 +92,7 @@ def del_badge(sender, target, badge):
else: else:
msg(sender, "&cThere is no badge called %s. Check /badge list!" % badge) msg(sender, "&cThere is no badge called %s. Check /badge list!" % badge)
@hook.command("badge", aliases=["badges", "rewards"]) @hook.command("badge", aliases=["badges", "rewards"])
def on_badge_command(sender, args): def on_badge_command(sender, args):
argnum = int(len(args)) argnum = int(len(args))
@@ -95,25 +101,25 @@ def on_badge_command(sender, args):
if argnum is 0: if argnum is 0:
show_badges(sender, sender) show_badges(sender, sender)
# Length of arguments is 1 # Length of arguments is 1
if argnum == 1: if argnum == 1:
# If only argument is "list" # If only argument is "list"
if args[0].lower() == "list": if args[0].lower() == "list":
list_badges(sender) list_badges(sender)
return return True
# If only argument is a player name # If only argument is a player name
target = server.getPlayer(args[0]) target = server.getPlayer(args[0])
if is_player(target): if is_player(target):
show_badges(sender, target) show_badges(sender, target)
return return True
else: else:
msg(sender, "&cThere is no player called %s online." % args[0]) msg(sender, "&cThere is no player called %s online." % args[0])
return return True
msg(sender, "&cUnknown syntax: /badge <playername> &o&c /badge list") msg(sender, "&cUnknown syntax: /badge <playername> &o&c /badge list")
return return True
# Length of arguments is 3 # Length of arguments is 3
if argnum == 3: if argnum == 3:
@@ -124,15 +130,16 @@ def on_badge_command(sender, args):
if cmd == "add": if cmd == "add":
if not sender.hasPermission(badges_perm_add): if not sender.hasPermission(badges_perm_add):
noperm(sender) noperm(sender)
return return True
add_badge(sender, target, new_badge) add_badge(sender, target, new_badge)
return return True
if cmd == "take" or cmd == "del": if cmd == "take" or cmd == "del":
if not sender.hasPermission(badges_perm_del): if not sender.hasPermission(badges_perm_del):
noperm(sender) noperm(sender)
return return True
del_badge(sender, target, new_badge) del_badge(sender, target, new_badge)
return return True
msg(sender, "&cUnknown syntax: /badge <add|take> <playername> <badge>") msg(sender, "&cUnknown syntax: /badge <add|take> <playername> <badge>")
return True