⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hongniang.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
// hongniang.c 红娘// honest create#include <ansi.h>#include <diary_write.h>inherit NPC;int do_hunli();int do_qingtie();int do_begin();int do_jz();void create(){        set_name("红娘", ({ "hong niang", "hong" }));        set("long",                 "她是一个长得很好看的小姑娘。\n"                "你可以可她关于<婚礼>方面的事。\n");        set("gender", "女性");        set("age", 16);        set("per", 27);        set("no_clean_up",1);        set_skill("unarmed", 20);        set_skill("dodge", 20);        set_skill("parry", 20);        set_temp("apply/attack", 30);        set_temp("apply/defense", 30);        set_temp("apply/damage", 5);        set("combat_exp", 3000);        set("shen_type", 1);        set("inquiry", ([                "婚礼"    : (: do_hunli :),                "请贴"    : (: do_qingtie :),                "开始婚礼": (: do_begin :),                "打扮"    : (: do_jz :),        ]));         setup();}int do_hunli(){         object me,obj,ob;        me=this_player();        ob=this_object();if (!me) return 1;        if(!me->query("couple/have_couple"))           {            say ("红娘摇摇头说:“你还没结婚呢。”\n");            return 1;          }        obj = find_player(me->query("couple/couple_id"));        if(!obj || (!wizardp(me) && !me->visible(obj)))          { say ("红娘摇摇头说:“你的伴侣现在不在....”\n");            return 1;          }        if(!present((string)obj,environment()))          {            say("红娘摇摇头说:“"+obj->query("name")+"现在不在这里。”\n");            return 1;          }        if (me->query("marry_ok"))          {           say("红娘摇摇头说:“你已经举行过婚礼了,还想要?”\n");          return 1;         }        say (HIW "红娘福了福说:“好吧,既然你们真心相爱...,我自当把二位的婚礼办的热热闹闹。”\n" NOR);        say (HIB "红娘拉着"+(string)me->query("name")+"和"+(string)obj->query("name")+"的手走到了一个神秘的地方。\n" NOR);        me->move(__DIR__"honglou");         obj->move(__DIR__"honglou");        ob->move(__DIR__"honglou");        me->set("marry_ok",1);         obj->set("marry_ok",1);        ob->set("xingren1",me->query("name"));        ob->set("xingren2",obj->query("name"));        say (HIR "红娘对着你俩一笑说:“你们想请什么人呢?想好了就向我要"+HIW+"请贴"+HIR+"吧。”\n" NOR );        return 1;}int do_qingtie(){       object me, tie, ob, *all, ke, ma;              int i;       me=this_player();       ob=this_object();              all = users();             if (ob->query("qingtie"))        {        say ("红娘说:“请贴已经发过了。”\n");        return 1;       }       if (!(me->query("marry_ok")))         {           say ( (string)me->query("name")+"你不是新人要什么请贴?\n" );          return 1;        }              message_vision(HIW "$N拍了拍手,无数的白鸽带着请贴噼里啪啦冲天而去。\n" NOR,this_object());        for(i=0; i<sizeof(all); i++)         {          ke = all[i];          if ( (string)ke->query("id") !=(string)me->query("id")                  && (string)ke->query("id") != (string)me->query("couple/couple_id"))               { tie =clone_object(__DIR__"obj/qingtie");                tie->set("name",HIR+(string)me->query("name")+"和"+(string)me->query("couple/couple_name")+"的结婚请贴" NOR);                tell_object(ke,HIR"一只白鸽飞到你身上,带给你一张请贴,然后飞走了。\n\n"NOR);                 tie->move(ke);}        }       ob->set("qingtie",1);       ma=clone_object(__DIR__"mafu1");          ma->move("/d/pingan/guangchang");       say(HIY "红娘轻笑一声说:“客人到齐了就告诉我一声。我们就『开始婚礼』。开始前新娘子可要『打扮』一下喔。”\n" NOR);       return 1;}int do_begin(){       object me,ob,obj,ke,check;       me = this_player();       if(!me) return 0;       if(!me->query("couple/couple_id")) return 0;if (me->query_temp("coup")) return 0;       if(!(obj = find_player(me->query("couple/couple_id")))) return 0;       ob = this_object();              if (me->query("gender")!="男性")            { check = me; }                  else { check = obj; }       if (!(check->query("dress_ok")))          {            say(HIC "红娘吃吃笑道:“新娘子还没打扮呢这么心急啊。”\n" NOR);           return 1;         }me->set_temp("coup",1);        message("shout", HIR "【婚礼】:司仪高叫:“" + me->query("name") + "和"          +obj->query("name") + "婚礼现在开始!”\n" NOR,users());        diary_write(me,"和"+ob->query("name")+"举行婚礼");        diary_write(obj,"和"+me->query("name")+"举行婚礼");       call_out("ke1", 3, ob);          return 1;}             int do_jz(){            object me,obj,check,dress;            me = this_player();       if(!me) return 0;       if (!me->query("couple/couple_id")) return 0;       if(!(obj = find_player(me->query("couple/couple_id")))) return 0;              if (me->query("gender")!="男性")                    { check = me; }                else { check = obj; }              if (check->query("dress_ok"))          {            say ("红娘叹了口气说:“我可只有一套妆衣。”\n");           return 1;         }       if ( me->query("gender")=="男性")       {           dress=clone_object(__DIR__"obj/clasp");          dress->move(obj);          dress=clone_object(__DIR__"obj/marry_dress");          dress->move(obj);          dress=clone_object(__DIR__"obj/bracelet");          dress->move(obj);          message_vision(HIW "$N拍了拍手,一位青衣小厮送上了一套妆衣。\n" NOR,this_object());           message_vision(HIB "$N对$n说新娘子可要好好打扮一下。\n" NOR,this_object(),obj);           message_vision(HIY "$N给$n一只凤翅金钗。\n" NOR,this_object(),obj);           message_vision(HIW "$N给$n一件白色婚纱。\n" NOR,this_object(),obj);           message_vision(HIG "$N给$n一只翡翠手镯。\n" NOR,this_object(),obj);           obj->set("dress_ok",1);          message_vision(HIY "$N对$n说:“快穿起来吧。”\n" NOR,this_object(),obj);        }       else        {          dress=clone_object(__DIR__"obj/clasp");          dress->move(me);          dress=clone_object(__DIR__"obj/marry_dress");          dress->move(me);          dress=clone_object(__DIR__"obj/bracelet");          dress->move(me);          message_vision(HIW "$N拍了拍手,一位青衣小厮送上了一套妆衣。\n" NOR,this_object());           message_vision(HIB "$N对$n说新娘子可要好好打扮一下。\n" NOR,this_object(),me);           message_vision(HIY "$N给$n一只凤翅金钗。\n" NOR,this_object(),me);           message_vision(HIW "$N给$n一件白色婚纱。\n" NOR,this_object(),me);           message_vision(HIG "$N给$n一只翡翠手镯。\n" NOR,this_object(),me);           me->set("dress_ok",1);          message_vision(HIY "$N对$n说:“新娘子快穿起来吧。”\n" NOR,this_object(),me);         }      return 1;}int ke1(object ob){         string xingren1,xingren2;         xingren1= (string)ob->query("xingren1");         xingren2= (string)ob->query("xingren2");         ob = this_object();         message("shout", HIR "【婚礼】:司仪高叫:“一拜天地”\n" NOR,users());         say ("\n"+ HIW + xingren1 + "和" + xingren2 + "对天磕了一个头。\n" NOR);              call_out("ke2",3,ob);         return 1;}int ke2(object ob){        string xingren1,xingren2;        xingren1= (string)ob->query("xingren1");        xingren2= (string)ob->query("xingren2");        ob = this_object();        message("shout", HIR "【婚礼】:司仪高叫:“二拜高堂”\n" NOR,users());          say ("\n"+HIB + xingren1 + "和" + xingren2 + "对各位巫师磕了一个头。\n" NOR);        call_out("ke3",3,ob);         return 1;}int ke3(object ob){        string xingren1,xingren2;       xingren1= (string)ob->query("xingren1");       xingren2= (string)ob->query("xingren2");       ob = this_object();       message("shout", HIR "【婚礼】:司仪高叫:“夫妻对拜”\n" NOR,users());       say ("\n"+HIY + xingren1 + "和" + xingren2 + "含情脉脉的相互对拜。\n" NOR);           call_out("sanhua",3,ob);           return 1;}int sanhua(object ob){          object flower;           message("shout", HIR "【婚礼】:司仪高叫:“花童散花”\n" NOR,users());          message("shout", HIR "整个平安城的街道下起了一阵缤纷的花雨。\n\n" NOR,users());       flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/guangchang");           flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/nan1");           flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/nan2");       flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/nan3");       flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/west1");       flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/west2");       flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/west3");       flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/bei1");       flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/dong1");       flower=clone_object(__DIR__"obj/flower"+random(6));       flower->move("/d/pingan/pinganmen");              ob = this_object();       call_out("eateat",3,ob);       return 1;}int eateat(object ob){      object food,ke,*all;            int i;      all=users();      message("shout", HIR "【婚礼】:司仪高叫:“夫妻洞房,大宴宾客”\n" NOR,users());       for(i=0; i<sizeof(all); i++)         {          ke = all[i];          food = clone_object(__DIR__"obj/wlywine");          food->move(ke);          tell_object(ke,"你得到一瓶"+(string)food->query("name")+"。\n");           food = clone_object(__DIR__"obj/cigarette");          food->move(ke);          tell_object(ke,"你得到一包"+(string)food->query("name")+"。\n");           food = clone_object(__DIR__"obj/sugar");           food->move(ke);          tell_object(ke,"你得到一粒"+(string)food->query("name")+"。\n");         }     message("shout", HIR "【婚礼】:司仪高叫:“婚礼完毕”\n" NOR,users());}   

⌨️ 快捷键说明

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