Rename display_name and improve docstrings.

This commit is contained in:
Jonathan Piacenti 2015-06-20 16:31:36 -05:00
parent 1822b01086
commit 462b73b626
5 changed files with 59 additions and 26 deletions

View file

@ -356,7 +356,13 @@ class Command(object):
If this command is a potential match in an ambiguous situation, one distinguishing If this command is a potential match in an ambiguous situation, one distinguishing
feature may be its attachment to a nearby object, so we include this by default if available. feature may be its attachment to a nearby object, so we include this by default if available.
Args:
caller (TypedObject): The caller who typed an ambiguous term handed to the search function.
Returns:
A string with identifying information to disambiguate the object, conventionally with a preceding space.
""" """
if hasattr(self, 'obj'): if hasattr(self, 'obj'):
return " (%s)" % self.obj.display_name(caller) return " (%s)" % self.obj.get_display_name(caller)
return "" return ""

View file

@ -138,9 +138,9 @@ class CmdSetObjAlias(MuxCommand):
# no =, so we just list aliases on object. # no =, so we just list aliases on object.
aliases = obj.aliases.all() aliases = obj.aliases.all()
if aliases: if aliases:
caller.msg("Aliases for '%s': %s" % (obj.display_name(caller), ", ".join(aliases))) caller.msg("Aliases for '%s': %s" % (obj.get_display_name(caller), ", ".join(aliases)))
else: else:
caller.msg("No aliases exist for '%s'." % obj.display_name(caller)) caller.msg("No aliases exist for '%s'." % obj.get_display_name(caller))
return return
if not obj.access(caller, 'edit'): if not obj.access(caller, 'edit'):
@ -151,7 +151,7 @@ class CmdSetObjAlias(MuxCommand):
# we have given an empty =, so delete aliases # we have given an empty =, so delete aliases
old_aliases = obj.aliases.all() old_aliases = obj.aliases.all()
if old_aliases: if old_aliases:
caller.msg("Cleared aliases from %s: %s" % (obj.display_name(caller), ", ".join(old_aliases))) caller.msg("Cleared aliases from %s: %s" % (obj.get_display_name(caller), ", ".join(old_aliases)))
obj.aliases.clear() obj.aliases.clear()
else: else:
caller.msg("No aliases to clear.") caller.msg("No aliases to clear.")
@ -175,7 +175,7 @@ class CmdSetObjAlias(MuxCommand):
obj.at_cmdset_get(force_init=True) obj.at_cmdset_get(force_init=True)
# report all aliases on the object # report all aliases on the object
caller.msg("Alias(es) for '%s' set to %s." % (obj.display_name(caller), str(obj.aliases))) caller.msg("Alias(es) for '%s' set to %s." % (obj.get_display_name(caller), str(obj.aliases)))
class CmdCopy(ObjManipCommand): class CmdCopy(ObjManipCommand):
@ -587,7 +587,7 @@ class CmdDesc(MuxCommand):
desc = self.args desc = self.args
obj.db.desc = desc obj.db.desc = desc
caller.msg("The description was set on %s." % obj.display_name(caller)) caller.msg("The description was set on %s." % obj.get_display_name(caller))
class CmdDestroy(MuxCommand): class CmdDestroy(MuxCommand):
@ -2085,7 +2085,7 @@ class CmdFind(MuxCommand):
string += "\n {RNo match found for '%s' in #dbref interval.{n" % (searchstring) string += "\n {RNo match found for '%s' in #dbref interval.{n" % (searchstring)
else: else:
result=result[0] result=result[0]
string += "\n{g %s - %s{n" % (result.display_name(caller), result.path) string += "\n{g %s - %s{n" % (result.get_display_name(caller), result.path)
else: else:
# Not a player/dbref search but a wider search; build a queryset. # Not a player/dbref search but a wider search; build a queryset.
# Searchs for key and aliases # Searchs for key and aliases
@ -2117,10 +2117,10 @@ class CmdFind(MuxCommand):
if nresults > 1: if nresults > 1:
string = "{w%i Matches{n(#%i-#%i%s):" % (nresults, low, high, restrictions) string = "{w%i Matches{n(#%i-#%i%s):" % (nresults, low, high, restrictions)
for res in results: for res in results:
string += "\n {g%s - %s{n" % (res.display_name(caller), res.path) string += "\n {g%s - %s{n" % (res.get_display_name(caller), res.path)
else: else:
string = "{wOne Match{n(#%i-#%i%s):" % (low, high, restrictions) string = "{wOne Match{n(#%i-#%i%s):" % (low, high, restrictions)
string += "\n {g%s - %s{n" % (results[0].display_name(caller), results[0].path) string += "\n {g%s - %s{n" % (results[0].get_display_name(caller), results[0].path)
else: else:
string = "{wMatch{n(#%i-#%i%s):" % (low, high, restrictions) string = "{wMatch{n(#%i-#%i%s):" % (low, high, restrictions)
string += "\n {RNo matches found for '%s'{n" % searchstring string += "\n {RNo matches found for '%s'{n" % searchstring
@ -2278,18 +2278,18 @@ class CmdScript(MuxCommand):
# no rhs means we want to operate on all scripts # no rhs means we want to operate on all scripts
scripts = obj.scripts.all() scripts = obj.scripts.all()
if not scripts: if not scripts:
string += "No scripts defined on %s." % obj.display_name(caller) string += "No scripts defined on %s." % obj.get_display_name(caller)
elif not self.switches: elif not self.switches:
# view all scripts # view all scripts
from evennia.commands.default.system import format_script_list from evennia.commands.default.system import format_script_list
string += format_script_list(scripts) string += format_script_list(scripts)
elif "start" in self.switches: elif "start" in self.switches:
num = sum([obj.scripts.start(script.key) for script in scripts]) num = sum([obj.scripts.start(script.key) for script in scripts])
string += "%s scripts started on %s." % (num, obj.display_name(caller)) string += "%s scripts started on %s." % (num, obj.get_display_name(caller))
elif "stop" in self.switches: elif "stop" in self.switches:
for script in scripts: for script in scripts:
string += "Stopping script %s on %s." % (script.display_name(caller), string += "Stopping script %s on %s." % (script.get_display_name(caller),
obj.display_name(caller)) obj.get_display_name(caller))
script.stop() script.stop()
string = string.strip() string = string.strip()
obj.scripts.validate() obj.scripts.validate()
@ -2299,11 +2299,11 @@ class CmdScript(MuxCommand):
ok = obj.scripts.add(self.rhs, autostart=True) ok = obj.scripts.add(self.rhs, autostart=True)
if not ok: if not ok:
string += "\nScript %s could not be added and/or started on %s." % ( string += "\nScript %s could not be added and/or started on %s." % (
self.rhs, obj.display_name(caller) self.rhs, obj.get_display_name(caller)
) )
else: else:
string = "Script {w%s{n successfully added and started on %s." % ( string = "Script {w%s{n successfully added and started on %s." % (
self.rhs, obj.display_name(caller) self.rhs, obj.get_display_name(caller)
) )
else: else:
@ -2374,7 +2374,7 @@ class CmdTag(MuxCommand):
if nobjs > 0: if nobjs > 0:
catstr = " (category: '{w%s{n')" % category if category else \ catstr = " (category: '{w%s{n')" % category if category else \
("" if nobjs == 1 else " (may have different tag categories)") ("" if nobjs == 1 else " (may have different tag categories)")
matchstr = ", ".join(o.display_name(self.caller) for o in objs) matchstr = ", ".join(o.get_display_name(self.caller) for o in objs)
string = "Found {w%i{n object%s with tag '{w%s{n'%s:\n %s" % (nobjs, string = "Found {w%i{n object%s with tag '{w%s{n'%s:\n %s" % (nobjs,
"s" if nobjs > 1 else "", "s" if nobjs > 1 else "",
@ -2528,6 +2528,6 @@ class CmdSpawn(MuxCommand):
prototype["location"] = self.caller.location prototype["location"] = self.caller.location
for obj in spawn(prototype): for obj in spawn(prototype):
self.caller.msg("Spawned %s." % obj.display_name(self.caller)) self.caller.msg("Spawned %s." % obj.get_display_name(self.caller))

View file

@ -83,7 +83,13 @@ class ChannelCommand(command.Command):
def get_extra_info(self, caller, **kwargs): def get_extra_info(self, caller, **kwargs):
""" """
Let users know that this exit is for communicating on a channel. Let users know that this command is for communicating on a channel.
Args:
caller (TypedObject): A Character or Player who has entered an ambiguous command.
Returns:
A string with identifying information to disambiguate the object, conventionally with a preceding space.
""" """
return _(" (channel)") return _(" (channel)")

View file

@ -1479,11 +1479,17 @@ class ExitCommand(command.Command):
def get_extra_info(self, caller, **kwargs): def get_extra_info(self, caller, **kwargs):
""" """
Shows a bit of information on where the exit leads. Shows a bit of information on where the exit leads.
Args:
caller (Object): The object (usually a character) that entered an ambiguous command.
Returns:
A string with identifying information to disambiguate the command, conventionally with a preceding space.
""" """
if self.obj.destination: if self.obj.destination:
return " (exit to %s)" % self.obj.destination.display_name(caller) return " (exit to %s)" % self.obj.destination.get_display_name(caller)
else: else:
return " (%s)" % self.obj.display_name(caller) return " (%s)" % self.obj.get_display_name(caller)
# #
# Base Exit object # Base Exit object

View file

@ -610,19 +610,28 @@ class TypedObject(SharedMemoryModel):
raise Exception("Cannot delete the ndb object!") raise Exception("Cannot delete the ndb object!")
ndb = property(__ndb_get, __ndb_set, __ndb_del) ndb = property(__ndb_get, __ndb_set, __ndb_del)
def display_name(self, looker, **kwargs): def get_display_name(self, looker, **kwargs):
""" """
Displays the name of the object in a viewer-aware manner. Displays the name of the object in a viewer-aware manner.
Note that this function could be extended to change how object names Args:
appear to users, but be wary. This function does not change an object's keys or looker (TypedObject): The object or player that is looking at/getting inforamtion for this object.
Returns:
A string containing the name of the object, including the DBREF if this user is privileged to control
said object.
Notes:
This function could be extended to change how object names
appear to users in character, but be wary. This function does not change an object's keys or
aliases when searching, and is expected to produce something useful for builders. aliases when searching, and is expected to produce something useful for builders.
""" """
if self.access(looker, access_type='controls'): if self.access(looker, access_type='controls'):
return "{}(#{})".format(self.name, self.id) return "{}(#{})".format(self.name, self.id)
return self.name return self.name
def get_extra_info(self, viewer, **kwargs): def get_extra_info(self, looker, **kwargs):
""" """
Used when an object is in a list of ambiguous objects as an additional Used when an object is in a list of ambiguous objects as an additional
information tag. information tag.
@ -630,8 +639,14 @@ class TypedObject(SharedMemoryModel):
For instance, if you had potions which could have varying levels of liquid For instance, if you had potions which could have varying levels of liquid
left in them, you might want to display how many drinks are left in each when left in them, you might want to display how many drinks are left in each when
selecting which to drop, but not in your normal inventory listing. selecting which to drop, but not in your normal inventory listing.
Args:
looker (TypedObject): The object or player that is looking at/getting information for this object.
Returns:
A string with disambiguating information, conventionally with a leading space.
""" """
if self.location == viewer: if self.location == looker:
return " (carried)" return " (carried)"
return "" return ""