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

📄 yihuajiemu.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
// zhong.c 移花接木#include <ansi.h>inherit F_SSERVER;int perform(object me, object target){        object obj, victim;        int damage, lvl, r_lvl, count, form, skill, i;        string msg;	if( !target ) target = offensive_target(me);	if( !target || !target->is_character() || !me->is_fighting(target) )	return notify_fail("移花接木只能对战斗中的对手使用。\n");	if( environment(me)->query("no_fight") )		return notify_fail("这里不准打架。\n");	if( !target || !target->is_character() )		return notify_fail("移花接木只能在对手身上使用。\n");	if( (int)me->query_skill("douzhuan-xingyi",1)<80)	return notify_fail("你的星移斗转不够娴熟,不会使用「移花接木」。\n");	if( (int)me->query_skill("yanling-shenfa",1)<80)	return notify_fail("你的燕灵身法不够敏捷,不能使用「移花接木」。\n");	if( (int)me->query_skill("shenyuan-gong",1)<100)	return notify_fail("你的本门内功不够,不能使用「移花接木」。\n");	msg = HIC "$N把$n全身的劲力,顺着气位打回了$n自身。\n";	me->start_busy(2);        skill = (int)me->query_skill("douzhuan-xingyi", 1);	lvl = skill/20;	r_lvl = random(lvl);	if( r_lvl < 1) r_lvl = 1;	count = me->query_str();        victim =target;        if (random((int)me->query("combat_exp")) > (int)target->query("combat_exp")/3 )        {                target->start_busy(random(3));                                damage = skill/2 + r_lvl*target->query("jiali",1);                                target->receive_damage("qi", damage);                target->receive_wound("qi", damage/2);                me->add("neili", -damage);		msg += HIG"将$n的内力全数反击回去!\n" NOR;                                if( damage < 20 )                        msg += HIR"结果$n受到$N的内力反震,闷哼一声。\n"NOR;        	else if( damage < 40 )                        msg += HIC"结果$n被$N以内力反震,「嘿」地一声退了两步。\n"NOR;        	else if( damage < 80 )                        msg += HIG"结果$n被$N以内力一震,胸口有如受到一记重锤,连退了五六步!\n"NOR;                else                        msg += HIY"结果$n被$N的内力一震,眼前一黑,象一捆稻草一样飞出去好几丈远!\n"NOR;                        }        else         {                msg += CYN"可是$n内力深厚,丝毫不为所动。\n"NOR;		me->add("neili", -100);        }        message_vision(msg, me, target);        if ( (random(me->query("neili",1)) > 2*target->query("neili",1)/3 ) && ( r_lvl > random(5) ) )        {                write( CYN"哈哈,成功了!\n"NOR);		if( target == victim)		{		tell_object(target, HIC"你身不由己,自己成名的绝招全部击向自己!\n"NOR);		message("vision", CYN"\n" + target->name() + "忽然如中魔一般,招招击向自己!\n\n"NOR, environment(me), target);		for(i = 0; i < r_lvl; i++)if (!target->query("hunmi")){			COMBAT_D->do_attack(target, victim, target->query_temp("weapon") );}else 		message("vision", CYN"\n" + target->name() + "已经快不行了,打不动了!\n\n"NOR, environment(me), target);		}		else		{		tell_object(target, CYN"你身不由几,向" + victim->name() + "扑去!\n"NOR);		message("vision", CYN"\n" + target->name() + "忽然向" + victim->name() +"扑去!\n\n"NOR, environment(me), ({target, victim}) );		tell_object(victim, CYN"\n" + target->name() + "忽然向你扑来!\n\n"NOR);if (!target->query("hunmi")){		COMBAT_D->do_attack(target, victim, target->query_temp("weapon") );}else 		message("vision", CYN"\n" + target->name() + "已经快不行了,打不动了!\n\n"NOR, environment(me), target);		if( random(me->query("combat_exp")) > (int)victim->query("combat_exp")/2 )				{			if( !victim->is_killing(target) ) victim->fight_ob(target);		}		else		{		tell_object(victim, HIW"你一定神,原来是" + me->name() + "在捣鬼!\n"NOR);		tell_object(target, HIW"还好,幸亏" + victim->name() + "经验老到,没有上当。\n"NOR);		write( HIG "不好,被" + victim->name() + "发觉了!\n"NOR);		if( !victim->is_killing(me) ) me->kill_ob(victim);		}                target->start_busy(random(3));		me->add("neili", -300);		}	}	else	{		write( HIM"可惜没成功。\n"NOR);		tell_object(target, HIM"你强用心神,终于控制住自己。\n"NOR);		me->add("neili", -100);	}        return 1;	}

⌨️ 快捷键说明

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