亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? battle_item.c

?? 最新主流石器時代源代碼,包含諸多目前流行功能代碼.
?? C
?? 第 1 頁 / 共 3 頁
字號:
#include "version.h"#include <string.h>#include "char.h"#include "char_base.h"#include "battle.h"#include "battle_event.h"#include "battle_item.h"#include "battle_magic.h"#include "item_event.h"#include "log.h"#include "anim_tbl.h"#include "npcutil.h"#include "magic_base.h"#include "lssproto_serv.h"int BATTLE_ItemUseDelete(	int charaindex,	int haveitemindex){	int itemindex;    itemindex = CHAR_getItemIndex( charaindex, haveitemindex);	if( ITEM_CHECKINDEX( itemindex ) == FALSE ) return 0;	{		LogItem(			CHAR_getChar( charaindex, CHAR_NAME ),			CHAR_getChar( charaindex, CHAR_CDKEY ),#ifdef _add_item_log_name  // WON ADD 在item的log中增加item名稱			itemindex,#else       		ITEM_getInt( itemindex, ITEM_ID ),#endif			"BattleUse(戰斗中使用掉的道具)",	       	CHAR_getInt( charaindex,CHAR_FLOOR),			CHAR_getInt( charaindex,CHAR_X ),        	CHAR_getInt( charaindex,CHAR_Y ),			ITEM_getChar( itemindex, ITEM_UNIQUECODE),					ITEM_getChar( itemindex, ITEM_NAME),					ITEM_getInt( itemindex, ITEM_ID)		);	}	CHAR_DelItemMess( charaindex, haveitemindex, 0);	return 0;}#ifdef _IMPRECATE_ITEMvoid ITEM_useImprecate( int charaindex, int toNo, int haveitemindex ){	int i;	int battleindex, attackNo,itemindex;	char *arg;	char buf[256];	struct tagImprecate {		char fun[256];		int intfun;	};	struct tagImprecate ImList[3] ={		{"咒",BD_KIND_CURSE},{"恩",BD_KIND_BESTOW},{"祝",BD_KIND_WISHES} };	if( !CHAR_CHECKINDEX( charaindex) ) return;	battleindex = CHAR_getWorkInt( charaindex, CHAR_WORKBATTLEINDEX );	if( (attackNo = BATTLE_Index2No( battleindex, charaindex )) < 0 ){		print( "ANDY attackNo=%d\n", attackNo);		return;	}    itemindex = CHAR_getItemIndex( charaindex, haveitemindex);    if(!ITEM_CHECKINDEX(itemindex)) return;	arg = ITEM_getChar(itemindex, ITEM_ARGUMENT );	if( arg == NULL ){		print( "ANDY ITEM id:%d=>arg err\n", ITEM_getInt( itemindex, ITEM_ID));		return;	}	for( i=0; i<3; i++)	{		if( strstr( arg, ImList[i].fun ) != 0 )	{			char buf1[256];			int kind,powers, rounds, HealedEffect;			if( NPC_Util_GetStrFromStrWithDelim( arg, ImList[i].fun, buf, sizeof( buf)) == NULL )continue;			kind = ImList[i].intfun;			if( getStringFromIndexWithDelim( buf,"x", 1, buf1, sizeof( buf1)) == FALSE ) continue;			powers = atoi( buf1);			if( getStringFromIndexWithDelim( buf,"x", 2, buf1, sizeof( buf1)) == FALSE ) continue;			rounds = atoi( buf1);			HealedEffect = SPR_hoshi;			BATTLE_ImprecateRecovery(				battleindex, attackNo, toNo, kind, powers,				rounds, SPR_item3, HealedEffect );			CHAR_setItemIndex(charaindex, haveitemindex ,-1);			CHAR_sendItemDataOne( charaindex, haveitemindex);			ITEM_endExistItemsOne( itemindex );			break;		}	}}#endif#ifdef _ITEM_MAGICRECOVERYvoid ITEM_useMRecovery_Battle( int charaindex, int toNo, int haveitemindex ){	int battleindex, attackNo, itemindex;	int turn=0, magicid, marray;	char buf1[256];	char *arg=NULL;	battleindex = CHAR_getWorkInt( charaindex, CHAR_WORKBATTLEINDEX );	if( BATTLE_CHECKINDEX( battleindex ) == FALSE ) return;	if( (attackNo =  BATTLE_Index2No( battleindex, charaindex )) == -1 ) return;    itemindex = CHAR_getItemIndex( charaindex, haveitemindex);    if(!ITEM_CHECKINDEX(itemindex)) return;	arg = ITEM_getChar( itemindex, ITEM_ARGUMENT );	if( getStringFromIndexWithDelim( arg, ":", 2, buf1, sizeof(buf1)) ==FALSE ) return;	turn = atoi( buf1);	if( getStringFromIndexWithDelim( arg, ":", 1, buf1, sizeof(buf1)) ==FALSE ) return;	if( strstr( buf1, "全" ) != NULL ){	}else{	}	magicid = ITEM_getInt( itemindex, ITEM_MAGICID);	marray = MAGIC_getMagicArray( magicid);	if( marray == -1 ) return;	if( IsBATTLING( charaindex ) == TRUE ){		int i, status=-1;		char *magicarg=NULL, *pszP=NULL;#ifdef _PREVENT_TEAMATTACK //光鏡守..不得使用敵方		int battleindex = CHAR_getWorkInt( charaindex, CHAR_WORKBATTLEINDEX );		if( CHAR_getInt( charaindex, CHAR_WHICHTYPE ) == CHAR_TYPEPLAYER			//&& BattleArray[battleindex].type != BATTLE_TYPE_P_vs_P 			){			if( BATTLE_CheckSameSide( charaindex, toNo) == 0 ){//不同邊				int battleindex = CHAR_getWorkInt( charaindex, CHAR_WORKBATTLEINDEX );				BATTLE_NoAction( battleindex, BATTLE_Index2No( battleindex, charaindex) );				CHAR_talkToCli( charaindex, -1, "光鏡守..不得施予非玩家敵方。", CHAR_COLORYELLOW);				return;			}		}#endif				magicarg = MAGIC_getChar( marray, MAGIC_OPTION );		pszP = magicarg;		for( ;status == -1 && pszP[0] != 0; pszP++ ){			for( i = 1; i < BATTLE_MD_END; i ++ ){				if( strncmp( pszP, aszMagicDef[i], 2 ) == 0 ){					status = i;					pszP +=2;					break;				}			}		}		if( status == -1 ) return;		BATTLE_MultiMagicDef( battleindex, attackNo, toNo,			status, turn, MAGIC_EFFECT_USER, SPR_difence );		LogItem(			CHAR_getChar( charaindex, CHAR_NAME ),			CHAR_getChar( charaindex, CHAR_CDKEY ),#ifdef _add_item_log_name  // WON ADD 在item的log中增加item名稱			itemindex,#else       		ITEM_getInt( itemindex, ITEM_ID ),#endif			"BattleUse(戰斗中使用掉的道具)",	       	CHAR_getInt( charaindex,CHAR_FLOOR),			CHAR_getInt( charaindex,CHAR_X ),        	CHAR_getInt( charaindex,CHAR_Y ),			ITEM_getChar( itemindex, ITEM_UNIQUECODE),					ITEM_getChar( itemindex, ITEM_NAME),					ITEM_getInt( itemindex, ITEM_ID)		);	}	CHAR_DelItemMess( charaindex, haveitemindex, 0);}#endif#ifdef _ITEM_USEMAGICvoid ITEM_useMagic_Battle( int charaindex, int toNo, int haveitemindex ){	int itemindex,itemmaxuse;    char *arg=NULL;    itemindex = CHAR_getItemIndex( charaindex, haveitemindex);	if(!ITEM_CHECKINDEX(itemindex)) return;	arg = ITEM_getChar( itemindex, ITEM_ARGUMENT );	CHAR_setWorkInt( charaindex, CHAR_WORKBATTLECOM2, toNo );	CHAR_setWorkInt( charaindex, CHAR_WORKBATTLECOM1, BATTLE_COM_JYUJYUTU );	CHAR_SETWORKINT_LOW( charaindex, CHAR_WORKBATTLECOM3, atoi(arg) );	CHAR_SETWORKINT_HIGH( charaindex, CHAR_WORKBATTLECOM3, 0 );	CHAR_setWorkInt( charaindex, CHAR_WORKBATTLEMODE, BATTLE_CHARMODE_C_OK );	MAGIC_DirectUse(				charaindex,				CHAR_GETWORKINT_LOW( charaindex, CHAR_WORKBATTLECOM3 ),				CHAR_getWorkInt( charaindex, CHAR_WORKBATTLECOM2 ),				CHAR_GETWORKINT_HIGH( charaindex, CHAR_WORKBATTLECOM3 )	);	itemmaxuse = ITEM_getInt( itemindex, ITEM_DAMAGEBREAK);	if( itemmaxuse > 0 )	    ITEM_setInt( itemindex, ITEM_DAMAGEBREAK, itemmaxuse-1 );    else{		LogItem(			CHAR_getChar( charaindex, CHAR_NAME ),			CHAR_getChar( charaindex, CHAR_CDKEY ),#ifdef _add_item_log_name  // WON ADD 在item的log中增加item名稱			itemindex,#else       		ITEM_getInt( itemindex, ITEM_ID ),#endif			"BattleUse(戰斗中使用掉的道具)",	       	CHAR_getInt( charaindex,CHAR_FLOOR),			CHAR_getInt( charaindex,CHAR_X ),        	CHAR_getInt( charaindex,CHAR_Y ),			ITEM_getChar( itemindex, ITEM_UNIQUECODE),					ITEM_getChar( itemindex, ITEM_NAME),					ITEM_getInt( itemindex, ITEM_ID)		);	    CHAR_DelItemMess( charaindex, haveitemindex, 0);	}}#endifvoid ITEM_useRecovery_Battle( int charaindex, int toNo, int haveitemindex ){#ifdef _CHANGEITEMUSE	 // Syu ADD 調整戰斗中使用料理設定	int power1 = 0;#endif	int power = 0, per = 0, HealedEffect=0;	int battleindex, attackNo,itemindex, kind = BD_KIND_HP;	char *p = NULL, *arg;    itemindex = CHAR_getItemIndex( charaindex, haveitemindex);    if(!ITEM_CHECKINDEX(itemindex)) return;	arg = ITEM_getChar(itemindex, ITEM_ARGUMENT );#ifdef _CHANGEITEMUSE	 // Syu ADD 調整戰斗中使用料理設定	if( ((p = strstr( arg, "體" )) != NULL) && ((p = strstr( arg,"氣")) != NULL))	{		kind = BD_KIND_HP_MP;		p = strstr( arg,"氣");		if( sscanf( p+2, "%d", &power1 ) != 1 )		{			power1 = 0;		}		p = strstr( arg,"體");	}	else if( (p = strstr( arg, "體" )) != NULL )#else	if( (p = strstr( arg, "體" )) != NULL )#endif	{		kind = BD_KIND_HP;	}	else if( (p = strstr( arg, "氣" )) != NULL )	{		kind = BD_KIND_MP;	}	else#ifdef _ITEM_UNBECOMEPIG    if( (p = strstr( arg, "解豬" )) != NULL ){        kind = BD_KIND_UNBECOMEPIG;		HealedEffect = 100608; //特效編號	}	else#endif#ifdef _ITEM_LVUPUP	if( (p = strstr( arg, "LVUPUP" )) != NULL ){	    return;	}	else#endif#ifdef _ITEM_PROPERTY    if( (p = strstr( arg, "PROPERTY" )) != NULL ){	    kind = BD_KIND_PROPERTY;		HealedEffect = 100608; //特效編號		if( strstr( arg, "+" ) )			power = 1;		else if( strstr( arg, "-" ) )			power = 2;	}	else#endif#ifdef _ITEM_ADDPETEXP    if( (p = strstr( arg, "GETEXP" )) != NULL ){        return;	}	else#endif		return;#ifdef _ITEM_UNBECOMEPIG    if( HealedEffect != 100608 ){#endif	    if( sscanf( p+2, "%d", &power ) != 1 )		    power = 0;	    if( power <= 100 )		    HealedEffect = SPR_heal;//SPR_hoshi		else if( power <= 300 )		    HealedEffect = SPR_heal2;	    else		    HealedEffect = SPR_heal3;#ifdef _ITEM_UNBECOMEPIG	}#endif	battleindex = CHAR_getWorkInt( charaindex, CHAR_WORKBATTLEINDEX );	attackNo = BATTLE_Index2No( battleindex, charaindex );	if( attackNo < 0 )return;#ifdef _CHANGEITEMUSE	 // Syu ADD 調整戰斗中使用料理設定	BATTLE_MultiRecovery( battleindex, attackNo, toNo,		kind, power, per, SPR_item3, HealedEffect , power1);#else	BATTLE_MultiRecovery( battleindex, attackNo, toNo,		kind, power, per, SPR_item3, HealedEffect );#endif	{		LogItem(			CHAR_getChar( charaindex, CHAR_NAME ),			CHAR_getChar( charaindex, CHAR_CDKEY ),#ifdef _add_item_log_name  // WON ADD 在item的log中增加item名稱			itemindex,#else       		ITEM_getInt( itemindex, ITEM_ID ),#endif			"BattleUse(戰斗中使用掉的道具)",	       	CHAR_getInt( charaindex,CHAR_FLOOR),			CHAR_getInt( charaindex,CHAR_X ),        	CHAR_getInt( charaindex,CHAR_Y ),			ITEM_getChar( itemindex, ITEM_UNIQUECODE),					ITEM_getChar( itemindex, ITEM_NAME),					ITEM_getInt( itemindex, ITEM_ID)		);	}	CHAR_DelItemMess( charaindex, haveitemindex, 0);}void ITEM_useStatusChange_Battle(	int charaindex,	int toNo,	int haveitemindex){	int turn = 0, i;	int battleindex, attackNo,itemindex, status = -1, Success = 15;	int ReceveEffect;	char *pszP = NULL, *arg;	char szTurn[] = "turn";	char szSuccess[] = "成";    itemindex = CHAR_getItemIndex( charaindex, haveitemindex);    if(!ITEM_CHECKINDEX(itemindex)) return;	arg = ITEM_getChar(itemindex, ITEM_ARGUMENT );	pszP = arg;	for( ;status == -1 && pszP[0] != 0; pszP++ ){		for( i = 0; i < BATTLE_ST_END; i ++ ){			if( strncmp( pszP, aszStatus[i], 2 ) == 0 ){				status = i;				pszP +=2;				break;			}		}	}	if( status == -1 ) return ;	if( ( pszP = strstr( arg, szTurn ) ) != NULL){		pszP += sizeof( szTurn );		sscanf( pszP, "%d", &turn );	}	if( ( pszP = strstr( arg, szSuccess ) ) != NULL){

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情六月婷婷久久| 精品国产免费久久| 日韩一区二区电影| 国产日韩欧美电影| 五月婷婷激情综合| 国产成人aaaa| 欧美一级日韩一级| 亚洲久草在线视频| 福利电影一区二区三区| 国产精品久久久久久久久图文区| 久久精品理论片| 欧美色网一区二区| 国产精品网站导航| 国产精品一二三在| 日韩欧美国产麻豆| 日韩国产欧美三级| 91色在线porny| 久久久777精品电影网影网| 蜜臀久久99精品久久久画质超高清| 欧美性xxxxxxxx| 久久99精品久久久久婷婷| 欧美老女人在线| 一区二区欧美在线观看| 99久久免费精品| 亚洲国产精品传媒在线观看| 国产精品99久久久| 亚洲视频一区二区在线观看| 高清国产一区二区| 亚洲综合一二区| 91国内精品野花午夜精品| 国产日韩一级二级三级| 欧美在线观看视频在线| 亚洲va欧美va国产va天堂影院| 欧美图区在线视频| 国内精品写真在线观看| 亚洲激情图片一区| 26uuu亚洲综合色| 国产麻豆成人传媒免费观看| 久久日一线二线三线suv| 日本女人一区二区三区| 国产女人aaa级久久久级| 欧美性淫爽ww久久久久无| 国产精品伊人色| 亚洲大尺度视频在线观看| 久久精品日产第一区二区三区高清版 | 亚洲三级理论片| 91精品国产色综合久久不卡电影| 丰满亚洲少妇av| 日本va欧美va欧美va精品| 欧美一区二区三区四区在线观看| 成人性生交大片免费| 中文字幕在线不卡视频| 色菇凉天天综合网| 国产伦精品一区二区三区在线观看| 亚洲免费伊人电影| 欧美一级淫片007| 91首页免费视频| 国产精品一区二区在线播放| 天堂av在线一区| 精品毛片乱码1区2区3区| 国产福利一区二区三区视频 | 久久99精品久久久久久动态图 | 婷婷激情综合网| 综合久久久久综合| 久久欧美一区二区| 日韩西西人体444www| 在线观看一区不卡| 东方aⅴ免费观看久久av| 美日韩一区二区| 亚洲妇熟xx妇色黄| 亚洲精品在线观看网站| 欧美日韩一区不卡| 免播放器亚洲一区| 亚洲综合免费观看高清完整版| 国产精品入口麻豆九色| 精品99久久久久久| 欧美一三区三区四区免费在线看 | 蜜桃av一区二区三区电影| 一区二区国产视频| 国产精品萝li| 国产欧美日韩精品一区| 精品99999| 日韩一区二区电影网| 欧美军同video69gay| 在线观看亚洲精品视频| 97久久精品人人做人人爽50路 | 国产91在线观看| 激情欧美一区二区三区在线观看| 午夜精品成人在线| 亚洲成人在线免费| 一区二区三国产精华液| 一区二区国产盗摄色噜噜| 亚洲人成精品久久久久久| 国产精品萝li| 中文字幕亚洲成人| 国产精品乱人伦一区二区| 久久久久国产精品免费免费搜索| 337p日本欧洲亚洲大胆精品| 日韩欧美国产一区在线观看| 欧美一区二区在线视频| 91精品国产色综合久久不卡电影| 欧美日韩成人综合| 不卡的电影网站| 免费一级片91| 免费在线观看日韩欧美| 久久精品国产一区二区三区免费看 | 亚洲色图视频网| 亚洲色图在线看| 一区二区三区小说| 亚洲一区二区偷拍精品| 亚瑟在线精品视频| 日韩av一区二区在线影视| 日韩成人一级片| 蜜臀a∨国产成人精品| 久久电影网电视剧免费观看| 激情综合亚洲精品| 国产精品一级黄| av亚洲精华国产精华| 国产精品一区在线| 高清国产一区二区三区| 99久久精品一区二区| 日本高清免费不卡视频| 欧美性视频一区二区三区| 欧美喷潮久久久xxxxx| 91精品国产入口| 欧美成人精品1314www| 久久久影院官网| 国产精品久久一级| 一区二区在线免费| 天堂蜜桃91精品| 国内精品久久久久影院色| 国产成人精品免费网站| 91在线无精精品入口| 欧美在线色视频| 日韩欧美成人一区二区| 久久精品亚洲麻豆av一区二区| 中文字幕视频一区二区三区久| 亚洲综合小说图片| 久久成人免费网| 成人免费毛片嘿嘿连载视频| 色香蕉久久蜜桃| 不卡一区在线观看| 欧美在线一二三四区| 日韩欧美成人激情| 国产精品美女久久久久aⅴ国产馆| 一区二区三区**美女毛片| 奇米一区二区三区av| 国产传媒欧美日韩成人| 色欧美日韩亚洲| 日韩视频免费直播| 国产精品污污网站在线观看| 亚洲综合在线观看视频| 麻豆国产精品一区二区三区| 粉嫩在线一区二区三区视频| 欧美三级韩国三级日本一级| 精品日韩av一区二区| 亚洲丝袜美腿综合| 日本免费在线视频不卡一不卡二| 国产成人精品亚洲午夜麻豆| 欧美色成人综合| 久久精品欧美一区二区三区麻豆| 亚洲伦在线观看| 久久99精品久久久久久动态图| 99精品视频在线播放观看| 欧美一区二区人人喊爽| 国产精品高清亚洲| 热久久免费视频| 99精品视频一区| 欧美成人国产一区二区| 亚洲老司机在线| 国产精品亚洲一区二区三区在线 | 亚洲婷婷综合色高清在线| 丝瓜av网站精品一区二区| 福利一区二区在线| 欧美一区二区精美| 亚洲欧美另类小说| 狠狠久久亚洲欧美| 在线免费视频一区二区| 久久久久高清精品| 香蕉久久一区二区不卡无毒影院 | 麻豆视频观看网址久久| 色激情天天射综合网| 久久色.com| 日本一不卡视频| 色八戒一区二区三区| 亚洲精品在线电影| 亚洲h在线观看| 97se亚洲国产综合自在线不卡 | 中文字幕免费不卡| 日本sm残虐另类| 91黄色免费观看| 国产精品久久久久久亚洲伦| 激情久久久久久久久久久久久久久久| 色婷婷综合久久| 国产精品进线69影院| 韩国av一区二区三区四区| 欧美福利电影网| 夜夜爽夜夜爽精品视频| 成人爽a毛片一区二区免费| 日韩免费视频线观看|