北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 6418|回复: 9

大轮寺血刀pfm疑问

[复制链接]
发表于 2014-6-11 11:34:00 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2014-6-11 17:53:35 | 显示全部楼层
从PF的名字就知道
鸡血 与三绝剑有得比
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2014-6-11 17:58:05 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2014-6-11 18:51:58 | 显示全部楼层
据我管擦鸡血有bug,可以wiz说没有就那样
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2014-6-11 18:52:12 | 显示全部楼层
据我管擦鸡血有bug,可以wiz说没有就那样
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2014-6-12 11:39:27 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2014-6-12 20:43:10 | 显示全部楼层
#include
#include
#include
#include
inherit F_SSERVER;

void jixue(object me,object target,int times,int now);

int perform(object me, object target)
{
        object ob,weapon;
        string msg;
        int lvl,times;
   
        if( !me->is_fighting() )
                return notify_fail("「祭血神刀」只能在战斗中使用。\n");

        if (!objectp(weapon = me->query_temp("weapon"))        || (string)weapon->query("skill_type") != "blade")
                return notify_fail("你使用的武器不对。\n");

        if((int)me->query_skill("xuedao-jing",1) < 120)
                return notify_fail("你的刀法修为不够, 目前不能使用「祭血神刀」! \n");

        if(me->query_temp("xs/jixue"))
                return notify_fail("你正在使用「祭血神刀」! \n");

        if((int)me->query_skill("longxiang-boruo",1) < 120)
                return notify_fail("你的龙象般若功修为不够, 目前不能使用「祭血神刀」! \n");

        if( me->query_skill_mapped("blade") != "xuedao-jing")
                return notify_fail("你必须使用血刀经,才能使用「神刀穿心」的绝技!\n");

        if( me->query_skill_mapped("force") != "longxiang-boruo")
                return notify_fail("你现在所使用的内功同「龙象般若功」向抵触,不能使出「祭血神刀」的绝技!\n");

        if( (int)me->query("max_neili") < 2000 )
                return notify_fail("你的内力修为不够!\n");
        if((int)me->query("neili")<500)
                return notify_fail("你的真气不够!\n");
        if((int)me->query("jingli")<300)
                return notify_fail("你的精力不够!\n");

        ob = me->select_opponent();
        lvl = me->query_skill("xuedao-jing",1);
        me->set_temp("xs/jixue",1);
        times = me->query("env/jixue");
        if(times < 1) times = 1;
        if(times > lvl/40) times = lvl/40;
        if(times > 6) times = 6;

        msg = HIR"\n$N脸色陡然一变,口中念念有词,同时倒转兵刃,不知道要做什么!\n\n"NOR;
        message_vision(msg, me);
        me->add("neili", -100);
        me->start_perform(10,"祭血神刀");

        call_out("jixue",0,me,ob,times,0);

        return 1;
}

void jixue(object me,object target,int times,int now)
{
        string msg,weaname;
        object weapon;
        int lvl,force,damage,attack,qi;

        if( !objectp(me) ) return;
        if( !objectp(target) || !me->is_fighting(target) || (now >= times) || (me->query("neili")<200) ||
          (!objectp(weapon = me->query_temp("weapon"))) || ((string)weapon->query("skill_type")!="blade") ) {
                me->set_temp("xs/jixue",0);
                me->start_perform(1,"祭血神刀");
                if(living(me))
                        message_vision(HIC"\n$N慢慢收回内劲,脸上也似乎有了血色。\n"NOR, me);
                return;
        }

        weapon = me->query_temp("weapon");
        weaname = weapon->query("name");
        lvl = me->query_skill("xuedao-jing",1);
        force = me->query_skill("longxiang-boruo",1);

        now++;
        if(now <= 1)
                msg = HIR"\n$N狂啸一声,以兵刃自砍手臂,顿时一飙鲜血飞溅在"NOR+weaname+HIR"之上,"NOR+weaname+HIR"隐隐泛出一层血色。";
        else
        if(now <= 3)
                msg = HIR"\n$N狂啸一声,以兵刃自砍胸膛,顿时一腔鲜血飞溅在"+weaname+HIR"之上,"NOR+weaname+HIR"泛出一层血色!";
        else
                msg = RED"\n$N狂啸一声,当头砍了自己一刀,顿时一股鲜血飞溅在"+weaname+RED"之上,"NOR+weaname+RED"整个变的通红!!!";
       
        attack = 7-now;
        damage = 8-now;
        if(me->query_temp("xs/longxiang")) {
                damage--;
                if(damage<2) damage=2;
                msg += "$N更把龙象内劲附于兵刃之上!";
        }
        msg += "\n"NOR;
        message_vision(msg, me);
        if(wizardp(me) && me->query("env/test")) tell_object(me,sprintf("damage:%d , attack:%d , qi:%d \n",force/damage,lvl/attack,-50*now));

        me->add_temp("apply/damage", force/damage);
        me->add_temp("apply/attack", lvl/attack);

        if (present(target,environment(me)) && me->is_fighting(target))
                COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 0);
        if (present(target,environment(me)) && me->is_fighting(target))
                COMBAT_D->do_attack(me, target, me->query_temp("weapon"), 0);

        me->add_temp("apply/damage", -force/damage );
        me->add_temp("apply/attack", -lvl/attack);

        if(me->query("qi") < (60*now))
                qi = me->query("qi")-10;
        else
                qi = 60*now;
        if(qi<0) qi = 0;

        me->receive_damage("qi", qi);
        me->receive_wound("qi", qi/2);

        me->add("neili", -50*now);
        if(me->query("neili") < 0)        me->set("neili",0);

        call_out("jixue",2+random(3),me,target,times,now);
}
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2014-6-12 21:34:38 | 显示全部楼层
本帖最后由 fengwuniepan 于 2014-6-12 02:47 PM 编辑

哇,这是传说中的源代码吗,看不懂啊!!!求高手解释解释
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2014-6-13 22:15:08 | 显示全部楼层
有人能看懂么,这jixue到底是怎么回事?
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2015-1-25 01:32:04 | 显示全部楼层
貌似没人懂
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-11-17 06:42 AM , Processed in 0.010447 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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