找回密码
 注册
搜索
查看: 542|回复: 4

星宿csz perform biyan说明

[复制链接]
门派:不明
发表于 2010-5-14 19:18:53 | 显示全部楼层 |阅读模式
int perform(object me, object target)
{
      object ob;
      string msg, *limbs;
      int i, neili, ap, dp, damage, p;
        
      i = (int)me->query_skill("chousui-zhang", 1);
      neili = (int)me->query("neili");   
        if( !target ) target = offensive_target(me);
    if( !objectp(target)
        ||      !target->is_character()
        ||      !me->is_fighting(target)
        || !living(target)
        || environment(me)!=environment(target) )
                return notify_fail("「碧焰」攻击只能对战斗中的对手使用。\n");
      
        if( objectp(me->query_temp("weapon")) )
                return notify_fail("你必须空手才能使用「碧焰」!\n");        
        if(!objectp(ob = present("huo yan", environment(me))))
                return notify_fail("没有火堆怎么驱动「碧焰」进行攻击?\n");
        if(me->query_temp("pfm_chousui"))
                return notify_fail("你正在驱动火堆进行攻击!\n");
        if( i < 80 )
                return notify_fail("你发现自己的星宿毒掌还不够娴熟,无法使用「碧焰」进行攻击。\n");

        if( (int)me->query_skill("huagong-dafa",1) < 80 )
                return notify_fail("你发现自己的化功大法修为不够,无法使用「碧焰」进行攻击。\n");

        if((int)me->query_skill("poison",1) < 60)
                return notify_fail("你发现自己体内聚毒不够,无法使用「碧焰」进行攻击。\n");         

        if (me->query_skill_prepared("strike") != "chousui-zhang"
        || me->query_skill_mapped("strike") != "chousui-zhang"
        || me->query_skill_mapped("parry") != "chousui-zhang")
                return notify_fail("你必须用抽髓掌才能使用「碧焰」进行攻击。\n");
                                                                              
        if( me->query_skill_mapped("force") != "huagong-dafa")
                return notify_fail("你发现自己所用的内功无法进行「碧焰」攻击。\n");

        if( (int)me->query("max_neili") < 500)
                return notify_fail("你发现自己内力太弱,无法驱动「碧焰」进行攻击。\n");

        if(neili < 300)
                return notify_fail("你发现自己现在真气太弱,使不出「碧焰」进行攻击。\n");           
   
        if(target->query_condition("xx_poison") > 200)
                return notify_fail("对方已经身中无数剧毒,你不用再进行「碧焰」攻击了。\n");
门派:不明
 楼主| 发表于 2010-5-14 19:20:28 | 显示全部楼层
i = (int)me->query_skill("chousui-zhang", 1);
抓取i= ID的csz 武功等级
      neili = (int)me->query("neili");   
抓取neili=id的当前内力值

        if( i < 80 )
                return notify_fail("你发现自己的星宿毒掌还不够娴熟,无法使用「碧焰」进行攻击。\n");
如果csz等级小于80级别  不能 perform
        if( (int)me->query_skill("huagong-dafa",1) < 80 )
                return notify_fail("你发现自己的化功大法修为不够,无法使用「碧焰」进行攻击。\n");
如果huagong-dagong 等级小于80也不能 perform
门派:不明
 楼主| 发表于 2010-5-14 19:22:34 | 显示全部楼层
ap = me->query("combat_exp")/1000 * i * me->query_str();
ap=exp/1000 * csz 等级 * ID str 力量
        dp = target->query("combat_exp")/1000 * target->query_skill("parry",1) * target->query_dex();
dp=对方exp/1000 + parry 等级 * 对方dex 身法
        if (ap < 1) ap = 1;
如果ap<1  ap=1
        if (dp < 1) dp = 1;
如果dp<1  dp=1
        me->add("neili", -200);
        me->add("jingli", -25);
减少内力200 精力25
门派:不明
 楼主| 发表于 2010-5-14 19:25:34 | 显示全部楼层
if(random(ap+dp) > dp){
如果ap+dp的总和 之中的随机数 > dp 这个数 运行下面 也就是perform 中了。。
                damage = (i+me->query("jiali"))*4;
伤害算法 伤害数值等于 csz等级+加力数值的综合 乘以4
                  if(neili > target->query("neili")*2) damage *= 2;
如果ID的内力大于对方当前内力的2倍  伤害翻倍
                if( damage > 1500) damage = 1500;
最大伤害1500   如果伤害数值大于1500 伤害数值等于1500   
也就是说最大伤害1500
门派:不明
 楼主| 发表于 2010-5-14 20:34:11 | 显示全部楼层
if(random(ap+dp) > dp){
如果ap+dp的总和 之中的随机数 > dp 这个数 运行下面 也就是perform 中了。。
                damage = (i+me->query("jiali"))*4;
伤害算法 伤害数值等于 csz等级+加力数值的综合 乘以4
                  if(neili > target->query("neili")*2) damage *= 2;
如果ID的内力大于对方当前内力的2倍  伤害翻倍
                if( damage > 1500) damage = 1500;
最大伤害1500   如果伤害数值大于1500 伤害数值等于1500   
也就是说最大伤害1500
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-7-29 00:25 , Processed in 0.031584 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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