friendtalk.c

来自「C实现的MUD,对大家基本入门网络游戏很有帮助!」· C语言 代码 · 共 77 行

C
77
字号
#include <ansi.h>//by driftpho@YSZZinherit F_CLEAN_UP;int is_friend(object me, string id);int main(object me,string arg){        object *ob,*target;        int i;        string ob_id,outarg;        mapping friends;        if(me->query("chblk_on"))                return notify_fail("你的频道被关了!\n");        friends = me->query("friends");        if(!friends        || !mapp(friends)        || (sizeof(friends) == 0))                return notify_fail("你没有任何的朋友!\n");        ob=users();        i = sizeof(ob);        while (i--) {                ob_id = (string)ob[i]->query("id");                if ( (is_friend(me,ob_id)                || wizardp(ob[i]))                 && !ob[i]->query("env/friendtalk"))                {                        if (sizeof(target)==0)                                target=({ob[i]});                         else                                 target+=({ob[i]});                }        }        if(!stringp(outarg = arg))                outarg = ".....";          if(!me)              return notify_fail("你不在!\n");        if(!target)              return notify_fail("你的朋友不在,或设置了不允许friendtalk!\n");        message("vision", HBMAG "【好友频道】" +         me->query("name") + "(" + capitalize(me->query("id")) + ")" +         ":" + outarg + "\n" NOR, target);             tell_object(me,HBMAG "【好友频道】" +me->query("name") + "(" + capitalize(me->query("id")) + ")" +":" + outarg + "\n" NOR);        return 1;}int is_friend(object me, string id){        string * ids;        mapping friends;        int i;        friends = me->query("friends");        ids = keys(friends);        for(i=0;i<sizeof(ids);i++)        {                if(id == ids[i])                return 1;        }        return 0;}int help(object me){write(@HELP指令格式 : friendtalk 内容与自己的朋友通过【好友频道】讲话如果不想听的话可以用set friendtalk 1来关闭。HELP    );    return 1;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?