找回密码
 注册
搜索
查看: 2286|回复: 2

打狗棒法 劈字诀

[复制链接]
门派:不明
发表于 2008-4-5 17:02:47 | 显示全部楼层 |阅读模式
#include <ansi.h>
#include <combat.h>
inherit F_SSERVER;

string perform_name(){ return HBRED"劈字诀"NOR; }
int perform(object me, object target)
{
        string msg;
        int mlvl, tlvl, damage, i, j, b, mexp, texp, p, ap, dp, m;
        object weapon, tweapon;

        weapon = me->query_temp("weapon");
        if( !target ) target = offensive_target(me);

        if( !objectp(target)
         || !target->is_character()
         || !me->is_fighting(target) )
                return notify_fail("「劈字诀」只能在战斗中使用。\n");

        if (!objectp(weapon)
         || weapon->query("skill_type") != "stick"
         || me->query_skill_mapped("stick") != "dagou-bang"
         || me->query_skill_mapped("parry") != "dagou-bang" )
                return notify_fail("你手中无棒,无法使用「劈字诀」!\n");

        mexp=me->query("combat_exp");
        texp=target->query("combat_exp");

        mlvl=me->query_skill("dagou-bang",1);
        tlvl=target->query_skill("dodge", 1);

        i = me->query_int(1);
        j = target->query_int(1);
        b = me->query_skill("bangjue",1);

        tweapon = target->query_temp("weapon");

        if( (int)me->query_con(1) < 40 )
                return notify_fail("你体质太弱,恐怕现在不能使用「劈字诀」。\n");

        if( (int)me->query_skill("huntian-qigong", 1) < 240 )
                return notify_fail("你的混天气功修为不够,使不出「劈字诀」绝技。\n");

        if( me->query_skill_mapped("force") != "huntian-qigong" )
                return notify_fail("没有混天气功作为根基,是无法使出「劈字诀」绝技的!\n");

        if( (int)me->query_skill("dagou-bang",1) < 240 )
                return notify_fail("你的打狗棒法修为不够,目前还不能使用「劈字诀」!\n");

        if( (int)me->query_skill("bangjue",1) < 190 )
                return notify_fail("「劈字诀」是以打狗棒诀为基础的,你棒决不熟如何使用?\n");

        if( (int)me->query("max_neili") < 3000 )
                return notify_fail("你内力修为现在不够, 不能用「劈字诀」!\n");

        if( (int)me->query("neili") < 800 )
                return notify_fail("你内力用尽, 不能用「劈字诀」!\n");

        if( (int)me->query("jingli") < 600 )
                return notify_fail("你现在没有足够的精力使用「劈字诀」。\n");


              msg = HBRED"\n$N使出「劈字诀」,挥舞起手中"+weapon->name()+HBRED"如狂风暴雨向$n劈头盖脸得打去!\n"NOR;

        ap = mexp/10000 * (i + me->query_skill("stick"));
        dp = texp/10000 * (j + target->query_skill("dodge"));
        ap += COMBAT_D->skill_power(me, "stick", SKILL_USAGE_ATTACK);
        dp += COMBAT_D->skill_power(target, "dodge", SKILL_USAGE_DEFENSE);

        if( dp < 1 ) dp = 1;

        if( random(ap + dp ) > dp){
                msg += HBRED"$n只觉得眼花缭乱,一个不留神,被"+weapon->name()+HBRED"连连打中!\n"NOR;
                damage = mlvl*2 + b*(2+random(i));

                if( me->query_skill("dagou-bang", 1) > 300 )
                        m = 4000 + ( me->query_skill("dagou-bang", 1) - 300 ) * 10 + random(500);
                else m = 4000;

                if( damage > m )
                        damage = m + random(damage-m)/5;
                if( damage > 8000 )
                        damage = 8000 + random(damage-8000)/15;

                target->receive_damage("qi", damage, me);
                target->receive_wound("qi", damage/3, me);
                target->receive_damage("jingli",damage/10,me);
                if( random(2) ) {
                        p = (target->query("eff_qi")+target->query_temp("apply/qi"))*100/(target->query("max_qi")+target->query_temp("apply/qi"));
                        msg += COMBAT_D->damage_msg(damage, "棒伤");
                        msg += "( $n"+COMBAT_D->eff_status_msg(p)+" )\n";
                }
                else {
                        p = target->query("qi")*100/(target->query("max_qi")+target->query_temp("apply/qi"));
                        msg += COMBAT_D->damage_msg(damage, "棒伤");
                        msg += "( $n"+COMBAT_D->status_msg(p)+" )\n";
                }
门派:不明
发表于 2008-4-5 17:21:17 | 显示全部楼层
顶一个,啊哦,可惜看不懂
门派:不明
 楼主| 发表于 2008-4-5 17:50:38 | 显示全部楼层
这个是老code ,仅供大家参考。

mud 有风险,参与要谨慎,具此入mud,风险自负!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|书剑永恒MUD ( 闽ICP备14012032号|闽公网安备 35050202000162号 )

GMT+8, 2025-6-13 05:41 , Processed in 0.027469 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表