Make ic command better handle multiple-matches.

Resolves #1923. This changes the `ic` command so non-privileged
users will search through their `_playable_characters` Attribute list.

Privileged (Builder+) users will use their `_playable_characters` list,
but if they are already puppeting a char in the same location as an
object with the given name, this will be used instead. Only if no match
is found neither in `_playable_characters` nor in the current location
will a global search for a puppetable target be done (and only for
Builders+)
This commit is contained in:
Griatch 2020-07-20 22:12:49 +02:00
parent fa09aeef50
commit 87c7e169b1
4 changed files with 94 additions and 36 deletions

View file

@ -389,8 +389,7 @@ class DefaultObject(ObjectDB, metaclass=TypeclassBase):
- `me,self`: self-reference to this object
- `<num>-<string>` - can be used to differentiate
between multiple same-named matches
global_search (bool): Search all objects globally. This is overruled
by `location` keyword.
global_search (bool): Search all objects globally. This overrules 'location' data.
use_nicks (bool): Use nickname-replace (nicktype "object") on `searchdata`.
typeclass (str or Typeclass, or list of either): Limit search only
to `Objects` with this typeclass. May be a list of typeclasses