From 3b1c66dcbcac791687dedb9c0c6e95e768893521 Mon Sep 17 00:00:00 2001 From: Griatch Date: Sun, 13 Apr 2014 10:12:50 +0200 Subject: [PATCH] Made the find command handle *playername correctly. --- src/commands/default/building.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/commands/default/building.py b/src/commands/default/building.py index d38e3559f8..e8adc17bca 100644 --- a/src/commands/default/building.py +++ b/src/commands/default/building.py @@ -1872,13 +1872,20 @@ class CmdFind(MuxCommand): low = min(low, high) high = max(low, high) - if searchstring.startswith("*") or utils.dbref(searchstring): - # A player/dbref search. - # run a normal player- or dbref search. This should be unique. + is_dbref = utils.dbref(searchstring) + is_player = searchstring.startswith("*") + + if is_dbref or is_player: + + if is_dbref: + # a dbref search + result = caller.search(searchstring, global_search=True) + else: + # a player search + searchstring = searchstring.lstrip("*") + result = caller.search_player(searchstring) string = "{wMatch{n(#%i-#%i):" % (low, high) - - result = caller.search(searchstring, global_search=True) if not result: return if not low <= int(result.id) <= high: