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

📄 xian.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
// feilong.c 华山剑法「夺命连环三仙剑」#include <ansi.h>#include <combat.h>#define XIAN "「" HIM "夺命连环三仙剑" NOR "」"inherit F_SSERVER;int perform(object me, object target){        int damage;        string msg;        object weapon;        int ap, dp, fp, pp;        if (! target) target = offensive_target(me);        if (! target || ! me->is_fighting(target))                return notify_fail(XIAN "只能在战斗中对对手使用。\n");        if (! objectp(weapon = me->query_temp("weapon")) ||            (string)weapon->query("skill_type") != "sword")                return notify_fail("你使用的武器不对!\n");        if ((int)me->query_skill("huashan-sword", 1) < 160)                return notify_fail("你华山剑法不够娴熟,无法施展" XIAN "。\n");        if ((int)me->query_skill("dodge", 1) < 160)                return notify_fail("你轻功修为不够,无法施展" XIAN "。\n");        if ((int)me->query("neili") < 300)                return notify_fail("你现在真气不够,无法施展" XIAN "!\n");        if (me->query_skill_mapped("sword") != "huashan-sword")                return notify_fail("你没有激发华山剑法,无法使用" XIAN "。\n");        if (! living(target))               return notify_fail("对方都已经这样了,用不着这么费力吧?\n");        me->add("neili", -280);        ap = me->query_skill("sword")+30;        dp = target->query_skill("dodge");        fp = target->query_skill("force");        pp = target->query_skill("parry");        message_vision(HIW "\n$N" HIW "长啸一声,手中" + weapon->name() + HIW "随即不停转动,汹涌而"                        "出,正是华山剑宗绝技「" HIM "夺命连环三仙剑" HIW "」,但是" + weapon->name() + HIW                         "\n剑锋突变,一剑顿时化为三剑,袭向$n" HIW "……\n" NOR, me, target);                msg = HIM "$N" HIM "将内力全都运到了剑上,呼的一剑,当头直劈。\n" NOR;        if (ap / 2 + random(ap) < dp)                msg += CYN "$n" CYN "斜身闪开。\n" NOR;        else        {                damage = ap + random(ap / 3);                target->add("qi",-damage);		target->add("eff_qi",-damage);                msg +=HIR "$n" HIR "急忙后退,竟然躲避不及,被$N"                                           HIR "这一剑震得口吐鲜血,接连后退。\n" NOR;        }        msg += HIM "\n$N" HIM "圈转" + weapon->name() + HIM ",拦腰横削,剑势恢弘,剑气纵横,令人匪夷所思。\n" NOR;        if (ap / 2 + random(ap) < fp)                msg += CYN "$n" CYN "纵身从剑上越过。\n" NOR;        else        {                damage = ap + random(ap / 3);                target->add("qi",-damage);		target->add("eff_qi",-damage);                msg +=HIR "此招来势当真快及,$n" HIR "哪里来得及闪"                                           "避招架?只见$N" HIR "剑光闪过,$n"                                           HIR "腰间霎时鲜血淋漓!\n" NOR;        }        msg += HIM "\n$N" HIM "长剑反撩,疾刺$p" HIM "后心,剑法之快,部位之准,当真闻所未闻。\n" NOR;        if (ap / 2 + random(ap) < pp)                msg += CYN "$n" CYN "身在空中,不及变招,只能挥出一招,正击中$N"                       CYN "剑上,略一借力,飘然避去。\n" NOR;        else        {                damage = ap + random(ap / 2);                target->add("qi",-damage);		target->add("eff_qi",-damage);                msg +=HIR "$n" HIR "身在空中,哪里来得及变招?只见$N"                                           HIR "此剑掠过,$n" HIR "大声惨呼,鲜血四下飞溅!\n" NOR;        }        me->start_busy(2);        message_combatd(msg, me, target);        return 1;}

⌨️ 快捷键说明

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