修复石器旅程伙伴导致卡战斗的BUG

  以前石器时代里在PK的时候使用外挂把使用旅程伙伴的宠物在一回合内换出来,这里会有个卡战斗的BUG,就是宠物使用旅程伙伴,人物使用外挂换宠,当宠物先出手使用旅程伙伴技能,人物再使用外挂把该宠物换出来后,下一回合就会卡在战斗里。


  这是由于宠物使用旅程伙伴后离开战场,战斗指令还是处于在旅程伙伴中,需要在该回合结束后清空指令。但因为人物又把宠物换出来,导致宠物的战斗指令还处于旅程伙伴中。


  当进行下一回合后,人物再次给该宠物下达战斗指令,系统无法正确将已缓存的战斗指令进行清除并进行新的指令从而卡在战斗。那么只要禁止使用旅程伙伴的时候禁止换宠即可。


1、找到pet_skill.c搜索int PETSKILL_Abduct这个函数


2、如图所示添加下列代码即可

	int badindex = CHAR_getWorkInt(charaindex, CHAR_WORKPLAYERINDEX);
	if(CHAR_getWorkInt( badindex, CHAR_WORKBATTLECOM1) == BATTLE_COM_PETOUT ){
		CHAR_setWorkInt( badindex, CHAR_WORKBATTLECOM1, BATTLE_COM_NONE );
		CHAR_talkToCli( badindex, -1,"旅程伙伴进行中无法呼唤宠物!", CHAR_COLORRED );
	}


1.png

发表评论

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