xisuijing.c

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

C
88
字号
// xisuijing.c 洗髓经inherit ITEM;#include <ansi.h>int do_study(string);string* skill = ({	"whip",	"finger",	"hand",	"cuff",	"claw",	"strike",});void create(){        set_name(YEL"洗髓经"NOR, ({ "xisuijing" }));        set_weight(100);        if( clonep() )                set_default_object(__FILE__);        else        {                set("treasure",1);set("unit", "卷");                set("long","这本破纸筒就是少林最高武学典籍,是达摩老祖面壁九年与易筋经一起参悟出来的绝世典籍。\n");                set("value", 10);                set("material", "paper");        }}void init(){	add_action("do_study","canwu");}int do_study(string arg){	object where;	object ob = this_object();	object me = this_player();	int myskill, cost, i, exp;	cost=50;	where = environment(me);	if (!arg || !objectp(ob = present(arg, me)))		return notify_fail("你要参悟什么?\n");	if ((string)where->query("short")!="达摩院二楼")		return notify_fail("洗髓经只能在达摩院里参悟!\n");	if (!me->query_skill("literate",1)||me->query_skill("literate",1)<100)	{		write("你把纸筒翻来翻去,就是什么都读不懂。\n");		return 1;	}//	if (!me->query_skill("yijinjing",1)||me->query_skill("yijinjing",1)<100)//	{//		write("也许是没有融会贯通易筋经,你觉得这洗髓经莫名其妙。\n");//		return 1;//	}	if (me->is_busy())		return notify_fail("你现在正忙着呢。\n");	if (me->is_fighting() )		return notify_fail("你无法在战斗中专心下来研读新知!\n");	exp = (int)me->query("combat_exp");	if (exp < 300000)	{		write("你的实战经验不足,不能参悟洗髓经。\n");		return 1;	}	if ((int)me->query("jing")>cost)	{		for ( i=sizeof(skill); i>0; i-- )		{			myskill=me->query_skill(skill[i-1], 1);			if ( myskill<180 && myskill>1 && myskill*myskill*myskill/10<exp)			{me->improve_skill(skill[i-1],(int)(me->query_skill("literate",1)+me->query("int"))/2);			}		}		printf("你参悟洗髓经上的经文,似乎有点心得。\n");		me->receive_damage("jing", cost );	}	else	{		cost=me->query("jing");		write("你现在过于疲倦,无法专心下来参悟洗髓经。\n");	}	return 1;}

⌨️ 快捷键说明

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