#include <newudp.h> #define FOUND "fnd" #define USER "user" #define VERBOSE "vbs" void udp_locate(mapping data) { mapping ret; object ob; ret = ([ REQUEST: REPLY, RECIPIENT: data[SENDER], ID: data[ID], USER: data[USER], VERBOSE: data[VERBOSE], ]); if (data[DATA] && (ob = find_player(data[DATA])) && interactive(ob) && !ob->query_invis()) { ret[FOUND] = 1; #ifdef CDLIB ret[DATA] = "locate@" + LOCAL_NAME + ": "+ ob->query_presentation() +"\n"; #else ret[DATA] = "locate@" + LOCAL_NAME + ": " + ob->short() + "\n"; #endif } else ret[DATA] = "locate@" + LOCAL_NAME + ": No such player: " + data[DATA] + "\n"; INETD->send_udp(data[NAME], ret); }