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

📄 ziying1077977448.o

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 O
字号:
// a skeleton for user rooms
inherit ROOM;
void create()
{
set("short", "究极冥域");
set("long", @LONG
    你走在一条阴森森的路上,浓浓的雾环绕在你的四周,好像永远都不会散去
似的。往南看去你勉强可以分辨出一个城楼的模样,往北隐约可以看到几盏灯笼,
在浓雾中显得格外的诡异。路的两旁各有一栋木造的建筑,门都是半开的,但你。
怎都不敢走进去。。

LONG
);
        set("exits", ([
"westdown" : "/p/guangchang1.c",
]));
set("objects", ([
       "/p/npc/weishi":2,
       ]) );
	set("owner", "ziying");
	set("class", "究极冥域 ");
	set("valid_startroom",1);

//	set("no_fight",1);

setup();
}
void init()
{
	add_action("do_invite","invite");
	//add_action("do_setowner","setowner");
}
int valid_enter(object me)
{
	int flag;
// always let owner go in:
	 if((string)me->query("class") != (string)query("class")
	&&(string)query("invite") != (string)me->query("id")
	&&(string)me->query("id") != (string)query("owner"))
	return 1;	

}
int do_invite(string arg)
{
	object me;
	me= this_player();
	if((string)me->query("id") != (string)query("owner"))
	return 0;
	set("invite",arg);
	write("你邀请"+arg+"来你的房间。\n");
	return 1;
}

/*int do_setowner(string arg)
{
	string oldowner;
	oldowner = (string)query("owner");
	set("owner",arg);
	write("你将房间的主人暂时设为"+arg+"。\n");
	call_out("set_back",60, oldowner);
	return 1;
}

int set_back(string oldowner)
{
	set("owner", oldowner);
	return 1;
}
*/
varargs int valid_leave(object me, string dir)
{
	object *inv,kicker;
	int sizeinv,n,tt;



        if ((int)me->query_condition("killer")>1)
        {
        write("你正在被通辑中,不能进入自己的门派。\n");
        write("你被几个弟子打了出去。\n");
	call_out("kicking", 0, me);
        me->unconcious();
	return notify_fail("你不能进去!\n");
        }

        if ( me->query("family/family_name") != (string)query("class"))
        {
        write("这是别人的门派,你不能乱走。\n");
        write("你被几个弟子打了出去。\n");
	call_out("kicking", 0, me);
        me->unconcious();
	return notify_fail("你不能进去!\n");
        }
        else {
		inv=all_inventory(me);
		sizeinv=sizeof(inv);
	
		while (sizeinv--)
		{
       			if (inv[sizeinv]->is_character() && userp(inv[sizeinv])  )  
     				return notify_fail("你想进去拐卖人口?\n");
       		
		}
        return ::valid_leave(me, dir);
        }
}

void kicking(object me)
{
        me->move("d/city/wumiao");
}

⌨️ 快捷键说明

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