riyue.c

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

C
87
字号
// riyue 日月鞭-日月
// campsun

#include <ansi.h>
#include <combat.h>

inherit F_SSERVER;
int perform(object me, object target)
{
        string msg,dodge_skill;
object weapon = me->query_temp("weapon");

        if( !target ) target = offensive_target(me);

        if( !target || !me->is_fighting(target) )
                return notify_fail("「日月轮转」只能在战斗中对对手使用。\n");

        if (!weapon || weapon->query("skill_type") != "whip")
                return notify_fail("手中没有武器,如何使用「日月轮转」!\n");

        if( (int)me->query_skill("riyue-bian", 1) < 200 )
                return notify_fail("你的日月鞭法不够娴熟,不会使用「日月轮转」。\n");

        if( (int)me->query_skill("yijinjing", 1) < 200 )
                return notify_fail("你的易筋经等级不够,不能使用「日月轮转」。\n");

if( (int)me->query_skill("buddhism", 1) < 200 )
                return notify_fail("你的禅宗心法等级不够,不能使用「日月轮转」。\n");
          
               
        if( (int)me->query("neili") < 1000 )
                return notify_fail("你现在内力太弱,不能使用「日月」。\n");

        msg = HIR "$N口中高宣佛号,使出日月鞭中「日月」绝技,手中长索滚动飞舞,宛若灵蛇乱颤,自上而下劈向$n,\n" NOR;
	msg += HIR "接着$N手腕一抖,便如张牙舞爪的墨龙相似,急升而上,又往$n扑到。\n";
        message_vision(msg, me, target);
me->set_temp("riyue", 1);
	me->add_temp("apply/attack", 60);		me->add_temp("apply/damage", 200);
        COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 1); 
        COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 1);
        COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 1);
   	me->add_temp("apply/attack", -60);		me->add_temp("apply/damage", -200);
 if ((int)me->query_skill("riyue-bian", 1)>200) {          
        msg = HIY"紧跟着$N高宣“阿弥陀佛!”,使出「日」字诀,手中长索一扬,向$n的咽喉点去,索头未到,索上所挟
劲风犹如红日当空,令对方一阵气窒,只听见「啪啪」几声巨响,索头昂起,便如一条假死的毒蛇忽地反
噬挥动,带动无数风沙,呼啸而出。\n";     
        message_vision(msg, me, target);
	me->add_temp("apply/attack", 80);		me->add_temp("apply/damage", 300);
              COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 1);
        COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 1);
	me->add_temp("apply/attack", -80);		me->add_temp("apply/damage", -300);
        me->delete_temp("riyue");      
        

        me->add("neili", -400);

        me->start_busy(2);

        }
else { 
msg = BCYN "紧跟着$N又宣“我佛慈悲!”,使出「月」字诀,内力返照空明,功力精纯,不露棱角,手中长索舞动时
瞧不见半点影子无声无息,似缓实急,却又无半点风声,如鬼似魅,说不尽的诡异莫名。\n"NOR;
	message_vision(msg,me,target);
	if (random(10)>4) 
		{msg=HIR"结果$n一不小心,登时淹没在$N发出的漫天鞭影之中。\n"NOR;
message_vision(msg,me,target);        
me->delete_temp("riyue");      
              target->start_busy(3+random(5));
			me->add("neili",-400);}
	else {
         dodge_skill = target->query_skill_mapped("dodge");
	 if( !dodge_skill ) dodge_skill = "dodge";
         message_vision(SKILL_D(dodge_skill)->query_dodge_msg(target, 1), me, target);

		
me->delete_temp("riyue");      
		me->add("neili",-200);
		}
	}
return 1;

}

⌨️ 快捷键说明

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