修复地球一周技能BUG

1、首先打开battle_command.c

2、搜索print("\n 改封包!叫出非待机宠!!:%s ", CHAR_getChar( charaindex, CHAR_CDKEY) );

3、往下看到CHAR_setWorkInt( charaindex, CHAR_WORKBATTLECOM2, iNum );并在上面加下列代码

int petindex = CHAR_getCharPet( charaindex, iNum);
if(CHAR_CHECKINDEX(petindex) == 1){
if( CHAR_getWorkInt( petindex, CHAR_WORKBATTLECOM1 ) == BATTLE_COM_S_EARTHROUND1 
|| CHAR_getWorkInt( petindex, CHAR_WORKBATTLECOM1 ) == BATTLE_COM_S_EARTHROUND0 ){
  CHAR_talkToCli( charaindex, -1,"宠物正在使用地球一周,无法换宠,因此把宠收回!", CHAR_COLORYELLOW );
  iNum = -1;
  }
}

1.png

这里防止玩家在使用地球一周后又使用外挂换宠,影响公平。

4、接着再打开petskill.c

5、找到int PETSKILL_EarthRoundfloat fPer = 0.01;下面加下列代码

if(toNo<0 || toNo>=BATTLE_ENTRY_MAX*2){
    print("err:地球一周攻击目标索引异常 %d ", toNo);
    return FALSE;
}

1.png

这里是为了防止地球一周没有攻击目标索引导致卡客户端的问题。

作者:sa60

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。