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

📄 bagua1.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
// Room: /u/jpei/thd/bagua1.c

inherit ROOM;

void create()
{
	set("short", "八卦桃花阵");
	set("long", @LONG
这是一片茂密的桃花丛,你一走进来就迷失了方向。眼前是一排桃花树,
密密地没有一丝缝隙。
LONG
	);
	set("outdoors","taohua");

	set("exits", ([
		"east" : __DIR__"bagua0",
		"west" : __DIR__"bagua0",
		"south" : __FILE__,
		"north" : __FILE__,
	]));
	setup();
}

void init()
{
	object ob=this_player();
	int step, temp, count;

/*	if (!ob->query_temp("bagua_1")) {
		write("你感觉这个桃花阵中暗藏八卦,隐隐生出阻力,将你推了回来!\n");
		ob->move(__DIR__"xiaoyuan", 1);
		return;
	}*/
	if (ob->query_skill("qimen-wuxing", 1) > 249) {
		write("由于你已经精研了九宫八卦的变化,所以略做思考就走出了阵!\n");
		ob->move(__DIR__"dongkou", 1);
		tell_room(environment(ob), "却见花影闪烁,树丛忽然现出一个缺口," + ob->name() + "闪身而出。\n", ({ob}));
		return;
	}
	if (!ob->query_temp("bagua_start")) {
		ob->set_temp("bagua_start", 1);
		ob->set_temp("bagua_step", 1);
		ob->set_temp("bagua_temp", 0);
		ob->set_temp("bagua_count", 1);
	}
	temp = ob->query_temp("bagua_temp");
	count = ob->query_temp("bagua_count");
	temp = temp * 2 + 1;
	if (count < 3) {
		count++;
	}
	else
	{
		count = 1;
		step = ob->query_temp("bagua_step");
		if (temp == ob->query_temp("bagua_" + step)) {
			if (step == 8) {
				ob->delete_temp("bagua_start");
				ob->delete_temp("bagua_step");
				ob->delete_temp("bagua_temp");
				ob->delete_temp("bagua_count");
				write("你倒踩八卦,直扑生门,眼前现出一道门户,你赶忙踏了过去。\n");
				ob->move(__DIR__"dongkou", 1);
				tell_room(environment(ob), "却见花影闪烁,树丛忽然现出一个缺口," + ob->name() + "闪身而出。\n", ({ob}));
				return;
			}
			write("你发现刚才走过的路径暗合八卦,心中若有所悟!\n");
			ob->add_temp("bagua_step", 1);
		}
		else {
			ob->delete_temp("bagua_start");
			ob->delete_temp("bagua_step");
			ob->delete_temp("bagua_temp");
			ob->delete_temp("bagua_count");
			write("你发觉自己踩错了方位,四周暗雾密布,只好赶快抢回起始点!\n");
            ob->move(__DIR__"road5", 1);
			tell_room(environment(ob), "却见花影闪烁,树丛忽然现出一个缺口," + ob->name() + "踉跄着退了出来。\n", ({ob}));
			return;
		}
		temp = 0;
	}
	ob->set_temp("bagua_temp", temp);
	ob->set_temp("bagua_count", count);
}

⌨️ 快捷键说明

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