diff --git a/forcefield.py b/forcefield.py index 94f7747..497c853 100644 --- a/forcefield.py +++ b/forcefield.py @@ -1,4 +1,5 @@ #pylint: disable = F0401 +import thread from helpers import * from org.bukkit.util import Vector from math import sin @@ -28,7 +29,7 @@ def on_forcefield_command(sender, args): args[0] = args[0].upper() # If it gets to this point, there are argument(s). if args[0] in ["WHITELIST", "WL", "WLIST"]: # Whitelist commands if not args[1:] or args[1].upper() == "LIST": - whitelist_list(sender) + thread.start_new_thread(whitelist_list, (sender,)) return True args[1] = args[1].upper() # If it gets too this point, there is a second argument. @@ -88,15 +89,18 @@ def change_whitelist(sender, add, names): #Add names if add == True else Remove def whitelist_list(player): - player_id = uid(player) - count = 0 - forcefield_header(player, "&bForcefield whitelist:") - for user_id in whitelists.get(player_id, []): - count += 1 - pname = retrieve_player(user_id).getName() - msg(player, "&b %s. &f%s" % (count, pname)) - if count == 0: - msg(player, "&c Your whitelist has no entries.") + try: + player_id = uid(player) + count = 0 + forcefield_header(player, "&bForcefield whitelist:") + for user_id in whitelists.get(player_id, []): + count += 1 + pname = retrieve_player(user_id).getName() + msg(player, "&b %s. &f%s" % (count, pname)) + if count == 0: + msg(player, "&c Your whitelist has no entries.") + except: + warn("Unable to finish whitelist_list process") def whitelist_clear(player): diff --git a/reports.py b/reports.py index 77e522d..3663772 100644 --- a/reports.py +++ b/reports.py @@ -22,7 +22,7 @@ def print_list(sender): try: # new thread, anything can happen. msg(sender, "&a" + str(len(reports)) + " reports:") for i, report in enumerate(reports): - name = server.getOfflinePlayer(juuid(report["uuid"])).getName() + name = retrieve_player(report["uuid"]).getName() msg(sender, "&8[&e%s&c%s&8] &3%s&f: &a%s" % (i, report["time"], name, report["msg"])) except: warn("Failed to complete report's print_list() thread") @@ -62,7 +62,7 @@ def on_rp_command(sender, args): if len(args) > 0: if args[0] == "list": # needs to run in seperate thread because of getOfflinePlayer - thread.start_new_thread(print_list, (sender)) + thread.start_new_thread(print_list, (sender,)) else: if not checkargs(sender, args, 2, 2): return True