From ee37070422f8682791e0406549de63b8b34f5aa9 Mon Sep 17 00:00:00 2001 From: BlauFeuer Date: Mon, 15 Jan 2018 13:50:08 -0500 Subject: [PATCH] `@locate` alias of CmdFind shows location of find If using `@locate` alias and only one object is found and the found object has a location, display that information. --- evennia/commands/default/building.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/evennia/commands/default/building.py b/evennia/commands/default/building.py index 445ec082a9..9a7caf8567 100644 --- a/evennia/commands/default/building.py +++ b/evennia/commands/default/building.py @@ -2315,6 +2315,8 @@ class CmdFind(COMMAND_DEFAULT_CLASS): else: result = result[0] string += "\n|g %s - %s|n" % (result.get_display_name(caller), result.path) + if self.cmdstring == "@locate" and not is_account and result.location: + string += " Location: {}".format(result.location.get_display_name(caller)) else: # Not an account/dbref search but a wider search; build a queryset. # Searchs for key and aliases @@ -2350,6 +2352,8 @@ class CmdFind(COMMAND_DEFAULT_CLASS): else: string = "|wOne Match|n(#%i-#%i%s):" % (low, high, restrictions) string += "\n |g%s - %s|n" % (results[0].get_display_name(caller), results[0].path) + if self.cmdstring == "@locate" and nresults == 1 and results[0].location: + string += " Location: {}".format(results[0].location.get_display_name(caller)) else: string = "|wMatch|n(#%i-#%i%s):" % (low, high, restrictions) string += "\n |RNo matches found for '%s'|n" % searchstring