From 976835ecedc606b750bbc3be17d05e25e3e95e43 Mon Sep 17 00:00:00 2001 From: Johnny Date: Sun, 11 Oct 2020 23:18:02 +0000 Subject: [PATCH 1/2] Adds appropriate object checking to objtag lockfunc (partial fix for #2227). --- evennia/locks/lockfuncs.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/evennia/locks/lockfuncs.py b/evennia/locks/lockfuncs.py index 4b23aae515..07da37fef3 100644 --- a/evennia/locks/lockfuncs.py +++ b/evennia/locks/lockfuncs.py @@ -539,6 +539,8 @@ def objtag(accessing_obj, accessed_obj, *args, **kwargs): Only true if accessed_obj has the specified tag and optional category. """ + if hasattr(accessed_obj, "obj"): + accessed_obj = accessed_obj.obj tagkey = args[0] if args else None category = args[1] if len(args) > 1 else None return bool(accessed_obj.tags.get(tagkey, category=category)) From e645ccdbb89fdb93fbedd8cc85ef5de7cba4d213 Mon Sep 17 00:00:00 2001 From: Johnny Date: Sun, 11 Oct 2020 23:23:58 +0000 Subject: [PATCH 2/2] Adds appropriate object checking to 'inside()' lockfunc (partial fix for #2227). --- evennia/locks/lockfuncs.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/evennia/locks/lockfuncs.py b/evennia/locks/lockfuncs.py index 07da37fef3..0f06470860 100644 --- a/evennia/locks/lockfuncs.py +++ b/evennia/locks/lockfuncs.py @@ -557,6 +557,8 @@ def inside(accessing_obj, accessed_obj, *args, **kwargs): want also nested objects to pass the lock, use the `insiderecursive` lockfunc. """ + if hasattr(accessed_obj, "obj"): + accessed_obj = accessed_obj.obj return accessing_obj.location == accessed_obj