• 印度Zensar科技公司卓越实验室正式落户盐城师范学院
  • 如何實装月夜猫卡和死靈卡

    [ 来源:不详 | 作者:佚名 | 时间:2007-8-18 14:39:22 | 浏览: 人次 ]

    由于版主們并不PO原始码, 所以一般会员并沒有办法修改,我PO出來給版主看看希望你PO出原始码好給我修改.或我PO出方法你來修改好了.>_>
    你去 pc.c, 找以下的码.


    int pc_bonus(spuct map_session_data *sd,int type,int val)
    {
    switch(type){
    case SP_STR:
    case SP_AGI:
    case SP_VIT:
    case SP_INT:
    case SP_DEX:
    case SP_LUK:
    sd->paramb[type-SP_STR]+=val;
    break;
    case SP_MATK1:
    break;
    case SP_MDEF1:
    sd->mdef+=val;
    break;
    case SP_HIT:
    sd->hit+=val;
    break;
    case SP_FLEE1:
    sd->flee+=val;
    break;
    case SP_FLEE2:
    sd->flee2+=val;
    break;
    case SP_CRITICAL:
    sd->critical+=val;
    break;
    case SP_ATKELE:
    sd->atk_ele=val;
    break;
    case SP_DEFELE:
    sd->def_ele=val;
    break;
    case SP_MAXHP:
    sd->status.max_hp+=val;
    break;
    case SP_MAXSP:
    sd->status.max_sp+=val;
    break;
    case SP_CASTRATE:
    sd->caspate+=val;
    break;
    case SP_MAXHPRATE:
    sd->hprate+=val;
    break;
    case SP_MAXSPRATE:
    sd->sprate+=val;
    break;
    case SP_SPRATE:
    sd->dsprate+=val;
    break;
    default:
    printf("pc_bonus: unknown type %d %d !\n",type,val);
    break;
    }
    return 0;
    }


    把它們用以下的覆盖掉


    int pc_bonus(spuct map_session_data *sd,int type,int val)
    {
    switch(type){
    case SP_STR:
    case SP_AGI:
    case SP_VIT:
    case SP_INT:
    case SP_DEX:
    case SP_LUK:
    sd->paramb[type-SP_STR]+=val;
    break;
    case SP_MATK1:
    break;
    case SP_MDEF1:
    sd->mdef+=val;
    break;
    case SP_HIT:
    sd->hit+=val;
    break;
    case SP_FLEE1:
    sd->flee+=val;
    break;
    case SP_FLEE2:
    sd->flee2+=val;
    break;
    case SP_CRITICAL:
    sd->critical+=val;
    break;
    case SP_ATKELE:
    sd->atk_ele=val;
    break;
    case SP_DEFELE:
    sd->def_ele=val;
    break;
    case SP_MAXHP:
    sd->status.max_hp+=val;
    break;
    case SP_MAXSP:
    sd->status.max_sp+=val;
    break;
    case SP_CASTRATE:
    sd->caspate+=val;
    break;
    case SP_MAXHPRATE:
    sd->hprate+=val;
    break;
    case SP_MAXSPRATE:
    sd->sprate+=val;
    break;
    case SP_SPRATE:
    sd->dsprate+=val;
    break;
    //=== bonus adding ============================
    case SP_ATK2:
    sd->watk2+=val;
    break;
    case SP_ATTACKRANGE:
    sd->attackrange+=val;
    break;
    case SP_ASPD:
    sd->aspd-=val*10;
    break;
    case SP_SPEED:
    sd->speed -= DEFAULT_WALK_SPEED *val/100;
    break;
    //=== End Adding ==============================
    default:
    printf("pc_bonus: unknown type %d %d !\n",type,val);
    break;
    }
    return 0;
    }


    去你的DB档里找const.txt
    加以下的码下去


    bSpeed 0
    bAtk2 42
    bAspd 53
    bAtkRange 56


    下面是每个bonus的效果解晰.


    bonus bAspd,2; ==> 就是 aspd+2
    bonus bAtk2,10; ==> atk2 +10
    bonus bSpeed,70; ==> 速度+35%, 不要太多会LAG
    bonus bAtkRange,2; ==> 攻击范围+2

    再來就去你的item_db.txt, 找死靈卡
    4142,Doppelganger_Card,Doppelganger_Card,6,20,10,10,,,,,,,2,,,,{},{ bonus bAspd,8; }
    如上把 bonus baspd, 8; 加入第2个空格, 你玩起來死靈卡aspd就+8啦 

    共有 0 位网友发表了评论 ... 查看完整内容