blob: e6a69c0630ddf608ff64f07f0c40274098fd205c [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001/* This sefun is to provide a replacement for the efun query_snoop().
2 * Feel free to add it to your mudlibs, if you have much code relying on that.
3 */
4
5
6#include <interactive_info.h>
7
8private object _query_snoop(object ob)
9{
10 if(!efun::interactive(ob))
11 return 0;
12
13 object prev = efun::previous_object();
14 efun::set_this_object(prev);
15#if ! __EFUN_DEFINED__(query_snoop)
16 return efun::interactive_info(ob, II_SNOOP_NEXT);
17#else
18 return efun::query_snoop(ob);
19#endif
20}
21
22nomask object query_snoop(object who) {
23 object snooper;
24
25 snooper=_query_snoop(who);
26 if (!snooper) return 0;
27 if (query_wiz_grp(snooper)>query_wiz_grp(getuid(previous_object())) &&
28 IS_ARCH(snooper)) return 0;
29 return snooper;
30}