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

📄 feng.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
字号:
//Cracked by Kafei// feng.c 打狗棒封字决// fear@xkx 99.12#include <ansi.h>#include <combat.h>inherit F_SSERVER;inherit F_DBASE;int perform(object me, object target){        string* msghit, msg;        object weapon;        int  feng_busy;        int feng_addspeed;        int feng_cost;        int feng_duration;        int feng_parry;        string *limb, type, limb_hurt;	int skills;        skills = me->query_skill("dagou-bang")/10;        if( !target ) target = offensive_target(me);        if( !target        ||      !target->is_character()        ||      !me->is_fighting(target)         ||          !living (target) )                return notify_fail("封字诀只能对战斗中的对手使用。\n");        if( target->is_busy() ) {                me->add("neili", -10);                me->add("jing", -5);                return notify_fail(target->name() + "目前正自顾不暇,放胆攻击吧 \n");        }        if( me->query_temp("ban",1) )                return notify_fail("你已在使用拌字诀!\n");        if( me->query_temp("pfmfeng",1) )                return notify_fail("你已在使用封字诀!\n");        if( me->query_skill_mapped("force") != "huntian-qigong" )                return notify_fail("你所用的并非混天气功,无法施展封字诀!\n");        if( me->query_skill("force") < 250 )                return notify_fail("你的混天气功火候未到,无法施展封字诀!\n");        if( me->query_skill("staff") < 200 )                return notify_fail("你的基本基本杖法修为不足!\n");        if( me->query_skill("dagou-bang") < 100 )                return notify_fail("你的打狗棒法修为不足,还不能使用封字诀!\n");        if( me->query("neili") <= 1000 )                return notify_fail("你的内力不够!\n");	if (!objectp(weapon = me->query_temp("weapon"))		|| (string)weapon->query("skill_type") != "staff")			return notify_fail("你使用的武器不对。\n");        if( !objectp(weapon = me->query_temp("weapon")) )                 return notify_fail("空手如何使用封字决??\n");                msghit = ({                        "\n$N运起打狗棒法中的「封」字诀,棒法全是横使,并不攻击敌身,一条"+(string)weapon->query("name")+HIG"化成一片碧墙,挡在面门。\n",                        "\n$N大喝一声,运起"+(string)weapon->query("name")+HIG",使出打狗棒法的「封」字诀,紧紧守住门户。\n",                        "\n$N提起"+(string)weapon->query("name")+HIG",使个打狗棒法的「封」字诀,护住身前,挡住攻势。\n",                        "\n$N挥起"+(string)weapon->query("name")+HIG",使出打狗棒法中的一招「恶犬拦路」,乃属「封」字诀。\n"                });                msg = HIG"\n"+ msghit[random(sizeof(msghit))] +"\n" NOR;                message_vision(msg, me, target);        if(random(me->query("combat_exp"))  > random(target->query("combat_exp")))        {                msghit = ({                        "「封」字诀甚是精妙,东突西冲,$n立感不支,当下攻势全被挡住。\n",                        "只见棒影飘飘,「封」字诀登时将$n身前数尺之地尽数封住了。\n",            "$n突见"+(string)weapon->query("name")+HIY"来势神妙无方,一时竟然被封得难以攻入。\n"                });                msg = HIY"\n"+ msghit[random(sizeof(msghit))] +"\n" NOR;                message_vision(msg, me, target);                feng_busy= me->query_skill("staff")/15;                feng_addspeed=me->query_skill("staff")/50 ;                feng_parry = feng_busy * 10;                if(me->set_temp("powerup",1))                	feng_parry += me->query_skill("force")/3;                        me->add_temp("apply/defense",  skills*2);        me->add_temp("apply/attack",  skills);//                me->set_temp("apply/parry", );//                me->set_temp("apply/speed", );                target->add("qi",-me->query_skill("staff")/5);                target->add("eff_qi",-me->query_skill("staff"));                target->set_temp("feng",1);                me->set_temp("pfmfeng",1);                        me->start_busy( 1 + random(2));        feng_duration= feng_addspeed + feng_busy/( weapon->weight()/1000);                                me->start_call_out( (: call_other, __FILE__, "remove_effect", me,target, feng_parry, feng_addspeed  :), feng_duration);//                call_out("remove_effect",2 + feng_busy/( weapon->weight()/1000),me,target,feng_busy);                }        else        {                msghit = ({                        "$n攻时敬,守时严,并没有被封住。\n",                        "$n快速变招,百忙中急退两步,避开了「封」字诀。\n"                });                msg = CYN"\n"+ msghit[random(sizeof(msghit))] +"\n" NOR;                me->start_busy( 1 + random(3));                message_vision(msg, me, target);                }        feng_cost = me->query_skill("staff") / 2;        me->add("neili", -feng_cost );        return 1;}private int remove_effect(object me, object target, int feng_parry, int feng_addspeed){	int skills;        object weapon;        skills = me->query_skill("dagou-bang")/10;        me->add_temp("apply/defense",  -skills*2);        me->add_temp("apply/attack",  -skills);        if(target)                target->delete_temp("feng");        me->delete_temp("pfmfeng");        if(objectp(me) && objectp(target) && target->is_fighting(me) )                message_vision(HIG"\n$N的棒招陡变,打狗棒的「封」字诀已然瓦解。\n"NOR ,me,target);         return 1;}

⌨️ 快捷键说明

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