head.c

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

C
55
字号
// head.c -脑袋#include <ansi.h>inherit ITEM;int decayed;void create(){        set_name(RED"头颅"NOR, ({ "head"}));        set_weight(300);        set("unit", "颗");        set("value", 0);        set("no_steal", 1);        set("long",RED"一颗鲜血淋淋的首级,须发散乱,余血正缓缓渗出。\n"NOR);        decayed = 0;        if( clonep(this_object()) ) call_out("decay", 120, 1);}int is_corpse()    { return decayed < 2; }int is_character() { return decayed < 1; }int is_container() { return 1; }string short() { return name() + "(" + capitalize(query("id")) + ")"; }void decay(int phase){        decayed = phase;        switch(phase) {                case 1:                        say( query("name") + "开始腐烂了,发出一股难闻的恶臭。\n" );                        set_name("腐烂的头颅", ({ "head"}) );                        set("long",     "这颗头颅显然已经腐烂了一段时间了,一股恶臭夹杂血腥的味道。\n");                        call_out("decay", 120, phase + 1);                        break;                case 2:                        say( query("name") + "被风吹乾了,变成一颗骷髅头。\n" );                        set_name("一颗白惨惨的骷髅头", ({ "head bone" }) );                        set("long", "这颗骷髅头已经放躺在这里有些时候了。\n");                        call_out("decay", 60, phase + 1);                        break;                case 3:                        say( "一阵风吹过,把" + query("name") + "化成骨灰吹散了。\n" );                        if( environment() ) {                                object *inv;                                int i;                                inv = all_inventory(this_object());                                for(i=0; i<sizeof(inv); i++) inv[i]->move(environment());                        }                        destruct(this_object());                        break;        }}

⌨️ 快捷键说明

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