diff --git a/evennia/typeclasses/managers.py b/evennia/typeclasses/managers.py index b533cb6a0d..4b3cfdb73a 100644 --- a/evennia/typeclasses/managers.py +++ b/evennia/typeclasses/managers.py @@ -41,7 +41,11 @@ def returns_typeclass(method): def func(self, *args, **kwargs): self.__doc__ = method.__doc__ query = method(self, *args, **kwargs) - return query + if hasattr(query, "__iter__"): + result = list(query) + return result[0] if result else None + else: + return query return update_wrapper(func, method) # Managers