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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? char_item.c.bak

?? 最新主流石器時(shí)代源代碼,包含諸多目前流行功能代碼.
?? BAK
?? 第 1 頁 / 共 5 頁
字號(hào):
			otheritemindex = CHAR_getItemIndex( index, checkplace);			if( ITEM_CHECKINDEX( otheritemindex )) {				int otheritemtype = ITEM_getInt( otheritemindex, ITEM_TYPE);				int myitemtype = ITEM_getInt( CHAR_getItemIndex( index, fromindex) , ITEM_TYPE);				if( otheritemtype == myitemtype) {					if( toid < 0 ) {						CANNOTEQUIP2;					}else {						CANNOTEXCHANGE;					}					return FALSE;				}			}			flg = TRUE;		}	}else {		if( toindex == fromeqplace) flg = TRUE;	}	if( flg ){		CHAR_setItemIndex(index,toindex,fromid);		CHAR_setItemIndex(index,fromindex,toid);		if( toid != -1 ) {			CHAR_sendItemDetachEvent( index, toid );		}#ifdef _CHECK_ITEM_MODIFY		ITEM_checkItemModify( index, fromid);#endif		CHAR_sendItemAttachEvent( index, fromid );		CHAR_sendSIToCli( index, fromindex,toindex );	}else {		CANNOTEQUIP;		return FALSE;	}#if 0 //#ifdef _ANGEL_SUMMON	//if( !strcmp( ITEM_getChar( fromid, ITEM_USEFUNC), "ITEM_AngelToken") ) {	if( ITEM_getInt( fromid, ITEM_ID) == ANGELITEM ) {		print(" 裝備使者信物 ");		CHAR_talkToCli( index, -1, "你受到了精靈保護(hù),不會(huì)被敵人攻擊。", CHAR_COLORYELLOW );		//CHAR_setWorkInt( index, CHAR_WORKANGELMODE, TRUE);		CHAR_sendAngelMark( CHAR_getWorkInt( index, CHAR_WORKOBJINDEX), 1);	}#endif	return TRUE;}static BOOL CHAR_moveItemFromEquipToItemBox(int index, int fromindex,										  int toindex){	int fromid,toid;	if( !CHAR_CHECKINDEX( index )) return FALSE;	fromid  = CHAR_getItemIndex(index,fromindex);	toid    = CHAR_getItemIndex(index,toindex);	if( fromid < 0 )		return FALSE;	else if( toid < 0 ){		CHAR_setItemIndex(index,toindex,fromid);		CHAR_setItemIndex(index,fromindex,-1);		CHAR_sendItemDetachEvent( index,fromid );		CHAR_sendSIToCli( index,fromindex,toindex);#if 0 //#ifdef _ANGEL_SUMMON		//if( !strcmp( ITEM_getChar( fromid, ITEM_USEFUNC), "ITEM_AngelToken") ) {		if( ITEM_getInt( fromid, ITEM_ID) == ANGELITEM ) {			print(" 卸下使者信物 ");			CHAR_setWorkInt( index, CHAR_WORKANGELMODE, FALSE);			CHAR_sendAngelMark( CHAR_getWorkInt( index, CHAR_WORKOBJINDEX), 0);		}#endif		return TRUE;	}	return CHAR_moveItemFromItemBoxToEquip(index, toindex,fromindex);}#ifdef _ITEM_PILENUMSint CHAR_getMyMaxPilenum( int charaindex){	int maxpile;	maxpile = CHAR_getInt( charaindex, CHAR_TRANSMIGRATION)		+ (CHAR_getInt( charaindex, CHAR_TRANSMIGRATION)/5) * 2 + 3;/*#ifdef _PROFESSION_SKILL			// WON ADD 人物職業(yè)技能	maxpile += CHAR_getInt( charaindex, ATTACHPILE );#endif*/#ifdef _EQUIT_ADDPILE	maxpile += CHAR_getWorkInt( charaindex, CHAR_WORKATTACHPILE);	maxpile = (maxpile<0)?0:maxpile;#endif	return maxpile;}BOOL CHAR_PileItemFromItemBoxToItemBox( int charaindex, int fromindex, int toindex){	int maxpile, fromid, toid;	if( !CHAR_CHECKINDEX( charaindex) ) return FALSE;	fromid = CHAR_getItemIndex( charaindex, fromindex);	toid = CHAR_getItemIndex( charaindex, toindex);	maxpile = CHAR_getMyMaxPilenum( charaindex);	if( ITEM_CHECKINDEX( toid) && ITEM_CHECKINDEX( fromid) &&		(ITEM_getInt( toid, ITEM_ID) == ITEM_getInt( fromid, ITEM_ID)) &&		(ITEM_getInt( toid, ITEM_CANBEPILE) == 1) &&		(ITEM_getInt( toid, ITEM_USEPILENUMS) < maxpile) &&		(ITEM_getInt( fromid, ITEM_USEPILENUMS) < maxpile) ){		int formpilenum , pilenum, defpilenum;		pilenum = ITEM_getInt( toid, ITEM_USEPILENUMS);		formpilenum = ITEM_getInt( fromid, ITEM_USEPILENUMS);		defpilenum = ((maxpile-pilenum)>formpilenum)? formpilenum:(maxpile-pilenum);		formpilenum = formpilenum - defpilenum;		pilenum = pilenum + defpilenum;		ITEM_setInt( toid, ITEM_USEPILENUMS, pilenum);		ITEM_setInt( fromid, ITEM_USEPILENUMS, formpilenum);		if( formpilenum <= 0 ){			CHAR_setItemIndex( charaindex, fromindex ,-1);			ITEM_endExistItemsOne( fromid);		}		return TRUE;	}	return FALSE;}#endifstatic BOOL CHAR_moveItemFromItemBoxToItemBox( int index, int fromindex, int toindex){	int     fromid, toid;	if( !CHAR_CHECKINDEX( index ) ) return FALSE;#ifdef _ITEM_PILENUMS	if( CHAR_PileItemFromItemBoxToItemBox( index, fromindex, toindex) == TRUE ){		CHAR_sendItemDataOne( index, toindex);		CHAR_sendItemDataOne( index, fromindex);		return TRUE;	}#endif	fromid = CHAR_getItemIndex( index, fromindex);	toid = CHAR_getItemIndex( index, toindex);	CHAR_setItemIndex(index,toindex, CHAR_setItemIndex( index, fromindex, toid));	CHAR_sendSIToCli( index,fromindex,toindex);	return TRUE;}void CHAR_moveEquipItem( int index, int fromindex, int toindex ){#define		MOVEITEM_NONE			0#define		MOVEITEM_EQUIPTOITEM	1 << 0#define		MOVEITEM_ITEMTOEQUIP	1 << 1#define		MOVEITEM_ITEMTOITEM		1 << 2	int     fromid;            /*  item    匹及奶件犯永弁旦    */	unsigned int     moved_any = 0;	while( 1) {		if( !CHAR_CHECKINDEX( index ) )break;		if( CHAR_getFlg( index,CHAR_ISDIE ) )break;		if( fromindex < 0 || fromindex >= CHAR_MAXITEMHAVE ||			toindex < 0 || toindex >= CHAR_MAXITEMHAVE )			break;		fromid  = CHAR_getItemIndex(index,fromindex);		if( fromid == -1 || fromid == -2 )break;		if( fromindex == toindex )break;		if( fromindex < CHAR_EQUIPPLACENUM ){			if( toindex  < CHAR_EQUIPPLACENUM ){				if( CHAR_getItemIndex(index,toindex) < 0 ){					CANNOTMOVE;				}else{					CANNOTEXCHANGE;				}			}else {				moved_any |= CHAR_moveItemFromEquipToItemBox(					index, fromindex, toindex )					? MOVEITEM_EQUIPTOITEM : MOVEITEM_NONE;				if( moved_any & MOVEITEM_EQUIPTOITEM) {					char	category[3];					snprintf( category,sizeof( category),"J%d", fromindex);					CHAR_sendStatusString( index , category);				}			}		}else{			if( toindex  < CHAR_EQUIPPLACENUM ) {				moved_any |= CHAR_moveItemFromItemBoxToEquip(					index, fromindex , toindex )					? MOVEITEM_ITEMTOEQUIP : MOVEITEM_NONE;				if( moved_any & MOVEITEM_ITEMTOEQUIP) {					char	category[3];					snprintf( category,sizeof( category),"J%d", toindex);					CHAR_sendStatusString( index , category);				}			}else	{				moved_any |= CHAR_moveItemFromItemBoxToItemBox(	index,fromindex,toindex )					? MOVEITEM_ITEMTOITEM : MOVEITEM_NONE;			}		}		CHAR_complianceParameter( index );		CHAR_sendCToArroundCharacter(CHAR_getWorkInt(index, CHAR_WORKOBJINDEX));		break;	}	if( (moved_any & MOVEITEM_EQUIPTOITEM) || (moved_any & MOVEITEM_ITEMTOEQUIP)){		int i;		CHAR_send_P_StatusString( index,								  CHAR_P_STRING_HP|CHAR_P_STRING_MAXHP|								  CHAR_P_STRING_MP|CHAR_P_STRING_MAXMP|								  CHAR_P_STRING_ATK|CHAR_P_STRING_DEF|								  CHAR_P_STRING_QUICK|CHAR_P_STRING_CHARM|								  CHAR_P_STRING_LUCK|CHAR_P_STRING_EARTH|								  CHAR_P_STRING_WATER|CHAR_P_STRING_FIRE|								  CHAR_P_STRING_WIND								  );		if( CHAR_getWorkInt( index,CHAR_WORKBATTLEMODE ) == BATTLE_CHARMODE_NONE ){			for( i = 0; i < CHAR_MAXPETHAVE; i ++ ) {				int petindex = CHAR_getCharPet( index, i);				if( CHAR_CHECKINDEX( petindex) ) {					char	category[3];					CHAR_complianceParameter( petindex );					snprintf( category, sizeof( category), "K%d",i);					CHAR_sendStatusString( index, category );				}			}		}	}	if( !moved_any ) {		CHAR_sendSIToCli( index,-1,-1);	}}int CHAR_addItemToChar( Char* ch, int itemid ){	int     itembox;	itembox = CHAR_findEmptyItemBoxFromChar( ch );	if( itembox == -1 )return -1;	return ch->indexOfExistItems[itembox]=ITEM_makeItemAndRegist(itemid);}int CHAR_addItem( int charaindex, int itemid ){	Char*   ch;	ch = CHAR_getCharPointer(charaindex);	if( ch != NULL ){		int ret = CHAR_addItemToChar( ch,itemid );		if( ret == -1 )return ret;		ITEM_setWorkInt(ret,ITEM_WORKCHARAINDEX,charaindex);		ITEM_setWorkInt(ret,ITEM_WORKOBJINDEX,-1);		return ret;	}else		return -1;}void CHAR_ItemUse( int charaindex, int to_charaindex, int haveitemindex ){	void (*usefunc)(int,int,int)=NULL;	int itemindex;	if( !CHAR_CHECKINDEX( charaindex ) ){		print( "ANDY charaindex=%d err\n", charaindex);		return;	}	if( CHAR_CHECKITEMINDEX( charaindex, haveitemindex) == FALSE ){		print( "ANDY haveitemindex=%d err\n", haveitemindex);		return;	}	itemindex = CHAR_getItemIndex( charaindex, haveitemindex);	if( CHAR_getFlg( charaindex, CHAR_ISDIE ) ){		print( "ANDY charaindex=%d is CHAR_ISDIE err\n", charaindex);		return;	}#ifdef _STREET_VENDOR	// 擺攤中不可使用道具	if(CHAR_getWorkInt(charaindex,CHAR_WORKSTREETVENDOR) > -1){		print("StreetVendor use item charaindex=%d,name=%s\n",charaindex,CHAR_getChar(charaindex,CHAR_NAME));		return;	}#endif	if( CHAR_getWorkInt( charaindex, CHAR_WORKBATTLEMODE) == BATTLE_CHARMODE_NONE ) {		if( CHAR_getInt( to_charaindex, CHAR_WHICHTYPE) == CHAR_TYPEPLAYER) {			int action = ITEM_getInt( itemindex, ITEM_USEACTION);			if( action != -1 ) {				CHAR_sendAction( to_charaindex, action, TRUE);			}		}	}	//不等於料理 和 其他	if( ITEM_getInt( itemindex,ITEM_TYPE) != ITEM_OTHER &&		ITEM_getInt( itemindex,ITEM_TYPE) != ITEM_DISH ) {		CHAR_EquipPlace ep;				ep = ITEM_getEquipPlace( charaindex, itemindex );		if( ep == -1 )return;		if( ep == CHAR_DECORATION1 ) {			int	flg = FALSE;			int toitemindex1 = CHAR_getItemIndex( charaindex, ep);			int	toitemindex2 = CHAR_getItemIndex( charaindex, CHAR_DECORATION2);			int	searchindex = -1;			int fromitemtype = ITEM_getInt( itemindex, ITEM_TYPE);			if( !ITEM_CHECKINDEX( toitemindex1)) searchindex = toitemindex2;			else if(!ITEM_CHECKINDEX( toitemindex2)) searchindex = toitemindex1;			if( searchindex != -1 ) {				if( fromitemtype != ITEM_getInt( searchindex, ITEM_TYPE)) {					flg = TRUE;					ep = ( searchindex == toitemindex1)								? CHAR_DECORATION2:CHAR_DECORATION1;				}			}			if( !flg) {				if( fromitemtype != ITEM_getInt( toitemindex2, ITEM_TYPE)) {					ep = CHAR_DECORATION1;				}else if( fromitemtype != ITEM_getInt( toitemindex1, ITEM_TYPE)) {					ep = CHAR_DECORATION2;				}else {					ep = CHAR_DECORATION1;				}			}		}		CHAR_moveEquipItem( charaindex, haveitemindex,ep );		return;	}	usefunc = (void(*)(int,int,int))		ITEM_getFunctionPointer( itemindex,ITEM_USEFUNC );	if( usefunc ){		{			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				"Use(使用道具)",				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)			);		}		usefunc(charaindex, to_charaindex, haveitemindex);	}else{		char ansmsg[256];		strcpysafe( ansmsg, sizeof(ansmsg),					"什麼也沒有發(fā)生。");		CHAR_talkToCli( charaindex, -1, ansmsg, CHAR_COLORWHITE );	}}BOOL CHAR_DropItemFXY( int charaindex, int itemcharaindex, int fl,							  int x, int y, int* objindex ){	int itemindex;	itemindex = CHAR_getItemIndex(charaindex,itemcharaindex);	if( ITEM_CHECKINDEX(itemindex) == FALSE )return -3;	if( MAP_walkAbleFromPoint( fl,x,y, FALSE ) == FALSE ){		return -2;	}	{		OBJECT  object;		for( object=MAP_getTopObj(fl,x,y) ; object; object = NEXT_OBJECT(object ) ){			int objindex = GET_OBJINDEX(object);			switch( OBJECT_getType(objindex) ){			case OBJTYPE_NOUSE:				break;			case OBJTYPE_ITEM:#ifdef _DROPSTAKENEW				if(ITEM_getInt(itemindex, ITEM_ID) == CASINOTOKENID)				{					int i = 0;					int dropflag = 0;					ITEM_Item *itm;					for(i = 0; i < arraysizeof(casinomap); i++){						if(CHAR_getInt(charaindex, CHAR_FLOOR) == casinomap[i].casinofl){							if(x == casinomap[i].casinox && y == casinomap[i].casinoy){								dropflag = 1;								break;							}						}					}					if(dropflag == 1){						if( (itm = ITEM_getItemPointer( itemindex)) == NULL ) return -1;							strcpysafe( itm->string[ITEM_WATCHFUNC].string,

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜欧美2019年伦理| 中文无字幕一区二区三区| 亚洲精品第一国产综合野| 色综合中文综合网| 日韩女优制服丝袜电影| 美女任你摸久久 | av爱爱亚洲一区| 国产精品灌醉下药二区| 91免费在线播放| 亚洲一区二区三区自拍| 69堂亚洲精品首页| 久草在线在线精品观看| 国产女主播视频一区二区| 成人av网址在线| 亚洲自拍偷拍九九九| 欧美放荡的少妇| 国产伦精一区二区三区| 中文字幕一区二区在线播放| 91黄色小视频| 激情成人综合网| 亚洲日本一区二区三区| 欧美日韩精品福利| 国产在线精品一区二区不卡了| 久久精品欧美一区二区三区不卡 | 久久久午夜精品| 色综合色狠狠天天综合色| 日韩高清不卡在线| 国产精品久久夜| 91精品国产91久久综合桃花| 国产精品2024| 亚洲国产另类av| 中文字幕av一区二区三区| 欧美视频完全免费看| 国产精品一卡二卡在线观看| 一区二区三区国产精华| 久久丝袜美腿综合| 欧美午夜影院一区| 成人黄色软件下载| 日本免费在线视频不卡一不卡二| 中文字幕欧美国产| 欧美一区二区三区啪啪| 99精品热视频| 国产在线视频一区二区| 亚洲成人免费视| 国产精品美女一区二区三区| 欧美一区二区在线不卡| 91在线观看高清| 国产精品综合av一区二区国产馆| 亚洲自拍偷拍欧美| 亚洲欧洲另类国产综合| 久久婷婷综合激情| 91精品福利在线一区二区三区| 91视频国产资源| 国产成人精品一区二区三区网站观看| 婷婷综合久久一区二区三区| 18欧美乱大交hd1984| 国产午夜久久久久| 精品国产一区二区三区四区四 | 成人短视频下载| 麻豆91在线播放免费| 天堂午夜影视日韩欧美一区二区| 亚洲欧美日韩国产综合| 国产精品久久久久三级| 国产日韩欧美一区二区三区乱码| 日韩精品在线一区二区| 日韩三级伦理片妻子的秘密按摩| 欧美三区免费完整视频在线观看| 91网站最新网址| 99视频精品全部免费在线| 丰满岳乱妇一区二区三区 | 国产精品一区久久久久| 看片网站欧美日韩| 蜜臀va亚洲va欧美va天堂| 污片在线观看一区二区| 亚洲午夜在线视频| 亚洲第一二三四区| 亚洲成av人综合在线观看| 亚洲电影在线免费观看| 亚洲一级二级在线| 午夜精品在线看| 天天av天天翘天天综合网| 午夜精品成人在线视频| 日韩成人免费看| 日本欧美一区二区三区乱码 | 精品制服美女丁香| 久久99国产乱子伦精品免费| 久久草av在线| 国产精品白丝jk黑袜喷水| 国产aⅴ精品一区二区三区色成熟| 韩国在线一区二区| 成熟亚洲日本毛茸茸凸凹| 北条麻妃国产九九精品视频| 成人性生交大片免费看中文 | 欧美高清hd18日本| 91精品国产高清一区二区三区蜜臀| 日韩一区和二区| 久久综合色之久久综合| 国产精品视频在线看| 亚洲乱码国产乱码精品精小说 | 国产精品久久久久天堂| 尤物av一区二区| 日韩综合小视频| 韩国成人在线视频| 91亚洲男人天堂| 欧美日韩免费在线视频| 日韩精品中文字幕在线不卡尤物| 国产三区在线成人av| 一区二区三区四区视频精品免费| 日一区二区三区| 国产精品综合视频| 欧洲精品视频在线观看| 欧美一区二区在线视频| 亚洲国产精品ⅴa在线观看| 一区二区三区在线观看动漫 | 久久久无码精品亚洲日韩按摩| 国产精品女人毛片| 天天色天天操综合| 成人中文字幕在线| 欧美三级在线视频| 国产欧美一区二区精品性| 亚洲愉拍自拍另类高清精品| 蓝色福利精品导航| 91麻豆精东视频| 精品国内二区三区| 一区二区三区四区在线免费观看| 黄页网站大全一区二区| 一本大道av一区二区在线播放| 欧美一区二区三区日韩视频| 亚洲人成人一区二区在线观看| 蜜臀av性久久久久蜜臀aⅴ | 欧美日韩精品一区二区| 欧美激情一区不卡| 丝袜美腿亚洲综合| 91亚洲资源网| 国产亚洲精品中文字幕| 全国精品久久少妇| 欧美自拍偷拍午夜视频| 国产精品美女久久久久久久 | 国产成人小视频| 日韩免费成人网| 亚洲福利一二三区| 97久久精品人人澡人人爽| 国产欧美在线观看一区| 久草精品在线观看| 日韩视频免费观看高清完整版在线观看 | 337p亚洲精品色噜噜狠狠| 国产精品麻豆网站| 国产大片一区二区| 精品sm在线观看| 免费在线观看视频一区| 91国偷自产一区二区三区观看| 国产亚洲精品超碰| 久久99精品久久久久婷婷| 欧美日韩一区视频| 亚洲另类中文字| 91在线精品一区二区| 国产精品天天摸av网| 国产精品综合久久| www精品美女久久久tv| 日韩电影在线观看电影| 欧美日高清视频| 亚洲国产色一区| 欧美日韩精品免费观看视频| 亚洲午夜影视影院在线观看| 色成年激情久久综合| 亚洲激情中文1区| 色婷婷综合久久久久中文| 亚洲人成网站精品片在线观看| 91在线国产观看| 亚洲精品成人精品456| 色视频成人在线观看免| 一区二区视频在线看| 在线视频一区二区免费| 亚洲国产欧美在线人成| 欧美日韩精品一区二区天天拍小说| 亚洲成人三级小说| 91精品国产手机| 国产一区二区调教| 国产精品三级久久久久三级| 99久久精品免费| 亚洲国产你懂的| 日韩一级二级三级| 久久国产精品免费| 久久久高清一区二区三区| 成人a区在线观看| 怡红院av一区二区三区| 欧美日韩国产中文| 久久99精品一区二区三区三区| 精品乱码亚洲一区二区不卡| 国产一区二区三区四区五区入口| 国产精品青草综合久久久久99| aaa亚洲精品| 亚洲成人av中文| 久久婷婷综合激情| 色久优优欧美色久优优| 日韩综合小视频| 国产精品动漫网站| 欧美日韩一区二区不卡| 国内欧美视频一区二区| 亚洲人妖av一区二区|