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

📄 cui.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
// cui.c 摧心断肠#include <ansi.h>#include <combat.h>inherit F_SSERVER;int perform(object me, object target){        object weapon;        string msg;        string skill;        int ap, fp, dp, damage;        if (! target)        {                me->clean_up_enemy();                target = me->select_opponent();        }        if (! me->is_fighting(target))                return notify_fail("「摧心断肠」只能对战斗中的对手使用。\n");        if (me->query_skill("shedao-qigong", 1) < 120)                return notify_fail("你的蛇岛奇功修为有限,不能使用「摧心断肠」!\n");        if (me->query_skill("shenlong-xinfa", 1) < 50)                return notify_fail("你的本门内功修为有限,不能使用「神龙再现」!\n");        if (me->query("neili") < 250)                return notify_fail("你的真气不够,无法运用「摧心断肠」!\n");        if (objectp(weapon = me->query_temp("weapon")) &&            weapon->query("skill_type") != "staff" &&            weapon->query("skill_type") != "sword")                return notify_fail("你使用的兵器不对,怎么使用「摧心断肠」!\n");        if (weapon)                skill = weapon->query("skill_type");        else                skill = "unarmed";       if (! living(target))              return notify_fail("对方都已经这样了,用不着这么费力吧?\n");        switch (skill)        {        case "unarmed":                msg = HIW "$N" HIW "一声暴喝,双掌一起击出,霎时间飞砂走石,$n"                      HIW "只觉得几乎窒息。\n" NOR;                break;        case "sword":                msg = HIW "$N" HIW "一声暴喝,手中" + weapon->name() +                      HIW "直劈而下,只听呼啸声大作,地上的尘土受内力所激纷纷飞扬而起。\n" NOR;                break;        case "staff":                msg = HIW "$N" HIW "一声暴喝,手中" + weapon->name() +                      HIW "横扫荡出,一时间尘土飞扬,$n"                      HIW "登时觉得呼吸不畅。\n" NOR;                break;        }        ap = me->query_skill(skill);        fp = target->query_skill("force");        dp = target->query_skill("dodge");        if (ap / 2 + random(ap) < fp)        {                me->add("neili", -200);                msg += CYN "可是$n" CYN "内功深厚,奋力接下$N"                       CYN "这一招,丝毫无损。\n" NOR;                me->start_busy(2);        } else        if (ap / 2 + random(ap) < dp)        {                me->add("neili", -50);                msg += CYN "$n" CYN "哈哈一笑,飘身跃开,让$N"                       CYN "这一招全然落空。\n" NOR;                me->start_busy(2);        } else        {                me->add("neili", -220);                me->start_busy(2);                damage = 150 + ap + random(ap);        if (target->query("qi") > damage)        {        target->add("qi",-damage);        target->add("eff_qi",-damage);        }	target->apply_condition("ill_fashao",60);	target->apply_condition("ill_kesou",60);	target->apply_condition("ill_shanghan",60);	target->apply_condition("ill_zhongshu",60);	target->apply_condition("ill_dongshang",60);                msg +=HIR "$n" HIR "只觉得$N" HIR "内力犹如"                                           "排山倒海一般,怎能抵挡?“哇”的一下吐出一大口鲜血。\n" NOR;        }        message_combatd(msg, me, target);        return 1;}

⌨️ 快捷键说明

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