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

📄 zhudao.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
// zhujia.c 铸甲房// 星星lywin 2000/9/2 #include <ansi.h>inherit ROOM;int do_zhujia(string arg); void create(){        set("short", "铸刀房");        set("long", @LONG这是一个很平常普通的铸刀房!四周都是乱七八糟的铜皮铁块,人们把捡来的矿石在这儿炼化以后铸造成各种名刀。LONG        );        set("exits", ([                "west" : __DIR__"zhujian",                "east" : __DIR__"zhubanzi",        ]));        set("no_fight",1);        set("no_beg",1);        set("no_steal",1);        setup();}void init(){        add_action("do_zhujia","zhudao");         add_action("do_quit","quit");        add_action("do_quit","exit");        add_action("do_quit","exercise");        add_action("do_quit","dazuo");        add_action("do_quit","exert");        add_action("do_quit","learn");         add_action("do_quit","yun");        add_action("do_quit","xue");        add_action("do_quit","respirate");        add_action("do_quit","tuna");         add_action("do_quit","fight");        add_action("do_quit","hit");        add_action("do_quit","kill");        add_action("do_quit","perform");        add_action("do_quit","persuade");        add_action("do_quit","quanjia");        add_action("do_quit","practice");        add_action("do_quit","lian");         add_action("do_quit","study");        add_action("do_quit","du");        add_action("do_quit","teach");        add_action("do_quit","jiao");}int do_zhujia(object ob){        object me,ob1;        int b1,b2;        me=this_player();        b1 = this_player()->query("work/zhudao");                if (!(ob = present("tong kuang", this_player())) &&             !(ob = present("tie kuang", this_player())) &&             !(ob = present("ying kuang", this_player())) &&             !(ob = present("jing kuang", this_player())) &&             !(ob = present("xuantie kuang", this_player())) &&             !(ob = present("han tie", this_player())) )                return notify_fail("你身上没有矿石,如何铸刀?\n");                         if ( (int)me->query("jing")<100)                return notify_fail("你的精力不足,无法铸刀。\n");        if( me->is_busy() )                return notify_fail("你现在很忙!不能铸刀!\n");        if ( (int)me->query("qi")<100)                return notify_fail("你的体力不足,无法铸刀。\n");        if ( (int)me->query("neili")<150)                return notify_fail("你的内力不足,无法铸刀。\n");        message_vision(HIY"$N先将矿石放进炉中炼化成块状状。\n"NOR,me);         message_vision(HIY"接着$N再拿出一个大锤开始铸刀。\n"NOR,me);         message_vision(HIY"不一会儿!一把锋利的刀摆在了$N的面前。\n"NOR,me);         me->add("combat_exp",50+random(20));        me->add("potential",25+random(5));        me->add("jing",-50);        me->add("qi",-80);        me->add("neili",-100);        me->start_busy(6);         if ( ob->query("name") ==YEL"铜矿石"NOR )        {        destruct(ob);                     ob1=new(__DIR__"weapon/dao/dao1");        b2 = b1/8;        if ( b2 < 20) b2 = 1000;        if ( b2 > 50) b2 = 2000;	ob1->set("value", 2000);        ob1->move(me);        me->add("work/zhudao", 1);               return 1;        }        if ( ob->query("name") ==CYN"铁矿石"NOR )        {        destruct(ob);                     if ( b1 < 70 )         {        me->add("work/zhudao",1);        return notify_fail("由于你铸刀之技太低,刀根本不能用!\n");        }        ob1=new(__DIR__"weapon/dao/dao2");        b2 = b1/8;        if ( b2 < 20) b2 = 2500;        if ( b2 > 50) b2 = 5000;        ob1->set("value", 5000);        ob1->move(me);        me->add("work/zhudao", 1);               return 1;        }        if ( ob->query("name") ==HIW"银矿石"NOR )        {        destruct(ob);                     if ( b1 < 150 )        {        me->add("work/zhudao",1);        return notify_fail("由于你铸刀之技太低,刀根本不能用!\n");        }        ob1=new(__DIR__"weapon/dao/dao3");        b2 = b1/6;        if ( b2 < 30) b2 = 5000;        if ( b2 > 80) b2 = 10000;        ob1->set("value", 10000);        ob1->move(me);        me->add("work/zhudao", 1);               return 1;        }        if ( ob->query("name") ==HIY"金矿石"NOR )        {        destruct(ob);                     if ( b1 < 220 )        {        me->add("work/zhudao",1);        return notify_fail("由于你铸刀之技太低,刀根本不能用!\n");        }        ob1=new(__DIR__"weapon/dao/dao4");        b2 = b1/5;        if ( b2 < 50) b2 = 15000;        if ( b2 > 150) b2 = 30000;        ob1->set("value", 30000);        ob1->move(me);        me->add("work/zhudao", 1);               return 1;        }        if ( ob->query("name") ==WHT"玄铁矿石"NOR )        {        destruct(ob);                     if ( b1 < 300 )        {        me->add("work/zhudao",1);        return notify_fail("由于你铸刀之技太低,刀根本不能用!\n");        }        ob1=new(__DIR__"weapon/dao/dao5");        b2 = b1/4;        if ( b2 < 80) b2 = 30000;        if ( b2 > 200) b2 =60000;        ob1->set("value", 60000);        ob1->move(me);        me->add("work/zhudao", 1);               return 1;        }        else        if ( ob->query("name") ==HIG"寒铁矿石"NOR )        {        destruct(ob);                     if ( b1 < 400 )        {        me->add("work/zhudao",1);        return notify_fail("由于你铸刀之技太低,刀根本不能用!\n");        }        ob1=new(__DIR__"weapon/dao/dao6");        b2 = b1/3;        if ( b2 < 120) b2 = 50000;        if ( b2 > 400) b2 = 100000;        ob1->set("value", 100000);        ob1->move(me);        me->add("work/zhudao", 1);               return 1;        }        else        if ( ob->query("name") ==HIR"千年寒铁"NOR )        {        destruct(ob);                     if ( b1 < 500 )        {        me->add("work/zhudao",1);        return notify_fail("由于你铸刀之技太低,刀根本不能用!\n");        }        ob1=new(__DIR__"weapon/dao/dao7");        if ( b1 > 1000 )        {        ob1=new(__DIR__"weapon/dao/dao8");        }        b2 = b1/2;        if ( b2 < 200) b2 = 75000;        if ( b2 > 600) b2 = 150000;        ob1->set("value", 150000);        ob1->move(me);        me->add("work/zhudao", 1);               return 1;        }} int do_quit(string arg){        write(this_player()->query("name")+",安心的铸刀吧!\n");        return 1;}

⌨️ 快捷键说明

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