找回密码
 注册
搜索
查看: 653|回复: 3

原理分析:由于讲话太多太快,被噎死了。

[复制链接]
门派:不明
发表于 2010-8-2 19:04:50 | 显示全部楼层 |阅读模式



        int t = uptime();

        if (!semote && strlen(arg) > 5)
                if (arg[0] >= ' ' && stringp(me->query_temp("last_channel_msg"))
                && strlen(me->query_temp("last_channel_msg")) > 5 //不能太短
                && (me->query_temp("last_channel_msg")[0..2] == arg[0..2]        //2次chat的内容,前面几个字相同
                || me->query_temp("last_channel_msg")[<3..<1] == arg[<3..<1]))        //2次chat的内容,后面几个字相同
                me->add_temp("channel_repeat", 1);                                //增加重复chat1
                else if (me->add_temp("channel_repeat", -1) < 0) {
                if (me->query_temp("robottest") < t-1200)
                        me->add_temp("robottest", 20);
                me->delete_temp("channel_repeat");
                }

        if (me->query_temp("channel_repeat") > 3) {                //3次重复,就噎死了。
                me->delete_temp("channel_repeat");
                me->set("chblk_"+verb, 1);
                me->add_condition("vote_chblk", 30); // 10 min
                switch (verb) {
                case "chat": verb = "闲聊"; break;
                case "rumor": verb = "谣言"; break;
                case "party": verb = "门派"; break;
                case "sj": verb = "书剑"; break;
                case "irc": verb = "聊天室"; break;
                case "group": verb = "帮派"; break;
                default: verb = "交谈";
                }
                do_channel(this_object(), "rumor",
                "由于讲话太罗嗦," + me->query("name")
                +"("+capitalize(me->query("id"))+")的" + verb + "频道被噎死了。");
        } else if (me->add_temp("channel_count", 1) > 1) {
                me->delete_temp("channel_count");
                if (me->query_temp("last_channel_time") == t) {                //1秒之内2次chat,也被噎死了。
                me->set("chblk_"+verb, 1);
                me->add_condition("vote_chblk", 30); // 10 min
                switch (verb) {
                        case "chat": verb = "闲聊"; break;
                        case "rumor": verb = "谣言"; break;
                        case "party": verb = "门派"; break;
                        case "sj": verb = "书剑"; break;
                        case "irc": verb = "聊天室"; break;
                        case "group": verb = "帮派"; break;
                        default: verb = "交谈";
                }
                do_channel(this_object(), "rumor",
                        "由于讲话太多太快," + me->query("name")
                        +"("+capitalize(me->query("id"))+")的" + verb + "频道被噎死了。");
                }
                me->set_temp("last_channel_time", t);
        }
        me->set_temp("last_channel_msg", arg);


门派:不明
发表于 2010-8-2 20:07:07 | 显示全部楼层
这是什么???????????????????????
门派:不明
发表于 2010-8-3 14:49:24 | 显示全部楼层
很高深的样子啊。。。。。。。。。。。。。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|书剑永恒MUD ( 闽ICP备14012032号|闽公网安备 35050202000162号 )

GMT+8, 2025-11-10 10:12 , Processed in 0.041939 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表