Made search(*playername) commands correctly return a Player typeclass and not a character. Initial startup/character creation: Default permissions are now assigned on player level rather than character level (this gives more safety to @puppet operations). Made @puppet command work only on Character objects.

This commit is contained in:
Griatch 2010-10-21 18:58:47 +00:00
parent c9861e06de
commit 547eb53b32
8 changed files with 61 additions and 39 deletions

View file

@ -137,7 +137,7 @@ class ObjectManager(TypedObjectManager):
A player<->user is a one-to-relationship, so this always
returns just one result or None.
user - mayb be a user object or user id.
user - may be a user object or user id.
"""
try:
uid = int(user)
@ -281,7 +281,7 @@ class ObjectManager(TypedObjectManager):
player_string = ostring.lstrip("*")
player_match = self.get_object_with_player(player_string)
if player_match is not None:
return [player_match]
return [player_match.player]
# find suitable objects

View file

@ -414,6 +414,8 @@ class ObjectDB(TypedObject):
ostring: (str) The string to match object names against.
Obs - To find a player, append * to the
start of ostring.
global_search: Search all objects, not just the current
location/inventory
attribute_name: (string) Which attribute to match
(if None, uses default 'name')
use_nicks : Use nickname replace (off by default)