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

📄 huixuan.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
#include <ansi.h>#include <combat.h>inherit F_SSERVER;void do_huixuan(object me, object target, object weapon, int times);int perform(object me, object target){        string msg;        object weapon;        int time,exp;       if( !target ) target = offensive_target(me);      weapon = me->query_temp("weapon");	if( !target || !target->is_character() || !me->is_fighting(target) )       return notify_fail("[回旋十三式]只能在战斗中使用。\n");       if (me->is_busy())       return notify_fail("你正忙着呢。\n");      if (!weapon || weapon->query("skill_type") != "whip"       )          return notify_fail("你手里没有鞭,无法使用「回旋十三式」!\n");                     if( !target || !target->is_character()|| !me->is_fighting(target) )       return notify_fail("「回旋十三式」只能对战斗中的对手使用。\n");        if( target->is_busy() )                return notify_fail(target->name() + "目前正自顾不暇,放胆攻击吧!\n");        if( (int)me->query("neili")<300)                return notify_fail("你现在内力太弱,不能使用「回旋十三式」。\n");       if(me->query_skill_mapped("force") != "huagong-dafa")              return notify_fail("你现在使用的内功抵触,不能使用「回旋十三式」。\n");        if ((int)me->query_skill("chanhun-suo",1) < 120)                return notify_fail("你的缠魂索功力太浅,使不了。\n");	if ((int)me->query_skill("huagong-dafa", 1) < 125)		return notify_fail("你的化功大法火候不够.\n");	if ((int)me->query_skill("sanyin-wugongzhao", 1) < 120)		return notify_fail("你的三阴蜈蚣爪火候不够.\n");	if (me->query_temp("huixuan"))		return notify_fail("你已经在用「回旋十三式」了.\n");		        me->add("neili", -200);        me->set_temp("huixuan",1);        msg = HIY+"\n$N"+HIY+"突然身形如陀螺般急转数圈,手中的"+weapon->query("name")+HIY+",借助这股强劲\n";		msg+="的回旋力量,连出十三种幻化莫测的招式,罩向$n!\n"NOR;        message_vision(msg,me,target);        exp=random(me->query("combat_exp")*16/10);        if ( exp > random( target->query("combat_exp")))        {      msg +=HIR+"$n一个没留神,被$N变幻莫测的招式所惑,罩在幻象般的鞭影里!\n"NOR;                me->start_busy(1);                target->start_busy(1);                time = me->query_skill("whip")/50 +1 ;               message_vision(msg,me,target);              me->start_call_out( (: call_other, __FILE__, "do_huixuan", me, target , weapon, time:), 1);        }        else {                msg += CYN+"可是$n成竹在胸,抢中宫直进,从容不迫先手在握。\n"NOR;                me->start_busy(4);              message_vision(msg,me,target);		}		return 1;}void do_huixuan(object me, object target, object weapon, int times){        int force;        if(!me->is_fighting(target)) {       message_vision(HIY+"\n$N"+HIY+"内力已尽,"+weapon->query("name")+HIY+"软绵绵的垂将下来。\n"NOR,me);	me->delete_temp("huixuan");	          return ;        }        if( !living( me ) || me->is_ghost() )        {         me->delete_temp("huixuan");           return;       }        if(times<=0) {       message_vision(HIY+"\n$N"+HIY+"内力已尽,"+weapon->query("name")+HIY+"软绵绵的垂将下来。\n"NOR,me);        me->delete_temp("huixuan");	                  return ;        }              force=random(me->query_skill("whip")*13/10);         if(force  > random(target->query_skill("dodge")) ) {           if (1)		   { 			message_vision( HIR+me->query("name")+"将手中的"+weapon->query("name")+"象$n头上一击。\n"NOR,me,target);            tell_object(target,BLU"你觉得脸上一阵剧痛,啊,你被毒粉撒中了。\n"NOR);			target->receive_wound("qi",me->query_skill("whip",1)/4);            target->receive_wound("jing",me->query_skill("whip",1)/4);target->apply_condition("xx_poison",20);target->apply_condition("x2_sandu",20);target->apply_condition("sanpoison",20);           }         	message_vision( HIR"$n"+HIR+"被幻影完全迷惑$N乘机连连出招\n"NOR,me,target);                COMBAT_D->do_attack(me, target, me->query_temp("weapon"), TYPE_QUICK);                COMBAT_D->do_attack(me, target, me->query_temp("weapon"), TYPE_QUICK);                call_out("do_huixuan",4,me,target,weapon,times-1);        }        else       call_out("do_huixuan",3,me,target,weapon,times-1);}

⌨️ 快捷键说明

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