给石器时代增加一个战斗解卡的命令

    在石器时代战斗中时常会出现一些,以外卡画面的情况。因此我们需要使用一个强制退出战斗的命令。

1、首先打开char_talk.c

2、搜索if(messageeraseescape[0] == '/' && messageeraseescape[1] == 'F' && messageeraseescape[2] == 'M'){

3、往下拉看到#endif在下方加上如下代码:

  if(strstr( messageeraseescape, "/解卡") != NULL ){
	 int battleindex = CHAR_getWorkInt(index, CHAR_WORKBATTLEINDEX );
	 int floorid = CHAR_getInt(index, CHAR_FLOOR);

	 	if (floorid == 1042 || floorid == 2032 || floorid == 3032  || floorid == 4032
	 	 || floorid == 5032 || floorid == 6032 || floorid == 7032 || floorid == 8032 
	 	 || floorid == 9032){
	 		CHAR_talkToCli( index, -1, "此地图无法强制退出战斗!", CHAR_COLORRED);
	 		return;
	 	}
	
	if( CHAR_getWorkInt(index, CHAR_WORKBATTLEMODE) == BATTLE_CHARMODE_NONE ){
			CHAR_talkToCli( index, -1, "未战斗无法强制退出战斗!", CHAR_COLORRED);
	 		return;
	}
	
	if(BattleArray[battleindex].type == BATTLE_TYPE_P_vs_P)	{
		CHAR_talkToCli( index, -1, "PK中无法强制退出战斗!", CHAR_COLORRED);
		return;
	}

	CHAR_talkToCli(index, -1, "解卡成功!强迫退出战斗!", CHAR_COLORGREEN);
	CHAR_DischargeParty( index, 0);
	CHAR_setWorkInt(index, CHAR_WORKFMPKFLAG, -1);
	CHAR_setWorkInt(index, CHAR_WORKBATTLEMODE, BATTLE_CHARMODE_C_OK );
	CHAR_setWorkInt(index, CHAR_WORKBATTLECOM1, BATTLE_COM_COMPELESCAPE );
	BATTLE_Exit(index, battleindex );
	CHAR_setWorkInt(index, CHAR_WORKBATTLEMODE, BATTLE_CHARMODE_NONE );
	lssproto_B_send( getfdFromCharaIndex( index ), "BU" );
	return;
}

1.png

这样只要在战斗中输入/解卡即可强制退出战斗。

发表评论

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